aboutsummaryrefslogtreecommitdiff
path: root/source/km/svx
AgeCommit message (Expand)Author
2013-06-05update translations for LibreOffice 4.1 beta2Andras Timar
2013-05-25initial import of 4.1 translationsAndras Timar
2013-05-07update translations for LibreOffice 4.0.3 rc1Andras Timar
2013-02-17update translations for LibreOffice 4.0.1 rc1Andras Timar
2013-01-28update translations for LibreOffice 4.0 rc2Andras Timar
2013-01-06 update translations for LibreOffice 4.0 rc1Andras Timar
2012-12-16update translations for LibreOffice 4.0 beta2Andras Timar
2012-12-09fix of damaged files from beta1Andras Timar
2012-12-03update translations for LibreOffice 4.0 beta1Andras Timar
2012-11-20initial import of LibreOffice 4.0 translationsAndras Timar
2012-10-16move translations structure one directory upNorbert Thiebaud
LibreOffice 核心代码仓库文档基金会
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndras Timar <atimar@suse.com>2012-11-11 18:24:14 +0100
committerAndras Timar <atimar@suse.com>2012-11-11 18:24:14 +0100
commit06ec1c089519ef3249464aa09eadf03a8db93a39 (patch)
tree85b2eb6d8ba6ca95e18e1ff82151224cb14106f6
parent8e0d67bed54633d555a4601a5d79e2d5ba7ab2bb (diff)
parent3f899eae02eaad0b967de749fe09b869ba93ad6d (diff)
Merge branch 'master' into feature/killsdf
Conflicts: Repository.mk RepositoryFixes.mk connectivity/prj/build.lst extensions/prj/build.lst filter/prj/build.lst fpicker/prj/build.lst l10ntools/StaticLibrary_transex.mk saxon/build.xml shell/prj/build.lst solenv/gbuild/AllLangResTarget.mk solenv/gbuild/Configuration.mk solenv/gbuild/UI.mk ucb/source/ucp/webdav/webdavcontent.cxx
Diffstat
-rw-r--r--.git-hooks/README (renamed from git-hooks/README)0
-rwxr-xr-x.git-hooks/commit-msg (renamed from git-hooks/commit-msg)0
-rwxr-xr-x.git-hooks/post-merge (renamed from git-hooks/post-merge)0
-rwxr-xr-x.git-hooks/pre-commit (renamed from git-hooks/pre-commit)8
-rw-r--r--.gitignore18
-rw-r--r--.gitmodules12
-rw-r--r--Library_merged.mk1
-rw-r--r--Makefile3
-rw-r--r--Makefile.top105
-rw-r--r--Module_cross_tail_build.mk4
-rw-r--r--Module_tail_build.mk22
-rw-r--r--README.Android6
-rw-r--r--README.cross5
-rwxr-xr-x[-rw-r--r--]Repository.mk11
-rw-r--r--RepositoryExternal.mk417
-rw-r--r--RepositoryFixes.mk5
-rw-r--r--RepositoryModule_ooo.mk265
-rw-r--r--UnoControls/inc/basecontainercontrol.hxx2
-rw-r--r--UnoControls/inc/basecontrol.hxx6
-rw-r--r--UnoControls/source/base/basecontainercontrol.cxx4
-rw-r--r--UnoControls/source/base/basecontrol.cxx15
-rw-r--r--UnoControls/source/base/registercontrols.cxx3
-rw-r--r--UnoControls/source/controls/framecontrol.cxx12
-rw-r--r--UnoControls/source/controls/progressbar.cxx4
-rw-r--r--UnoControls/source/controls/progressmonitor.cxx28
-rw-r--r--UnoControls/source/controls/statusindicator.cxx10
-rw-r--r--UnoControls/source/inc/framecontrol.hxx2
-rw-r--r--UnoControls/source/inc/progressbar.hxx2
-rw-r--r--UnoControls/source/inc/progressmonitor.hxx2
-rw-r--r--UnoControls/source/inc/statusindicator.hxx2
-rw-r--r--accessibility/Jar_accessibility.mk90
-rw-r--r--accessibility/Jar_uno_accessbridge.mk50
-rw-r--r--accessibility/Module_accessibility.mk1
-rw-r--r--accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx8
-rw-r--r--accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx4
-rw-r--r--accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx2
-rw-r--r--accessibility/source/extended/accessiblelistbox.cxx22
-rw-r--r--accessibility/source/extended/accessiblelistboxentry.cxx54
-rw-r--r--accessibility/source/extended/accessibletablistboxtable.cxx8
-rw-r--r--accessibility/source/extended/textwindowaccessibility.cxx16
-rw-r--r--accessibility/source/standard/vclxaccessibleedit.cxx2
-rw-r--r--android/experimental/DocumentLoader/Makefile2
-rw-r--r--android/experimental/DocumentLoader/native-code.cxx5
-rw-r--r--android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java10
-rw-r--r--android/experimental/LibreOffice4Android/Makefile2
-rw-r--r--android/experimental/LibreOffice4Android/native-code.cxx21
-rw-r--r--android/experimental/LibreOffice4Android/src/org/libreoffice/android/DocumentLoader.java6
-rw-r--r--android/experimental/LibreOffice4Android/src/org/libreoffice/ui/LibreOfficeUIActivity.java6
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/AboutDialogBuilder.java9
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/ActivityChangeBroadcastProcessor.java9
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/BlankScreenFragment.java9
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/PairingActivity.java1
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/PresentationActivity.java9
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/PresentationFragment.java11
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/SelectorActivity.java2
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/SettingsActivity.java10
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/StartPresentationActivity.java12
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothClient.java4
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothFinder.java9
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java3
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/ReconnectionActivity.java10
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/Server.java9
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/ServerFinder.java9
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/Transmitter.java2
-rw-r--r--avmedia/source/win/player.cxx2
-rw-r--r--basctl/Module_basctl.mk1
-rw-r--r--basctl/UI_basicide.mk16
-rw-r--r--basctl/inc/basidesh.hrc4
-rw-r--r--basctl/source/basicide/baside2.cxx9
-rw-r--r--basctl/source/basicide/baside2.hxx10
-rw-r--r--basctl/source/basicide/baside2b.cxx81
-rw-r--r--basctl/source/basicide/basides2.cxx2
-rw-r--r--basctl/source/basicide/basidesh.cxx10
-rw-r--r--basctl/source/basicide/basobj3.cxx2
-rw-r--r--basctl/source/basicide/bastype2.cxx96
-rw-r--r--basctl/source/basicide/bastype2.hxx43
-rw-r--r--basctl/source/basicide/bastype3.cxx24
-rw-r--r--basctl/source/basicide/macrodlg.cxx365
-rw-r--r--basctl/source/basicide/macrodlg.hrc21
-rw-r--r--basctl/source/basicide/macrodlg.hxx36
-rw-r--r--basctl/source/basicide/macrodlg.src155
-rw-r--r--basctl/source/basicide/moduldl2.cxx107
-rw-r--r--basctl/source/basicide/moduldlg.cxx118
-rw-r--r--basctl/source/basicide/moduldlg.hxx38
-rw-r--r--basctl/source/basicide/register.cxx1
-rw-r--r--basctl/source/basicide/sbxitem.cxx10
-rw-r--r--basctl/source/basicide/scriptdocument.cxx189
-rw-r--r--basctl/source/basicide/tbxctl.cxx6
-rw-r--r--basctl/source/basicide/unomodel.cxx1
-rw-r--r--basctl/source/dlged/dlged.cxx52
-rw-r--r--basctl/source/dlged/dlgedclip.cxx6
-rw-r--r--basctl/source/dlged/dlgedfac.cxx62
-rw-r--r--basctl/source/dlged/dlgedobj.cxx53
-rw-r--r--basctl/source/dlged/managelang.cxx16
-rw-r--r--basctl/source/dlged/propbrw.cxx61
-rw-r--r--basctl/source/inc/basobj.hxx40
-rw-r--r--basctl/source/inc/dlgeddef.hxx30
-rw-r--r--basctl/source/inc/localizationmgr.hxx22
-rw-r--r--basctl/source/inc/managelang.hxx10
-rw-r--r--basctl/source/inc/propbrw.hxx2
-rw-r--r--basctl/source/inc/sbxitem.hxx16
-rw-r--r--basctl/source/inc/scriptdocument.hxx66
-rw-r--r--basctl/uiconfig/basicide/menubar/menubar.xml3
-rw-r--r--basctl/uiconfig/basicide/ui/basicmacrodialog.ui384
-rw-r--r--basebmp/test/bmpdemo.cxx17
-rw-r--r--basebmp/test/bmpmasktest.cxx4
-rw-r--r--basebmp/test/bmptest.cxx2
-rw-r--r--basebmp/test/cliptest.cxx4
-rw-r--r--basebmp/test/filltest.cxx2
-rw-r--r--basebmp/test/masktest.cxx2
-rw-r--r--basebmp/test/polytest.cxx18
-rw-r--r--basegfx/Makefile7
-rw-r--r--basegfx/inc/basegfx/basegfxdllapi.h38
-rw-r--r--basegfx/inc/basegfx/color/bcolor.hxx45
-rw-r--r--basegfx/inc/basegfx/color/bcolormodifier.hxx49
-rw-r--r--basegfx/inc/basegfx/color/bcolortools.hxx43
-rw-r--r--basegfx/inc/basegfx/curve/b2dbeziertools.hxx43
-rw-r--r--basegfx/inc/basegfx/curve/b2dcubicbezier.hxx37
-rw-r--r--basegfx/inc/basegfx/matrix/b2dhommatrix.hxx37
-rw-r--r--basegfx/inc/basegfx/matrix/b2dhommatrixtools.hxx43
-rw-r--r--basegfx/inc/basegfx/matrix/b3dhommatrix.hxx38
-rw-r--r--basegfx/inc/basegfx/numeric/ftools.hxx37
-rw-r--r--basegfx/inc/basegfx/pixel/bpixel.hxx37
-rw-r--r--basegfx/inc/basegfx/point/b2dpoint.hxx39
-rw-r--r--basegfx/inc/basegfx/point/b2ipoint.hxx39
-rw-r--r--basegfx/inc/basegfx/point/b3dpoint.hxx39
-rw-r--r--basegfx/inc/basegfx/point/b3ipoint.hxx39
-rw-r--r--basegfx/inc/basegfx/polygon/b2dlinegeometry.hxx42
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolygon.hxx41
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolygonclipper.hxx37
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolygoncutandtouch.hxx43
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolygontools.hxx40
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolygontriangulator.hxx43
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx41
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolypolygoncutter.hxx51
-rw-r--r--basegfx/inc/basegfx/polygon/b2dpolypolygontools.hxx37
-rw-r--r--basegfx/inc/basegfx/polygon/b2dtrapezoid.hxx37
-rw-r--r--basegfx/inc/basegfx/polygon/b3dpolygon.hxx37
-rw-r--r--basegfx/inc/basegfx/polygon/b3dpolygontools.hxx37
-rw-r--r--basegfx/inc/basegfx/polygon/b3dpolypolygon.hxx37
-rw-r--r--basegfx/inc/basegfx/polygon/b3dpolypolygontools.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b1drange.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b1ibox.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b1irange.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b2dpolyrange.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b2drange.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b2drangeclipper.hxx43
-rw-r--r--basegfx/inc/basegfx/range/b2ibox.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b2irange.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b3drange.hxx37
-rw-r--r--basegfx/inc/basegfx/range/b3irange.hxx37
-rw-r--r--basegfx/inc/basegfx/range/basicbox.hxx37
-rw-r--r--basegfx/inc/basegfx/range/basicrange.hxx37
-rw-r--r--basegfx/inc/basegfx/raster/bpixelraster.hxx37
-rw-r--r--basegfx/inc/basegfx/raster/bzpixelraster.hxx37
-rw-r--r--basegfx/inc/basegfx/raster/rasterconvert3d.hxx37
-rw-r--r--basegfx/inc/basegfx/tools/b2dclipstate.hxx37
-rw-r--r--basegfx/inc/basegfx/tools/canvastools.hxx37
-rw-r--r--basegfx/inc/basegfx/tools/gradienttools.hxx37
-rw-r--r--basegfx/inc/basegfx/tools/keystoplerp.hxx37
-rw-r--r--basegfx/inc/basegfx/tools/rectcliptools.hxx37
-rw-r--r--basegfx/inc/basegfx/tools/tools.hxx37
-rw-r--r--basegfx/inc/basegfx/tools/unopolypolygon.hxx37
-rw-r--r--basegfx/inc/basegfx/tuple/b2dtuple.hxx39
-rw-r--r--basegfx/inc/basegfx/tuple/b2i64tuple.hxx39
-rw-r--r--basegfx/inc/basegfx/tuple/b2ituple.hxx39
-rw-r--r--basegfx/inc/basegfx/tuple/b3dtuple.hxx39
-rw-r--r--basegfx/inc/basegfx/tuple/b3i64tuple.hxx39
-rw-r--r--basegfx/inc/basegfx/tuple/b3ituple.hxx39
-rw-r--r--basegfx/inc/basegfx/vector/b2dvector.hxx37
-rw-r--r--basegfx/inc/basegfx/vector/b2ivector.hxx37
-rw-r--r--basegfx/inc/basegfx/vector/b3dvector.hxx37
-rw-r--r--basegfx/inc/basegfx/vector/b3ivector.hxx37
-rw-r--r--basegfx/source/color/bcolormodifier.cxx46
-rw-r--r--basegfx/source/color/bcolortools.cxx37
-rw-r--r--basegfx/source/curve/b2dbeziertools.cxx37
-rw-r--r--basegfx/source/curve/b2dcubicbezier.cxx37
-rw-r--r--basegfx/source/matrix/b2dhommatrix.cxx37
-rw-r--r--basegfx/source/matrix/b2dhommatrixtools.cxx61
-rw-r--r--basegfx/source/matrix/b3dhommatrix.cxx50
-rw-r--r--basegfx/source/polygon/b2dlinegeometry.cxx449
-rw-r--r--basegfx/source/polygon/b2dpolygon.cxx39
-rw-r--r--basegfx/source/polygon/b2dpolygonclipper.cxx37
-rw-r--r--basegfx/source/polygon/b2dpolygoncutandtouch.cxx37
-rw-r--r--basegfx/source/polygon/b2dpolygontools.cxx64
-rw-r--r--basegfx/source/polygon/b2dpolygontriangulator.cxx37
-rw-r--r--basegfx/source/polygon/b2dpolypolygon.cxx51
-rw-r--r--basegfx/source/polygon/b2dpolypolygoncutter.cxx141
-rw-r--r--basegfx/source/polygon/b2dpolypolygontools.cxx37
-rw-r--r--basegfx/source/polygon/b2dsvgpolypolygon.cxx91
-rw-r--r--basegfx/source/polygon/b2dtrapezoid.cxx37
-rw-r--r--basegfx/source/polygon/b3dpolygon.cxx37
-rw-r--r--basegfx/source/polygon/b3dpolygontools.cxx110
-rw-r--r--basegfx/source/polygon/b3dpolypolygon.cxx37
-rw-r--r--basegfx/source/polygon/b3dpolypolygontools.cxx66
-rw-r--r--basegfx/source/range/b1drange.cxx45
-rw-r--r--basegfx/source/range/b2dpolyrange.cxx37
-rw-r--r--basegfx/source/range/b2drangeclipper.cxx37
-rw-r--r--basegfx/source/range/b2xrange.cxx37
-rw-r--r--basegfx/source/range/b3drange.cxx43
-rw-r--r--basegfx/source/raster/rasterconvert3d.cxx37
-rw-r--r--basegfx/source/tools/b2dclipstate.cxx37
-rw-r--r--basegfx/source/tools/canvastools.cxx39
-rw-r--r--basegfx/source/tools/gradienttools.cxx37
-rw-r--r--basegfx/source/tools/keystoplerp.cxx37
-rw-r--r--basegfx/source/tools/unopolypolygon.cxx55
-rw-r--r--basegfx/source/tools/unotools.cxx39
-rw-r--r--basegfx/source/tuple/b2dtuple.cxx43
-rw-r--r--basegfx/source/tuple/b2i64tuple.cxx45
-rw-r--r--basegfx/source/tuple/b2ituple.cxx37
-rw-r--r--basegfx/source/tuple/b3dtuple.cxx43
-rw-r--r--basegfx/source/tuple/b3i64tuple.cxx43
-rw-r--r--basegfx/source/tuple/b3ituple.cxx45
-rw-r--r--basegfx/source/vector/b2dvector.cxx37
-rw-r--r--basegfx/source/vector/b2ivector.cxx37
-rw-r--r--basegfx/source/vector/b3dvector.cxx37
-rw-r--r--basegfx/source/workbench/gauss.hxx37
-rw-r--r--basegfx/test/basegfx1d.cxx37
-rw-r--r--basegfx/test/basegfx2d.cxx37
-rw-r--r--basegfx/test/basegfx3d.cxx37
-rw-r--r--basegfx/test/basegfxtools.cxx37
-rw-r--r--basegfx/test/boxclipper.cxx37
-rw-r--r--basegfx/test/clipstate.cxx37
-rw-r--r--basegfx/test/genericclipper.cxx39
-rw-r--r--basic/CppunitTest_basic_coverage.mk60
-rw-r--r--basic/Module_basic.mk1
-rw-r--r--basic/inc/basic/basmgr.hxx83
-rw-r--r--basic/inc/basic/modsizeexceeded.hxx2
-rw-r--r--basic/inc/basic/sbdef.hxx8
-rw-r--r--basic/inc/basic/sbmeth.hxx26
-rw-r--r--basic/inc/basic/sbmod.hxx78
-rw-r--r--basic/inc/basic/sbobjmod.hxx20
-rw-r--r--basic/inc/basic/sbprop.hxx4
-rw-r--r--basic/inc/basic/sbstar.hxx49
-rw-r--r--basic/inc/basic/sbstdobj.hxx36
-rw-r--r--basic/inc/basic/sbuno.hxx2
-rw-r--r--basic/inc/basic/sbx.hxx90
-rw-r--r--basic/inc/basic/sbxbase.hxx2
-rw-r--r--basic/inc/basic/sbxcore.hxx18
-rw-r--r--basic/inc/basic/sbxform.hxx92
-rw-r--r--basic/inc/basic/sbxmeth.hxx2
-rw-r--r--basic/inc/basic/sbxobj.hxx32
-rw-r--r--basic/inc/basic/sbxprop.hxx4
-rw-r--r--basic/inc/basic/sbxvar.hxx46
-rw-r--r--basic/qa/basic_coverage/string_left_01.vb25
-rw-r--r--basic/qa/basic_coverage/string_right_01.vb24
-rw-r--r--basic/qa/cppunit/basic_coverage.cxx200
-rw-r--r--basic/source/basmgr/basicmanagerrepository.cxx35
-rw-r--r--basic/source/basmgr/basmgr.cxx604
-rw-r--r--basic/source/classes/errobject.cxx8
-rw-r--r--basic/source/classes/eventatt.cxx93
-rw-r--r--basic/source/classes/global.cxx2
-rw-r--r--basic/source/classes/image.cxx91
-rw-r--r--basic/source/classes/sb.cxx568
-rw-r--r--basic/source/classes/sbunoobj.cxx535
-rw-r--r--basic/source/classes/sbxmod.cxx254
-rw-r--r--basic/source/comp/buffer.cxx91
-rw-r--r--basic/source/comp/codegen.cxx126
-rw-r--r--basic/source/comp/dim.cxx291
-rw-r--r--basic/source/comp/exprgen.cxx44
-rw-r--r--basic/source/comp/exprnode.cxx51
-rw-r--r--basic/source/comp/exprtree.cxx278
-rw-r--r--basic/source/comp/loops.cxx24
-rw-r--r--basic/source/comp/parser.cxx41
-rw-r--r--basic/source/comp/sbcomp.cxx166
-rw-r--r--basic/source/comp/symtbl.cxx100
-rw-r--r--basic/source/comp/token.cxx122
-rw-r--r--basic/source/inc/buffer.hxx7
-rw-r--r--basic/source/inc/errobject.hxx4
-rw-r--r--basic/source/inc/expr.hxx18
-rw-r--r--basic/source/inc/image.hxx39
-rw-r--r--basic/source/inc/namecont.hxx174
-rw-r--r--basic/source/inc/parser.hxx4
-rw-r--r--basic/source/inc/runtime.hxx50
-rw-r--r--basic/source/inc/sbintern.hxx14
-rw-r--r--basic/source/inc/sbjsmeth.hxx2
-rw-r--r--basic/source/inc/sbjsmod.hxx2
-rw-r--r--basic/source/inc/sbunoobj.hxx72
-rw-r--r--basic/source/inc/scriptcont.hxx8
-rw-r--r--basic/source/inc/stdobj.hxx4
-rw-r--r--basic/source/inc/symtbl.hxx69
-rw-r--r--basic/source/runtime/basrdll.cxx4
-rw-r--r--basic/source/runtime/comenumwrapper.cxx6
-rw-r--r--basic/source/runtime/ddectrl.cxx55
-rw-r--r--basic/source/runtime/ddectrl.hxx17
-rw-r--r--basic/source/runtime/dllmgr-x64.cxx6
-rw-r--r--basic/source/runtime/dllmgr-x86.cxx6
-rw-r--r--basic/source/runtime/inputbox.cxx6
-rw-r--r--basic/source/runtime/iosys.cxx185
-rw-r--r--basic/source/runtime/methods.cxx1144
-rw-r--r--basic/source/runtime/methods1.cxx844
-rw-r--r--basic/source/runtime/runtime.cxx170
-rw-r--r--basic/source/runtime/sbdiagnose.cxx12
-rw-r--r--basic/source/runtime/stdobj.cxx24
-rw-r--r--basic/source/runtime/stdobj1.cxx54
-rw-r--r--basic/source/runtime/step0.cxx405
-rw-r--r--basic/source/runtime/step1.cxx59
-rw-r--r--basic/source/runtime/step2.cxx250
-rw-r--r--basic/source/sbx/sbxarray.cxx54
-rw-r--r--basic/source/sbx/sbxbool.cxx4
-rw-r--r--basic/source/sbx/sbxbyte.cxx4
-rw-r--r--basic/source/sbx/sbxchar.cxx24
-rw-r--r--basic/source/sbx/sbxcoll.cxx84
-rw-r--r--basic/source/sbx/sbxdate.cxx617
-rw-r--r--basic/source/sbx/sbxdbl.cxx2
-rw-r--r--basic/source/sbx/sbxexec.cxx90
-rw-r--r--basic/source/sbx/sbxform.cxx987
-rw-r--r--basic/source/sbx/sbxint.cxx4
-rw-r--r--basic/source/sbx/sbxlng.cxx2
-rw-r--r--basic/source/sbx/sbxobj.cxx436
-rw-r--r--basic/source/sbx/sbxscan.cxx315
-rw-r--r--basic/source/sbx/sbxsng.cxx2
-rw-r--r--basic/source/sbx/sbxstr.cxx10
-rw-r--r--basic/source/sbx/sbxuint.cxx2
-rw-r--r--basic/source/sbx/sbxulng.cxx2
-rw-r--r--basic/source/sbx/sbxvalue.cxx34
-rw-r--r--basic/source/sbx/sbxvar.cxx286
-rw-r--r--basic/source/uno/dlgcont.cxx16
-rw-r--r--basic/source/uno/namecont.cxx753
-rw-r--r--basic/source/uno/scriptcont.cxx303
-rw-r--r--bean/Library_officebean.mk5
-rwxr-xr-xbin/create_bootstrap_links15
-rwxr-xr-xbin/distro-install-desktop-integration1
-rwxr-xr-xbin/distro-install-file-lists33
-rwxr-xr-xbin/lo-commit-stat2
-rwxr-xr-xbin/lo-pack-sources2
-rwxr-xr-xbin/mkworkdir103
-rw-r--r--bin/repo-list.in1
-rw-r--r--binaryurp/README18
-rw-r--r--boost/UnpackedTarball_boost.mk6
-rw-r--r--boost/boost.4100.warnings.patch19
-rw-r--r--boost/boost.4510.warnings.patch26
-rw-r--r--boost/boost.6397.warnings.patch113
-rw-r--r--boost/boost.6940.glibc.patch20
-rw-r--r--boost/boost.7551.unusedvars.patch10
-rw-r--r--boost/boost_1_44_0-clang-warnings.patch21
-rwxr-xr-xbootstrap8
-rw-r--r--bridges/CustomTarget_gcc3_ios_arm.mk7
-rw-r--r--bridges/inc/bridges/cpp_uno/bridge.hxx22
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/cppinterfaceproxy.hxx8
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/unointerfaceproxy.hxx6
-rw-r--r--bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx2
-rw-r--r--bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp.cxx7
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_intel/callvirtualmethod.cxx2
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx4
-rw-r--r--bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx8
-rw-r--r--bridges/source/cpp_uno/shared/component.cxx22
-rw-r--r--bridges/source/cpp_uno/shared/cppinterfaceproxy.cxx4
-rw-r--r--bridges/source/cpp_uno/shared/unointerfaceproxy.cxx4
-rw-r--r--bridges/source/cpp_uno/shared/vtablefactory.cxx20
-rw-r--r--bridges/source/jni_uno/jni_info.cxx2
-rw-r--r--bridges/source/jni_uno/jni_java2uno.cxx4
-rw-r--r--bridges/source/jni_uno/nativethreadpool.cxx16
-rw-r--r--cairo/cairo-1.10.2.patch9
-rw-r--r--cairo/pixman-0.24.4.patch9
-rw-r--r--cairo/prj/build.lst2
-rw-r--r--canvas/source/cairo/cairo_canvashelper.cxx21
-rw-r--r--canvas/source/cairo/cairo_textlayout.cxx30
-rw-r--r--canvas/source/vcl/canvashelper.cxx9
-rw-r--r--canvas/workben/canvasdemo.cxx2
-rw-r--r--chart2/Library_chartcontroller.mk1
-rw-r--r--chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx7
-rw-r--r--chart2/source/controller/dialogs/tp_DataSource.cxx20
-rw-r--r--chart2/source/controller/dialogs/tp_DataSourceControls.cxx2
-rw-r--r--chart2/source/controller/dialogs/tp_DataSourceControls.hxx4
-rw-r--r--chart2/source/controller/drawinglayer/ViewElementListProvider.cxx2
-rw-r--r--chart2/source/controller/inc/ChartRenderer.hxx70
-rw-r--r--chart2/source/controller/main/ChartRenderer.cxx168
-rw-r--r--chart2/source/inc/CloneHelper.hxx1
-rw-r--r--chart2/source/inc/servicenames.hxx2
-rw-r--r--chart2/source/model/filter/XMLFilter.cxx8
-rw-r--r--chart2/source/model/inc/XMLFilter.hxx3
-rw-r--r--chart2/source/model/main/BaseCoordinateSystem.cxx1
-rw-r--r--chart2/source/tools/ImplOPropertySet.cxx1
-rw-r--r--chart2/source/tools/InternalData.cxx1
-rw-r--r--chart2/source/tools/PropertyHelper.cxx1
-rw-r--r--chart2/source/view/charttypes/AreaChart.cxx1
-rw-r--r--chart2/source/view/charttypes/BarChart.cxx2
-rw-r--r--chart2/source/view/charttypes/BubbleChart.cxx2
-rw-r--r--chart2/source/view/charttypes/CandleStickChart.cxx1
-rw-r--r--chart2/uiconfig/menubar/menubar.xml3
-rwxr-xr-x[-rw-r--r--]cli_ure/CliNativeLibrary_cli_cppuhelper.mk12
-rw-r--r--cli_ure/CustomTarget_cli_ure_assemblies.mk7
-rw-r--r--cli_ure/Executable_climaker.mk4
-rwxr-xr-x[-rw-r--r--]cli_ure/Library_cli_cppuhelper_native.mk25
-rw-r--r--cli_ure/Library_cli_uno.mk4
-rw-r--r--cli_ure/source/uno_bridge/cli_base.h110
-rw-r--r--cli_ure/source/uno_bridge/cli_bridge.h4
-rw-r--r--cli_ure/source/uno_bridge/cli_data.cxx2
-rw-r--r--cli_ure/source/uno_bridge/cli_environment.h4
-rw-r--r--cli_ure/source/uno_bridge/cli_proxy.cxx2
-rw-r--r--codemaker/StaticLibrary_codemaker.mk1
-rw-r--r--codemaker/StaticLibrary_codemaker_cpp.mk2
-rw-r--r--codemaker/StaticLibrary_codemaker_java.mk2
-rw-r--r--codemaker/source/cppumaker/cppuoptions.cxx51
-rw-r--r--codemaker/source/javamaker/javaoptions.cxx3
-rw-r--r--comphelper/inc/comphelper/configurationhelper.hxx13
-rw-r--r--comphelper/inc/comphelper/eventattachermgr.hxx6
-rw-r--r--comphelper/inc/comphelper/ofopxmlhelper.hxx4
-rw-r--r--comphelper/inc/comphelper/seekableinput.hxx8
-rw-r--r--comphelper/source/container/embeddedobjectcontainer.cxx2
-rw-r--r--comphelper/source/eventattachermgr/eventattachermgr.cxx17
-rw-r--r--comphelper/source/misc/accessibletexthelper.cxx17
-rw-r--r--comphelper/source/misc/configurationhelper.cxx17
-rw-r--r--comphelper/source/misc/mediadescriptor.cxx9
-rw-r--r--comphelper/source/misc/namedvaluecollection.cxx17
-rw-r--r--comphelper/source/misc/string.cxx5
-rw-r--r--comphelper/source/streaming/seekableinput.cxx14
-rw-r--r--comphelper/source/xml/ofopxmlhelper.cxx59
-rw-r--r--compilerplugins/Makefile-clang.mk16
-rw-r--r--compilerplugins/README28
-rw-r--r--compilerplugins/clang/bodynotinblock.cxx2
-rw-r--r--compilerplugins/clang/bodynotinblock.hxx4
-rw-r--r--compilerplugins/clang/compileplugin.cxx100
-rw-r--r--compilerplugins/clang/compileplugin.hxx47
-rw-r--r--compilerplugins/clang/lclstaticfix.cxx53
-rw-r--r--compilerplugins/clang/lclstaticfix.hxx32
-rw-r--r--compilerplugins/clang/plugin.cxx235
-rw-r--r--compilerplugins/clang/plugin.hxx77
-rw-r--r--compilerplugins/clang/postfixincrementfix.cxx165
-rw-r--r--compilerplugins/clang/postfixincrementfix.hxx40
-rw-r--r--compilerplugins/clang/sallogareas.cxx137
-rw-r--r--compilerplugins/clang/sallogareas.hxx40
-rw-r--r--compilerplugins/clang/unusedvariablecheck.cxx11
-rw-r--r--compilerplugins/clang/unusedvariablecheck.hxx4
-rw-r--r--config_host.mk.in303
-rw-r--r--config_host.mk.source5
-rw-r--r--configmgr/source/components.cxx13
-rw-r--r--configmgr/source/components.hxx7
-rw-r--r--configmgr/source/configurationprovider.cxx20
-rw-r--r--configure.ac (renamed from configure.in)1253
-rw-r--r--connectivity/CppunitTest_connectivity_ado.mk75
-rw-r--r--connectivity/Library_postgresql-sdbc-impl.mk2
-rw-r--r--connectivity/Module_connectivity.mk7
-rw-r--r--connectivity/inc/connectivity/PColumn.hxx15
-rw-r--r--connectivity/inc/connectivity/predicateinput.hxx6
-rw-r--r--connectivity/inc/connectivity/sdbcx/VColumn.hxx29
-rw-r--r--connectivity/inc/connectivity/sdbcx/VIndexColumn.hxx5
-rw-r--r--connectivity/inc/connectivity/sdbcx/VKeyColumn.hxx5
-rw-r--r--connectivity/inc/connectivity/sqlparse.hxx4
-rw-r--r--connectivity/inc/connectivity/virtualdbtools.hxx2
-rw-r--r--connectivity/prj/build.lst4
-rwxr-xr-xconnectivity/qa/connectivity/ado/DriverTest.cxx145
-rwxr-xr-xconnectivity/qa/connectivity/ado/TS001018407.mdbbin0 -> 2789376 bytes
-rw-r--r--connectivity/source/commontools/ParamterSubstitution.cxx3
-rw-r--r--connectivity/source/commontools/TColumnsHelper.cxx10
-rw-r--r--connectivity/source/commontools/TIndexColumns.cxx27
-rw-r--r--connectivity/source/commontools/TKeyColumns.cxx34
-rw-r--r--connectivity/source/commontools/TSortIndex.cxx3
-rw-r--r--connectivity/source/commontools/TTableHelper.cxx2
-rw-r--r--connectivity/source/commontools/dbtools.cxx1
-rw-r--r--connectivity/source/commontools/dbtools2.cxx14
-rw-r--r--connectivity/source/commontools/predicateinput.cxx24
-rw-r--r--connectivity/source/drivers/ado/AColumn.cxx2
-rw-r--r--connectivity/source/drivers/ado/APreparedStatement.cxx3
-rw-r--r--connectivity/source/drivers/ado/AStatement.cxx14
-rw-r--r--connectivity/source/drivers/ado/ATable.cxx2
-rw-r--r--connectivity/source/drivers/ado/Awrapado.cxx16
-rw-r--r--connectivity/source/drivers/calc/CTable.cxx3
-rw-r--r--connectivity/source/drivers/dbase/DIndexColumns.cxx5
-rw-r--r--connectivity/source/drivers/dbase/DTable.cxx52
-rw-r--r--connectivity/source/drivers/evoab2/NColumns.cxx15
-rw-r--r--connectivity/source/drivers/evoab2/NDriver.hxx5
-rw-r--r--connectivity/source/drivers/evoab2/NStatement.cxx4
-rw-r--r--connectivity/source/drivers/file/FColumns.cxx12
-rw-r--r--connectivity/source/drivers/file/FPreparedStatement.cxx5
-rw-r--r--connectivity/source/drivers/file/FStatement.cxx3
-rw-r--r--connectivity/source/drivers/flat/ETable.cxx5
-rw-r--r--connectivity/source/drivers/hsqldb/HStorageAccess.cxx20
-rw-r--r--connectivity/source/drivers/hsqldb/StorageFileAccess.cxx6
-rw-r--r--connectivity/source/drivers/hsqldb/StorageNativeInputStream.cxx14
-rw-r--r--connectivity/source/drivers/hsqldb/StorageNativeOutputStream.cxx14
-rw-r--r--connectivity/source/drivers/jdbc/JConnection.cxx2
-rw-r--r--connectivity/source/drivers/jdbc/jservices.cxx2
-rw-r--r--connectivity/source/drivers/kab/KColumns.cxx14
-rw-r--r--connectivity/source/drivers/kab/KDriver.hxx5
-rw-r--r--connectivity/source/drivers/kab/KStatement.cxx2
-rw-r--r--connectivity/source/drivers/macab/MacabColumns.cxx14
-rw-r--r--connectivity/source/drivers/macab/MacabDriver.hxx5
-rw-r--r--connectivity/source/drivers/macab/MacabStatement.cxx2
-rw-r--r--connectivity/source/drivers/mork/MColumns.cxx13
-rw-r--r--connectivity/source/drivers/mork/MPreparedStatement.cxx5
-rw-r--r--connectivity/source/drivers/mork/MStatement.cxx3
-rw-r--r--connectivity/source/drivers/mozab/MColumns.cxx13
-rw-r--r--connectivity/source/drivers/mozab/MPreparedStatement.cxx5
-rw-r--r--connectivity/source/drivers/mozab/MStatement.cxx4
-rw-r--r--connectivity/source/drivers/odbcbase/OPreparedStatement.cxx377
-rw-r--r--connectivity/source/drivers/odbcbase/OResultSet.cxx4
-rw-r--r--connectivity/source/drivers/odbcbase/OTools.cxx195
-rw-r--r--connectivity/source/inc/ado/Aolewrap.hxx4
-rw-r--r--connectivity/source/inc/dbase/DTable.hxx4
-rw-r--r--connectivity/source/inc/odbc/OBoundParam.hxx78
-rw-r--r--connectivity/source/inc/odbc/OPreparedStatement.hxx14
-rw-r--r--connectivity/source/inc/odbc/OTools.hxx38
-rw-r--r--connectivity/source/manager/mdrivermanager.cxx1
-rw-r--r--connectivity/source/parse/PColumn.cxx81
-rw-r--r--connectivity/source/parse/sqliterator.cxx35
-rw-r--r--connectivity/source/parse/sqlnode.cxx13
-rw-r--r--connectivity/source/sdbcx/VColumn.cxx36
-rw-r--r--connectivity/source/sdbcx/VIndexColumn.cxx10
-rw-r--r--connectivity/source/sdbcx/VKeyColumn.cxx10
-rw-r--r--connectivity/source/simpledbt/dbtfactory.cxx4
-rw-r--r--connectivity/source/simpledbt/dbtfactory.hxx2
-rw-r--r--connectivity/source/simpledbt/parser_s.cxx4
-rw-r--r--connectivity/source/simpledbt/parser_s.hxx2
-rw-r--r--connectivity/workben/postgresql/ddl.py179
-rw-r--r--connectivity/workben/postgresql/main.py84
-rw-r--r--connectivity/workben/postgresql/makefile.mk97
-rw-r--r--connectivity/workben/postgresql/metadata.py145
-rw-r--r--connectivity/workben/postgresql/preparedstatement.py222
-rw-r--r--connectivity/workben/postgresql/sdbcx.py300
-rw-r--r--connectivity/workben/postgresql/statement.py271
-rw-r--r--cosv/StaticLibrary_cosv.mk2
-rw-r--r--cppcanvas/Library_cppcanvas.mk34
-rw-r--r--cppcanvas/Library_mtfrenderer.mk33
-rw-r--r--cppcanvas/Makefile7
-rw-r--r--cppcanvas/Module_cppcanvas.mk33
-rw-r--r--cppcanvas/Package_inc.mk33
-rw-r--r--cppcanvas/inc/cppcanvas/basegfxfactory.hxx37
-rw-r--r--cppcanvas/inc/cppcanvas/cppcanvasdllapi.h43
-rw-r--r--cppcanvas/inc/cppcanvas/vclfactory.hxx37
-rw-r--r--cppcanvas/source/inc/action.hxx37
-rw-r--r--cppcanvas/source/inc/implrenderer.hxx37
-rw-r--r--cppcanvas/source/mtfrenderer/bitmapaction.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/cachedprimitivebase.hxx37
-rw-r--r--cppcanvas/source/mtfrenderer/emfplus.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/implrenderer.cxx106
-rw-r--r--cppcanvas/source/mtfrenderer/lineaction.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/mtftools.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/mtftools.hxx37
-rw-r--r--cppcanvas/source/mtfrenderer/pointaction.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/polypolyaction.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/rendergraphicaction.cxx202
-rw-r--r--cppcanvas/source/mtfrenderer/rendergraphicaction.hxx80
-rw-r--r--cppcanvas/source/mtfrenderer/textaction.cxx37
-rw-r--r--cppcanvas/source/mtfrenderer/transparencygroupaction.cxx39
-rw-r--r--cppcanvas/source/mtfrenderer/transparencygroupaction.hxx37
-rw-r--r--cppcanvas/source/uno/mtfrenderer.component8
-rw-r--r--cppcanvas/source/uno/uno_mtfrenderer.cxx31
-rw-r--r--cppcanvas/source/uno/uno_mtfrenderer.hxx31
-rw-r--r--cppcanvas/source/wrapper/basegfxfactory.cxx37
-rw-r--r--cppcanvas/source/wrapper/implsprite.cxx37
-rw-r--r--cppcanvas/source/wrapper/implsprite.hxx37
-rw-r--r--cppcanvas/source/wrapper/implspritecanvas.cxx37
-rw-r--r--cppcanvas/source/wrapper/implspritecanvas.hxx37
-rw-r--r--cppcanvas/source/wrapper/vclfactory.cxx37
-rw-r--r--cppuhelper/Module_cppuhelper.mk4
-rw-r--r--cross_tail_build/prj/build.lst2
-rw-r--r--cross_toolset/Makefile2
-rw-r--r--ct2n/ConvertTextToNumber-1.3.2-no-license.patch24
-rw-r--r--ct2n/ConvertTextToNumber-1.3.2-no-visible-by-default.patch144
-rw-r--r--ct2n/Makefile (renamed from librsvg/Makefile)0
-rw-r--r--ct2n/Module_ct2n.mk21
-rw-r--r--ct2n/README6
-rw-r--r--ct2n/UnpackedTarball_ct2n.mk31
-rw-r--r--ct2n/Zip_ct2n.mk59
-rw-r--r--ct2n/delzip2
-rw-r--r--ct2n/description-en-US.txt4
-rw-r--r--ct2n/makefile.mk66
-rw-r--r--ct2n/prj/build.lst5
-rw-r--r--ct2n/prj/d.lst1
-rw-r--r--cui/AllLangResTarget_cui.mk2
-rw-r--r--cui/UI_cui.mk4
-rw-r--r--cui/source/customize/acccfg.cxx48
-rw-r--r--cui/source/customize/acccfg.hrc7
-rw-r--r--cui/source/customize/acccfg.src32
-rw-r--r--cui/source/customize/cfg.cxx104
-rw-r--r--cui/source/customize/cfgutil.cxx62
-rw-r--r--cui/source/customize/macropg.cxx22
-rw-r--r--cui/source/customize/selector.cxx314
-rw-r--r--cui/source/customize/selector.hrc45
-rw-r--r--cui/source/customize/selector.src183
-rw-r--r--cui/source/dialogs/about.cxx9
-rw-r--r--cui/source/dialogs/colorpicker.cxx4
-rw-r--r--cui/source/dialogs/cuifmsearch.cxx20
-rw-r--r--cui/source/dialogs/cuigaldlg.cxx42
-rw-r--r--cui/source/dialogs/cuires.src62
-rw-r--r--cui/source/dialogs/hangulhanjadlg.cxx8
-rw-r--r--cui/source/dialogs/hldocntp.cxx7
-rw-r--r--cui/source/dialogs/hlmarkwn.cxx14
-rw-r--r--cui/source/dialogs/insdlg.cxx200
-rw-r--r--cui/source/dialogs/insrc.cxx26
-rw-r--r--cui/source/dialogs/insrc.src109
-rw-r--r--cui/source/dialogs/linkdlg.cxx24
-rw-r--r--cui/source/dialogs/multipat.cxx21
-rw-r--r--cui/source/dialogs/scriptdlg.cxx289
-rw-r--r--cui/source/dialogs/scriptdlg.hrc29
-rw-r--r--cui/source/dialogs/scriptdlg.src110
-rw-r--r--cui/source/dialogs/srchxtra.cxx2
-rw-r--r--cui/source/dialogs/svuidlg.hrc25
-rw-r--r--cui/source/dialogs/svuidlg.src192
-rw-r--r--cui/source/dialogs/thesdlg.cxx20
-rw-r--r--cui/source/dialogs/thesdlg_impl.hxx6
-rw-r--r--cui/source/factory/dlgfact.cxx13
-rw-r--r--cui/source/factory/dlgfact.hxx2
-rw-r--r--cui/source/inc/acccfg.hxx5
-rw-r--r--cui/source/inc/autocdlg.hxx8
-rw-r--r--cui/source/inc/cfg.hxx38
-rw-r--r--cui/source/inc/cfgutil.hxx10
-rw-r--r--cui/source/inc/cuifmsearch.hxx4
-rw-r--r--cui/source/inc/cuigaldlg.hxx4
-rw-r--r--cui/source/inc/cuires.hrc31
-rw-r--r--cui/source/inc/cuitabline.hxx45
-rw-r--r--cui/source/inc/dbregister.hxx6
-rw-r--r--cui/source/inc/helpid.hrc5
-rw-r--r--cui/source/inc/hlmarkwn.hxx4
-rw-r--r--cui/source/inc/insdlg.hxx65
-rw-r--r--cui/source/inc/insrc.hxx13
-rw-r--r--cui/source/inc/optdict.hxx2
-rw-r--r--cui/source/inc/optlingu.hxx6
-rw-r--r--cui/source/inc/optpath.hxx4
-rw-r--r--cui/source/inc/radiobtnbox.hxx2
-rw-r--r--cui/source/inc/scriptdlg.hxx49
-rw-r--r--cui/source/inc/selector.hxx72
-rw-r--r--cui/source/inc/thesdlg.hxx8
-rw-r--r--cui/source/inc/treeopt.hxx2
-rw-r--r--cui/source/options/certpath.cxx23
-rw-r--r--cui/source/options/certpath.hxx2
-rw-r--r--cui/source/options/dbregister.cxx14
-rw-r--r--cui/source/options/fontsubs.cxx26
-rw-r--r--cui/source/options/fontsubs.hxx10
-rw-r--r--cui/source/options/optHeaderTabListbox.cxx8
-rw-r--r--cui/source/options/optHeaderTabListbox.hxx2
-rw-r--r--cui/source/options/optcolor.cxx4
-rw-r--r--cui/source/options/optdict.cxx20
-rw-r--r--cui/source/options/optfltr.cxx16
-rw-r--r--cui/source/options/optfltr.hxx6
-rw-r--r--cui/source/options/optjava.cxx27
-rw-r--r--cui/source/options/optjava.hxx6
-rw-r--r--cui/source/options/optlingu.cxx335
-rw-r--r--cui/source/options/optpath.cxx17
-rw-r--r--cui/source/options/optupdt.cxx8
-rw-r--r--cui/source/options/radiobtnbox.cxx6
-rw-r--r--cui/source/options/treeopt.cxx42
-rw-r--r--cui/source/options/webconninfo.cxx10
-rw-r--r--cui/source/tabpages/autocdlg.cxx52
-rw-r--r--cui/source/tabpages/macroass.cxx12
-rw-r--r--cui/source/tabpages/tabline.hrc45
-rw-r--r--cui/source/tabpages/tabline.src65
-rw-r--r--cui/source/tabpages/tpline.cxx166
-rw-r--r--cui/uiconfig/ui/charnamepage.ui44
-rw-r--r--cui/uiconfig/ui/effectspage.ui8
-rw-r--r--cui/uiconfig/ui/insertfloatingframe.ui505
-rw-r--r--cui/uiconfig/ui/insertoleobject.ui8
-rw-r--r--cui/uiconfig/ui/insertplugin.ui8
-rw-r--r--cui/uiconfig/ui/insertrowcolumn.ui252
-rw-r--r--cui/uiconfig/ui/macroselectordialog.ui358
-rw-r--r--cui/uiconfig/ui/positionpage.ui19
-rw-r--r--cui/uiconfig/ui/scriptorganizer.ui199
-rw-r--r--cui/uiconfig/ui/thesaurus.ui3
-rw-r--r--cui/uiconfig/ui/twolinespage.ui12
-rw-r--r--cui/uiconfig/ui/zoomdialog.ui20
-rw-r--r--cui/util/hidother.src4
-rw-r--r--curl/ExternalPackage_curl.mk40
-rw-r--r--curl/ExternalProject_curl.mk58
-rw-r--r--curl/Makefile (renamed from saxon/Makefile)0
-rw-r--r--curl/Module_curl.mk20
-rw-r--r--curl/UnpackedTarball_curl.mk32
-rw-r--r--curl/curl-7.26.0_mingw.patch2
-rw-r--r--curl/curl-7.26.0_win.patch20
-rw-r--r--curl/makefile.mk11
-rw-r--r--curl/prj/d.lst18
-rw-r--r--dbaccess/JunitTest_dbaccess_complex.mk10
-rw-r--r--dbaccess/JunitTest_dbaccess_unoapi.mk8
-rw-r--r--dbaccess/source/core/api/KeySet.cxx7
-rw-r--r--dbaccess/source/core/api/OptimisticSet.cxx8
-rw-r--r--dbaccess/source/core/api/RowSetCache.cxx2
-rw-r--r--dbaccess/source/core/api/SingleSelectQueryComposer.cxx15
-rw-r--r--dbaccess/source/core/api/definitioncolumn.cxx42
-rw-r--r--dbaccess/source/core/dataaccess/ContentHelper.cxx2
-rw-r--r--dbaccess/source/core/dataaccess/ModelImpl.cxx6
-rw-r--r--dbaccess/source/core/dataaccess/databasedocument.cxx8
-rw-r--r--dbaccess/source/core/dataaccess/datasource.cxx1
-rw-r--r--dbaccess/source/core/dataaccess/documentdefinition.cxx3
-rw-r--r--dbaccess/source/core/inc/definitioncolumn.hxx2
-rw-r--r--dbaccess/source/core/recovery/storagexmlstream.cxx5
-rw-r--r--dbaccess/source/ext/macromigration/migrationengine.cxx1
-rw-r--r--dbaccess/source/inc/stringconstants.inc1
-rw-r--r--dbaccess/source/ui/app/AppController.cxx6
-rw-r--r--dbaccess/source/ui/app/AppController.hxx4
-rw-r--r--dbaccess/source/ui/app/AppDetailPageHelper.cxx56
-rw-r--r--dbaccess/source/ui/app/AppDetailPageHelper.hxx10
-rw-r--r--dbaccess/source/ui/app/AppDetailView.cxx36
-rw-r--r--dbaccess/source/ui/app/AppDetailView.hxx22
-rw-r--r--dbaccess/source/ui/app/AppView.cxx8
-rw-r--r--dbaccess/source/ui/app/AppView.hxx10
-rw-r--r--dbaccess/source/ui/browser/brwctrlr.cxx2
-rw-r--r--dbaccess/source/ui/browser/dbtreeview.cxx2
-rw-r--r--dbaccess/source/ui/browser/dbtreeview.hxx6
-rw-r--r--dbaccess/source/ui/browser/dsEntriesNoExp.cxx22
-rw-r--r--dbaccess/source/ui/browser/dsbrowserDnD.cxx18
-rw-r--r--dbaccess/source/ui/browser/genericcontroller.cxx2
-rw-r--r--dbaccess/source/ui/browser/unodatbr.cxx167
-rw-r--r--dbaccess/source/ui/control/dbtreelistbox.cxx69
-rw-r--r--dbaccess/source/ui/control/listviewitems.cxx4
-rw-r--r--dbaccess/source/ui/control/marktree.cxx20
-rw-r--r--dbaccess/source/ui/control/tabletree.cxx54
-rw-r--r--dbaccess/source/ui/dlg/ConnectionHelper.cxx10
-rw-r--r--dbaccess/source/ui/dlg/adtabdlg.cxx14
-rw-r--r--dbaccess/source/ui/dlg/indexdialog.cxx40
-rw-r--r--dbaccess/source/ui/dlg/paramdialog.cxx32
-rw-r--r--dbaccess/source/ui/dlg/queryfilter.cxx4
-rw-r--r--dbaccess/source/ui/dlg/sqlmessage.cxx4
-rw-r--r--dbaccess/source/ui/dlg/tablespage.cxx32
-rw-r--r--dbaccess/source/ui/dlg/tablespage.hxx2
-rw-r--r--dbaccess/source/ui/inc/TableCopyHelper.hxx4
-rw-r--r--dbaccess/source/ui/inc/TableWindow.hxx4
-rw-r--r--dbaccess/source/ui/inc/TableWindowListBox.hxx4
-rw-r--r--dbaccess/source/ui/inc/WNameMatch.hxx4
-rw-r--r--dbaccess/source/ui/inc/callbacks.hxx4
-rw-r--r--dbaccess/source/ui/inc/dbtreelistbox.hxx26
-rw-r--r--dbaccess/source/ui/inc/indexdialog.hxx18
-rw-r--r--dbaccess/source/ui/inc/listviewitems.hxx6
-rw-r--r--dbaccess/source/ui/inc/marktree.hxx4
-rw-r--r--dbaccess/source/ui/inc/paramdialog.hxx2
-rw-r--r--dbaccess/source/ui/inc/queryfilter.hxx2
-rw-r--r--dbaccess/source/ui/inc/tabletree.hxx26
-rw-r--r--dbaccess/source/ui/inc/unodatbr.hxx74
-rw-r--r--dbaccess/source/ui/misc/WNameMatch.cxx32
-rw-r--r--dbaccess/source/ui/querydesign/ConnectionLine.cxx6
-rw-r--r--dbaccess/source/ui/querydesign/JoinTableView.cxx8
-rw-r--r--dbaccess/source/ui/querydesign/QTableWindow.cxx4
-rw-r--r--dbaccess/source/ui/querydesign/QTableWindow.hxx2
-rw-r--r--dbaccess/source/ui/querydesign/QueryDesignView.cxx5
-rw-r--r--dbaccess/source/ui/querydesign/TableWindow.cxx12
-rw-r--r--dbaccess/source/ui/querydesign/TableWindowListBox.cxx12
-rw-r--r--dbaccess/source/ui/querydesign/querycontroller.cxx14
-rw-r--r--dbaccess/source/ui/uno/composerdialogs.cxx2
-rw-r--r--dbaccess/source/ui/uno/dbinteraction.cxx2
-rw-r--r--dbaccess/uiconfig/dbapp/menubar/menubar.xml3
-rw-r--r--dbaccess/uiconfig/dbquery/menubar/menubar.xml3
-rw-r--r--dbaccess/uiconfig/dbrelation/menubar/menubar.xml3
-rw-r--r--dbaccess/uiconfig/dbtable/menubar/menubar.xml3
-rw-r--r--dbaccess/uiconfig/dbtdata/menubar/menubar.xml3
-rwxr-xr-xdesktop/scripts/soffice.sh2
-rw-r--r--desktop/source/app/app.cxx15
-rw-r--r--desktop/source/app/main.c28
-rw-r--r--desktop/source/deployment/dp_persmap.cxx18
-rw-r--r--desktop/source/deployment/gui/dp_gui_service.cxx15
-rw-r--r--desktop/source/deployment/gui/dp_gui_updatedialog.cxx16
-rw-r--r--desktop/source/deployment/inc/dp_misc.h8
-rw-r--r--desktop/source/deployment/manager/dp_extensionmanager.cxx37
-rw-r--r--desktop/source/deployment/manager/dp_extensionmanager.hxx5
-rw-r--r--desktop/source/deployment/manager/dp_manager.cxx11
-rw-r--r--desktop/source/deployment/misc/dp_misc.cxx22
-rw-r--r--desktop/source/deployment/registry/dp_backend.cxx4
-rw-r--r--desktop/source/deployment/registry/package/dp_package.cxx16
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_app.cxx37
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_misc.cxx16
-rw-r--r--desktop/source/pkgchk/unopkg/unopkg_shared.h22
-rw-r--r--desktop/source/splash/splash.cxx8
-rw-r--r--desktop/test/deployment/active/active_native.cxx10
-rw-r--r--desktop/test/deployment/passive/passive_native.cxx10
m---------dictionaries0
-rw-r--r--distro-configs/LibreOfficeLinux.conf2
-rw-r--r--distro-configs/LibreOfficeMacOSX.conf1
-rw-r--r--distro-configs/LibreOfficeMinGW.conf1
-rw-r--r--distro-configs/LibreOfficeOpenBSD.conf1
-rw-r--r--distro-configs/LibreOfficeWin32.conf1
-rw-r--r--distro-configs/OxygenOfficeLinux.conf1
-rw-r--r--distro-configs/OxygenOfficeWin32.conf1
-rw-r--r--dmake/unix/arlib.c6
-rwxr-xr-xdownload161
-rw-r--r--drawinglayer/Library_drawinglayer.mk12
-rw-r--r--drawinglayer/Makefile7
-rw-r--r--drawinglayer/Package_inc.mk12
-rw-r--r--drawinglayer/README4
-rw-r--r--drawinglayer/drawinglayer.component (renamed from wizards/com/sun/star/wizards/fax/pyfax.component)7
-rw-r--r--drawinglayer/inc/drawinglayer/animation/animationtiming.hxx38
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fillbitmapattribute.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fillgradientattribute.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fillhatchattribute.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/fontattribute.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/lineattribute.hxx42
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/linestartendattribute.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/materialattribute3d.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrallattribute3d.hxx38
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrfillattribute.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrfillbitmapattribute.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlightattribute3d.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlightingattribute3d.hxx40
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlineattribute.hxx43
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrlinestartendattribute.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrobjectattribute3d.hxx40
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrsceneattribute3d.hxx40
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/sdrshadowattribute.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/attribute/strokeattribute.hxx38
-rw-r--r--drawinglayer/inc/drawinglayer/geometry/viewinformation2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/geometry/viewinformation3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/animatedprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/bitmapprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/chartprimitive2d.hxx81
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/controlprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/cropprimitive2d.hxx102
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/discretebitmapprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/discreteshadowprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx95
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/embedded3dprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/epsprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/fillbitmapprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/fillgradientprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/fillhatchprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/graphicprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/gridprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/groupprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/helplineprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/hiddengeometryprimitive2d.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/invertprimitive2d.hxx43
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/markerarrayprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/maskprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/mediaprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/patternfillprimitive2d.hxx81
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx41
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/primitivetools2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/rendergraphicprimitive2d.hxx93
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/sceneprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/sdrdecompositiontools2d.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/shadowprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/structuretagprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx403
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textbreakuphelper.hxx84
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx48
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/texteffectprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textenumsprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/texthierarchyprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx44
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textlineprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textprimitive2d.hxx43
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/transformprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/transparenceprimitive2d.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/wallpaperprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive2d/wrongspellprimitive2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/baseprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/groupprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/hatchtextureprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polygontubeprimitive3d.hxx43
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrcubeprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrdecompositiontools3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrextrudelathetools3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrextrudeprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrlatheprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrpolypolygonprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/sdrsphereprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/shadowprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/textureprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/primitive3d/transformprimitive3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/baseprocessor2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/canvasprocessor.hxx43
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/contourextractor2d.hxx49
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/hittestprocessor2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/linegeometryextractor2d.hxx46
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/processorfromoutputdevice.hxx43
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/textaspolygonextractor2d.hxx39
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/vclpixelprocessor2d.hxx45
-rw-r--r--drawinglayer/inc/drawinglayer/processor2d/vclprocessor2d.hxx43
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/baseprocessor3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/cutfindprocessor3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/defaultprocessor3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/geometry2dextractor.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/shadow3dextractor.hxx48
-rw-r--r--drawinglayer/inc/drawinglayer/processor3d/zbufferprocessor3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/texture/texture.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/texture/texture3d.hxx37
-rw-r--r--drawinglayer/inc/drawinglayer/tools/converters.hxx47
-rw-r--r--drawinglayer/source/attribute/fillbitmapattribute.cxx37
-rw-r--r--drawinglayer/source/attribute/lineattribute.cxx67
-rw-r--r--drawinglayer/source/attribute/sdrallattribute3d.cxx43
-rw-r--r--drawinglayer/source/attribute/sdrfillbitmapattribute.cxx37
-rw-r--r--drawinglayer/source/attribute/sdrlightattribute3d.cxx39
-rw-r--r--drawinglayer/source/attribute/sdrlightingattribute3d.cxx39
-rw-r--r--drawinglayer/source/attribute/sdrlineattribute.cxx64
-rw-r--r--drawinglayer/source/attribute/sdrobjectattribute3d.cxx39
-rw-r--r--drawinglayer/source/attribute/sdrsceneattribute3d.cxx39
-rw-r--r--drawinglayer/source/drawinglayeruno/drawinglayeruno.cxx89
-rw-r--r--drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx217
-rw-r--r--drawinglayer/source/primitive2d/baseprimitive2d.cxx58
-rw-r--r--drawinglayer/source/primitive2d/borderlineprimitive2d.cxx37
-rw-r--r--drawinglayer/source/primitive2d/chartprimitive2d.cxx79
-rw-r--r--drawinglayer/source/primitive2d/controlprimitive2d.cxx37
-rw-r--r--drawinglayer/source/primitive2d/cropprimitive2d.cxx196
-rw-r--r--drawinglayer/source/primitive2d/epsprimitive2d.cxx37
-rw-r--r--drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx37
-rw-r--r--drawinglayer/source/primitive2d/graphicprimitive2d.cxx209
-rw-r--r--drawinglayer/source/primitive2d/metafileprimitive2d.cxx68
-rw-r--r--drawinglayer/source/primitive2d/patternfillprimitive2d.cxx150
-rw-r--r--drawinglayer/source/primitive2d/polygonprimitive2d.cxx62
-rw-r--r--drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx47
-rw-r--r--drawinglayer/source/primitive2d/rendergraphicprimitive2d.cxx79
-rw-r--r--drawinglayer/source/primitive2d/sceneprimitive2d.cxx117
-rw-r--r--drawinglayer/source/primitive2d/svggradientprimitive2d.cxx1087
-rw-r--r--drawinglayer/source/primitive2d/textbreakuphelper.cxx303
-rw-r--r--drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx299
-rw-r--r--drawinglayer/source/primitive2d/textlayoutdevice.cxx37
-rw-r--r--drawinglayer/source/primitive2d/textprimitive2d.cxx37
-rw-r--r--drawinglayer/source/primitive3d/polygonprimitive3d.cxx46
-rw-r--r--drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx266
-rw-r--r--drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx39
-rw-r--r--drawinglayer/source/primitive3d/sdrextrudelathetools3d.cxx68
-rw-r--r--drawinglayer/source/primitive3d/sdrextrudeprimitive3d.cxx40
-rw-r--r--drawinglayer/source/primitive3d/sdrlatheprimitive3d.cxx38
-rw-r--r--drawinglayer/source/primitive3d/sdrprimitive3d.cxx37
-rw-r--r--drawinglayer/source/processor2d/canvasprocessor.cxx77
-rw-r--r--drawinglayer/source/processor2d/contourextractor2d.cxx69
-rw-r--r--drawinglayer/source/processor2d/helperchartrenderer.cxx151
-rw-r--r--drawinglayer/source/processor2d/helperchartrenderer.hxx61
-rw-r--r--drawinglayer/source/processor2d/hittestprocessor2d.cxx38
-rw-r--r--drawinglayer/source/processor2d/linegeometryextractor2d.cxx38
-rw-r--r--drawinglayer/source/processor2d/textaspolygonextractor2d.cxx38
-rw-r--r--drawinglayer/source/processor2d/vclhelperbitmaprender.cxx53
-rw-r--r--drawinglayer/source/processor2d/vclhelperbufferdevice.cxx365
-rw-r--r--drawinglayer/source/processor2d/vclhelperbufferdevice.hxx41
-rw-r--r--drawinglayer/source/processor2d/vclhelpergradient.cxx37
-rw-r--r--drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx194
-rw-r--r--drawinglayer/source/processor2d/vclpixelprocessor2d.cxx81
-rw-r--r--drawinglayer/source/processor2d/vclprocessor2d.cxx362
-rw-r--r--drawinglayer/source/processor3d/baseprocessor3d.cxx37
-rw-r--r--drawinglayer/source/processor3d/shadow3dextractor.cxx64
-rw-r--r--drawinglayer/source/processor3d/zbufferprocessor3d.cxx60
-rw-r--r--drawinglayer/source/tools/converters.cxx137
-rw-r--r--dtrans/prj/build.lst2
-rw-r--r--dtrans/source/win32/dtobj/FmtFilter.cxx6
-rw-r--r--editeng/AllLangResTarget_editeng.mk33
-rw-r--r--editeng/CppunitTest_editeng_borderline.mk33
-rw-r--r--editeng/CppunitTest_editeng_lookuptree.mk33
-rw-r--r--editeng/Library_editeng.mk33
-rw-r--r--editeng/Makefile9
-rw-r--r--editeng/Module_editeng.mk33
-rw-r--r--editeng/Package_inc.mk33
-rw-r--r--editeng/inc/editeng/AccessibleContextBase.hxx37
-rw-r--r--editeng/inc/editeng/AccessibleEditableTextPara.hxx37
-rw-r--r--editeng/inc/editeng/AccessibleImageBullet.hxx37
-rw-r--r--editeng/inc/editeng/AccessibleParaManager.hxx37
-rw-r--r--editeng/inc/editeng/AccessibleStaticTextBase.hxx37
-rw-r--r--editeng/inc/editeng/UnoForbiddenCharsTable.hxx43
-rw-r--r--editeng/inc/editeng/acorrcfg.hxx37
-rw-r--r--editeng/inc/editeng/adjitem.hxx37
-rw-r--r--editeng/inc/editeng/akrnitem.hxx37
-rw-r--r--editeng/inc/editeng/blnkitem.hxx43
-rw-r--r--editeng/inc/editeng/bolnitem.hxx37
-rw-r--r--editeng/inc/editeng/borderline.hxx37
-rw-r--r--editeng/inc/editeng/boxitem.hxx37
-rw-r--r--editeng/inc/editeng/brkitem.hxx37
-rw-r--r--editeng/inc/editeng/brshitem.hxx37
-rw-r--r--editeng/inc/editeng/bulitem.hxx37
-rw-r--r--editeng/inc/editeng/charhiddenitem.hxx43
-rw-r--r--editeng/inc/editeng/charreliefitem.hxx37
-rw-r--r--editeng/inc/editeng/charrotateitem.hxx37
-rw-r--r--editeng/inc/editeng/charscaleitem.hxx37
-rw-r--r--editeng/inc/editeng/cmapitem.hxx37
-rw-r--r--editeng/inc/editeng/cntritem.hxx43
-rw-r--r--editeng/inc/editeng/colritem.hxx37
-rw-r--r--editeng/inc/editeng/crsditem.hxx37
-rw-r--r--editeng/inc/editeng/cscoitem.hxx37
-rw-r--r--editeng/inc/editeng/editdata.hxx37
-rw-r--r--editeng/inc/editeng/editeng.hxx37
-rw-r--r--editeng/inc/editeng/editobj.hxx37
-rw-r--r--editeng/inc/editeng/editstat.hxx37
-rw-r--r--editeng/inc/editeng/editund2.hxx37
-rw-r--r--editeng/inc/editeng/editview.hxx37
-rw-r--r--editeng/inc/editeng/eerdll.hxx43
-rw-r--r--editeng/inc/editeng/emphitem.hxx37
-rw-r--r--editeng/inc/editeng/escpitem.hxx37
-rw-r--r--editeng/inc/editeng/fhgtitem.hxx37
-rw-r--r--editeng/inc/editeng/flditem.hxx37
-rw-r--r--editeng/inc/editeng/flstitem.hxx37
-rw-r--r--editeng/inc/editeng/fontitem.hxx37
-rw-r--r--editeng/inc/editeng/forbiddencharacterstable.hxx43
-rw-r--r--editeng/inc/editeng/frmdiritem.hxx37
-rw-r--r--editeng/inc/editeng/fwdtitem.hxx37
-rw-r--r--editeng/inc/editeng/hangulhanja.hxx45
-rw-r--r--editeng/inc/editeng/hyznitem.hxx37
-rw-r--r--editeng/inc/editeng/itemtype.hxx37
-rw-r--r--editeng/inc/editeng/justifyitem.hxx37
-rw-r--r--editeng/inc/editeng/keepitem.hxx37
-rw-r--r--editeng/inc/editeng/kernitem.hxx37
-rw-r--r--editeng/inc/editeng/langitem.hxx37
-rw-r--r--editeng/inc/editeng/lcolitem.hxx37
-rw-r--r--editeng/inc/editeng/lrspitem.hxx37
-rw-r--r--editeng/inc/editeng/lspcitem.hxx37
-rw-r--r--editeng/inc/editeng/measfld.hxx43
-rw-r--r--editeng/inc/editeng/nhypitem.hxx43
-rw-r--r--editeng/inc/editeng/nlbkitem.hxx43
-rw-r--r--editeng/inc/editeng/numitem.hxx37
-rw-r--r--editeng/inc/editeng/opaqitem.hxx37
-rw-r--r--editeng/inc/editeng/orphitem.hxx37
-rw-r--r--editeng/inc/editeng/outliner.hxx37
-rw-r--r--editeng/inc/editeng/paravertalignitem.hxx37
-rw-r--r--editeng/inc/editeng/pbinitem.hxx37
-rw-r--r--editeng/inc/editeng/pgrditem.hxx43
-rw-r--r--editeng/inc/editeng/pmdlitem.hxx37
-rw-r--r--editeng/inc/editeng/postitem.hxx37
-rw-r--r--editeng/inc/editeng/prntitem.hxx37
-rw-r--r--editeng/inc/editeng/protitem.hxx37
-rw-r--r--editeng/inc/editeng/prszitem.hxx43
-rw-r--r--editeng/inc/editeng/scriptspaceitem.hxx43
-rw-r--r--editeng/inc/editeng/scripttypeitem.hxx37
-rw-r--r--editeng/inc/editeng/shaditem.hxx37
-rw-r--r--editeng/inc/editeng/shdditem.hxx37
-rw-r--r--editeng/inc/editeng/sizeitem.hxx37
-rw-r--r--editeng/inc/editeng/spltitem.hxx37
-rw-r--r--editeng/inc/editeng/splwrap.hxx37
-rw-r--r--editeng/inc/editeng/svxacorr.hxx40
-rw-r--r--editeng/inc/editeng/svxenum.hxx37
-rw-r--r--editeng/inc/editeng/svxfont.hxx40
-rw-r--r--editeng/inc/editeng/svxrtf.hxx59
-rw-r--r--editeng/inc/editeng/tstpitem.hxx37
-rw-r--r--editeng/inc/editeng/twolinesitem.hxx37
-rw-r--r--editeng/inc/editeng/txtrange.hxx37
-rw-r--r--editeng/inc/editeng/udlnitem.hxx37
-rw-r--r--editeng/inc/editeng/ulspitem.hxx37
-rw-r--r--editeng/inc/editeng/unoedhlp.hxx37
-rw-r--r--editeng/inc/editeng/unoedprx.hxx37
-rw-r--r--editeng/inc/editeng/unoedsrc.hxx37
-rw-r--r--editeng/inc/editeng/unofdesc.hxx43
-rw-r--r--editeng/inc/editeng/unofield.hxx37
-rw-r--r--editeng/inc/editeng/unofored.hxx37
-rw-r--r--editeng/inc/editeng/unoforou.hxx37
-rw-r--r--editeng/inc/editeng/unoipset.hxx37
-rw-r--r--editeng/inc/editeng/unolingu.hxx43
-rw-r--r--editeng/inc/editeng/unonrule.hxx37
-rw-r--r--editeng/inc/editeng/unoprnms.hxx40
-rw-r--r--editeng/inc/editeng/unoviwou.hxx43
-rw-r--r--editeng/inc/editeng/wghtitem.hxx37
-rw-r--r--editeng/inc/editeng/widwitem.hxx37
-rw-r--r--editeng/inc/editeng/writingmodeitem.hxx43
-rw-r--r--editeng/inc/editeng/wrlmitem.hxx37
-rw-r--r--editeng/inc/editeng/xmlcnitm.hxx37
-rw-r--r--editeng/source/accessibility/AccessibleComponentBase.cxx37
-rw-r--r--editeng/source/accessibility/AccessibleContextBase.cxx37
-rw-r--r--editeng/source/accessibility/AccessibleEditableTextPara.cxx37
-rw-r--r--editeng/source/accessibility/AccessibleImageBullet.cxx37
-rw-r--r--editeng/source/accessibility/AccessibleParaManager.cxx37
-rw-r--r--editeng/source/accessibility/AccessibleStaticTextBase.cxx37
-rw-r--r--editeng/source/editeng/editattr.cxx37
-rw-r--r--editeng/source/editeng/editattr.hxx37
-rw-r--r--editeng/source/editeng/editdbg.cxx37
-rw-r--r--editeng/source/editeng/editdbg.hxx43
-rw-r--r--editeng/source/editeng/editdoc.cxx39
-rw-r--r--editeng/source/editeng/editdoc.hxx37
-rw-r--r--editeng/source/editeng/editeng.cxx39
-rw-r--r--editeng/source/editeng/editeng.src37
-rw-r--r--editeng/source/editeng/editobj.cxx37
-rw-r--r--editeng/source/editeng/editobj2.hxx37
-rw-r--r--editeng/source/editeng/editsel.cxx37
-rw-r--r--editeng/source/editeng/editsel.hxx43
-rw-r--r--editeng/source/editeng/editundo.cxx37
-rw-r--r--editeng/source/editeng/editundo.hxx37
-rw-r--r--editeng/source/editeng/editview.cxx37
-rw-r--r--editeng/source/editeng/edtspell.cxx37
-rw-r--r--editeng/source/editeng/edtspell.hxx37
-rw-r--r--editeng/source/editeng/eehtml.cxx37
-rw-r--r--editeng/source/editeng/eehtml.hxx37
-rw-r--r--editeng/source/editeng/eeobj.cxx37
-rw-r--r--editeng/source/editeng/eerdll.cxx37
-rw-r--r--editeng/source/editeng/eerdll2.hxx43
-rw-r--r--editeng/source/editeng/eertfpar.cxx37
-rw-r--r--editeng/source/editeng/eertfpar.hxx37
-rw-r--r--editeng/source/editeng/impedit.cxx37
-rw-r--r--editeng/source/editeng/impedit.hxx39
-rw-r--r--editeng/source/editeng/impedit2.cxx41
-rw-r--r--editeng/source/editeng/impedit3.cxx96
-rw-r--r--editeng/source/editeng/impedit4.cxx39
-rw-r--r--editeng/source/editeng/impedit5.cxx37
-rw-r--r--editeng/source/editeng/makefile.mk71
-rw-r--r--editeng/source/editeng/textconv.cxx37
-rw-r--r--editeng/source/items/borderline.cxx37
-rw-r--r--editeng/source/items/bulitem.cxx37
-rw-r--r--editeng/source/items/charhiddenitem.cxx37
-rw-r--r--editeng/source/items/flditem.cxx37
-rw-r--r--editeng/source/items/frmitems.cxx37
-rw-r--r--editeng/source/items/itemtype.cxx37
-rw-r--r--editeng/source/items/justifyitem.cxx37
-rw-r--r--editeng/source/items/makefile.mk67
-rw-r--r--editeng/source/items/numitem.cxx37
-rw-r--r--editeng/source/items/optitems.cxx37
-rw-r--r--editeng/source/items/paperinf.cxx37
-rw-r--r--editeng/source/items/paraitem.cxx37
-rw-r--r--editeng/source/items/svdfield.cxx43
-rw-r--r--editeng/source/items/svxfont.cxx46
-rw-r--r--editeng/source/items/svxitems.src41
-rw-r--r--editeng/source/items/textitem.cxx39
-rw-r--r--editeng/source/items/writingmodeitem.cxx37
-rw-r--r--editeng/source/items/xmlcnitm.cxx37
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectExport.cxx37
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectExport.hxx37
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectImport.cxx37
-rw-r--r--editeng/source/misc/SvXMLAutoCorrectImport.hxx37
-rw-r--r--editeng/source/misc/acorrcfg.cxx37
-rw-r--r--editeng/source/misc/forbiddencharacterstable.cxx43
-rw-r--r--editeng/source/misc/hangulhanja.cxx120
-rw-r--r--editeng/source/misc/lingu.src43
-rw-r--r--editeng/source/misc/splwrap.cxx37
-rw-r--r--editeng/source/misc/svxacorr.cxx123
-rw-r--r--editeng/source/misc/swafopt.cxx37
-rw-r--r--editeng/source/misc/txtrange.cxx37
-rw-r--r--editeng/source/misc/unolingu.cxx69
-rw-r--r--editeng/source/outliner/outleeng.cxx39
-rw-r--r--editeng/source/outliner/outleeng.hxx37
-rw-r--r--editeng/source/outliner/outlin2.cxx37
-rw-r--r--editeng/source/outliner/outliner.cxx47
-rw-r--r--editeng/source/outliner/outlobj.cxx37
-rw-r--r--editeng/source/outliner/outlundo.cxx37
-rw-r--r--editeng/source/outliner/outlundo.hxx37
-rw-r--r--editeng/source/outliner/outlvw.cxx40
-rw-r--r--editeng/source/outliner/paralist.cxx37
-rw-r--r--editeng/source/outliner/paralist.hxx37
-rw-r--r--editeng/source/rtf/rtfgrf.cxx37
-rw-r--r--editeng/source/rtf/rtfitem.cxx37
-rw-r--r--editeng/source/rtf/svxrtf.cxx37
-rw-r--r--editeng/source/uno/UnoForbiddenCharsTable.cxx37
-rw-r--r--editeng/source/uno/unoedhlp.cxx37
-rw-r--r--editeng/source/uno/unoedprx.cxx37
-rw-r--r--editeng/source/uno/unoedsrc.cxx37
-rw-r--r--editeng/source/uno/unofdesc.cxx37
-rw-r--r--editeng/source/uno/unofield.cxx37
-rw-r--r--editeng/source/uno/unofored.cxx37
-rw-r--r--editeng/source/uno/unoforou.cxx37
-rw-r--r--editeng/source/uno/unoipset.cxx40
-rw-r--r--editeng/source/uno/unonrule.cxx37
-rw-r--r--editeng/source/uno/unopracc.cxx37
-rw-r--r--editeng/source/uno/unoviwou.cxx37
-rw-r--r--editeng/source/xml/xmltxtexp.cxx54
-rw-r--r--editeng/source/xml/xmltxtimp.cxx37
-rw-r--r--embeddedobj/Library_embobj.mk1
-rw-r--r--embeddedobj/README1
-rw-r--r--embeddedobj/prj/build.lst2
-rw-r--r--embeddedobj/source/commonembedding/embedobj.cxx11
-rw-r--r--embeddedobj/source/general/docholder.cxx8
-rw-r--r--embedserv/source/embed/docholder.cxx60
-rw-r--r--epm/ExternalPackage_epm.mk (renamed from saxon/Package_saxon.mk)10
-rw-r--r--epm/ExternalProject_epm.mk25
-rw-r--r--epm/Makefile7
-rw-r--r--epm/Module_epm.mk26
-rw-r--r--epm/UnpackedTarball_epm.mk (renamed from saxon/UnpackedTarball_saxon.mk)8
-rw-r--r--epm/makefile.mk66
-rw-r--r--epm/prj/d.lst3
-rw-r--r--eventattacher/source/eventattacher.cxx5
-rw-r--r--expat/ExternalPackage_expat.mk17
-rw-r--r--expat/ExternalProject_expat.mk24
-rw-r--r--expat/Makefile7
-rw-r--r--expat/Module_expat.mk47
-rw-r--r--expat/StaticLibrary_ascii_expat_xmlparse.mk49
-rw-r--r--expat/StaticLibrary_expat_x64.mk34
-rw-r--r--expat/StaticLibrary_expat_xmlparse.mk53
-rw-r--r--expat/StaticLibrary_expat_xmltok.mk50
-rw-r--r--expat/UnpackedTarball_expat.mk33
-rw-r--r--expat/expat-2.1.0.patch107
-rw-r--r--expat/makefile.mk69
-rw-r--r--expat/prj/build.lst3
-rw-r--r--expat/prj/d.lst15
-rw-r--r--extensions/Makefile7
-rw-r--r--extensions/StaticLibrary_npsoenv.mk4
-rw-r--r--extensions/prj/build.lst2
-rw-r--r--extensions/qa/update/simple.xml8
-rw-r--r--extensions/source/abpilot/abp.component43
-rw-r--r--extensions/source/abpilot/abpfinalpage.cxx37
-rw-r--r--extensions/source/abpilot/abpfinalpage.hxx37
-rw-r--r--extensions/source/abpilot/abpservices.cxx37
-rw-r--r--extensions/source/abpilot/abspilot.cxx37
-rw-r--r--extensions/source/abpilot/abspilot.hxx37
-rw-r--r--extensions/source/abpilot/abspilot.src37
-rw-r--r--extensions/source/abpilot/admininvokationimpl.cxx37
-rw-r--r--extensions/source/abpilot/datasourcehandling.cxx37
-rw-r--r--extensions/source/abpilot/fieldmappingimpl.cxx37
-rw-r--r--extensions/source/abpilot/fieldmappingpage.cxx37
-rw-r--r--extensions/source/abpilot/typeselectionpage.cxx37
-rw-r--r--extensions/source/abpilot/unodialogabp.cxx37
-rw-r--r--extensions/source/abpilot/unodialogabp.hxx37
-rw-r--r--extensions/source/activex/README.txt10
-rw-r--r--extensions/source/activex/SOActionsApproval.cxx18
-rw-r--r--extensions/source/activex/SOActionsApproval.h20
-rw-r--r--extensions/source/activex/SOActiveX.cxx20
-rw-r--r--extensions/source/activex/SOActiveX.h18
-rw-r--r--extensions/source/activex/SOComWindowPeer.cxx18
-rw-r--r--extensions/source/activex/SOComWindowPeer.h20
-rw-r--r--extensions/source/activex/SODispatchInterceptor.cxx18
-rw-r--r--extensions/source/activex/SODispatchInterceptor.h20
-rw-r--r--extensions/source/activex/StdAfx2.cxx18
-rw-r--r--extensions/source/activex/StdAfx2.h18
-rw-r--r--extensions/source/activex/com_uno_helper.h18
-rw-r--r--extensions/source/activex/example.html17
-rw-r--r--extensions/source/activex/resource.h18
-rw-r--r--extensions/source/activex/so_activex.cxx19
-rw-r--r--extensions/source/activex/so_activex.idl18
-rw-r--r--extensions/source/activex/so_activex.rc18
-rw-r--r--extensions/source/bibliography/bib.component43
-rw-r--r--extensions/source/bibliography/bibbeam.cxx37
-rw-r--r--extensions/source/bibliography/bibconfig.cxx37
-rw-r--r--extensions/source/bibliography/bibconfig.hxx37
-rw-r--r--extensions/source/bibliography/bibload.cxx37
-rw-r--r--extensions/source/bibliography/bibview.cxx37
-rw-r--r--extensions/source/bibliography/datman.cxx41
-rw-r--r--extensions/source/bibliography/formcontrolcontainer.cxx37
-rw-r--r--extensions/source/bibliography/framectr.cxx37
-rw-r--r--extensions/source/bibliography/framectr.hxx37
-rw-r--r--extensions/source/bibliography/general.cxx39
-rw-r--r--extensions/source/bibliography/loadlisteneradapter.cxx37
-rw-r--r--extensions/source/bibliography/toolbar.cxx37
-rw-r--r--extensions/source/bibliography/toolbar.hxx37
-rw-r--r--extensions/source/bibliography/toolbar.src37
-rw-r--r--extensions/source/bibliography/uiconfig/sbibliography/menubar/menubar.xml3
-rw-r--r--extensions/source/config/ldap/componentdef.cxx43
-rw-r--r--extensions/source/config/ldap/ldapaccess.cxx37
-rw-r--r--extensions/source/config/ldap/ldapbe2.component43
-rw-r--r--extensions/source/config/ldap/ldapuserprofilebe.cxx37
-rw-r--r--extensions/source/config/ldap/ldapuserprofilebe.hxx37
-rw-r--r--extensions/source/dbpilots/commonpagesdbp.cxx37
-rw-r--r--extensions/source/dbpilots/commonpagesdbp.src37
-rw-r--r--extensions/source/dbpilots/controlwizard.cxx37
-rw-r--r--extensions/source/dbpilots/dbp.component43
-rw-r--r--extensions/source/dbpilots/dbpservices.cxx37
-rw-r--r--extensions/source/dbpilots/dbptools.cxx43
-rw-r--r--extensions/source/dbpilots/gridwizard.cxx37
-rw-r--r--extensions/source/dbpilots/groupboxwiz.cxx37
-rw-r--r--extensions/source/dbpilots/listcombowizard.cxx37
-rw-r--r--extensions/source/dbpilots/optiongrouplayouter.cxx37
-rw-r--r--extensions/source/dbpilots/unoautopilot.inl41
-rw-r--r--extensions/source/dbpilots/wizardservices.cxx37
-rw-r--r--extensions/source/inc/componentmodule.cxx37
-rw-r--r--extensions/source/logging/consolehandler.cxx37
-rw-r--r--extensions/source/logging/filehandler.cxx37
-rw-r--r--extensions/source/logging/log.component43
-rw-r--r--extensions/source/logging/log_module.cxx43
-rw-r--r--extensions/source/logging/log_module.hxx37
-rw-r--r--extensions/source/logging/log_services.cxx43
-rw-r--r--extensions/source/logging/loggerconfig.cxx37
-rw-r--r--extensions/source/logging/loghandler.hxx37
-rw-r--r--extensions/source/logging/plaintextformatter.cxx37
-rw-r--r--extensions/source/macosx/spotlight/GetMetadataForFile.m57
-rw-r--r--extensions/source/macosx/spotlight/OOoContentDataParser.m37
-rw-r--r--extensions/source/macosx/spotlight/OOoMetaDataParser.m37
-rw-r--r--extensions/source/macosx/spotlight/OOoSpotlightImporter.m37
-rw-r--r--extensions/source/macosx/spotlight/main.m92
-rw-r--r--extensions/source/macosx/spotlight/mdimporter/Info.plist17
-rw-r--r--extensions/source/macosx/spotlight/mdimporter/schema.xml18
-rw-r--r--extensions/source/macosx/spotlight/version.plist17
-rw-r--r--extensions/source/nsplugin/source/so_instance.cxx25
-rw-r--r--extensions/source/ole/ole2uno.hxx37
-rw-r--r--extensions/source/ole/oleautobridge.component43
-rw-r--r--extensions/source/ole/oleobjw.cxx40
-rw-r--r--extensions/source/ole/oleobjw.hxx37
-rw-r--r--extensions/source/ole/olethread.cxx37
-rw-r--r--extensions/source/ole/servprov.cxx40
-rw-r--r--extensions/source/ole/servreg.cxx41
-rw-r--r--extensions/source/ole/unoconversionutilities.hxx37
-rw-r--r--extensions/source/ole/unoobjw.cxx41
-rw-r--r--extensions/source/ole/unoobjw.hxx37
-rw-r--r--extensions/source/propctrlr/MasterDetailLinkDialog.cxx37
-rw-r--r--extensions/source/propctrlr/browserline.cxx37
-rw-r--r--extensions/source/propctrlr/browserline.hxx37
-rw-r--r--extensions/source/propctrlr/browserlistbox.cxx37
-rw-r--r--extensions/source/propctrlr/browserlistbox.hxx37
-rw-r--r--extensions/source/propctrlr/browserview.cxx37
-rw-r--r--extensions/source/propctrlr/browserview.hxx37
-rw-r--r--extensions/source/propctrlr/buttonnavigationhandler.cxx37
-rw-r--r--extensions/source/propctrlr/cellbindinghandler.cxx37
-rw-r--r--extensions/source/propctrlr/cellbindinghelper.cxx37
-rw-r--r--extensions/source/propctrlr/cellbindinghelper.hxx37
-rw-r--r--extensions/source/propctrlr/commoncontrol.hxx37
-rw-r--r--extensions/source/propctrlr/composeduiupdate.cxx37
-rw-r--r--extensions/source/propctrlr/composeduiupdate.hxx37
-rw-r--r--extensions/source/propctrlr/controlfontdialog.cxx37
-rw-r--r--extensions/source/propctrlr/defaultforminspection.cxx37
-rw-r--r--extensions/source/propctrlr/defaultforminspection.hxx37
-rw-r--r--extensions/source/propctrlr/defaulthelpprovider.cxx37
-rw-r--r--extensions/source/propctrlr/editpropertyhandler.cxx37
-rw-r--r--extensions/source/propctrlr/eformshelper.cxx37
-rw-r--r--extensions/source/propctrlr/eformspropertyhandler.cxx37
-rw-r--r--extensions/source/propctrlr/eventhandler.cxx42
-rw-r--r--extensions/source/propctrlr/eventhandler.hxx37
-rw-r--r--extensions/source/propctrlr/fontdialog.cxx37
-rw-r--r--extensions/source/propctrlr/formcomponenthandler.cxx37
-rw-r--r--extensions/source/propctrlr/formcontroller.cxx37
-rw-r--r--extensions/source/propctrlr/formgeometryhandler.cxx36
-rw-r--r--extensions/source/propctrlr/formlinkdialog.cxx37
-rw-r--r--extensions/source/propctrlr/formlinkdialog.hxx37
-rw-r--r--extensions/source/propctrlr/formmetadata.cxx37
-rw-r--r--extensions/source/propctrlr/formmetadata.hxx37
-rw-r--r--extensions/source/propctrlr/formres.src37
-rw-r--r--extensions/source/propctrlr/formstrings.hxx37
-rw-r--r--extensions/source/propctrlr/genericpropertyhandler.cxx43
-rw-r--r--extensions/source/propctrlr/handlerhelper.cxx37
-rw-r--r--extensions/source/propctrlr/listselectiondlg.cxx37
-rw-r--r--extensions/source/propctrlr/newdatatype.cxx37
-rw-r--r--extensions/source/propctrlr/pcr.component43
-rw-r--r--extensions/source/propctrlr/pcrcommon.cxx43
-rw-r--r--extensions/source/propctrlr/pcrcommontypes.hxx43
-rw-r--r--extensions/source/propctrlr/pcrcomponentcontext.cxx37
-rw-r--r--extensions/source/propctrlr/pcrcomponentcontext.hxx37
-rw-r--r--extensions/source/propctrlr/pcrmiscres.src37
-rw-r--r--extensions/source/propctrlr/pcrservices.cxx37
-rw-r--r--extensions/source/propctrlr/pcrunodialogs.cxx37
-rw-r--r--extensions/source/propctrlr/propcontroller.cxx37
-rw-r--r--extensions/source/propctrlr/propcontroller.hxx37
-rw-r--r--extensions/source/propctrlr/propcontrolobserver.hxx43
-rw-r--r--extensions/source/propctrlr/propertycomposer.cxx37
-rw-r--r--extensions/source/propctrlr/propertycomposer.hxx37
-rw-r--r--extensions/source/propctrlr/propertyeditor.cxx37
-rw-r--r--extensions/source/propctrlr/propertyeditor.hxx37
-rw-r--r--extensions/source/propctrlr/propertyhandler.cxx37
-rw-r--r--extensions/source/propctrlr/proplinelistener.hxx43
-rw-r--r--extensions/source/propctrlr/pushbuttonnavigation.cxx37
-rw-r--r--extensions/source/propctrlr/selectlabeldialog.cxx51
-rw-r--r--extensions/source/propctrlr/selectlabeldialog.hxx6
-rw-r--r--extensions/source/propctrlr/standardcontrol.cxx37
-rw-r--r--extensions/source/propctrlr/stringdefine.hxx43
-rw-r--r--extensions/source/propctrlr/stringrepresentation.cxx37
-rw-r--r--extensions/source/propctrlr/submissionhandler.cxx37
-rw-r--r--extensions/source/propctrlr/taborder.cxx55
-rw-r--r--extensions/source/propctrlr/taborder.hxx2
-rw-r--r--extensions/source/propctrlr/unourl.cxx43
-rw-r--r--extensions/source/propctrlr/usercontrol.cxx37
-rw-r--r--extensions/source/propctrlr/xsddatatypes.cxx37
-rw-r--r--extensions/source/propctrlr/xsdvalidationhelper.cxx37
-rw-r--r--extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx37
-rw-r--r--extensions/source/resource/oooresourceloader.cxx37
-rw-r--r--extensions/source/resource/oooresourceloader.hxx38
-rw-r--r--extensions/source/resource/res.component43
-rw-r--r--extensions/source/scanner/grid.cxx37
-rw-r--r--extensions/source/scanner/sane.cxx37
-rw-r--r--extensions/source/scanner/sane.hxx37
-rw-r--r--extensions/source/scanner/sanedlg.cxx39
-rw-r--r--extensions/source/scanner/sanedlg.hxx37
-rw-r--r--extensions/source/scanner/sanedlg.src37
-rw-r--r--extensions/source/scanner/scanner.cxx37
-rw-r--r--extensions/source/scanner/scanner.hxx37
-rw-r--r--extensions/source/scanner/scanunx.cxx37
-rw-r--r--extensions/source/scanner/scanwin.cxx37
-rw-r--r--extensions/source/scanner/scn.component43
-rw-r--r--extensions/source/scanner/scnserv.cxx43
-rw-r--r--extensions/source/update/check/actionlistener.hxx43
-rw-r--r--extensions/source/update/check/download.cxx37
-rw-r--r--extensions/source/update/check/download.hxx37
-rw-r--r--extensions/source/update/check/onlinecheck.cxx43
-rw-r--r--extensions/source/update/check/org/openoffice/Office/Addons.xcu20
-rw-r--r--extensions/source/update/check/org/openoffice/Office/Jobs.xcu20
-rw-r--r--extensions/source/update/check/updatecheck.cxx72
-rw-r--r--extensions/source/update/check/updatecheck.hxx37
-rw-r--r--extensions/source/update/check/updatecheckconfig.cxx37
-rw-r--r--extensions/source/update/check/updatecheckconfig.hxx37
-rw-r--r--extensions/source/update/check/updatecheckconfiglistener.hxx43
-rw-r--r--extensions/source/update/check/updatecheckjob.cxx37
-rw-r--r--extensions/source/update/check/updatehdl.cxx37
-rw-r--r--extensions/source/update/check/updatehdl.src37
-rw-r--r--extensions/source/update/check/updateprotocol.cxx37
-rw-r--r--extensions/source/update/check/updateprotocol.hxx43
-rw-r--r--extensions/source/update/check/updchk.uno.component43
-rw-r--r--extensions/source/update/feed/updatefeed.component43
-rw-r--r--extensions/source/update/feed/updatefeed.cxx45
-rw-r--r--extensions/source/update/tools/ztool.cxx43
-rw-r--r--extensions/source/update/ui/updatecheckui.cxx37
-rw-r--r--extensions/source/update/ui/updatecheckui.hrc43
-rw-r--r--extensions/source/update/ui/updatecheckui.src43
-rw-r--r--extensions/source/update/ui/updchk.component43
-rw-r--r--extensions/test/ole/AxTestComponents/AxTestComponents.rc37
-rw-r--r--extensions/test/ole/AxTestComponents/Basic.cpp37
-rw-r--r--extensions/test/ole/AxTestComponents/readme.txt7
-rw-r--r--extensions/test/ole/DCOM/Clients/WriterDemo/Module1.bas17
-rw-r--r--extensions/test/ole/DCOM/dcom_test/Module1.bas17
-rw-r--r--extensions/test/ole/DCOM/scriptComponents/readme.txt1
-rw-r--r--extensions/test/ole/EventListenerSample/EventListener/EventListener.rc20
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/VBEventListener.cls33
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.dllbin24576 -> 0 bytes
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.vbw4
-rw-r--r--extensions/test/ole/EventListenerSample/VBEventListener/readme.txt6
-rw-r--r--extensions/test/ole/EventListenerSample/events.htm17
-rw-r--r--extensions/test/ole/JScriptNewStyle.htm17
-rw-r--r--extensions/test/ole/MfcControl/MfcControl.rc18
-rw-r--r--extensions/test/ole/OleClient/clientTest.cxx37
-rw-r--r--extensions/test/ole/OleClient/funcs.cxx37
-rw-r--r--extensions/test/ole/OleClient/readme.txt2
-rw-r--r--extensions/test/ole/OleConverterVar1/convTest.cxx37
-rw-r--r--extensions/test/ole/OleConverterVar1/readme.txt4
-rw-r--r--extensions/test/ole/OleTest.htm17
-rw-r--r--extensions/test/ole/StarBasic_OleClient/oleclient.bas55
-rw-r--r--extensions/test/ole/StarBasic_OleClient/readme.txt6
-rw-r--r--extensions/test/ole/VisualBasic/AssemblyInfo.vb18
-rw-r--r--extensions/test/ole/VisualBasic/Module1.vb166
-rw-r--r--extensions/test/ole/callUnoToJava.htm26
-rw-r--r--extensions/test/ole/cpnt/cpnt.cxx37
-rw-r--r--extensions/test/ole/cpnt/makefile.mk33
-rw-r--r--extensions/test/ole/cpnt/readme.txt2
-rw-r--r--extensions/test/ole/cppToUno/readme.txt1
-rw-r--r--extensions/test/ole/cppToUno/testcppuno.cxx37
-rw-r--r--extensions/test/ole/cpptest/cpptest.cxx37
-rw-r--r--extensions/test/ole/cpptest/readme.txt4
-rw-r--r--extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.rc37
-rw-r--r--extensions/test/ole/unoTocomCalls/readme.txt2
-rw-r--r--extensions/test/pgp/makefile.mk33
-rw-r--r--extensions/test/pgp/readme.txt2
-rw-r--r--extensions/test/stm/datatest.cxx37
-rw-r--r--extensions/test/stm/makefile.mk33
-rw-r--r--extensions/test/stm/marktest.cxx37
-rw-r--r--extensions/test/stm/pipetest.cxx37
-rw-r--r--extensions/test/stm/testfactreg.cxx37
-rw-r--r--extensions/workben/makefile.mk33
-rw-r--r--extensions/workben/pythonautotest.cxx37
-rw-r--r--extensions/workben/pythontest.cxx37
-rw-r--r--extensions/workben/testcomponent.cxx37
-rw-r--r--extensions/workben/testframecontrol.cxx37
-rw-r--r--extensions/workben/testpgp.cxx37
-rw-r--r--extensions/workben/testresource.cxx37
-rw-r--r--external/glibc-2.1.3.patch3
-rw-r--r--external/mingw-dlls/makefile.mk5
-rw-r--r--extras/ExternalPackage_extra_fonts.mk187
-rw-r--r--extras/Module_extras.mk2
-rw-r--r--extras/Package_extra_fonts.mk187
-rw-r--r--extras/source/palettes/standard.soc2
-rw-r--r--fileaccess/prj/build.lst2
-rw-r--r--filter/Configuration_filter.mk189
-rw-r--r--filter/Library_msfilter.mk2
-rw-r--r--filter/Module_filter.mk1
-rw-r--r--filter/Package_inc.mk2
-rw-r--r--filter/inc/filter/msfilter/dffpropset.hxx71
-rw-r--r--filter/inc/filter/msfilter/dffrecordheader.hxx63
-rw-r--r--filter/inc/filter/msfilter/escherex.hxx37
-rw-r--r--filter/inc/filter/msfilter/msdffimp.hxx129
-rw-r--r--filter/prj/build.lst2
-rw-r--r--filter/qa/cppunit/filters-pict-test.cxx7
-rw-r--r--filter/qa/cppunit/filters-tga-test.cxx7
-rw-r--r--filter/qa/cppunit/filters-tiff-test.cxx7
-rw-r--r--filter/source/config/cache/filtercache.cxx2
-rw-r--r--filter/source/config/cache/filterfactory.cxx5
-rw-r--r--filter/source/config/fragments/filters/VisioDocument.xcu2
-rw-r--r--filter/source/config/fragments/types/draw_Visio_Document.xcu4
-rw-r--r--filter/source/config/tools/merge/FCFGMerge.cfg33
-rwxr-xr-xfilter/source/config/tools/merge/pyAltFCFGMerge2
-rw-r--r--filter/source/flash/swfwriter1.cxx59
-rw-r--r--filter/source/graphicfilter/eos2met/eos2met.cxx62
-rw-r--r--filter/source/graphicfilter/epict/epict.cxx55
-rw-r--r--filter/source/graphicfilter/eps/eps.cxx78
-rw-r--r--filter/source/graphicfilter/idxf/dxftblrd.cxx208
-rw-r--r--filter/source/graphicfilter/ipbm/ipbm.cxx2
-rw-r--r--filter/source/graphicfilter/itga/itga.cxx55
-rw-r--r--filter/source/msfilter/dffpropset.cxx1344
-rw-r--r--filter/source/msfilter/dffrecordheader.cxx (renamed from rdbmaker/source/codemaker/options.cxx)53
-rw-r--r--filter/source/msfilter/escherex.cxx70
-rw-r--r--filter/source/msfilter/msdffimp.cxx860
-rw-r--r--filter/source/msfilter/viscache.hxx37
-rw-r--r--filter/source/odfflatxml/OdfFlatXml.cxx7
-rw-r--r--filter/source/svg/svgexport.cxx71
-rw-r--r--filter/source/svg/svgfilter.hxx3
-rw-r--r--filter/source/svg/svgreader.cxx2
-rw-r--r--filter/source/svg/svgwriter.cxx179
-rw-r--r--filter/source/svg/svgwriter.hxx51
-rw-r--r--filter/source/svg/tokenmap.cxx27
-rw-r--r--filter/source/t602/t602filter.cxx20
-rw-r--r--filter/source/xsltdialog/typedetectionexport.cxx16
-rw-r--r--filter/source/xsltdialog/typedetectionexport.hxx11
-rw-r--r--filter/source/xsltdialog/typedetectionimport.cxx2
-rw-r--r--filter/source/xsltdialog/xmlfiltercommon.hxx5
-rw-r--r--filter/source/xsltdialog/xmlfilterhelpids.hrc3
-rw-r--r--filter/source/xsltdialog/xmlfilterjar.cxx4
-rw-r--r--filter/source/xsltdialog/xmlfiltersettingsdialog.cxx69
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.cxx20
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.hrc5
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.hxx5
-rw-r--r--filter/source/xsltdialog/xmlfiltertabpagexslt.src23
-rw-r--r--filter/source/xsltdialog/xmlfiltertestdialog.cxx6
-rw-r--r--filter/source/xsltfilter/LibXSLTTransformer.cxx4
-rw-r--r--filter/source/xsltfilter/LibXSLTTransformer.hxx18
-rw-r--r--filter/source/xsltfilter/Manifest2
-rw-r--r--filter/source/xsltfilter/XSLTFilter.cxx78
-rw-r--r--filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java1824
-rw-r--r--filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java386
-rw-r--r--filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTransformer.java496
-rw-r--r--filter/source/xsltfilter/xsltfilter.component2
-rw-r--r--fontconfig/ExternalPackage_fontconfig.mk24
-rw-r--r--fontconfig/ExternalProject_fontconfig.mk34
-rw-r--r--fontconfig/Makefile7
-rw-r--r--fontconfig/Module_fontconfig.mk22
-rw-r--r--fontconfig/README10
-rw-r--r--fontconfig/UnpackedTarball_fontconfig.mk20
-rw-r--r--fontconfig/makefile.mk67
-rw-r--r--fontconfig/prj/d.lst4
-rw-r--r--forms/source/component/Filter.cxx7
-rw-r--r--forms/source/inc/services.hxx1
-rw-r--r--forms/source/misc/InterfaceContainer.cxx4
-rw-r--r--formula/inc/formula/IFunctionDescription.hxx8
-rw-r--r--formula/inc/formula/tokenarray.hxx1
-rw-r--r--formula/source/core/api/token.cxx6
-rw-r--r--formula/source/ui/dlg/formula.cxx6
-rw-r--r--formula/source/ui/dlg/structpg.cxx18
-rw-r--r--formula/source/ui/dlg/structpg.hxx12
-rw-r--r--fpicker/prj/build.lst2
-rw-r--r--fpicker/source/office/PlacesListBox.cxx2
-rw-r--r--fpicker/source/office/iodlg.cxx6
-rw-r--r--fpicker/source/win32/filepicker/VistaFilePicker.cxx5
-rw-r--r--fpicker/source/win32/filepicker/filepickerstate.cxx1
-rw-r--r--fpicker/source/win32/folderpicker/FolderPicker.hxx11
-rw-r--r--fpicker/test/svdem.cxx4
-rw-r--r--framework/inc/dispatch/mailtodispatcher.hxx6
-rw-r--r--framework/inc/dispatch/popupmenudispatcher.hxx4
-rw-r--r--framework/inc/dispatch/systemexec.hxx4
-rw-r--r--framework/inc/framework/statusbarconfiguration.hxx2
-rw-r--r--framework/inc/framework/titlehelper.hxx5
-rw-r--r--framework/inc/framework/toolboxconfiguration.hxx2
-rw-r--r--framework/inc/general.h19
-rw-r--r--framework/inc/helper/persistentwindowstate.hxx18
-rw-r--r--framework/inc/jobs/configaccess.hxx7
-rw-r--r--framework/inc/jobs/helponstartup.hxx4
-rw-r--r--framework/inc/jobs/jobdata.hxx11
-rw-r--r--framework/inc/jobs/jobexecutor.hxx4
-rw-r--r--framework/inc/macros/xserviceinfo.hxx4
-rw-r--r--framework/inc/services.h16
-rw-r--r--framework/inc/services/autorecovery.hxx3
-rw-r--r--framework/inc/services/layoutmanager.hxx4
-rw-r--r--framework/inc/services/license.hxx4
-rw-r--r--framework/inc/tabwin/tabwinfactory.hxx4
-rw-r--r--framework/inc/uiconfiguration/globalsettings.hxx4
-rw-r--r--framework/inc/uiconfiguration/moduleuicfgsupplier.hxx4
-rw-r--r--framework/inc/uiconfiguration/uicategorydescription.hxx2
-rw-r--r--framework/inc/uiconfiguration/windowstateconfiguration.hxx8
-rw-r--r--framework/inc/uielement/uicommanddescription.hxx11
-rw-r--r--framework/inc/uifactory/addonstoolboxfactory.hxx4
-rw-r--r--framework/inc/uifactory/factoryconfiguration.hxx3
-rw-r--r--framework/inc/uifactory/menubarfactory.hxx6
-rw-r--r--framework/inc/uifactory/uielementfactorymanager.hxx11
-rw-r--r--framework/inc/uifactory/windowcontentfactorymanager.hxx7
-rw-r--r--framework/inc/xml/imagesconfiguration.hxx2
-rw-r--r--framework/source/accelerators/acceleratorconfiguration.cxx27
-rw-r--r--framework/source/classes/taskcreator.cxx3
-rw-r--r--framework/source/dispatch/dispatchprovider.cxx38
-rw-r--r--framework/source/dispatch/mailtodispatcher.cxx46
-rw-r--r--framework/source/dispatch/menudispatcher.cxx1
-rw-r--r--framework/source/dispatch/popupmenudispatcher.cxx76
-rw-r--r--framework/source/dispatch/systemexec.cxx17
-rw-r--r--framework/source/fwe/classes/framelistanalyzer.cxx12
-rw-r--r--framework/source/fwe/helper/titlehelper.cxx21
-rw-r--r--framework/source/fwe/xml/menuconfiguration.cxx13
-rw-r--r--framework/source/fwe/xml/statusbarconfiguration.cxx27
-rw-r--r--framework/source/fwe/xml/toolboxconfiguration.cxx28
-rw-r--r--framework/source/fwi/helper/mischelper.cxx4
-rw-r--r--framework/source/fwi/jobs/configaccess.cxx58
-rw-r--r--framework/source/helper/persistentwindowstate.cxx32
-rw-r--r--framework/source/helper/statusindicatorfactory.cxx5
-rw-r--r--framework/source/helper/titlebarupdate.cxx25
-rw-r--r--framework/source/inc/pattern/configuration.hxx9
-rw-r--r--framework/source/jobs/helponstartup.cxx17
-rw-r--r--framework/source/jobs/job.cxx5
-rw-r--r--framework/source/jobs/jobdata.cxx22
-rw-r--r--framework/source/jobs/jobdispatch.cxx16
-rw-r--r--framework/source/jobs/jobexecutor.cxx22
-rw-r--r--framework/source/layoutmanager/helpers.cxx48
-rw-r--r--framework/source/layoutmanager/helpers.hxx8
-rw-r--r--framework/source/layoutmanager/layoutmanager.cxx18
-rw-r--r--framework/source/layoutmanager/toolbarlayoutmanager.cxx17
-rw-r--r--framework/source/layoutmanager/toolbarlayoutmanager.hxx7
-rw-r--r--framework/source/loadenv/loadenv.cxx6
-rw-r--r--framework/source/recording/dispatchrecordersupplier.cxx2
-rw-r--r--framework/source/services/autorecovery.cxx51
-rw-r--r--framework/source/services/backingcomp.cxx27
-rw-r--r--framework/source/services/backingwindow.cxx73
-rw-r--r--framework/source/services/desktop.cxx70
-rw-r--r--framework/source/services/dispatchhelper.cxx2
-rw-r--r--framework/source/services/frame.cxx29
-rw-r--r--framework/source/services/license.cxx12
-rw-r--r--framework/source/services/mediatypedetectionhelper.cxx2
-rw-r--r--framework/source/services/modulemanager.cxx6
-rw-r--r--framework/source/services/pathsettings.cxx4
-rw-r--r--framework/source/services/sessionlistener.cxx11
-rw-r--r--framework/source/services/substitutepathvars.cxx6
-rw-r--r--framework/source/services/taskcreatorsrv.cxx3
-rw-r--r--framework/source/tabwin/tabwindow.cxx6
-rw-r--r--framework/source/tabwin/tabwinfactory.cxx51
-rw-r--r--framework/source/uiconfiguration/globalsettings.cxx37
-rw-r--r--framework/source/uiconfiguration/imagemanagerimpl.cxx2
-rw-r--r--framework/source/uiconfiguration/moduleuicfgsupplier.cxx3
-rw-r--r--framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx4
-rw-r--r--framework/source/uiconfiguration/uicategorydescription.cxx20
-rw-r--r--framework/source/uiconfiguration/uiconfigurationmanager.cxx4
-rw-r--r--framework/source/uiconfiguration/windowstateconfiguration.cxx27
-rw-r--r--framework/source/uielement/addonstoolbarmanager.cxx4
-rw-r--r--framework/source/uielement/menubarmanager.cxx12
-rw-r--r--framework/source/uielement/menubarwrapper.cxx7
-rw-r--r--framework/source/uielement/newmenucontroller.cxx45
-rw-r--r--framework/source/uielement/toolbarmanager.cxx10
-rw-r--r--framework/source/uielement/toolbarsmenucontroller.cxx7
-rw-r--r--framework/source/uielement/uicommanddescription.cxx36
-rw-r--r--framework/source/uifactory/addonstoolboxfactory.cxx3
-rw-r--r--framework/source/uifactory/factoryconfiguration.cxx6
-rw-r--r--framework/source/uifactory/menubarfactory.cxx9
-rw-r--r--framework/source/uifactory/popupmenucontrollerfactory.cxx2
-rw-r--r--framework/source/uifactory/statusbarcontrollerfactory.cxx2
-rw-r--r--framework/source/uifactory/statusbarfactory.cxx2
-rw-r--r--framework/source/uifactory/toolbarcontrollerfactory.cxx2
-rw-r--r--framework/source/uifactory/toolboxfactory.cxx2
-rw-r--r--framework/source/uifactory/uielementfactorymanager.cxx24
-rw-r--r--framework/source/uifactory/windowcontentfactorymanager.cxx15
-rw-r--r--framework/source/xml/imagesconfiguration.cxx28
-rw-r--r--freetype/ExternalPackage_freetype.mk79
-rw-r--r--freetype/ExternalProject_freetype.mk30
-rw-r--r--freetype/Makefile7
-rw-r--r--freetype/Module_freetype.mk22
-rw-r--r--freetype/README14
-rw-r--r--freetype/UnpackedTarball_freetype.mk20
-rw-r--r--freetype/makefile.mk59
-rw-r--r--freetype/prj/d.lst8
-rwxr-xr-xg633
-rw-r--r--gdk-pixbuf/README10
-rw-r--r--gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch463
-rw-r--r--gdk-pixbuf/gdk-pixbuf-2.23.0.patch171
-rw-r--r--gdk-pixbuf/makefile.mk128
-rw-r--r--gdk-pixbuf/prj/build.lst3
-rw-r--r--gdk-pixbuf/prj/d.lst20
-rw-r--r--gettext/README5
-rw-r--r--gettext/gettext-0.18.1.1.patch3639
-rw-r--r--gettext/gettext-0.18.1.1.stpncpy.patch12
-rw-r--r--gettext/makefile.mk129
-rw-r--r--gettext/prj/build.lst3
-rw-r--r--gettext/prj/d.lst31
-rw-r--r--gettext/prj/dmake0
-rw-r--r--glib/README4
-rw-r--r--glib/glib-2.28.1-win32-2.patch553
-rw-r--r--glib/glib-2.28.1-win32.patch1994
-rw-r--r--glib/glib-2.28.1.noise.patch12
-rw-r--r--glib/glib-2.28.1.patch153
-rw-r--r--glib/makefile.mk390
-rw-r--r--glib/prj/build.lst3
-rw-r--r--glib/prj/d.lst252
-rw-r--r--glib/prj/dmake0
-rw-r--r--graphite/Makefile7
-rw-r--r--graphite/Module_graphite.mk21
-rw-r--r--graphite/StaticLibrary_graphite.mk68
-rw-r--r--graphite/UnpackedTarball_graphite.mk20
-rw-r--r--graphite/graphite-2.3.1_debug.patch13
-rw-r--r--graphite/graphite2.issue1030.patch.112
-rw-r--r--graphite/graphite2.placementnew.patch10
-rw-r--r--graphite/graphite_make.patch42
-rw-r--r--graphite/makefile.mk73
-rw-r--r--graphite/prj/d.lst12
-rw-r--r--graphite/prj/dmake0
-rw-r--r--helpcompiler/Library_helplinker.mk2
m---------helpcontent20
-rw-r--r--hsqldb/UnpackedTarball_hsqldb.mk4
-rw-r--r--hsqldb/prj/build.lst2
-rw-r--r--hsqldb/version.mk6
-rw-r--r--hunspell/ExternalPackage_hunspell.mk20
-rw-r--r--hunspell/ExternalProject_hunspell.mk28
-rw-r--r--hunspell/Makefile7
-rw-r--r--hunspell/Module_hunspell.mk28
-rw-r--r--hunspell/StaticLibrary_hunspell.mk35
-rw-r--r--hunspell/UnpackedTarball_hunspell.mk30
-rw-r--r--hunspell/hunspell-static.patch11
-rw-r--r--hunspell/hunspell-wntconfig.patch4
-rw-r--r--hunspell/makefile.mk118
-rw-r--r--hunspell/prj/d.lst6
-rw-r--r--hunspell/prj/dmake0
-rw-r--r--hwpfilter/qa/cppunit/test_hwpfilter.cxx9
-rw-r--r--hwpfilter/source/drawing.h5
-rw-r--r--hyphen/ExternalPackage_hyphen.mk28
-rw-r--r--hyphen/ExternalProject_hyphen.mk30
-rw-r--r--hyphen/Makefile7
-rw-r--r--hyphen/Module_hyphen.mk32
-rw-r--r--hyphen/StaticLibrary_hyphen.mk22
-rw-r--r--hyphen/UnpackedTarball_hyphen.mk22
-rw-r--r--hyphen/hyphen-build.patch32
-rw-r--r--hyphen/makefile.mk113
-rw-r--r--hyphen/prj/d.lst5
-rw-r--r--hyphen/prj/dmake0
-rw-r--r--i18npool/CppunitTest_i18npool_test_languagetag.mk1
-rw-r--r--i18npool/Library_i18nisolang1.mk6
-rw-r--r--i18npool/Library_i18nsearch.mk1
-rw-r--r--i18npool/README9
-rw-r--r--i18npool/inc/defaultnumberingprovider.hxx4
-rw-r--r--i18npool/inc/i18npool/lang.h9
-rw-r--r--i18npool/inc/i18npool/languagetag.hxx5
-rw-r--r--i18npool/inc/i18npool/mslangid.hxx42
-rw-r--r--i18npool/source/collator/chaptercollator.cxx6
-rw-r--r--i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx16
-rw-r--r--i18npool/source/isolang/isolang.cxx9
-rw-r--r--i18npool/source/languagetag/languagetag.cxx48
-rw-r--r--i18npool/source/languagetag/simple-langtag.cxx55
-rw-r--r--i18npool/source/localedata/data/he_IL.xml12
-rw-r--r--i18npool/source/localedata/data/locale.dtd8
-rw-r--r--i18npool/source/localedata/genstaticheader.pl19
-rw-r--r--i18npool/source/localedata/localedata.cxx2
-rw-r--r--i18npool/source/nativenumber/nativenumbersupplier.cxx2
-rw-r--r--i18npool/source/ordinalsuffix/ordinalsuffix.cxx8
-rw-r--r--i18npool/source/registerservices/registerservices.cxx2
-rw-r--r--i18npool/source/search/textsearch.cxx66
-rw-r--r--i18npool/source/search/textsearch.hxx5
-rw-r--r--icon-themes/classic/classic_images.tar.gzbin1683284 -> 1683994 bytes
-rw-r--r--icon-themes/galaxy/sc/res/black_circle_1_4th.pngbin0 -> 800 bytes
-rw-r--r--icon-themes/galaxy/sc/res/black_circle_3_4th.pngbin0 -> 784 bytes
-rw-r--r--icon-themes/galaxy/sc/res/black_circle_empty.pngbin0 -> 771 bytes
-rw-r--r--icon-themes/galaxy/sc/res/black_circle_full.pngbin0 -> 777 bytes
-rw-r--r--icon-themes/galaxy/sc/res/black_circle_half.pngbin0 -> 797 bytes
-rw-r--r--icon-themes/galaxy/sc/res/cancel.pngbin0 -> 596 bytes
-rw-r--r--icon-themes/galaxy/sc/res/exclamation_mark.pngbin0 -> 267 bytes
-rw-r--r--icon-themes/galaxy/sc/res/green_arrow_up.pngbin0 -> 511 bytes
-rw-r--r--icon-themes/galaxy/sc/res/green_circle.pngbin0 -> 691 bytes
-rw-r--r--icon-themes/galaxy/sc/res/minus_black.pngbin0 -> 193 bytes
-rw-r--r--icon-themes/galaxy/sc/res/red_arrow_down.pngbin0 -> 496 bytes
-rw-r--r--icon-themes/galaxy/sc/res/red_circle.pngbin0 -> 712 bytes
-rw-r--r--icon-themes/galaxy/sc/res/sign.pngbin0 -> 467 bytes
-rw-r--r--icon-themes/galaxy/sc/res/triangle_down_red.pngbin0 -> 398 bytes
-rw-r--r--icon-themes/galaxy/sc/res/triangle_up_green.pngbin0 -> 394 bytes
-rw-r--r--icon-themes/galaxy/sc/res/yellow_arrow_down_right.pngbin0 -> 518 bytes
-rw-r--r--icon-themes/galaxy/sc/res/yellow_arrow_right.pngbin0 -> 500 bytes
-rw-r--r--icon-themes/galaxy/sc/res/yellow_arrow_up_right.pngbin0 -> 495 bytes
-rw-r--r--icon-themes/galaxy/sc/res/yellow_circle.pngbin0 -> 752 bytes
-rw-r--r--icon-themes/galaxy/svtools/res/collate.pngbin1423 -> 0 bytes
-rw-r--r--icon-themes/galaxy/svtools/res/ncollate.pngbin1488 -> 0 bytes
-rw-r--r--icon-themes/galaxy/vcl/res/index.pngbin0 -> 256 bytes
-rw-r--r--icon-themes/hicontrast/svtools/res/collate.pngbin268 -> 0 bytes
-rw-r--r--icon-themes/hicontrast/svtools/res/ncollate.pngbin297 -> 0 bytes
-rw-r--r--icon-themes/hicontrast/vcl/res/index.pngbin0 -> 109 bytes
-rw-r--r--icon-themes/hicontrast/vcl/source/src/collate.pngbin231 -> 0 bytes
-rw-r--r--icon-themes/hicontrast/vcl/source/src/ncollate.pngbin226 -> 0 bytes
-rw-r--r--icon-themes/human/vcl/res/collate.png (renamed from icon-themes/human/svtools/res/collate.png)bin2146 -> 2146 bytes
-rw-r--r--icon-themes/human/vcl/res/index.pngbin0 -> 308 bytes
-rw-r--r--icon-themes/human/vcl/res/ncollate.png (renamed from icon-themes/human/svtools/res/ncollate.png)bin2244 -> 2244 bytes
-rw-r--r--icon-themes/industrial/vcl/res/index.pngbin0 -> 308 bytes
-rw-r--r--icon-themes/oxygen/vcl/res/collate.png (renamed from icon-themes/oxygen/svtools/res/collate.png)bin672 -> 672 bytes
-rw-r--r--icon-themes/oxygen/vcl/res/index.pngbin0 -> 308 bytes
-rw-r--r--icon-themes/oxygen/vcl/res/ncollate.png (renamed from icon-themes/oxygen/svtools/res/ncollate.png)bin635 -> 635 bytes
-rw-r--r--icon-themes/tango/cmd/lc_view100.pngbin0 -> 1076 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/FIXMEcolumns_52x60.svg774
-rw-r--r--icon-themes/tango_testing/chart2/res/areas3d_52x60.svg356
-rw-r--r--icon-themes/tango_testing/chart2/res/areas_52x60.pngbin0 -> 2086 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/areasfull_52x60.pngbin0 -> 1456 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/areasfull_52x60.svg773
-rw-r--r--icon-themes/tango_testing/chart2/res/areaspiled_52x60.pngbin0 -> 1747 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/areaspiled_52x60.svg749
-rw-r--r--icon-themes/tango_testing/chart2/res/bar_52x60.pngbin0 -> 512 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/bar_52x60.svg867
-rw-r--r--icon-themes/tango_testing/chart2/res/barpercent_52x60.pngbin0 -> 593 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/barpercent_52x60.svg974
-rw-r--r--icon-themes/tango_testing/chart2/res/barstack_52x60.pngbin0 -> 504 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/barstack_52x60.svg780
-rw-r--r--icon-themes/tango_testing/chart2/res/bubble_52x60.pngbin0 -> 3226 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/bubble_52x60.svg711
-rw-r--r--icon-themes/tango_testing/chart2/res/columnline_52x60.pngbin0 -> 675 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/columnline_52x60.svg1730
-rw-r--r--icon-themes/tango_testing/chart2/res/columnpercent_52x60.pngbin0 -> 417 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/columnpercent_52x60.svg939
-rw-r--r--icon-themes/tango_testing/chart2/res/columns_52x60.pngbin0 -> 462 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/columns_52x60.svg1730
-rw-r--r--icon-themes/tango_testing/chart2/res/columnstack_52x60.pngbin0 -> 432 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/columnstack_52x60.svg899
-rw-r--r--icon-themes/tango_testing/chart2/res/columnstackline_52x60.pngbin0 -> 552 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/columnstackline_52x60.svg1125
-rw-r--r--icon-themes/tango_testing/chart2/res/dataeditor_icon05.pngbin0 -> 506 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/dataeditor_icon05.svg769
-rw-r--r--icon-themes/tango_testing/chart2/res/dataeditor_icon06.pngbin0 -> 488 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/dataeditor_icon06.svg769
-rw-r--r--icon-themes/tango_testing/chart2/res/dataeditor_icon07.pngbin0 -> 417 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/dataeditor_icon07.svg652
-rw-r--r--icon-themes/tango_testing/chart2/res/pie_52x60.pngbin0 -> 2041 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/pie_52x60.svg1049
-rw-r--r--icon-themes/tango_testing/chart2/res/regexp.pngbin0 -> 787 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/regexp.svg508
-rw-r--r--icon-themes/tango_testing/chart2/res/reglin.pngbin0 -> 777 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/reglin.svg346
-rw-r--r--icon-themes/tango_testing/chart2/res/reglog.pngbin0 -> 786 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/reglog.svg345
-rw-r--r--icon-themes/tango_testing/chart2/res/regno.pngbin0 -> 388 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/regno.svg339
-rw-r--r--icon-themes/tango_testing/chart2/res/regpow.pngbin0 -> 824 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/regpow.svg345
-rw-r--r--icon-themes/tango_testing/chart2/res/typearea_16.pngbin0 -> 687 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typearea_16.svg203
-rw-r--r--icon-themes/tango_testing/chart2/res/typebar_16.pngbin0 -> 291 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typebar_16.svg110
-rw-r--r--icon-themes/tango_testing/chart2/res/typebubble_16.pngbin0 -> 629 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typebubble_16.svg395
-rw-r--r--icon-themes/tango_testing/chart2/res/typecolumn_16.pngbin0 -> 252 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typecolumn_16.svg119
-rw-r--r--icon-themes/tango_testing/chart2/res/typecolumnline_16.pngbin0 -> 565 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typecolumnline_16.svg506
-rw-r--r--icon-themes/tango_testing/chart2/res/typenet_16.pngbin0 -> 918 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typenet_16.svg500
-rw-r--r--icon-themes/tango_testing/chart2/res/typepie_16.pngbin0 -> 830 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typepie_16.svg823
-rw-r--r--icon-themes/tango_testing/chart2/res/typepointline_16.pngbin0 -> 609 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typepointline_16.svg262
-rw-r--r--icon-themes/tango_testing/chart2/res/typestock_16.pngbin0 -> 346 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typestock_16.svg261
-rw-r--r--icon-themes/tango_testing/chart2/res/typexy_16.pngbin0 -> 495 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/typexy_16.svg410
-rw-r--r--icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.pngbin0 -> 2800 bytes
-rw-r--r--icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.svg587
-rw-r--r--icon-themes/tango_testing/cmd/ar/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ar/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ar/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ca/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ca/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ca/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/cs/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/cs/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/cs/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/de/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/de/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/de/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/en-GB/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/en-GB/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/en-GB/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/es/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/es/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/es/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/fr/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/fr/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/fr/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/hu/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/hu/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/hu/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/it/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/it/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/it/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ja/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ja/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ja/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/km/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/km/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/km/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ko/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ko/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ko/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.pngbin0 -> 758 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.svg494
-rw-r--r--icon-themes/tango_testing/cmd/lc_arrowshapes.pngbin0 -> 758 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_assignlayout.pngbin331 -> 373 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_assignlayout.svg2534
-rw-r--r--icon-themes/tango_testing/cmd/lc_autosum.pngbin810 -> 990 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_autosum.svg588
-rw-r--r--icon-themes/tango_testing/cmd/lc_backcolor.pngbin1207 -> 1233 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_backcolor.svg3368
-rw-r--r--icon-themes/tango_testing/cmd/lc_backward.pngbin0 -> 431 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_backward.svg616
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.pngbin0 -> 833 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.svg579
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.circle.pngbin0 -> 968 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.circle.svg585
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.diamond.pngbin0 -> 775 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.diamond.svg417
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.ellipse.pngbin0 -> 801 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.pngbin0 -> 707 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.svg250
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.pngbin0 -> 775 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.pngbin0 -> 253 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.svg154
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.rectangle.pngbin0 -> 247 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.pngbin0 -> 563 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.svg298
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.pngbin0 -> 387 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.svg162
-rw-r--r--icon-themes/tango_testing/cmd/lc_beforeobject.pngbin0 -> 481 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_beforeobject.svg746
-rw-r--r--icon-themes/tango_testing/cmd/lc_behindobject.pngbin0 -> 488 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_behindobject.svg746
-rw-r--r--icon-themes/tango_testing/cmd/lc_bezierappend.pngbin0 -> 516 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_bezierappend.svg636
-rw-r--r--icon-themes/tango_testing/cmd/lc_bezierdelete.pngbin0 -> 620 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_bezierdelete.svg19108
-rw-r--r--icon-themes/tango_testing/cmd/lc_bezieredge.pngbin0 -> 707 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_bezieredge.svg18711
-rw-r--r--icon-themes/tango_testing/cmd/lc_beziersmooth.pngbin0 -> 488 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_beziersmooth.svg18735
-rw-r--r--icon-themes/tango_testing/cmd/lc_beziersymmetric.pngbin0 -> 591 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_beziersymmetric.svg18750
-rw-r--r--icon-themes/tango_testing/cmd/lc_bringtofront.pngbin0 -> 494 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_bringtofront.svg652
-rw-r--r--icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.pngbin0 -> 355 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.svg275
-rw-r--r--icon-themes/tango_testing/cmd/lc_calloutshapes.pngbin0 -> 869 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_calloutshapes.round-callout.pngbin0 -> 869 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_colorsettings.pngbin0 -> 1839 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_colorsettings.svg363
-rw-r--r--icon-themes/tango_testing/cmd/lc_convertinto3d.pngbin0 -> 990 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_convertinto3d.svg664
-rw-r--r--icon-themes/tango_testing/cmd/lc_defaultbullet-lc_outlinebullet.svg16
-rw-r--r--icon-themes/tango_testing/cmd/lc_defaultbullet.pngbin450 -> 440 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_defaultnumbering.pngbin425 -> 427 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_defaultnumbering.svg36
-rw-r--r--icon-themes/tango_testing/cmd/lc_deletemasterpage.pngbin1021 -> 818 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_deletemasterpage.svg18409
-rw-r--r--icon-themes/tango_testing/cmd/lc_designerdialog.svg18
-rw-r--r--icon-themes/tango_testing/cmd/lc_diagramdata.pngbin0 -> 1081 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_diagramtype.pngbin0 -> 1036 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_diagramtype.svg1019
-rw-r--r--icon-themes/tango_testing/cmd/lc_drawcaption.pngbin0 -> 869 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_drawcaption.svg230
-rw-r--r--icon-themes/tango_testing/cmd/lc_drawselect.pngbin911 -> 627 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_drawselect.svg3213
-rw-r--r--icon-themes/tango_testing/cmd/lc_drawtext.pngbin0 -> 864 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_ellipse.pngbin0 -> 801 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_ellipse.svg278
-rw-r--r--icon-themes/tango_testing/cmd/lc_ellipsetoolbox.pngbin0 -> 801 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_exportdirecttopdf.pngbin1028 -> 1022 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_exportdirecttopdf.svg447
-rw-r--r--icon-themes/tango_testing/cmd/lc_extrusion3dcolor.pngbin0 -> 1182 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_extrusion3dcolor.svg1590
-rw-r--r--icon-themes/tango_testing/cmd/lc_extrusionlightingfloater.png (renamed from icon-themes/tango_testing/cmd/lc_extrusionlightningfloater.png)bin1248 -> 1248 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_extrusiontoggle.pngbin0 -> 990 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_fillshadow.pngbin671 -> 418 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_fillshadow.svg15097
-rw-r--r--icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.pngbin0 -> 328 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.svg476
-rw-r--r--icon-themes/tango_testing/cmd/lc_flowchartshapes.pngbin0 -> 328 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_fontwork galleryfloater.pngbin0 -> 1484 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_fontwork.pngbin0 -> 1484 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_fontwork.svg4577
-rw-r--r--icon-themes/tango_testing/cmd/lc_formatarea.pngbin0 -> 668 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_formatarea.svg912
-rw-r--r--icon-themes/tango_testing/cmd/lc_formatline.pngbin0 -> 1270 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_formatline.svg761
-rw-r--r--icon-themes/tango_testing/cmd/lc_forward.pngbin0 -> 435 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_forward.svg463
-rw-r--r--icon-themes/tango_testing/cmd/lc_framelinecolor.pngbin0 -> 932 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_framelinecolor.svg1502
-rw-r--r--icon-themes/tango_testing/cmd/lc_freeline_unfilled.pngbin0 -> 882 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_freeline_unfilled.svg448
-rw-r--r--icon-themes/tango_testing/cmd/lc_gallery.pngbin0 -> 1079 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_gallery.svg45890
-rw-r--r--icon-themes/tango_testing/cmd/lc_glueeditmode.pngbin0 -> 1255 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_glueeditmode.svg1277
-rw-r--r--icon-themes/tango_testing/cmd/lc_graphic.pngbin0 -> 1147 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_graphic.svg15440
-rw-r--r--icon-themes/tango_testing/cmd/lc_graphicfiltertoolbox.pngbin0 -> 1060 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_graphicfiltertoolbox.svg2323
-rw-r--r--icon-themes/tango_testing/cmd/lc_hyperlinkdialog.pngbin0 -> 1388 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_hyperlinkdialog.svg39190
-rw-r--r--icon-themes/tango_testing/cmd/lc_insertdraw-sc_insertdraw.svg411
-rw-r--r--icon-themes/tango_testing/cmd/lc_insertdraw.pngbin1043 -> 1127 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_insertgraphic.pngbin0 -> 1147 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_insertmasterpage.pngbin862 -> 680 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_insertmasterpage.svg2914
-rw-r--r--icon-themes/tango_testing/cmd/lc_insertpage.pngbin451 -> 531 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_insertpage.svg2708
-rw-r--r--icon-themes/tango_testing/cmd/lc_inserttable.pngbin874 -> 693 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_inserttable.svg28587
-rw-r--r--icon-themes/tango_testing/cmd/lc_lineendstyle.pngbin0 -> 712 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_lineendstyle.svg615
-rw-r--r--icon-themes/tango_testing/cmd/lc_linestyle.pngbin0 -> 599 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_linestyle.svg1279
-rw-r--r--icon-themes/tango_testing/cmd/lc_linetoolbox.pngbin0 -> 678 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_newarrangement.pngbin0 -> 1444 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_newarrangement.svg6335
-rw-r--r--icon-themes/tango_testing/cmd/lc_numberformatpercent.pngbin980 -> 944 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_numberformatpercent.svg105
-rw-r--r--icon-themes/tango_testing/cmd/lc_outlinebullet .pngbin450 -> 0 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_outlinebullet.pngbin0 -> 440 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_polygon.pngbin0 -> 863 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_polygon.svg525
-rw-r--r--icon-themes/tango_testing/cmd/lc_presentation.pngbin1048 -> 854 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_presentation.svg16955
-rw-r--r--icon-themes/tango_testing/cmd/lc_presentationlayout.pngbin1322 -> 1160 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_presentationlayout.svg19122
-rw-r--r--icon-themes/tango_testing/cmd/lc_rect.pngbin0 -> 247 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_rect.svg268
-rw-r--r--icon-themes/tango_testing/cmd/lc_rectangletoolbox.pngbin0 -> 247 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_renamemasterpage.pngbin834 -> 618 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_renamemasterpage.svg18735
-rw-r--r--icon-themes/tango_testing/cmd/lc_reverseorder.pngbin0 -> 653 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_reverseorder.svg818
-rw-r--r--icon-themes/tango_testing/cmd/lc_selectmode.pngbin0 -> 627 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_selectobject.pngbin0 -> 627 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_sendtoback.pngbin0 -> 476 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_sendtoback.svg489
-rw-r--r--icon-themes/tango_testing/cmd/lc_setborderstyle.pngbin0 -> 462 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_setborderstyle.svg2338
-rw-r--r--icon-themes/tango_testing/cmd/lc_setobjecttobackground.pngbin893 -> 892 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_setobjecttobackground.svg508
-rw-r--r--icon-themes/tango_testing/cmd/lc_setobjecttoforeground.pngbin960 -> 979 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_setobjecttoforeground.svg5563
-rw-r--r--icon-themes/tango_testing/cmd/lc_shadowed.pngbin1098 -> 1277 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_shadowed.svg109
-rw-r--r--icon-themes/tango_testing/cmd/lc_starshapes.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_starshapes.svg445
-rw-r--r--icon-themes/tango_testing/cmd/lc_symbolcatalogue.pngbin0 -> 1556 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_symbolshapes.pngbin0 -> 1108 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_symbolshapes.smiley.pngbin0 -> 1108 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_symbolshapes.smiley.svg310
-rw-r--r--icon-themes/tango_testing/cmd/lc_text-lc_drawtext.svg7249
-rw-r--r--icon-themes/tango_testing/cmd/lc_togglelegend.pngbin0 -> 495 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_togglelegend.svg907
-rw-r--r--icon-themes/tango_testing/cmd/lc_view100.pngbin0 -> 879 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_viewdatasourcebrowser.pngbin0 -> 1081 bytes
-rw-r--r--icon-themes/tango_testing/cmd/lc_viewdatasourcebrowser.svg23886
-rw-r--r--icon-themes/tango_testing/cmd/nl/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/nl/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/nl/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pl/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pl/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pl/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pt-BR/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pt-BR/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pt-BR/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pt/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pt/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/pt/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ru/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ru/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/ru/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sc_grafblue.pngbin0 -> 641 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sc_grafblue.svg391
-rw-r--r--icon-themes/tango_testing/cmd/sc_grafgreen.pngbin0 -> 653 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sc_grafgreen.svg384
-rw-r--r--icon-themes/tango_testing/cmd/sc_grafred.pngbin0 -> 625 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sc_grafred.svg384
-rw-r--r--icon-themes/tango_testing/cmd/sc_insertannotation-sw-imglst-nc20010-nc20015.svg (renamed from icon-themes/tango_testing/cmd/sc_insertannotation.svg)33
-rw-r--r--icon-themes/tango_testing/cmd/sc_insertannotation.pngbin325 -> 353 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sc_insertdraw.pngbin649 -> 698 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sc_insertobjectchart-sc_drawchart-sw-imglst-nc_20004.svg243
-rw-r--r--icon-themes/tango_testing/cmd/sk/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sk/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sk/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sl/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sl/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/sl/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/tr/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/tr/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/tr/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/zh-CN/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/zh-CN/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/zh-CN/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/cmd/zh-TW/lc_bold.pngbin0 -> 1029 bytes
-rw-r--r--icon-themes/tango_testing/cmd/zh-TW/lc_italic.pngbin0 -> 1107 bytes
-rw-r--r--icon-themes/tango_testing/cmd/zh-TW/lc_underline.pngbin0 -> 1005 bytes
-rw-r--r--icon-themes/tango_testing/desktop/res/info_16.pngbin0 -> 817 bytes
-rw-r--r--icon-themes/tango_testing/desktop/res/info_16.svg915
-rw-r--r--icon-themes/tango_testing/res/sc10865.pngbin0 -> 625 bytes
-rw-r--r--icon-themes/tango_testing/res/sc10866.pngbin0 -> 653 bytes
-rw-r--r--icon-themes/tango_testing/res/sc10867.pngbin0 -> 641 bytes
-rw-r--r--icon-themes/tango_testing/sd/res/objekt.pngbin0 -> 344 bytes
-rw-r--r--icon-themes/tango_testing/sd/res/objekt.svg406
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20000.pngbin0 -> 411 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20000.svg522
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20001.pngbin0 -> 295 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20001.svg554
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20002.pngbin0 -> 296 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20002.svg789
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20003.pngbin0 -> 681 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20004.pngbin0 -> 849 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20006.pngbin0 -> 363 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20006.svg566
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20010.pngbin0 -> 353 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/nc20011.pngbin0 -> 649 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20175.pngbin0 -> 334 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20175.svg175
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20177.pngbin0 -> 284 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20177.svg449
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20179.pngbin0 -> 291 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20179.svg430
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20186.pngbin0 -> 311 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sc20186.svg175
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf01.pngbin0 -> 559 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf01.svg14664
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf02.pngbin0 -> 661 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf02.svg7829
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf03.pngbin0 -> 284 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf03.svg904
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf04.pngbin0 -> 244 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf04.svg264
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf05.pngbin0 -> 469 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sf05.svg8834
-rw-r--r--icon-themes/tango_testing/sw/imglst/sr20009.pngbin0 -> 681 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sr20010.pngbin0 -> 849 bytes
-rw-r--r--icon-themes/tango_testing/sw/imglst/sr20015.pngbin0 -> 353 bytes
-rw-r--r--icu/icu4c-android.patch11
-rw-r--r--icu/makefile.mk4
-rw-r--r--io/prj/build.lst2
-rw-r--r--ios/experimental/DocumentLoader/Makefile127
-rw-r--r--ios/experimental/DocumentLoader/docloader.mm203
-rw-r--r--javaunohelper/source/bootstrap.cxx2
-rw-r--r--javaunohelper/source/javaunohelper.cxx6
-rw-r--r--jurt/test/com/sun/star/lib/uno/environments/remote/TestWorkAt.java11
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx6
-rw-r--r--l10ntools/Executable_cfgex.mk2
-rw-r--r--l10ntools/Executable_gsicheck.mk2
-rw-r--r--l10ntools/Executable_helpex.mk1
-rw-r--r--l10ntools/Executable_uiex.mk2
-rw-r--r--l10ntools/Executable_ulfex.mk2
-rw-r--r--l10ntools/Executable_xrmex.mk2
-rw-r--r--l10ntools/README2
-rw-r--r--l10ntools/StaticLibrary_transex.mk12
-rw-r--r--l10ntools/source/lngmerge.cxx6
-rw-r--r--l10ntools/source/localize.cxx1
-rw-r--r--languagetool/ExternalProject_languagetool.mk2
-rw-r--r--lcms2/ExternalPackage_lcms2.mk31
-rw-r--r--lcms2/ExternalProject_lcms2.mk44
-rw-r--r--lcms2/Makefile7
-rw-r--r--lcms2/Module_lcms2.mk20
-rw-r--r--lcms2/README3
-rw-r--r--lcms2/UnpackedTarball_lcms2.mk20
-rw-r--r--lcms2/makefile.mk115
-rw-r--r--lcms2/prj/build.lst3
-rw-r--r--lcms2/prj/d.lst11
-rw-r--r--lcms2/prj/dmake0
-rw-r--r--libcdr/ExternalProject_libcdr.mk17
-rw-r--r--libcdr/prj/build.lst3
-rw-r--r--libcmis/UnpackedTarball_cmis.mk1
-rw-r--r--libcmis/libcmis-0.3.0.patch22
-rw-r--r--libcmis/prj/build.lst3
-rw-r--r--libcroco/README4
-rw-r--r--libcroco/libcroco-0.6.2.patch110
-rw-r--r--libcroco/makefile.mk153
-rw-r--r--libcroco/prj/build.lst3
-rw-r--r--libcroco/prj/d.lst39
-rw-r--r--libcroco/prj/dmake0
-rw-r--r--libexttextcat/ExternalPackage_exttextcat.mk22
-rw-r--r--libexttextcat/ExternalProject_exttextcat.mk27
-rw-r--r--libexttextcat/Makefile7
-rw-r--r--libexttextcat/Module_libexttextcat.mk29
-rw-r--r--libexttextcat/StaticLibrary_exttextcat.mk25
-rw-r--r--libexttextcat/UnpackedTarball_exttextcat.mk18
-rw-r--r--libexttextcat/Zip_fingerprint.mk (renamed from scp2/InstallModule_binfilter.mk)14
-rw-r--r--libexttextcat/makefile.mk94
-rw-r--r--libexttextcat/prj/d.lst10
-rw-r--r--libexttextcat/prj/dmake0
-rw-r--r--libgsf/README4
-rw-r--r--libgsf/libgsf-1.14.19.patch90
-rw-r--r--libgsf/libgsf-1.14.19.windows.patch190
-rw-r--r--libgsf/makefile.mk159
-rw-r--r--libgsf/prj/build.lst3
-rw-r--r--libgsf/prj/d.lst59
-rw-r--r--libgsf/prj/dmake0
-rw-r--r--liblangtag/liblangtag-0.2-0001-Fix-a-memory-leak.patch44
-rw-r--r--liblangtag/liblangtag-0.2-0002-Fix-invalid-memory-access.patch50
-rw-r--r--liblangtag/liblangtag-0.2-configure.patch46
-rw-r--r--liblangtag/liblangtag-0.2-datadir.patch104
-rw-r--r--liblangtag/liblangtag-0.2-mingw-genfile.patch45323
-rw-r--r--liblangtag/liblangtag-0.2-mingw.patch73
-rw-r--r--liblangtag/liblangtag-0.2-msc-configure.patch116
-rw-r--r--liblangtag/liblangtag-0.2-xmlCleanupParser.patch20
-rw-r--r--liblangtag/liblangtag-0.4.0-configure-atomic-cflag-pollution.patch62
-rw-r--r--liblangtag/liblangtag-0.4.0-cross.patch22
-rw-r--r--liblangtag/liblangtag-0.4.0-mac.patch126
-rw-r--r--liblangtag/liblangtag-0.4.0-mingw.patch75
-rw-r--r--liblangtag/liblangtag-0.4.0-msc-configure.patch133
-rw-r--r--liblangtag/liblangtag-0.4.0-msvc-warning.patch (renamed from liblangtag/liblangtag-0.2-msvc-warning.patch)6
-rw-r--r--liblangtag/liblangtag-0.4.0-msvcprojects.patch702
-rw-r--r--liblangtag/liblangtag-0.4.0-reg2xml-encoding-problem.patch (renamed from liblangtag/liblangtag-0.2-reg2xml-encoding-problem.patch)8
-rw-r--r--liblangtag/liblangtag-0.4.0-windows.patch270
-rw-r--r--liblangtag/liblangtag-0.4.0-windows2.patch121
-rw-r--r--liblangtag/makefile.mk80
-rw-r--r--liblangtag/prj/build.lst2
-rw-r--r--liblangtag/prj/d.lst8
-rw-r--r--libmspub/prj/build.lst3
-rw-r--r--liborcus/ExternalProject_liborcus.mk6
-rw-r--r--liborcus/prj/build.lst3
-rw-r--r--libpng/prj/build.lst3
-rw-r--r--librelogo/Configuration_librelogo.mk20
-rw-r--r--librelogo/Extension_librelogo.mk46
-rw-r--r--librelogo/Makefile7
-rw-r--r--librelogo/Module_librelogo.mk (renamed from saxon/Module_saxon.mk)15
-rw-r--r--librelogo/README1
-rw-r--r--librelogo/prj/build.lst2
-rw-r--r--librelogo/prj/d.lst (renamed from saxon/prj/d.lst)0
-rw-r--r--librelogo/source/ChangeLog82
-rw-r--r--librelogo/source/LibreLogo/LibreLogo.py1416
-rw-r--r--librelogo/source/LibreLogoDummy.py24
-rw-r--r--librelogo/source/META-INF/manifest.xml9
-rw-r--r--librelogo/source/README43
-rw-r--r--librelogo/source/description-en-US.txt1
-rw-r--r--librelogo/source/description.xml20
-rw-r--r--librelogo/source/help/en-US/LibreLogo.xhp397
-rw-r--r--librelogo/source/help/en-US/help.tree18
-rw-r--r--librelogo/source/help/en-US/tree_strings.xhp29
-rw-r--r--librelogo/source/icons/lc_arrowshapes.circular-arrow.pngbin0 -> 787 bytes
-rw-r--r--librelogo/source/icons/lc_arrowshapes.circular-leftarrow.pngbin0 -> 1082 bytes
-rw-r--r--librelogo/source/icons/lc_arrowshapes.down-arrow.pngbin0 -> 527 bytes
-rw-r--r--librelogo/source/icons/lc_arrowshapes.up-arrow.pngbin0 -> 487 bytes
-rw-r--r--librelogo/source/icons/lc_basicstop.pngbin0 -> 616 bytes
-rw-r--r--librelogo/source/icons/lc_editglossary.pngbin0 -> 705 bytes
-rw-r--r--librelogo/source/icons/lc_navigationbarleft.pngbin0 -> 831 bytes
-rw-r--r--librelogo/source/icons/lc_newdoc.pngbin0 -> 445 bytes
-rw-r--r--librelogo/source/icons/lc_runbasic.pngbin0 -> 740 bytes
-rw-r--r--librelogo/source/icons/sc_arrowshapes.circular-arrow.pngbin0 -> 482 bytes
-rw-r--r--librelogo/source/icons/sc_arrowshapes.circular-leftarrow.pngbin0 -> 631 bytes
-rw-r--r--librelogo/source/icons/sc_arrowshapes.down-arrow.pngbin0 -> 340 bytes
-rw-r--r--librelogo/source/icons/sc_arrowshapes.up-arrow.pngbin0 -> 323 bytes
-rw-r--r--librelogo/source/icons/sc_basicstop.pngbin0 -> 397 bytes
-rw-r--r--librelogo/source/icons/sc_editglossary.pngbin0 -> 429 bytes
-rw-r--r--librelogo/source/icons/sc_navigationbarleft.pngbin0 -> 626 bytes
-rw-r--r--librelogo/source/icons/sc_newdoc.pngbin0 -> 350 bytes
-rw-r--r--librelogo/source/icons/sc_runbasic.pngbin0 -> 534 bytes
-rw-r--r--librelogo/source/pythonpath/LibreLogo_en_US.properties151
-rw-r--r--librelogo/source/pythonpath/librelogodummy_path.py13
-rw-r--r--librelogo/source/registry/data/org/openoffice/Office/Addons.xcu286
-rw-r--r--librelogo/source/registry/data/org/openoffice/Office/UI/StartModuleWindowState.xcu28
-rw-r--r--librelogo/source/registry/data/org/openoffice/Office/UI/WriterWindowState.xcu28
-rwxr-xr-xlibrsvg/ExternalProject_librsvg.mk35
-rw-r--r--librsvg/Library_librsvg-2-2.mk70
-rw-r--r--librsvg/README4
-rwxr-xr-xlibrsvg/UnpackedTarball_rsvg.mk29
-rwxr-xr-xlibrsvg/config.h27
-rw-r--r--librsvg/librsvg-2.32.1-win32.patch380
-rw-r--r--librsvg/librsvg-2.32.1.patch60
-rw-r--r--librsvg/prj/build.lst3
-rw-r--r--librsvg/prj/d.lst14
-rw-r--r--libvisio/ExternalPackage_libvisio.mk13
-rw-r--r--libvisio/ExternalProject_libvisio.mk73
-rw-r--r--libvisio/Module_libvisio.mk2
-rw-r--r--libvisio/StaticLibrary_visio.mk47
-rw-r--r--libvisio/UnpackedTarball_visio.mk9
-rw-r--r--libvisio/libvisio-0.0.19.patch116
-rw-r--r--libvisio/libvisio-0.0.20-zlib.patch26
-rw-r--r--libvisio/prj/build.lst5
-rw-r--r--libwpd/ExternalProject_libwpd.mk2
-rw-r--r--libwpd/prj/build.lst3
-rw-r--r--libwpg/prj/build.lst3
-rw-r--r--libwps/UnpackedTarball_wps.mk7
-rw-r--r--libwps/libwps.gcc.warnings.patch15
-rw-r--r--libwps/libwps.msvc.warnings.patch71
-rw-r--r--libwps/prj/build.lst3
-rw-r--r--libxml2/makefile.mk4
-rw-r--r--libxmlsec/makefile.mk24
-rw-r--r--libxmlsec/xmlsec1-mingw32.patch9
-rw-r--r--lingucomponent/Library_hyphen.mk5
-rw-r--r--lingucomponent/Library_lnth.mk5
-rw-r--r--lingucomponent/source/languageguessing/guess.cxx4
-rw-r--r--lingucomponent/source/languageguessing/guesslang.cxx4
-rw-r--r--lingucomponent/source/languageguessing/simpleguesser.cxx8
-rw-r--r--lingucomponent/source/lingutil/lingutil.cxx16
-rw-r--r--lingucomponent/source/lingutil/lingutil.hxx6
-rw-r--r--lingucomponent/source/thesaurus/libnth/nthesdta.cxx12
-rw-r--r--lingucomponent/source/thesaurus/libnth/nthesdta.hxx7
-rw-r--r--lingucomponent/source/thesaurus/libnth/nthesimp.cxx30
-rw-r--r--linguistic/inc/linguistic/misc.hxx1
-rw-r--r--linguistic/source/convdic.cxx18
-rw-r--r--linguistic/source/gciterator.cxx46
-rw-r--r--linguistic/source/lngsvcmgr.cxx2
-rw-r--r--linguistic/source/lngsvcmgr.hxx12
-rw-r--r--lotuswordpro/qa/cppunit/test_lotuswordpro.cxx6
-rw-r--r--lotuswordpro/source/filter/xfilter/xfdrawstyle.cxx2
-rw-r--r--lpsolve/ExternalPackage_lpsolve.mk35
-rw-r--r--lpsolve/ExternalProject_lpsolve.mk42
-rw-r--r--lpsolve/Makefile7
-rw-r--r--lpsolve/Module_lpsolve.mk22
-rw-r--r--lpsolve/UnpackedTarball_lpsolve.mk35
-rw-r--r--lpsolve/ccc.static11
-rw-r--r--lpsolve/lp_solve-fixed-warn.patch84
-rw-r--r--lpsolve/lp_solve_5.5-windows.patch20
-rw-r--r--lpsolve/lp_solve_5.5.patch50
-rw-r--r--lpsolve/makefile.mk116
-rw-r--r--lpsolve/prj/d.lst11
-rw-r--r--lpsolve/prj/dmake0
-rw-r--r--m4/README3
-rw-r--r--mdds/prj/build.lst3
-rw-r--r--more_fonts/ExternalPackage_dejavu.mk (renamed from more_fonts/Package_dejavu.mk)10
-rw-r--r--more_fonts/ExternalPackage_gentium.mk (renamed from more_fonts/Package_gentium.mk)10
-rw-r--r--more_fonts/ExternalPackage_liberation.mk (renamed from more_fonts/Package_liberation.mk)8
-rw-r--r--more_fonts/ExternalPackage_liberation_narrow.mk (renamed from more_fonts/Package_liberation_narrow.mk)10
-rw-r--r--more_fonts/ExternalPackage_libertineg.mk (renamed from more_fonts/Package_libertineg.mk)9
-rw-r--r--more_fonts/ExternalPackage_opensans.mk21
-rw-r--r--more_fonts/ExternalPackage_ptserif.mk21
-rw-r--r--more_fonts/ExternalPackage_sourcecode.mk19
-rw-r--r--more_fonts/ExternalPackage_sourcesans.mk21
-rw-r--r--more_fonts/Module_more_fonts.mk18
-rw-r--r--more_fonts/README1
-rw-r--r--more_fonts/UnpackedTarball_opensans.mk14
-rw-r--r--more_fonts/UnpackedTarball_ptserif.mk14
-rw-r--r--more_fonts/UnpackedTarball_sourcecode.mk14
-rw-r--r--more_fonts/UnpackedTarball_sourcesans.mk14
-rw-r--r--more_fonts/fonts/ttf_amt/makefile.mk59
-rw-r--r--more_fonts/fonts/ttf_gentium/makefile.mk61
-rw-r--r--more_fonts/fonts/ttf_liberation_narrow/makefile.mk63
-rw-r--r--more_fonts/fonts/ttf_linlibertineg/makefile.mk60
-rw-r--r--mysqlc/source/registry/data/org/openoffice/Office/DataAccess/Drivers.xcu2
-rw-r--r--mythes/ExternalPackage_mythes.mk27
-rw-r--r--mythes/ExternalProject_mythes.mk28
-rw-r--r--mythes/Makefile7
-rw-r--r--mythes/Module_mythes.mk (renamed from librsvg/Module_librsvg.mk)21
-rw-r--r--mythes/StaticLibrary_mythes.mk21
-rw-r--r--mythes/UnpackedTarball_mythes.mk20
-rw-r--r--mythes/makefile.mk121
-rw-r--r--mythes/mythes-1.2.0-makefile-mk.diff88
-rw-r--r--mythes/prj/d.lst7
-rw-r--r--mythes/prj/dmake0
-rw-r--r--neon/prj/build.lst3
-rw-r--r--nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/META-INF/manifest.xml (renamed from nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/manifest.xml)0
-rw-r--r--np_sdk/StaticLibrary_nputils.mk5
-rw-r--r--nss/makefile.mk80
-rw-r--r--nss/nsinstall.py163
-rw-r--r--nss/nspr-4.9-build.patch285
-rw-r--r--nss/nss-3.13.3-build.patch259
-rw-r--r--nss/nss.patch26
-rw-r--r--[-rwxr-xr-x]nss/nss.patch.mingw279
-rw-r--r--odk/examples/DevelopersGuide/Components/Addons/ProtocolHandlerAddon_cpp/addon.cxx7
-rw-r--r--odk/examples/cpp/complextoolbarcontrols/MyProtocolHandler.cxx7
-rw-r--r--odk/pack/gendocu/makefile.mk2
-rw-r--r--odk/source/unowinreg/win/makefile.mk1
-rw-r--r--offapi/Module_offapi.mk34
-rw-r--r--offapi/UnoApiMerge_types.mk17
-rw-r--r--offapi/UnoApi_offapi.mk82
-rw-r--r--offapi/com/sun/star/animations/TargetPropertiesCreator.idl38
-rw-r--r--offapi/com/sun/star/awt/Toolkit.idl19
-rw-r--r--offapi/com/sun/star/awt/XToolkit2.idl63
-rw-r--r--offapi/com/sun/star/awt/XToolkitExperimental.idl50
-rw-r--r--offapi/com/sun/star/chart2/data/DatabaseDataProvider.idl38
-rw-r--r--offapi/com/sun/star/configuration/ConfigurationProvider.idl2
-rw-r--r--offapi/com/sun/star/document/XCmisDocument.idl20
-rw-r--r--offapi/com/sun/star/drawing/CanvasFeature.idl43
-rw-r--r--offapi/com/sun/star/drawing/SlideSorter.idl43
-rw-r--r--offapi/com/sun/star/drawing/XPresenterHelper.idl37
-rw-r--r--offapi/com/sun/star/drawing/XSlidePreviewCache.idl38
-rw-r--r--offapi/com/sun/star/drawing/XSlidePreviewCacheListener.idl45
-rw-r--r--offapi/com/sun/star/drawing/XSlideSorterBase.idl37
-rw-r--r--offapi/com/sun/star/drawing/framework/BorderType.idl43
-rw-r--r--offapi/com/sun/star/drawing/framework/XPaneBorderPainter.idl37
-rw-r--r--offapi/com/sun/star/frame/AutoRecovery.idl (renamed from wizards/com/sun/star/wizards/fax/CGFaxWizard.java)25
-rw-r--r--offapi/com/sun/star/frame/UntitledNumbersConst.idl44
-rw-r--r--offapi/com/sun/star/frame/XGlobalEventBroadcaster.idl3
-rw-r--r--offapi/com/sun/star/graphic/Primitive2DTools.idl40
-rw-r--r--offapi/com/sun/star/graphic/SvgTools.idl41
-rw-r--r--offapi/com/sun/star/graphic/XPrimitive2DRenderer.idl78
-rw-r--r--offapi/com/sun/star/graphic/XSvgParser.idl48
-rw-r--r--offapi/com/sun/star/i18n/LocaleCalendar.idl10
-rw-r--r--offapi/com/sun/star/i18n/Transliteration.idl7
-rw-r--r--offapi/com/sun/star/inspection/StringRepresentation.idl43
-rw-r--r--offapi/com/sun/star/linguistic2/LinguServiceManager.idl13
-rw-r--r--offapi/com/sun/star/linguistic2/XLinguServiceManager2.idl (renamed from rdbmaker/source/rdbmaker/rdbtype.hxx)39
-rw-r--r--offapi/com/sun/star/packages/manifest/ManifestReader.idl33
-rw-r--r--offapi/com/sun/star/packages/manifest/ManifestWriter.idl33
-rw-r--r--offapi/com/sun/star/presentation/SlideShow.idl44
-rw-r--r--offapi/com/sun/star/presentation/TransitionFactory.idl44
-rw-r--r--offapi/com/sun/star/rendering/ARGBColor.idl43
-rw-r--r--offapi/com/sun/star/rendering/BitmapCanvas.idl44
-rw-r--r--offapi/com/sun/star/rendering/Canvas.idl44
-rw-r--r--offapi/com/sun/star/rendering/Color.idl44
-rw-r--r--offapi/com/sun/star/rendering/ColorComponent.idl43
-rw-r--r--offapi/com/sun/star/rendering/RGBColor.idl44
-rw-r--r--offapi/com/sun/star/rendering/XCanvas.idl12
-rw-r--r--offapi/com/sun/star/rendering/XColorSpace.idl37
-rw-r--r--offapi/com/sun/star/report/FixedLine.idl43
-rw-r--r--offapi/com/sun/star/report/FixedText.idl43
-rw-r--r--offapi/com/sun/star/report/FormatCondition.idl44
-rw-r--r--offapi/com/sun/star/report/FormattedField.idl38
-rw-r--r--offapi/com/sun/star/report/Function.idl44
-rw-r--r--offapi/com/sun/star/report/Group.idl44
-rw-r--r--offapi/com/sun/star/report/Groups.idl43
-rw-r--r--offapi/com/sun/star/report/ImageControl.idl38
-rw-r--r--offapi/com/sun/star/report/ReportControlFormat.idl43
-rw-r--r--offapi/com/sun/star/report/ReportControlModel.idl38
-rw-r--r--offapi/com/sun/star/report/ReportDefinition.idl38
-rw-r--r--offapi/com/sun/star/report/Section.idl43
-rw-r--r--offapi/com/sun/star/report/Shape.idl43
-rw-r--r--offapi/com/sun/star/setup/InstallResponse.idl43
-rw-r--r--offapi/com/sun/star/setup/ResponseErrorCode.idl43
-rw-r--r--offapi/com/sun/star/sheet/FormulaOpCodeMapper.idl43
-rw-r--r--offapi/com/sun/star/style/XStyleSupplier.idl37
-rw-r--r--offapi/com/sun/star/sync/FilterData.idl43
-rw-r--r--offapi/com/sun/star/sync/SyncInfo.idl43
-rw-r--r--offapi/com/sun/star/ucb/CheckinArgument.idl60
-rw-r--r--offapi/com/sun/star/ucb/GlobalTransferCommandArgument2.idl32
-rw-r--r--offapi/com/sun/star/ucb/InsertCommandArgument2.idl31
-rw-r--r--offapi/com/sun/star/ucb/TransferInfo2.idl31
-rw-r--r--offapi/com/sun/star/ui/dialogs/FolderPicker.idl19
-rw-r--r--offapi/com/sun/star/ui/dialogs/XFolderPicker2.idl (renamed from rdbmaker/source/rdbmaker/specialtypemanager.hxx)58
-rw-r--r--offapi/com/sun/star/util/SearchAlgorithms.idl43
-rw-r--r--offapi/com/sun/star/util/SearchFlags.idl37
-rw-r--r--offapi/com/sun/star/util/SearchOptions.idl37
-rw-r--r--offapi/com/sun/star/util/SearchResult.idl43
-rw-r--r--offapi/com/sun/star/util/XTextSearch.idl43
-rw-r--r--offapi/com/sun/star/xml/NamespaceContainer.idl2
-rw-r--r--offapi/com/sun/star/xml/crypto/NSSInitializer.idl37
-rw-r--r--offapi/com/sun/star/xml/crypto/SEInitializer.idl12
-rw-r--r--offapi/com/sun/star/xml/crypto/XNSSInitializer.idl (renamed from scp2/source/binfilter/registryitem_binfilter.ulf)35
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/ConstOfSecurityId.idl43
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/ElementMarkPriority.idl43
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/ElementMarkType.idl43
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/ElementStackItem.idl43
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XElementStackKeeper.idl37
-rw-r--r--offapi/com/sun/star/xml/crypto/sax/XSecuritySAXEventKeeper.idl37
-rw-r--r--offapi/com/sun/star/xml/csax/XCompressedDocumentHandler.idl37
-rw-r--r--offapi/com/sun/star/xml/csax/XMLAttribute.idl43
-rw-r--r--offapi/com/sun/star/xml/sax/Writer.idl (renamed from wizards/com/sun/star/wizards/letter/CGLetterWizard.java)28
-rw-r--r--offapi/com/sun/star/xml/sax/XWriter.idl (renamed from rdbmaker/source/rdbmaker/rdboptions.hxx)38
-rw-r--r--offapi/com/sun/star/xml/xslt/XSLT2Transformer.idl30
-rw-r--r--offapi/com/sun/star/xml/xslt/XSLTTransformer.idl32
-rw-r--r--offapi/com/sun/star/xml/xslt/XXSLTTransformer.idl36
-rw-r--r--offapi/org/freedesktop/PackageKit/XModify.idl104
-rw-r--r--offapi/org/freedesktop/PackageKit/XQuery.idl48
-rw-r--r--offapi/org/freedesktop/PackageKit/XSyncDbusSessionHelper.idl31
-rw-r--r--offapi/type_reference/types.rdbbin7655424 -> 7655424 bytes
-rwxr-xr-xoffapi/type_reference/update-rdb.sh14
-rw-r--r--officecfg/CustomTarget_registry.mk33
-rw-r--r--officecfg/registry/data/org/openoffice/Office/Common.xcu4
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu15
-rw-r--r--officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu2
-rw-r--r--officecfg/registry/data/org/openoffice/VCL.xcu10
-rw-r--r--officecfg/registry/data/org/openoffice/ucb/Configuration.xcu2
-rw-r--r--officecfg/registry/schema/org/openoffice/Office/Writer.xcs2
-rw-r--r--ooo.lst.in91
-rw-r--r--oovbaapi/Makefile9
-rw-r--r--oovbaapi/Module_oovbaapi.mk33
-rw-r--r--oovbaapi/UnoApi_oovbaapi.mk37
-rw-r--r--[-rwxr-xr-x]oovbaapi/genconstidl/api-to-idl.pl33
-rw-r--r--oovbaapi/ooo/vba/VbAppWinStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/VbCallType.idl18
-rw-r--r--oovbaapi/ooo/vba/VbDateTimeFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/VbIMEStatus.idl18
-rw-r--r--oovbaapi/ooo/vba/VbStrConv.idl18
-rw-r--r--oovbaapi/ooo/vba/VbTriState.idl18
-rw-r--r--oovbaapi/ooo/vba/XApplicationBase.idl43
-rw-r--r--oovbaapi/ooo/vba/XDialogBase.idl43
-rw-r--r--oovbaapi/ooo/vba/XDocumentBase.idl43
-rw-r--r--oovbaapi/ooo/vba/XVBAAppService.idl58
-rw-r--r--oovbaapi/ooo/vba/XVBADocService.idl58
-rw-r--r--oovbaapi/ooo/vba/access/AcDataAccessPageView.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcFilterType.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcFormView.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcFormatConditionType.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcImportXMLOption.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcProjectType.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcQuitOption.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcRecord.idl18
-rw-r--r--oovbaapi/ooo/vba/access/AcShowToolbar.idl18
-rw-r--r--oovbaapi/ooo/vba/access/RefKind.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/ADCPROP_ASYNCTHREADPRIORITY_ENUM.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/CompareEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/CursorTypeEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/DataTypeEnum.idl53
-rw-r--r--oovbaapi/ooo/vba/adodb/EventReasonEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/ExecuteOptionEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/ParameterDirectionEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/PositionEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/adodb/XactAttributeEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/dao/CommitTransOptionsEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/dao/FieldAttributeEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/dao/PermissionEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/dao/QueryDefStateEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/dao/WorkspaceTypeEnum.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/Button.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/SheetObjects.idl37
-rw-r--r--oovbaapi/ooo/vba/excel/XApplication.idl37
-rw-r--r--oovbaapi/ooo/vba/excel/XButton.idl53
-rw-r--r--oovbaapi/ooo/vba/excel/XControlObject.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XGlobals.idl37
-rw-r--r--oovbaapi/ooo/vba/excel/XGraphicObjects.idl63
-rw-r--r--oovbaapi/ooo/vba/excel/XMenuBars.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XMenuItems.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XMenus.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XName.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XPageSetup.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XPivotCache.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XRange.idl37
-rw-r--r--oovbaapi/ooo/vba/excel/XSheetObject.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XWorkbook.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XWorksheet.idl37
-rw-r--r--oovbaapi/ooo/vba/excel/XWorksheets.idl43
-rw-r--r--oovbaapi/ooo/vba/excel/XlApplicationInternational.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlAutoFillType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlAxisGroup.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlCellInsertionMode.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlChartPicturePlacement.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlClipboardFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlColorIndex.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlCopyPictureFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlCorruptLoad.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlCubeFieldType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlCutCopyMode.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlDataSeriesDate.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlDataSeriesType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlDisplayDrawingObjects.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlEditionOptionsOption.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlEnableSelection.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlErrorChecks.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlFileFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlFillWith.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlFindLookIn.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlFormatConditionOperator.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlFormatConditionType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlHebrewModes.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlLineStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlLink.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlLinkInfoType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlLookAt.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlMSApplication.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlMailSystem.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlMarkerStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlMouseButton.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlMousePointer.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlOLEType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlOLEVerb.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlObjectSize.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPTSelectionMode.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPageBreak.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPageBreakExtent.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPageOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPaperSize.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlParameterDataType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlParameterType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPasteSpecialOperation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPasteType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPattern.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPhoneticAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPhoneticCharacterType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPictureAppearance.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPictureConvertorType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotCellType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotFieldCalculation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotFieldDataType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotFieldOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotFormatType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotTableMissingItems.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotTableSourceType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPivotTableVersionList.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPlacement.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPlatform.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPrintErrors.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPrintLocation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlPriority.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlQueryType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlRangeAutoFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlRangeValueDataType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlReferenceStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlReferenceType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlRobustConnect.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlRoutingSlipDelivery.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlRoutingSlipStatus.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlRowCol.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlRunAutoMacro.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSaveAction.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSaveAsAccessMode.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSaveConflictResolution.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlScaleType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSearchDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSearchOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSearchWithin.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSheetType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSheetVisibility.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSizeRepresents.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSmartTagControlType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSmartTagDisplayMode.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSortDataOption.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSortMethod.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSortMethodOld.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSortOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSortOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSortType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSourceType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSpeakDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSpecialCellsValue.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSubscribeToFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSubtototalLocationType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSummaryColumn.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSummaryReportType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlSummaryRow.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTabPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTextParsingType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTextQualifier.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTextVisualLayoutType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTickLabelOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTickLabelPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTickMark.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTimeUnit.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlToolbarProtection.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTotalsCalculation.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlTrendlineType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlUnderlineStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlUpdateLinks.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlVAlign.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlWBATemplate.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlWebFormatting.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlWebSelectionType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlWindowState.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlWindowType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlWindowView.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlXLMMacroType.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlXmlExportResult.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlXmlImportResult.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlXmlLoadOption.idl18
-rw-r--r--oovbaapi/ooo/vba/excel/XlYesNoGuess.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/XButton.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XCheckBox.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XComboBox.idl38
-rw-r--r--oovbaapi/ooo/vba/msforms/XCommandButton.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XControl.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XGroupBox.idl38
-rw-r--r--oovbaapi/ooo/vba/msforms/XImage.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XLabel.idl38
-rw-r--r--oovbaapi/ooo/vba/msforms/XListBox.idl38
-rw-r--r--oovbaapi/ooo/vba/msforms/XRadioButton.idl38
-rw-r--r--oovbaapi/ooo/vba/msforms/XShape.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XShapeRange.idl43
-rw-r--r--oovbaapi/ooo/vba/msforms/XTextBox.idl38
-rw-r--r--oovbaapi/ooo/vba/msforms/XToggleButton.idl39
-rw-r--r--oovbaapi/ooo/vba/msforms/fmAction.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmBackStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmBorderStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmBorders.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmButtonEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmButtonStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmCycle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmDisplayStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmDragBehavior.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmDragState.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmDropButtonStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmDropEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmEnterFieldBehavior.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmIMEMode.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmLayoutEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmListStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmMatchEntry.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmMode.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmMousePointer.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmMultiSelect.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmPicPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmPictureAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmPicturePosition.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmPictureSizeMode.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmScrollAction.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmScrollBars.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmShowDropButtonWhen.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmShowListWhen.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmSnapPoint.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmSpecialEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmTabOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmTabStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmTextAlign.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmTransitionEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmVerticalScrollBarSide.idl18
-rw-r--r--oovbaapi/ooo/vba/msforms/fmZOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/office/DocProperties.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MailFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAlertButtonType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAlertCancelType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAlertDefaultType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAlertIconType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAlignCmd.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAnimationType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAppLanguageID.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoArrowheadLength.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoArrowheadStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoArrowheadWidth.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAutoShapeType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoAutomationSecurity.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBalloonButtonType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBalloonErrorType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBalloonType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBarPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBarProtection.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBarRow.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBarType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoBlackWhiteMode.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoButtonSetType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoButtonState.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoButtonStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoButtonStyleHidden.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoCalloutAngleType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoCalloutDropType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoCalloutType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoCharacterSet.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoColorType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoComboStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoCommandBarButtonHyperlinkType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoCondition.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoConnector.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoConnectorType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoControlOLEUsage.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoControlType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoDiagramNodeType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoDiagramType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoDistributeCmd.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoDocProperties.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoEditingType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoEncoding.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoExtraInfoMethod.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoExtrusionColorType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFarEastLineBreakLanguageID.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFeatureInstall.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileDialogType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileDialogView.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileFindListBy.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileFindOptions.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileFindSortBy.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileFindView.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileNewAction.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileNewSection.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFileType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFillType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFilterComparison.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFilterConjunction.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoFlipCmd.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoGradientColorType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoGradientStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoHTMLProjectOpen.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoHTMLProjectState.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoHorizontalAnchor.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoHyperlinkType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoIconType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoLanguageID.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoLanguageIDHidden.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoLastModified.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoLineDashStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoLineStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoMenuAnimation.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoMixedType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoModeType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoMoveRow.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoOLEMenuGroup.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoOrgChartLayoutType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoOrgChartOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPatternType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPermission.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPictureColorType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetExtrusionDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetGradientType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetLightingDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetLightingSoftness.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetMaterial.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetTextEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetTextEffectShape.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetTexture.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoPresetThreeDFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoRelativeNodePosition.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoScaleFrom.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoScreenSize.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoScriptLanguage.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoScriptLocation.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSearchIn.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSegmentType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoShadowType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoShapeType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSharedWorkspaceTaskPriority.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSharedWorkspaceTaskStatus.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSortBy.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSortOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSyncAvailableType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSyncCompareType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSyncConflictResolutionType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSyncErrorType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSyncEventType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSyncStatusType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoSyncVersionType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoTargetBrowser.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoTextEffectAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoTextOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoTextureType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoTriState.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoVerticalAnchor.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoWizardActType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoWizardMsgType.idl18
-rw-r--r--oovbaapi/ooo/vba/office/MsoZOrderCmd.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimAccumulate.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimAdditive.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimAfterEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimCommandType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimEffectAfter.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimEffectRestart.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimFilterEffectSubtype.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimFilterEffectType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimProperty.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimTextUnitEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimTriggerType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/MsoAnimateByLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpActionType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpAdvanceMode.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpAfterEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpAlertLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpArrangeStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpAutoSize.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpBaselineAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpBorderType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpBulletType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpChangeCase.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpChartUnitEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpColorSchemeIndex.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpDateTimeFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpEntryEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpExportMode.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpFarEastLineBreakLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpFileDialogType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpFollowColors.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpFrameColors.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpHTMLVersion.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpIndentControl.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpMediaType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpMouseActivation.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpNumberedBulletStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpParagraphAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpPasteDataType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpPlaceholderType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpPrintColorType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpPrintHandoutOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpPrintOutputType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpPrintRangeType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpPublishSourceType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpRevisionInfo.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSaveAsFileType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSelectionType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpShapeFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSlideLayout.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSlideShowAdvanceMode.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSlideShowPointerType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSlideShowRangeType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSlideShowState.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSlideShowType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSlideSizeType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSoundEffectType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpSoundFormatType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpTabStopType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpTextLevelEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpTextStyleType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpTextUnitEffect.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpTransitionSpeed.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpUpdateOption.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpViewType.idl18
-rw-r--r--oovbaapi/ooo/vba/powerpoint/PpWindowState.idl18
-rw-r--r--oovbaapi/ooo/vba/stdole/LoadPictureConstants.idl18
-rw-r--r--oovbaapi/ooo/vba/stdole/OLE_TRISTATE.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdAlertLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdAnimation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdAraSpeller.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdArabicNumeral.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdArrangeStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdAutoFitBehavior.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdAutoMacros.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdAutoVersions.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBaselineAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBookmarkSortBy.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBorderDistanceFrom.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBorderType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBorderTypeHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBreakType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBrowseTarget.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBrowserLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBuiltInProperty.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdBuiltinStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCalendarType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCalendarTypeBi.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCaptionLabelID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCaptionNumberStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCaptionNumberStyleHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCaptionPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCellVerticalAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCharacterCase.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCharacterCaseHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCharacterWidth.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdChevronConvertRule.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCollapseDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdColor.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdColorIndex.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCompareTarget.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCompatibility.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdConditionCode.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdConstants.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdContinue.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCountry.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCursorMovement.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCursorType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdCustomLabelPageSize.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDateLanguage.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDefaultFilePath.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDefaultListBehavior.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDefaultTableBehavior.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDeleteCells.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDeletedTextMark.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDiacriticColor.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDictionaryType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDictionaryTypeHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDisableFeaturesIntroducedAfter.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDocumentDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDocumentKind.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDocumentMedium.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDocumentType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDocumentViewDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdDropPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEditionOption.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEditionType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEditorType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEmailHTMLFidelity.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEmphasisMark.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEnableCancelKey.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEncloseStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEnclosureType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEndnoteLocation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdEnvelopeOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFarEastLineBreakLanguageID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFarEastLineBreakLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFieldKind.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFieldShading.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFieldType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFindMatch.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFindWrap.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFlowDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFontBias.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFootnoteLocation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFramePosition.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFrameSizeRule.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFramesetNewFrameLocation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFramesetSizeType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdFramesetType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdGoToDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdGoToItem.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdGutterStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdGutterStyleOld.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHeaderFooterIndex.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHeadingSeparator.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHebSpellStart.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHelpType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHelpTypeHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHighAnsiText.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHorizontalInVerticalType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHorizontalLineAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdHorizontalLineWidthType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdIMEMode.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdIndexFilter.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdIndexFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdIndexSortBy.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdIndexType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdInformation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdInlineShapeType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdInsertCells.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdInsertedTextMark.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdInternationalIndex.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdJustificationMode.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdKana.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdKey.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdKeyCategory.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLanguageID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLanguageID2000.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLayoutMode.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLetterStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLetterheadLocation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLineEndingType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLineSpacing.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLineStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLineType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLineWidth.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdLinkType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdListApplyTo.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdListGalleryType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdListLevelAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdListNumberStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdListNumberStyleHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdListType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeActiveRecord.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeComparison.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeDataSource.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeDefaultRecord.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeDestination.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeMailFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeMainDocType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailMergeState.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailSystem.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMailerPriority.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMappedDataFields.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMeasurementUnits.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMeasurementUnitsHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMergeSubType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMergeTarget.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMonthNames.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMovementType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdMultipleWordConversionsMode.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdNewDocumentType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdNoteNumberStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdNoteNumberStyleHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdNumberStyleWordBasicBiDi.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdNumberType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdNumberingRule.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOLEPlacement.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOLEType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOLEVerb.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOpenFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOrganizerObject.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOriginalFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdOutlineLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPageBorderArt.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPageFit.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPageNumberAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPageNumberStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPageNumberStyleHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPaperSize.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPaperTray.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdParagraphAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdParagraphAlignmentHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPartOfSpeech.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPasteDataType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPhoneticGuideAlignmentType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPictureLinkType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPreferredWidthType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPrintOutItem.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPrintOutPages.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdPrintOutRange.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdProofreadingErrorType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdProtectionType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdReadingOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRecoveryType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRectangleType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdReferenceKind.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdReferenceType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRelativeHorizontalPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRelativeVerticalPosition.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRelocate.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdReplace.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisedLinesMark.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisedPropertiesMark.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisionType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisionsBalloonMargin.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisionsBalloonPrintOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisionsBalloonWidthType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisionsMode.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisionsView.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRevisionsWrap.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRoutingSlipDelivery.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRoutingSlipStatus.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRowAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRowHeightRule.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdRulerStyle.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSalutationGender.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSalutationType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSaveFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSaveOptions.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdScrollbarType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSectionDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSectionStart.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSeekView.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSelectionFlags.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSelectionType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSeparatorType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdShapePosition.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdShowFilter.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSmartTagControlType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSortFieldType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSortFieldTypeHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSortOrder.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSortSeparator.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSpecialPane.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSpellingErrorType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSpellingWordType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdStatistic.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdStatisticHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdStoryType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdStyleSheetLinkType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdStyleSheetPrecedence.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdStyleType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSubscriberFormats.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSummaryLength.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdSummaryMode.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTCSCConverterDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTabAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTabLeader.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTabLeaderHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTableDirection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTableFieldSeparator.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTableFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTableFormatApply.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTablePosition.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTaskPanes.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTemplateType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTextFormFieldType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTextOrientation.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTextOrientationHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTextureIndex.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdToaFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTocFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTofFormat.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTrailingCharacter.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdTwoLinesInOneType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdUnderline.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdUnits.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdUseFormattingFrom.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdVerticalAlignment.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdViewType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdViewTypeOld.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdVisualSelection.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWindowState.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWindowType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWordDialog.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWordDialogHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWordDialogTab.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWordDialogTabHID.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWrapSideType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWrapType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdWrapTypeMerged.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdXMLNodeLevel.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdXMLNodeType.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdXMLSelectionChangeReason.idl18
-rw-r--r--oovbaapi/ooo/vba/word/WdXMLValidationStatus.idl18
-rw-r--r--oovbaapi/ooo/vba/word/XApplication.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XCell.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XCells.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XCheckBox.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XColumn.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XColumns.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XDocument.idl37
-rw-r--r--oovbaapi/ooo/vba/word/XField.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XFormField.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XFormFields.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XFrame.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XFrames.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XGlobals.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XHeadersFooters.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XListFormat.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XListGalleries.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XListGallery.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XListLevel.idl44
-rw-r--r--oovbaapi/ooo/vba/word/XListLevels.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XListTemplate.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XListTemplates.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XParagraph.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XRange.idl37
-rw-r--r--oovbaapi/ooo/vba/word/XReplacement.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XRevision.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XRevisions.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XRow.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XRows.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XSection.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XSelection.idl37
-rw-r--r--oovbaapi/ooo/vba/word/XStyle.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XTabStop.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XTabStops.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XTable.idl37
-rw-r--r--oovbaapi/ooo/vba/word/XTableOfContents.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XTablesOfContents.idl38
-rw-r--r--oovbaapi/ooo/vba/word/XTemplate.idl43
-rw-r--r--oovbaapi/ooo/vba/word/XWindow.idl43
-rwxr-xr-xoowintool38
-rw-r--r--oox/inc/oox/dump/dumperbase.hxx44
-rw-r--r--oox/inc/oox/helper/binaryinputstream.hxx6
-rw-r--r--oox/inc/oox/helper/binaryoutputstream.hxx6
-rw-r--r--oox/inc/oox/helper/binarystreambase.hxx10
-rw-r--r--oox/inc/oox/helper/graphichelper.hxx16
-rw-r--r--oox/inc/oox/helper/helper.hxx16
-rw-r--r--oox/inc/oox/helper/modelobjecthelper.hxx26
-rw-r--r--oox/inc/oox/helper/propertyset.hxx6
-rw-r--r--oox/inc/oox/helper/storagebase.hxx14
-rw-r--r--oox/inc/oox/helper/zipstorage.hxx2
-rw-r--r--oox/inc/oox/vml/vmlshape.hxx2
-rw-r--r--oox/inc/oox/vml/vmltextbox.hxx4
-rw-r--r--oox/inc/oox/vml/vmltextboxcontext.hxx3
-rw-r--r--oox/source/drawingml/fillpropertiesgroupcontext.cxx4
-rw-r--r--oox/source/drawingml/textbodypropertiescontext.cxx2
-rw-r--r--oox/source/export/SchXMLSeriesHelper.cxx4
-rw-r--r--oox/source/export/SchXMLSeriesHelper.hxx1
-rw-r--r--oox/source/export/chartexport.cxx2
-rw-r--r--oox/source/export/drawingml.cxx4
-rw-r--r--oox/source/helper/zipstorage.cxx30
-rw-r--r--oox/source/ole/axcontrol.cxx25
-rw-r--r--oox/source/ole/vbaproject.cxx3
-rw-r--r--oox/source/ppt/buildlistcontext.cxx4
-rw-r--r--oox/source/ppt/slidefragmenthandler.cxx2
-rw-r--r--oox/source/token/properties.txt4
-rw-r--r--oox/source/vml/vmldrawing.cxx3
-rw-r--r--oox/source/vml/vmlformatting.cxx45
-rw-r--r--oox/source/vml/vmlshape.cxx15
-rw-r--r--oox/source/vml/vmlshapecontext.cxx4
-rw-r--r--oox/source/vml/vmltextbox.cxx1
-rw-r--r--oox/source/vml/vmltextboxcontext.cxx22
-rw-r--r--openldap/ExternalPackage_openldap.mk20
-rw-r--r--openldap/ExternalProject_openldap.mk42
-rw-r--r--openldap/Makefile7
-rw-r--r--openldap/Module_openldap.mk22
-rw-r--r--openldap/UnpackedTarball_openldap.mk18
-rw-r--r--openldap/makefile.mk70
-rw-r--r--openldap/prj/dmake0
-rw-r--r--package/inc/ZipFile.hxx16
-rw-r--r--package/inc/ZipOutputStream.hxx4
-rw-r--r--package/inc/zipfileaccess.hxx6
-rw-r--r--package/source/manifest/ManifestExport.cxx114
-rw-r--r--package/source/manifest/ManifestImport.cxx108
-rw-r--r--package/source/manifest/ManifestReader.cxx6
-rw-r--r--package/source/manifest/ManifestWriter.cxx28
-rw-r--r--package/source/xstor/ocompinstream.cxx64
-rw-r--r--package/source/xstor/ohierarchyholder.cxx2
-rw-r--r--package/source/xstor/oseekinstream.cxx12
-rw-r--r--package/source/xstor/owriteablestream.cxx245
-rw-r--r--package/source/xstor/xfactory.cxx28
-rw-r--r--package/source/xstor/xstorage.cxx1309
-rw-r--r--package/source/zipapi/XUnbufferedStream.cxx8
-rw-r--r--package/source/zipapi/XUnbufferedStream.hxx4
-rw-r--r--package/source/zipapi/ZipFile.cxx49
-rw-r--r--package/source/zipapi/ZipOutputStream.cxx8
-rw-r--r--package/source/zippackage/ZipPackage.cxx294
-rw-r--r--package/source/zippackage/ZipPackageStream.cxx6
-rw-r--r--package/source/zippackage/zipfileaccess.cxx14
-rw-r--r--packimages/prj/build.lst1
-rw-r--r--padmin/source/helper.cxx62
-rw-r--r--pango/makefile.mk170
-rw-r--r--pango/pango-1.28.3-non-ascii.patch528
-rw-r--r--pango/pango-1.28.3-win32.patch649
-rw-r--r--pango/pango-1.28.3.patch95
-rw-r--r--pango/prj/build.lst3
-rw-r--r--pango/prj/d.lst44
-rw-r--r--pango/prj/dmake0
-rw-r--r--post_download.in72
-rw-r--r--postgresql/ExternalPackage_postgresql.mk31
-rw-r--r--postgresql/ExternalProject_postgresql.mk47
-rw-r--r--postgresql/Makefile7
-rw-r--r--postgresql/Module_postgresql.mk22
-rw-r--r--postgresql/README3
-rw-r--r--postgresql/UnpackedTarball_postgresql.mk24
-rw-r--r--postgresql/makefile.mk92
-rw-r--r--postgresql/prj/d.lst8
-rw-r--r--postgresql/prj/dmake0
-rw-r--r--postprocess/packcomponents/makefile.mk19
-rw-r--r--postprocess/packconfig/makefile.mk2
-rw-r--r--postprocess/packconfig/packconfig.pl141
-rw-r--r--postprocess/packregistry/makefile.mk22
-rw-r--r--postprocess/prj/build.lst2
-rw-r--r--postprocess/prj/d.lst2
-rw-r--r--pyuno/Library_pyuno_wrapper.mk5
-rw-r--r--pyuno/source/module/pyuno_runtime.cxx12
-rw-r--r--qadevOOo/objdsc/lng/com.sun.star.lingu2.LngSvcMgr.csv16
-rw-r--r--qadevOOo/tests/java/ifc/sheet/_XDocumentAuditing.java9
-rw-r--r--rdbmaker/Executable_rdbmaker.mk58
-rw-r--r--rdbmaker/README4
-rw-r--r--rdbmaker/inc/codemaker/dependency.hxx141
-rw-r--r--rdbmaker/inc/codemaker/global.hxx131
-rw-r--r--rdbmaker/inc/codemaker/options.hxx80
-rw-r--r--rdbmaker/inc/codemaker/registry.hxx198
-rw-r--r--rdbmaker/inc/codemaker/typemanager.hxx147
-rw-r--r--rdbmaker/prj/build.lst2
-rw-r--r--rdbmaker/prj/d.lst1
-rw-r--r--rdbmaker/source/codemaker/dependency.cxx290
-rw-r--r--rdbmaker/source/codemaker/global.cxx162
-rw-r--r--rdbmaker/source/codemaker/typemanager.cxx268
-rw-r--r--rdbmaker/source/rdbmaker/rdbmaker.cxx500
-rw-r--r--rdbmaker/source/rdbmaker/rdboptions.cxx372
-rw-r--r--rdbmaker/source/rdbmaker/rdbtype.cxx159
-rw-r--r--rdbmaker/source/rdbmaker/specialtypemanager.cxx94
-rw-r--r--rdbmaker/source/rdbmaker/typeblop.cxx514
-rw-r--r--readlicense_oo/html/LICENSE.html116
-rw-r--r--readlicense_oo/odt/LICENSE.odtbin139824 -> 138052 bytes
-rw-r--r--readlicense_oo/txt/NOTICE5
-rw-r--r--readlicense_oo/txt/license.txt91
-rw-r--r--registry/StaticLibrary_registry_helper.mk5
-rw-r--r--remotebridges/prj/build.lst2
-rw-r--r--reportbuilder/Extension_reportbuilder.mk18
-rw-r--r--reportbuilder/util/META-INF/manifest.xml (renamed from reportbuilder/util/manifest.xml)0
-rw-r--r--reportdesign/source/core/api/ReportDefinition.cxx15
-rw-r--r--reportdesign/source/core/sdr/UndoEnv.cxx16
-rw-r--r--reportdesign/source/filter/xml/xmlComponent.cxx1
-rw-r--r--reportdesign/source/filter/xml/xmlExport.cxx1
-rw-r--r--reportdesign/source/ui/dlg/AddField.cxx6
-rw-r--r--reportdesign/source/ui/dlg/Navigator.cxx84
-rw-r--r--reportdesign/source/ui/inc/AddField.hxx2
-rw-r--r--reportdesign/source/ui/report/SectionWindow.cxx3
-rw-r--r--reportdesign/source/ui/report/ViewsWindow.cxx7
-rw-r--r--rsc/source/parser/rscinit.cxx6
-rw-r--r--sal/CppunitTest_sal_rtl_bootstrap.mk21
-rw-r--r--sal/Library_sal.mk10
-rw-r--r--sal/Module_sal.mk3
-rw-r--r--sal/inc/osl/file.hxx18
-rw-r--r--sal/inc/osl/mutex.hxx2
-rw-r--r--sal/inc/rtl/byteseq.h2
-rw-r--r--sal/inc/rtl/string.hxx14
-rw-r--r--sal/inc/rtl/ustrbuf.hxx156
-rw-r--r--sal/inc/sal/log-areas.dox178
-rw-r--r--sal/inc/sal/mathconf.h14
-rw-r--r--sal/inc/sal/types.h21
-rw-r--r--sal/osl/unx/conditn.cxx38
-rw-r--r--sal/osl/unx/process.cxx118
-rw-r--r--sal/osl/w32/security.c31
-rw-r--r--sal/qa/OStringBuffer/rtl_OStringBuffer.cxx71
-rw-r--r--sal/qa/osl/security/osl_Security.cxx2
-rw-r--r--sal/qa/rtl/bootstrap/expand.cxx60
-rw-r--r--sal/qa/rtl/strings/test_strings_replace.cxx12
-rw-r--r--sal/rtl/source/alloc_arena.cxx12
-rw-r--r--sal/rtl/source/alloc_cache.cxx14
-rw-r--r--sal/rtl/source/alloc_global.cxx8
-rw-r--r--sal/rtl/source/bootstrap.cxx20
-rw-r--r--sal/rtl/source/logfile.cxx4
-rw-r--r--sal/rtl/source/strimp.hxx14
-rw-r--r--sax/source/expatwrap/saxwriter.cxx11
-rw-r--r--sax/source/tools/fastserializer.cxx2
-rw-r--r--saxon/ExternalProject_saxon.mk37
-rw-r--r--saxon/README1
-rw-r--r--saxon/build.xml1017
-rw-r--r--saxon/prj/build.lst2
-rw-r--r--sc/AllLangResTarget_sc.mk1
-rw-r--r--sc/CppunitTest_sc_filters_test.mk1
-rw-r--r--sc/CppunitTest_sc_macros_test.mk1
-rw-r--r--sc/CppunitTest_sc_subsequent_export_test.mk (renamed from sw/CppunitTest_sw_regression_test.mk)72
-rw-r--r--sc/CppunitTest_sc_subsequent_filters_test.mk2
-rw-r--r--sc/Library_sc.mk2
-rw-r--r--sc/Module_sc.mk6
-rw-r--r--sc/inc/attarray.hxx15
-rw-r--r--sc/inc/attrib.hxx1
-rw-r--r--sc/inc/colorscale.hxx75
-rw-r--r--sc/inc/column.hxx81
-rw-r--r--sc/inc/conditio.hxx52
-rw-r--r--sc/inc/document.hxx3
-rw-r--r--sc/inc/dpfilteredcache.hxx (renamed from sc/inc/dpcachetable.hxx)32
-rw-r--r--sc/inc/dpgroup.hxx12
-rw-r--r--sc/inc/dpoutput.hxx2
-rw-r--r--sc/inc/dpsdbtab.hxx12
-rw-r--r--sc/inc/dpshttab.hxx10
-rw-r--r--sc/inc/dptabdat.hxx14
-rw-r--r--sc/inc/dptabres.hxx4
-rw-r--r--sc/inc/dptabsrc.hxx2
-rw-r--r--sc/inc/fillinfo.hxx12
-rw-r--r--sc/inc/global.hxx6
-rw-r--r--sc/inc/globstr.hrc32
-rw-r--r--sc/inc/postit.hxx9
-rw-r--r--sc/inc/table.hxx4
-rw-r--r--sc/inc/xmlwrap.hxx4
-rw-r--r--sc/qa/unit/data/contentCSV/new_cond_format_test.csv22
-rw-r--r--sc/qa/unit/data/contentCSV/spreadsheet-functions.csv1
-rw-r--r--sc/qa/unit/data/ods/formats.odsbin12868 -> 12677 bytes
-rw-r--r--sc/qa/unit/data/ods/functions.odsbin12964 -> 13214 bytes
-rw-r--r--sc/qa/unit/data/xls/fail/CVE-2012-4233-4.xlsbin0 -> 104960 bytes
-rw-r--r--sc/qa/unit/data/xls/pass/EDB-22330-1.xlsbin0 -> 387072 bytes
-rw-r--r--sc/qa/unit/data/xlsx/formats.xlsxbin13816 -> 9295 bytes
-rw-r--r--sc/qa/unit/data/xlsx/new_cond_format_test.xlsxbin0 -> 9818 bytes
-rw-r--r--sc/qa/unit/filters-test.cxx43
-rw-r--r--sc/qa/unit/helper/csv_handler.hxx25
-rw-r--r--sc/qa/unit/helper/debughelper.hxx5
-rw-r--r--sc/qa/unit/helper/qahelper.hxx6
-rw-r--r--sc/qa/unit/subsequent_export-test.cxx340
-rw-r--r--sc/qa/unit/subsequent_filters-test.cxx138
-rw-r--r--sc/qa/unit/ucalc.cxx501
-rw-r--r--sc/source/core/data/attarray.cxx17
-rw-r--r--sc/source/core/data/attrib.cxx6
-rw-r--r--sc/source/core/data/colorscale.cxx210
-rw-r--r--sc/source/core/data/column.cxx166
-rw-r--r--sc/source/core/data/column2.cxx56
-rw-r--r--sc/source/core/data/column3.cxx10
-rw-r--r--sc/source/core/data/conditio.cxx277
-rw-r--r--sc/source/core/data/documen2.cxx7
-rw-r--r--sc/source/core/data/documen3.cxx12
-rw-r--r--sc/source/core/data/documen4.cxx7
-rw-r--r--sc/source/core/data/documen6.cxx10
-rw-r--r--sc/source/core/data/documen8.cxx2
-rw-r--r--sc/source/core/data/document.cxx16
-rw-r--r--sc/source/core/data/dpcache.cxx35
-rw-r--r--sc/source/core/data/dpfilteredcache.cxx (renamed from sc/source/core/data/dpcachetable.cxx)189
-rw-r--r--sc/source/core/data/dpgroup.cxx44
-rw-r--r--sc/source/core/data/dpitemdata.cxx2
-rw-r--r--sc/source/core/data/dpobject.cxx4
-rw-r--r--sc/source/core/data/dpoutput.cxx2
-rw-r--r--sc/source/core/data/dpsdbtab.cxx20
-rw-r--r--sc/source/core/data/dpshttab.cxx20
-rw-r--r--sc/source/core/data/dptabdat.cxx8
-rw-r--r--sc/source/core/data/dptabres.cxx10
-rw-r--r--sc/source/core/data/dptabsrc.cxx35
-rw-r--r--sc/source/core/data/fillinfo.cxx13
-rw-r--r--sc/source/core/data/global.cxx18
-rw-r--r--sc/source/core/data/postit.cxx7
-rw-r--r--sc/source/core/data/table1.cxx11
-rw-r--r--sc/source/core/data/table2.cxx63
-rw-r--r--sc/source/core/data/table3.cxx12
-rw-r--r--sc/source/core/data/table6.cxx5
-rw-r--r--sc/source/core/tool/addincol.cxx548
-rw-r--r--sc/source/core/tool/cellkeytranslator.cxx2
-rw-r--r--sc/source/core/tool/chartpos.cxx2
-rw-r--r--sc/source/core/tool/compiler.cxx2
-rw-r--r--sc/source/core/tool/editutil.cxx2
-rw-r--r--sc/source/core/tool/interpr1.cxx4
-rw-r--r--sc/source/core/tool/interpr2.cxx10
-rw-r--r--sc/source/core/tool/interpr4.cxx64
-rw-r--r--sc/source/core/tool/interpr5.cxx6
-rw-r--r--sc/source/filter/excel/colrowst.cxx5
-rw-r--r--sc/source/filter/excel/excdoc.cxx1
-rw-r--r--sc/source/filter/excel/xecontent.cxx182
-rw-r--r--sc/source/filter/excel/xeescher.cxx2
-rw-r--r--sc/source/filter/excel/xehelper.cxx4
-rw-r--r--sc/source/filter/excel/xepivot.cxx2
-rw-r--r--sc/source/filter/excel/xestream.cxx2
-rw-r--r--sc/source/filter/excel/xestyle.cxx2
-rw-r--r--sc/source/filter/excel/xetable.cxx2
-rw-r--r--sc/source/filter/excel/xicontent.cxx4
-rw-r--r--sc/source/filter/excel/xltoolbar.cxx4
-rw-r--r--sc/source/filter/excel/xltoolbar.hxx1
-rw-r--r--sc/source/filter/html/htmlimp.cxx4
-rw-r--r--sc/source/filter/html/htmlpars.cxx2
-rw-r--r--sc/source/filter/inc/condformatbuffer.hxx20
-rw-r--r--sc/source/filter/inc/condformatcontext.hxx11
-rw-r--r--sc/source/filter/inc/xecontent.hxx16
-rw-r--r--sc/source/filter/oox/condformatbuffer.cxx281
-rw-r--r--sc/source/filter/oox/condformatcontext.cxx40
-rw-r--r--sc/source/filter/oox/numberformatsbuffer.cxx5
-rw-r--r--sc/source/filter/oox/worksheethelper.cxx9
-rw-r--r--sc/source/filter/xml/xmlcondformat.cxx201
-rw-r--r--sc/source/filter/xml/xmlcondformat.hxx48
-rw-r--r--sc/source/filter/xml/xmlexprt.cxx89
-rw-r--r--sc/source/filter/xml/xmlimprt.cxx31
-rw-r--r--sc/source/filter/xml/xmlimprt.hxx19
-rw-r--r--sc/source/filter/xml/xmlwrap.cxx23
-rw-r--r--sc/source/ui/app/drwtrans.cxx41
-rw-r--r--sc/source/ui/app/scmod.cxx3
-rw-r--r--sc/source/ui/cctrl/checklistmenu.cxx16
-rw-r--r--sc/source/ui/condformat/colorformat.cxx33
-rw-r--r--sc/source/ui/condformat/condformatdlg.cxx12
-rw-r--r--sc/source/ui/condformat/condformatdlgentry.cxx98
-rw-r--r--sc/source/ui/condformat/condformathelper.cxx35
-rw-r--r--sc/source/ui/condformat/condformatmgr.cxx8
-rw-r--r--sc/source/ui/dbgui/subtdlg.cxx2
-rw-r--r--sc/source/ui/dbgui/tpsort.cxx12
-rw-r--r--sc/source/ui/dbgui/tpsubt.cxx7
-rw-r--r--sc/source/ui/dbgui/validate.cxx4
-rw-r--r--sc/source/ui/docshell/dbdocimp.cxx1
-rw-r--r--sc/source/ui/docshell/docfunc.cxx20
-rw-r--r--sc/source/ui/docshell/docsh.cxx10
-rw-r--r--sc/source/ui/docshell/docsh8.cxx3
-rw-r--r--sc/source/ui/docshell/impex.cxx11
-rw-r--r--sc/source/ui/docshell/macromgr.cxx6
-rw-r--r--sc/source/ui/docshell/olinefun.cxx15
-rw-r--r--sc/source/ui/inc/acredlin.hxx24
-rw-r--r--sc/source/ui/inc/anyrefdg.hxx24
-rw-r--r--sc/source/ui/inc/colorformat.hxx1
-rw-r--r--sc/source/ui/inc/condformathelper.hxx1
-rw-r--r--sc/source/ui/inc/condformatmgr.hxx2
-rw-r--r--sc/source/ui/inc/conflictsdlg.hxx2
-rw-r--r--sc/source/ui/inc/content.hxx6
-rw-r--r--sc/source/ui/inc/iconsets.hrc31
-rw-r--r--sc/source/ui/inc/namemgrtable.hxx4
-rw-r--r--sc/source/ui/inc/tabview.hxx2
-rw-r--r--sc/source/ui/inc/tpsort.hxx8
-rw-r--r--sc/source/ui/miscdlgs/acredlin.cxx80
-rw-r--r--sc/source/ui/miscdlgs/anyrefdg.cxx46
-rw-r--r--sc/source/ui/miscdlgs/conflictsdlg.cxx22
-rw-r--r--sc/source/ui/miscdlgs/solveroptions.cxx22
-rw-r--r--sc/source/ui/namedlg/namemgrtable.cxx18
-rw-r--r--sc/source/ui/navipi/content.cxx38
-rw-r--r--sc/source/ui/optdlg/calcoptionsdlg.cxx18
-rw-r--r--sc/source/ui/optdlg/tpusrlst.cxx2
-rw-r--r--sc/source/ui/src/condformatdlg.src14
-rw-r--r--sc/source/ui/src/globstr.src52
-rw-r--r--sc/source/ui/src/iconsets.src90
-rw-r--r--sc/source/ui/undo/undoblk.cxx16
-rw-r--r--sc/source/ui/unoobj/cellsuno.cxx6
-rw-r--r--sc/source/ui/unoobj/viewuno.cxx15
-rw-r--r--sc/source/ui/vba/vbaapplication.cxx2
-rw-r--r--sc/source/ui/vba/vbahelper.cxx6
-rw-r--r--sc/source/ui/view/cellsh3.cxx3
-rw-r--r--sc/source/ui/view/output.cxx125
-rw-r--r--sc/source/ui/view/tabview.cxx27
-rw-r--r--sc/source/ui/view/tabview4.cxx36
-rw-r--r--sc/source/ui/view/tabvwshc.cxx2
-rw-r--r--sc/source/ui/view/viewdata.cxx4
-rw-r--r--sc/uiconfig/scalc/menubar/menubar.xml3
-rw-r--r--sc/uiconfig/scalc/toolbar/graphicobjectbar.xml2
-rw-r--r--sc/uiconfig/scalc/ui/printeroptions.ui4
-rw-r--r--scaddins/Library_analysis.mk1
-rw-r--r--scaddins/source/analysis/analysis.cxx7
-rw-r--r--scaddins/source/analysis/analysis.hxx2
-rw-r--r--scaddins/source/analysis/analysishelper.cxx10
-rw-r--r--scaddins/source/analysis/analysishelper.hxx7
-rw-r--r--sccomp/Library_solver.mk2
-rw-r--r--sccomp/source/solver/solver.cxx4
-rw-r--r--scp2/CustomTarget_langmacros.mk4
-rw-r--r--scp2/InstallModule_ooo.mk15
-rw-r--r--scp2/InstallScript_setup_osl.mk3
-rw-r--r--scp2/Module_scp2.mk3
-rw-r--r--scp2/README6
-rwxr-xr-xscp2/inc/macros.inc8
-rw-r--r--scp2/macros/macro.pl2
-rw-r--r--scp2/source/binfilter/file_binfilter.scp73
-rw-r--r--scp2/source/binfilter/module_binfilter.scp67
-rw-r--r--scp2/source/binfilter/registryitem_binfilter.scp931
-rw-r--r--scp2/source/gnome/file_gnome.scp2
-rw-r--r--scp2/source/gnome/module_gnome.scp1
-rw-r--r--scp2/source/ooo/common_brand.scp13
-rw-r--r--scp2/source/ooo/directory_ooo.scp6
-rw-r--r--scp2/source/ooo/file_font_ooo.scp36
-rw-r--r--scp2/source/ooo/file_library_ooo.scp170
-rw-r--r--scp2/source/ooo/file_ooo.scp26
-rw-r--r--scp2/source/ooo/mingw_dlls.scp26
-rw-r--r--scp2/source/ooo/module_hidden_ooo.scp44
-rw-r--r--scp2/source/ooo/module_lang_template.scp3
-rw-r--r--scp2/source/ooo/shortcut_ooo.scp7
-rwxr-xr-x[-rw-r--r--]scp2/source/ooo/ure.scp2
-rw-r--r--scripting/java/com/sun/star/script/framework/container/ScriptMetaData.java46
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/ClassLoaderFactory.java6
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptEditorForBeanShell.java3
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/beanshell/ScriptProviderForBeanShell.java3
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/java/ScriptProviderForJava.java2
-rw-r--r--scripting/java/com/sun/star/script/framework/provider/javascript/ScriptProviderForJavaScript.java3
-rw-r--r--scripting/prj/build.lst2
-rw-r--r--scripting/source/basprov/basprov.cxx65
-rw-r--r--scripting/source/dlgprov/dlgprov.cxx64
-rw-r--r--scripting/source/protocolhandler/scripthandler.cxx19
-rw-r--r--scripting/source/provider/MasterScriptProvider.cxx14
-rw-r--r--scripting/source/provider/ProviderCache.cxx2
-rw-r--r--scripting/source/provider/URIHelper.cxx7
-rw-r--r--scripting/source/pyprov/META-INF/manifest.xml (renamed from scripting/source/pyprov/manifest.xml)0
-rw-r--r--scripting/source/vbaevents/eventhelper.cxx90
-rw-r--r--sd/CppunitTest_sd_filters_test.mk2
-rw-r--r--sd/CppunitTest_sd_regression_test.mk1
-rw-r--r--sd/CppunitTest_sd_uimpress.mk1
-rw-r--r--sd/Library_sd.mk11
-rw-r--r--sd/Library_sdui.mk7
-rw-r--r--sd/qa/unit/data/odg/fail/.gitignore (renamed from ct2n/prj/dmake)0
-rw-r--r--sd/qa/unit/data/odg/indeterminate/.gitignore (renamed from curl/prj/dmake)0
-rw-r--r--sd/qa/unit/data/odg/pass/.gitignore (renamed from epm/prj/dmake)0
-rw-r--r--sd/qa/unit/data/odg/pass/CVE-2012-4233-2.odgbin0 -> 67721 bytes
-rw-r--r--sd/qa/unit/data/ppt/pass/CVE-2012-4233-3.pptbin0 -> 423424 bytes
-rw-r--r--sd/qa/unit/filters-test.cxx15
-rw-r--r--sd/qa/unit/regression-test.cxx11
-rw-r--r--sd/qa/unit/uimpress.cxx2
-rw-r--r--sd/source/core/CustomAnimationEffect.cxx86
-rw-r--r--sd/source/core/CustomAnimationPreset.cxx21
-rw-r--r--sd/source/core/TransitionPreset.cxx7
-rw-r--r--sd/source/filter/eppt/pptx-text.cxx12
-rw-r--r--sd/source/filter/html/HtmlOptionsDialog.cxx4
-rw-r--r--sd/source/filter/html/htmlex.cxx8
-rw-r--r--sd/source/filter/xml/sdxmlwrp.cxx19
-rw-r--r--sd/source/ui/animations/CustomAnimationList.cxx32
-rw-r--r--sd/source/ui/animations/CustomAnimationList.hxx2
-rw-r--r--sd/source/ui/app/sdxfer.cxx4
-rw-r--r--sd/source/ui/dlg/RemoteDialog.cxx8
-rw-r--r--sd/source/ui/dlg/custsdlg.cxx8
-rw-r--r--sd/source/ui/dlg/dlgassim.cxx22
-rw-r--r--sd/source/ui/dlg/dlgassim.hxx4
-rw-r--r--sd/source/ui/dlg/sdtreelb.cxx46
-rw-r--r--sd/source/ui/framework/module/ResourceManager.cxx58
-rw-r--r--sd/source/ui/framework/module/ResourceManager.hxx15
-rw-r--r--sd/source/ui/func/fusel.cxx139
-rw-r--r--sd/source/ui/inc/ViewShellBase.hxx4
-rw-r--r--sd/source/ui/inc/fusel.hxx6
-rw-r--r--sd/source/ui/inc/sdtreelb.hxx16
-rw-r--r--sd/source/ui/remotecontrol/Server.cxx10
-rw-r--r--sd/source/ui/slideshow/slideshowimpl.cxx8
-rw-r--r--sd/source/ui/slidesorter/cache/SlsCacheConfiguration.cxx10
-rw-r--r--sd/source/ui/slidesorter/controller/SlsAnimationFunction.cxx21
-rw-r--r--sd/source/ui/slidesorter/controller/SlsSelectionFunction.cxx42
-rw-r--r--sd/source/ui/slidesorter/inc/controller/SlsAnimationFunction.hxx20
-rw-r--r--sd/source/ui/toolpanel/LayoutMenu.cxx2
-rw-r--r--sd/source/ui/tools/ConfigurationAccess.cxx24
-rw-r--r--sd/source/ui/unoidl/unoobj.cxx2
-rw-r--r--sd/source/ui/view/ViewShellBase.cxx36
-rw-r--r--sd/source/ui/view/drviews2.cxx68
-rw-r--r--sd/source/ui/view/drviews6.cxx40
-rw-r--r--sd/source/ui/view/drviews7.cxx53
-rw-r--r--sd/source/ui/view/drviewsc.cxx60
-rw-r--r--sd/source/ui/view/drviewsj.cxx57
-rw-r--r--sd/source/ui/view/sdview.cxx48
-rw-r--r--sd/source/ui/view/sdview2.cxx37
-rw-r--r--sd/source/ui/view/sdview3.cxx39
-rw-r--r--sd/source/ui/view/sdview4.cxx45
-rw-r--r--sd/uiconfig/sdraw/menubar/menubar.xml3
-rw-r--r--sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml8
-rw-r--r--sd/uiconfig/sdraw/toolbar/graphicobjectbar.xml6
-rw-r--r--sd/uiconfig/sdraw/toolbar/textobjectbar.xml2
-rw-r--r--sd/uiconfig/sdraw/toolbar/toolbar.xml8
-rw-r--r--sd/uiconfig/sdraw/ui/printeroptions.ui12
-rw-r--r--sd/uiconfig/simpress/menubar/menubar.xml3
-rw-r--r--sd/uiconfig/simpress/toolbar/drawingobjectbar.xml12
-rw-r--r--sd/uiconfig/simpress/toolbar/graphicobjectbar.xml9
-rw-r--r--sd/uiconfig/simpress/toolbar/textobjectbar.xml2
-rw-r--r--sd/uiconfig/simpress/toolbar/toolbar.xml11
-rw-r--r--sd/uiconfig/simpress/ui/printeroptions.ui12
-rw-r--r--sd/workben/custompanel/ctp_panel.cxx7
-rw-r--r--sdext/Executable_xpdfimport.mk5
-rw-r--r--sdext/Extension_minimizer.mk4
-rw-r--r--sdext/Extension_presenter.mk2
-rw-r--r--sdext/source/minimizer/META-INF/manifest.xml (renamed from sdext/source/minimizer/manifest.xml)0
-rw-r--r--sdext/source/minimizer/configurationaccess.cxx49
-rw-r--r--sdext/source/minimizer/unodialog.cxx3
-rw-r--r--sdext/source/pdfimport/META-INF/manifest.xml (renamed from sdext/source/pdfimport/manifest.xml)0
-rw-r--r--sdext/source/pdfimport/test/tests.cxx10
-rw-r--r--sdext/source/pdfimport/tree/drawtreevisiting.cxx16
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx8
-rw-r--r--sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.hxx8
-rw-r--r--sdext/source/presenter/META-INF/manifest.xml (renamed from sdext/source/presenter/manifest.xml)0
-rw-r--r--sdext/source/presenter/PresenterConfigurationAccess.cxx11
-rw-r--r--sdext/source/presenter/PresenterSlideShowView.cxx7
-rw-r--r--sdext/source/presenter/PresenterTextView.cxx7
-rw-r--r--setup_native/source/win32/wintools/makecab/makecab.c1
-rw-r--r--sfx2/Library_sfx.mk1
-rw-r--r--sfx2/UI_sfx.mk1
-rw-r--r--sfx2/inc/docvor.hxx46
-rw-r--r--sfx2/inc/sfx2/checkin.hxx35
-rw-r--r--sfx2/inc/sfx2/docfile.hxx2
-rw-r--r--sfx2/inc/sfx2/filedlghelper.hxx1
-rw-r--r--sfx2/inc/sfx2/infobar.hxx10
-rw-r--r--sfx2/inc/sfx2/linkmgr.hxx6
-rw-r--r--sfx2/inc/sfx2/objsh.hxx4
-rw-r--r--sfx2/inc/sfx2/sfxbasecontroller.hxx2
-rw-r--r--sfx2/inc/sfx2/sfxbasemodel.hxx10
-rw-r--r--sfx2/inc/sfx2/sfxcommands.h3
-rw-r--r--sfx2/inc/sfx2/sfxsids.hrc4
-rw-r--r--sfx2/inc/sfx2/sfxuno.hxx57
-rw-r--r--sfx2/inc/sfx2/tabdlg.hxx2
-rw-r--r--sfx2/inc/sfx2/thumbnailview.hxx9
-rw-r--r--sfx2/inc/sfx2/viewfrm.hxx5
-rw-r--r--sfx2/sdi/docslots.sdi15
-rw-r--r--sfx2/sdi/sfx.sdi72
-rw-r--r--sfx2/source/appl/app.cxx36
-rw-r--r--sfx2/source/appl/app.hrc1
-rw-r--r--sfx2/source/appl/app.src7
-rw-r--r--sfx2/source/appl/appdata.cxx2
-rw-r--r--sfx2/source/appl/appopen.cxx2
-rw-r--r--sfx2/source/appl/appserv.cxx23
-rw-r--r--sfx2/source/appl/appuno.cxx5
-rw-r--r--sfx2/source/appl/imestatuswindow.cxx22
-rw-r--r--sfx2/source/appl/imestatuswindow.hxx6
-rw-r--r--sfx2/source/appl/linkmgr2.cxx8
-rw-r--r--sfx2/source/appl/newhelp.cxx18
-rw-r--r--sfx2/source/appl/newhelp.hxx4
-rw-r--r--sfx2/source/bastyp/fltfnc.cxx1
-rw-r--r--sfx2/source/control/dispatch.cxx2
-rw-r--r--sfx2/source/control/thumbnailview.cxx69
-rw-r--r--sfx2/source/dialog/checkin.cxx39
-rw-r--r--sfx2/source/dialog/dinfdlg.cxx5
-rw-r--r--sfx2/source/dialog/infobar.cxx77
-rw-r--r--sfx2/source/dialog/securitypage.cxx5
-rw-r--r--sfx2/source/dialog/tabdlg.cxx17
-rw-r--r--sfx2/source/dialog/templdlg.cxx42
-rw-r--r--sfx2/source/dialog/versdlg.cxx6
-rw-r--r--sfx2/source/doc/DocumentMetadataAccess.cxx11
-rw-r--r--sfx2/source/doc/SfxDocumentMetaData.cxx11
-rw-r--r--sfx2/source/doc/docfac.cxx2
-rw-r--r--sfx2/source/doc/docfile.cxx94
-rw-r--r--sfx2/source/doc/doctemplates.cxx15
-rw-r--r--sfx2/source/doc/doctemplateslocal.cxx12
-rw-r--r--sfx2/source/doc/doctemplateslocal.hxx2
-rw-r--r--sfx2/source/doc/docvor.cxx202
-rw-r--r--sfx2/source/doc/guisaveas.cxx2
-rw-r--r--sfx2/source/doc/objserv.cxx143
-rw-r--r--sfx2/source/doc/objstor.cxx32
-rw-r--r--sfx2/source/doc/sfxbasemodel.cxx165
-rw-r--r--sfx2/source/doc/templatedlg.cxx7
-rw-r--r--sfx2/source/inc/eventsupplier.hxx14
-rw-r--r--sfx2/source/menu/thessubmenu.cxx35
-rw-r--r--sfx2/source/menu/thessubmenu.hxx4
-rw-r--r--sfx2/source/notify/eventsupplier.cxx23
-rw-r--r--sfx2/source/view/orgmgr.cxx10
-rw-r--r--sfx2/source/view/sfxbasecontroller.cxx65
-rw-r--r--sfx2/source/view/viewfrm.cxx61
-rw-r--r--sfx2/source/view/viewsh.cxx2
-rw-r--r--sfx2/uiconfig/ui/checkin.ui141
-rw-r--r--sfx2/uiconfig/ui/password.ui8
-rw-r--r--sfx2/workben/custompanel/ctp_panel.cxx7
-rw-r--r--shell/Library_losessioninstall.mk36
-rw-r--r--shell/Library_ooofilt_x64.mk4
-rw-r--r--shell/Library_propertyhdl_x64.mk4
-rw-r--r--shell/Library_shlxthdl_x64.mk4
-rw-r--r--shell/Module_shell.mk8
-rw-r--r--shell/StaticLibrary_shlxthandler_common_x64.mk4
-rw-r--r--shell/StaticLibrary_xmlparser_x64.mk2
-rw-r--r--shell/prj/build.lst2
-rw-r--r--shell/source/cmdmail/cmdmailsuppl.cxx11
-rw-r--r--shell/source/sessioninstall/SyncDbusSessionHelper.cxx113
-rw-r--r--shell/source/sessioninstall/SyncDbusSessionHelper.hxx60
-rw-r--r--shell/source/sessioninstall/losessioninstall.component15
-rw-r--r--shell/source/sessioninstall/services.cxx31
-rw-r--r--shell/source/unix/misc/senddoc.sh60
-rw-r--r--slideshow/source/engine/shapes/drawshape.cxx166
-rw-r--r--slideshow/source/engine/shapes/viewappletshape.cxx8
-rw-r--r--smoketest/data/Global.xml31
-rw-r--r--solenv/CustomTarget_concat-deps.mk26
-rw-r--r--solenv/Module_solenv.mk7
-rw-r--r--solenv/Package_concat-deps.mk14
-rwxr-xr-xsolenv/bin/build.pl3
-rw-r--r--solenv/bin/callcatcher.Makefile4
-rw-r--r--solenv/bin/concat-deps.c147
-rwxr-xr-xsolenv/bin/create-tags4
-rwxr-xr-xsolenv/bin/linkoo105
-rw-r--r--solenv/bin/modules/installer/scriptitems.pm2
-rw-r--r--solenv/gbuild/CliAssembly.mk35
-rw-r--r--solenv/gbuild/CliLibrary.mk4
-rw-r--r--solenv/gbuild/Configuration.mk18
-rw-r--r--solenv/gbuild/CppunitTest.mk2
-rw-r--r--solenv/gbuild/Executable.mk17
-rw-r--r--solenv/gbuild/Extension.mk9
-rw-r--r--solenv/gbuild/ExtensionTarget.mk46
-rw-r--r--solenv/gbuild/ExternalPackage.mk3
-rw-r--r--solenv/gbuild/Jar.mk1
-rw-r--r--solenv/gbuild/JunitTest.mk2
-rw-r--r--solenv/gbuild/Library.mk32
-rw-r--r--solenv/gbuild/LinkTarget.mk89
-rw-r--r--solenv/gbuild/Module.mk4
-rw-r--r--solenv/gbuild/StaticLibrary.mk12
-rw-r--r--solenv/gbuild/TargetLocations.mk4
-rw-r--r--solenv/gbuild/UI.mk6
-rw-r--r--solenv/gbuild/UnoApiTarget.mk2
-rw-r--r--solenv/gbuild/UnpackedTarball.mk4
-rw-r--r--solenv/gbuild/WinResTarget.mk2
-rw-r--r--solenv/gbuild/Zip.mk6
-rw-r--r--solenv/gbuild/gbuild.help.txt12
-rw-r--r--solenv/gbuild/gbuild.mk42
-rw-r--r--solenv/gbuild/platform/IOS_ARM_GCC.mk12
-rw-r--r--solenv/gbuild/platform/WNT_INTEL_GCC.mk26
-rw-r--r--solenv/gbuild/platform/WNT_INTEL_MSC.mk705
-rw-r--r--solenv/gbuild/platform/WNT_X86_64_MSC.mk (renamed from more_fonts/fonts/ttf_dejavu/makefile.mk)39
-rw-r--r--solenv/gbuild/platform/android.mk13
-rw-r--r--solenv/gbuild/platform/com_GCC_class.mk43
-rw-r--r--solenv/gbuild/platform/com_GCC_defs.mk24
-rw-r--r--solenv/gbuild/platform/com_MSC_class.mk514
-rw-r--r--solenv/gbuild/platform/com_MSC_defs.mk243
-rw-r--r--solenv/gbuild/platform/macosx.mk14
-rw-r--r--solenv/gbuild/platform/solaris.mk19
-rw-r--r--solenv/gbuild/platform/unxgcc.mk19
-rw-r--r--solenv/inc/libs.mk42
-rw-r--r--solenv/inc/settings.mk15
-rw-r--r--solenv/inc/wntmsc.mk3
-rwxr-xr-xsolver/README9
-rw-r--r--sot/CppunitTest_sot_test_sot.mk4
-rw-r--r--sot/inc/sot/storage.hxx6
-rw-r--r--sot/qa/cppunit/test_sot.cxx9
-rw-r--r--sot/source/sdstor/ucbstorage.cxx14
-rw-r--r--starmath/CppunitTest_starmath_qa_cppunit.mk3
-rw-r--r--starmath/inc/dialog.hxx2
-rw-r--r--starmath/inc/document.hxx4
-rw-r--r--starmath/inc/node.hxx16
-rw-r--r--starmath/inc/view.hxx4
-rw-r--r--starmath/qa/cppunit/test_nodetotextvisitors.cxx20
-rw-r--r--starmath/qa/cppunit/test_starmath.cxx4
-rw-r--r--starmath/source/accessibility.cxx26
-rw-r--r--starmath/source/dialog.cxx24
-rw-r--r--starmath/source/document.cxx12
-rw-r--r--starmath/source/mathmlexport.cxx7
-rw-r--r--starmath/source/mathtype.cxx17
-rw-r--r--starmath/source/node.cxx34
-rw-r--r--starmath/source/rect.cxx22
-rw-r--r--starmath/source/symbol.cxx4
-rw-r--r--starmath/source/view.cxx66
-rw-r--r--starmath/uiconfig/smath/menubar/menubar.xml5
-rw-r--r--starmath/uiconfig/smath/ui/printeroptions.ui10
-rw-r--r--stax/README1
-rw-r--r--stax/makefile.mk78
-rw-r--r--stax/prj/build.lst2
-rw-r--r--stax/prj/d.lst1
-rw-r--r--stax/prj/dmake0
-rw-r--r--stlport/README4
-rw-r--r--stoc/prj/build.lst2
-rw-r--r--stoc/source/invocation/invocation.cxx8
-rw-r--r--svgio/Library_svgio.mk81
-rw-r--r--svgio/Makefile (renamed from rdbmaker/Makefile)1
-rw-r--r--svgio/Module_svgio.mk (renamed from filter/Jar_XSLTFilter.mk)26
-rw-r--r--svgio/Package_inc.mk50
-rw-r--r--svgio/inc/pch/precompiled_svgio.cxx (renamed from scp2/source/binfilter/module_binfilter.ulf)7
-rw-r--r--svgio/inc/pch/precompiled_svgio.hxx (renamed from sw/source/ui/misc/insrule.hrc)13
-rw-r--r--svgio/inc/svgio/svgiodllapi.h (renamed from wizards/com/sun/star/wizards/letter/CGPaperElementLocation.java)23
-rw-r--r--svgio/inc/svgio/svgreader/svgcharacternode.hxx184
-rw-r--r--svgio/inc/svgio/svgreader/svgcirclenode.hxx80
-rw-r--r--svgio/inc/svgio/svgreader/svgclippathnode.hxx73
-rw-r--r--svgio/inc/svgio/svgreader/svgdocument.hxx90
-rw-r--r--svgio/inc/svgio/svgreader/svgdocumenthandler.hxx75
-rw-r--r--svgio/inc/svgio/svgreader/svgellipsenode.hxx85
-rw-r--r--svgio/inc/svgio/svgreader/svggnode.hxx66
-rw-r--r--svgio/inc/svgio/svgreader/svggradientnode.hxx137
-rw-r--r--svgio/inc/svgio/svgreader/svggradientstopnode.hxx64
-rw-r--r--svgio/inc/svgio/svgreader/svgimagenode.hxx99
-rw-r--r--svgio/inc/svgio/svgreader/svglinenode.hxx85
-rw-r--r--svgio/inc/svgio/svgreader/svgmarkernode.hxx123
-rw-r--r--svgio/inc/svgio/svgreader/svgmasknode.hxx98
-rw-r--r--svgio/inc/svgio/svgreader/svgnode.hxx127
-rw-r--r--svgio/inc/svgio/svgreader/svgpaint.hxx65
-rw-r--r--svgio/inc/svgio/svgreader/svgpathnode.hxx75
-rw-r--r--svgio/inc/svgio/svgreader/svgpatternnode.hxx126
-rw-r--r--svgio/inc/svgio/svgreader/svgpolynode.hxx78
-rw-r--r--svgio/inc/svgio/svgreader/svgrectnode.hxx95
-rw-r--r--svgio/inc/svgio/svgreader/svgstyleattributes.hxx411
-rw-r--r--svgio/inc/svgio/svgreader/svgstylenode.hxx64
-rw-r--r--svgio/inc/svgio/svgreader/svgsvgnode.hxx97
-rw-r--r--svgio/inc/svgio/svgreader/svgsymbolnode.hxx68
-rw-r--r--svgio/inc/svgio/svgreader/svgtextnode.hxx80
-rw-r--r--svgio/inc/svgio/svgreader/svgtextpathnode.hxx86
-rw-r--r--svgio/inc/svgio/svgreader/svgtoken.hxx194
-rw-r--r--svgio/inc/svgio/svgreader/svgtools.hxx229
-rw-r--r--svgio/inc/svgio/svgreader/svgtrefnode.hxx65
-rw-r--r--svgio/inc/svgio/svgreader/svgtspannode.hxx64
-rw-r--r--svgio/inc/svgio/svgreader/svgusenode.hxx89
-rw-r--r--svgio/prj/build.lst2
-rw-r--r--svgio/prj/d.lst (renamed from expat/prj/dmake)0
-rw-r--r--svgio/prj/makefile.mk (renamed from more_fonts/fonts/ttf_liberation/makefile.mk)39
-rw-r--r--svgio/source/svgreader/svgcharacternode.cxx740
-rw-r--r--svgio/source/svgreader/svgcirclenode.cxx155
-rw-r--r--svgio/source/svgreader/svgclippathnode.cxx203
-rw-r--r--svgio/source/svgreader/svgdocument.cxx118
-rw-r--r--svgio/source/svgreader/svgdocumenthandler.cxx549
-rw-r--r--svgio/source/svgreader/svgellipsenode.cxx170
-rw-r--r--svgio/source/svgreader/svggnode.cxx115
-rw-r--r--svgio/source/svgreader/svggradientnode.cxx508
-rw-r--r--svgio/source/svgreader/svggradientstopnode.cxx88
-rw-r--r--svgio/source/svgreader/svgimagenode.cxx354
-rw-r--r--svgio/source/svgreader/svglinenode.cxx166
-rw-r--r--svgio/source/svgreader/svgmarkernode.cxx213
-rw-r--r--svgio/source/svgreader/svgmasknode.cxx315
-rw-r--r--svgio/source/svgreader/svgnode.cxx289
-rw-r--r--svgio/source/svgreader/svgpaint.cxx (renamed from cui/source/dialogs/insrc.hrc)25
-rw-r--r--svgio/source/svgreader/svgpathnode.cxx133
-rw-r--r--svgio/source/svgreader/svgpatternnode.cxx463
-rw-r--r--svgio/source/svgreader/svgpolynode.cxx130
-rw-r--r--svgio/source/svgreader/svgrectnode.cxx227
-rw-r--r--svgio/source/svgreader/svgstyleattributes.cxx2489
-rw-r--r--svgio/source/svgreader/svgstylenode.cxx127
-rw-r--r--svgio/source/svgreader/svgsvgnode.cxx423
-rw-r--r--svgio/source/svgreader/svgsymbolnode.cxx94
-rw-r--r--svgio/source/svgreader/svgtextnode.cxx274
-rw-r--r--svgio/source/svgreader/svgtextpathnode.cxx511
-rw-r--r--svgio/source/svgreader/svgtoken.cxx318
-rw-r--r--svgio/source/svgreader/svgtools.cxx1592
-rw-r--r--svgio/source/svgreader/svgtrefnode.cxx91
-rw-r--r--svgio/source/svgreader/svgtspannode.cxx78
-rw-r--r--svgio/source/svgreader/svgusenode.cxx201
-rw-r--r--svgio/source/svguno/svguno.cxx92
-rw-r--r--svgio/source/svguno/xsvgparser.cxx191
-rw-r--r--svgio/svgio.component (renamed from filter/source/xsltfilter/XSLTFilter.jar.component)6
-rw-r--r--svl/CppunitTest_svl_urihelper.mk4
-rw-r--r--svl/inc/svl/ctypeitm.hxx6
-rw-r--r--svl/inc/svl/ondemand.hxx17
-rw-r--r--svl/inc/svl/stritem.hxx2
-rw-r--r--svl/inc/svl/zforlist.hxx2
-rw-r--r--svl/inc/svl/zformat.hxx11
-rw-r--r--svl/qa/unit/test_URIHelper.cxx5
-rw-r--r--svl/source/config/itemholder2.cxx10
-rw-r--r--svl/source/items/ctypeitm.cxx12
-rw-r--r--svl/source/numbers/zforfind.cxx21
-rw-r--r--svl/source/numbers/zforlist.cxx49
-rw-r--r--svl/source/numbers/zformat.cxx61
-rw-r--r--svl/source/passwordcontainer/passwordcontainer.cxx2
-rw-r--r--svtools/Library_svt.mk2
-rw-r--r--svtools/Package_inc.mk2
-rw-r--r--svtools/bmpmaker/bmp.cxx2
-rw-r--r--svtools/bmpmaker/bmpsum.cxx2
-rw-r--r--svtools/bmpmaker/g2g.cxx2
-rw-r--r--svtools/inc/svtools/chartprettypainter.hxx71
-rw-r--r--svtools/inc/svtools/ctrlbox.hxx22
-rw-r--r--svtools/inc/svtools/ctrltool.hxx5
-rw-r--r--svtools/inc/svtools/fileview.hxx8
-rw-r--r--svtools/inc/svtools/grfmgr.hxx41
-rw-r--r--svtools/inc/svtools/sfxecode.hxx1
-rw-r--r--svtools/inc/svtools/svlbitm.hxx30
-rw-r--r--svtools/inc/svtools/svmedit2.hxx1
-rw-r--r--svtools/inc/svtools/svtabbx.hxx52
-rw-r--r--svtools/inc/svtools/svtools.hrc4
-rw-r--r--svtools/inc/svtools/treelist.hxx429
-rw-r--r--svtools/inc/svtools/treelistbox.hxx498
-rw-r--r--svtools/inc/svtools/treelistentry.hxx111
-rw-r--r--svtools/inc/svtools/valueset.hxx2
-rw-r--r--svtools/langsupport/langsupport.cxx2
-rw-r--r--svtools/qa/cppunit/filters-test.cxx7
-rw-r--r--svtools/source/config/accessibilityoptions.cxx2
-rw-r--r--svtools/source/config/itemholder2.cxx10
-rw-r--r--svtools/source/config/printoptions.cxx2
-rw-r--r--svtools/source/contnr/fileview.cxx36
-rw-r--r--svtools/source/contnr/svimpbox.cxx729
-rw-r--r--svtools/source/contnr/svlbitm.cxx30
-rw-r--r--svtools/source/contnr/svtabbx.cxx96
-rw-r--r--svtools/source/contnr/treelist.cxx1020
-rw-r--r--svtools/source/contnr/treelistbox.cxx611
-rw-r--r--svtools/source/contnr/treelistentry.cxx235
-rw-r--r--svtools/source/control/calendar.cxx3
-rw-r--r--svtools/source/control/ctrlbox.cxx128
-rw-r--r--svtools/source/control/ctrlbox.src18
-rw-r--r--svtools/source/control/ctrltool.cxx24
-rw-r--r--svtools/source/control/filectrl2.cxx4
-rw-r--r--svtools/source/control/fmtfield.cxx7
-rw-r--r--svtools/source/dialogs/ServerDetailsControls.cxx6
-rw-r--r--svtools/source/dialogs/insdlg.cxx123
-rw-r--r--svtools/source/edit/svmedit2.cxx5
-rw-r--r--svtools/source/filter/FilterConfigCache.cxx42
-rw-r--r--svtools/source/filter/FilterConfigItem.cxx76
-rw-r--r--svtools/source/filter/filter.cxx209
-rw-r--r--svtools/source/filter/igif/gifread.cxx14
-rw-r--r--svtools/source/filter/wmf/emfwr.cxx59
-rw-r--r--svtools/source/filter/wmf/enhwmf.cxx8
-rw-r--r--svtools/source/filter/wmf/winmtf.cxx7
-rw-r--r--svtools/source/filter/wmf/wmfwr.cxx60
-rw-r--r--svtools/source/graphic/descriptor.cxx43
-rw-r--r--svtools/source/graphic/graphic.cxx57
-rw-r--r--svtools/source/graphic/graphic.hxx38
-rw-r--r--svtools/source/graphic/grfcache.cxx92
-rw-r--r--svtools/source/graphic/grfmgr.cxx41
-rw-r--r--svtools/source/graphic/grfmgr2.cxx40
-rw-r--r--svtools/source/graphic/provider.cxx63
-rw-r--r--svtools/source/inc/svimpbox.hxx187
-rw-r--r--svtools/source/misc/chartprettypainter.cxx130
-rw-r--r--svtools/source/misc/langtab.src9
-rw-r--r--svtools/source/svhtml/parhtml.cxx2
-rw-r--r--svtools/source/table/cellvalueconversion.cxx7
-rw-r--r--svtools/source/uno/treecontrolpeer.cxx40
-rw-r--r--svtools/uiconfig/ui/graphicexport.ui52
-rw-r--r--svx/Library_svxcore.mk1
-rw-r--r--svx/Package_inc.mk2
-rw-r--r--svx/inc/svx/charthelper.hxx52
-rw-r--r--svx/inc/svx/checklbx.hxx4
-rw-r--r--svx/inc/svx/ctredlin.hxx20
-rw-r--r--svx/inc/svx/dialogs.hrc45
-rw-r--r--svx/inc/svx/fontlb.hxx12
-rw-r--r--svx/inc/svx/msdffdef.hxx41
-rw-r--r--svx/inc/svx/numvset.hxx9
-rw-r--r--svx/inc/svx/sdr/contact/viewcontactofsdrole2obj.hxx41
-rw-r--r--svx/inc/svx/simptabl.hxx4
-rw-r--r--svx/inc/svx/svdhdl.hxx2
-rw-r--r--svx/inc/svx/svdmrkv.hxx2
-rw-r--r--svx/inc/svx/svdoashp.hxx4
-rw-r--r--svx/inc/svx/svdobj.hxx45
-rw-r--r--svx/inc/svx/svdograf.hxx50
-rw-r--r--svx/inc/svx/svdstr.hrc48
-rw-r--r--svx/inc/svx/svdxcgv.hxx43
-rw-r--r--svx/inc/svx/svxdlg.hxx2
-rw-r--r--svx/inc/svx/unoshprp.hxx54
-rw-r--r--svx/inc/svx/xattr.hxx44
-rw-r--r--svx/inc/svx/xdef.hxx40
-rw-r--r--svx/inc/svx/xlncapit.hxx55
-rw-r--r--svx/source/customshapes/EnhancedCustomShapeFontWork.cxx12
-rw-r--r--svx/source/dialog/_bmpmask.cxx40
-rw-r--r--svx/source/dialog/checklbx.cxx14
-rw-r--r--svx/source/dialog/ctredlin.cxx28
-rw-r--r--svx/source/dialog/docrecovery.cxx85
-rw-r--r--svx/source/dialog/fntctrl.cxx90
-rw-r--r--svx/source/dialog/fontlb.cxx14
-rw-r--r--svx/source/dialog/langbox.cxx3
-rw-r--r--svx/source/dialog/simptabl.cxx8
-rw-r--r--svx/source/dialog/srchdlg.cxx6
-rw-r--r--svx/source/dialog/svxbmpnumvalueset.cxx38
-rw-r--r--svx/source/fmcomp/gridcell.cxx6
-rw-r--r--svx/source/fmcomp/gridctrl.cxx28
-rw-r--r--svx/source/form/datanavi.cxx44
-rw-r--r--svx/source/form/filtnav.cxx95
-rw-r--r--svx/source/form/fmexch.cxx16
-rw-r--r--svx/source/form/fmshimp.cxx10
-rw-r--r--svx/source/form/fmsrcimp.cxx14
-rw-r--r--svx/source/form/formcontroller.cxx3
-rw-r--r--svx/source/form/navigatortree.cxx92
-rw-r--r--svx/source/form/sqlparserclient.cxx6
-rw-r--r--svx/source/form/tabwin.cxx4
-rw-r--r--svx/source/inc/datanavi.hxx10
-rw-r--r--svx/source/inc/docrecovery.hxx34
-rw-r--r--svx/source/inc/filtnav.hxx20
-rw-r--r--svx/source/inc/fmexch.hxx18
-rw-r--r--svx/source/inc/fmexpl.hxx30
-rw-r--r--svx/source/inc/fmservs.hxx1
-rw-r--r--svx/source/inc/gridcell.hxx2
-rw-r--r--svx/source/inc/sqlparserclient.hxx4
-rw-r--r--svx/source/sdr/attribute/sdrformtextattribute.cxx49
-rw-r--r--svx/source/sdr/contact/viewcontactofgraphic.cxx48
-rw-r--r--svx/source/sdr/contact/viewcontactofsdrole2obj.cxx109
-rw-r--r--svx/source/sdr/contact/viewobjectcontactofsdrole2obj.cxx164
-rw-r--r--svx/source/sdr/primitive2d/sdrattributecreator.cxx45
-rw-r--r--svx/source/sdr/primitive2d/sdrdecompositiontools.cxx39
-rw-r--r--svx/source/sdr/primitive2d/sdrgrafprimitive2d.cxx45
-rw-r--r--svx/source/smarttags/SmartTagMgr.cxx6
-rw-r--r--svx/source/src/errtxt.src4
-rw-r--r--svx/source/svdraw/ActionDescriptionProvider.cxx6
-rw-r--r--svx/source/svdraw/charthelper.cxx137
-rw-r--r--svx/source/svdraw/svddrgmt.cxx51
-rw-r--r--svx/source/svdraw/svdedtv.cxx61
-rw-r--r--svx/source/svdraw/svdedtv2.cxx100
-rw-r--r--svx/source/svdraw/svdfmtf.cxx74
-rw-r--r--svx/source/svdraw/svdfmtf.hxx39
-rw-r--r--svx/source/svdraw/svdhdl.cxx6
-rw-r--r--svx/source/svdraw/svdmrkv.cxx19
-rw-r--r--svx/source/svdraw/svdoashp.cxx27
-rw-r--r--svx/source/svdraw/svdobj.cxx52
-rw-r--r--svx/source/svdraw/svdograf.cxx358
-rw-r--r--svx/source/svdraw/svdoole2.cxx6
-rw-r--r--svx/source/svdraw/svdorect.cxx54
-rw-r--r--svx/source/svdraw/svdotextpathdecomposition.cxx12
-rw-r--r--svx/source/svdraw/svdstr.src56
-rw-r--r--svx/source/svdraw/svdxcgv.cxx90
-rw-r--r--svx/source/table/tablertfimporter.cxx2
-rw-r--r--svx/source/tbxctrls/grafctrl.cxx41
-rw-r--r--svx/source/tbxctrls/tbcontrl.cxx3
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.cxx18
-rw-r--r--svx/source/unodialogs/textconversiondlgs/chinese_dictionarydialog.hxx4
-rw-r--r--svx/source/unodraw/recoveryui.cxx7
-rw-r--r--svx/source/unodraw/unoshap2.cxx51
-rw-r--r--svx/source/unodraw/unoshape.cxx12
-rw-r--r--svx/source/unodraw/unoshtxt.cxx18
-rw-r--r--svx/source/xml/xmlexport.cxx9
-rw-r--r--svx/source/xml/xmlgrhlp.cxx43
-rw-r--r--svx/source/xml/xmlxtexp.cxx10
-rw-r--r--svx/source/xoutdev/xattr2.cxx182
-rw-r--r--svx/source/xoutdev/xpool.cxx41
-rw-r--r--svx/workben/msview/msview.cxx39
-rw-r--r--sw/AllLangResTarget_sw.mk1
-rw-r--r--sw/CppunitTest_sw_filters_test.mk3
-rw-r--r--sw/CppunitTest_sw_subsequent_odfexport.mk2
-rw-r--r--sw/CppunitTest_sw_subsequent_odfimport.mk2
-rw-r--r--sw/CppunitTest_sw_subsequent_ooxmlexport.mk2
-rw-r--r--sw/CppunitTest_sw_subsequent_ooxmlimport.mk2
-rw-r--r--sw/CppunitTest_sw_subsequent_rtfexport.mk2
-rw-r--r--sw/CppunitTest_sw_subsequent_rtfimport.mk3
-rw-r--r--sw/CppunitTest_sw_subsequent_ww8export.mk2
-rw-r--r--sw/CppunitTest_sw_subsequent_ww8import.mk2
-rw-r--r--sw/README4
-rw-r--r--sw/UI_swriter.mk5
-rw-r--r--sw/inc/IDocumentLinksAdministration.hxx2
-rw-r--r--sw/inc/acmplwrd.hxx4
-rw-r--r--sw/inc/bparr.hxx9
-rw-r--r--sw/inc/calbck.hxx6
-rw-r--r--sw/inc/cmdid.h39
-rw-r--r--sw/inc/crsrsh.hxx18
-rw-r--r--sw/inc/dlelstnr.hxx4
-rw-r--r--sw/inc/doc.hxx172
-rw-r--r--sw/inc/docufld.hxx2
-rw-r--r--sw/inc/editsh.hxx38
-rw-r--r--sw/inc/fchrfmt.hxx2
-rw-r--r--sw/inc/fesh.hxx8
-rw-r--r--sw/inc/fmtcol.hxx10
-rw-r--r--sw/inc/fmtfld.hxx2
-rw-r--r--sw/inc/format.hxx14
-rw-r--r--sw/inc/frmfmt.hxx2
-rw-r--r--sw/inc/ftninfo.hxx4
-rw-r--r--sw/inc/helpid.h31
-rw-r--r--sw/inc/htmltbl.hxx6
-rw-r--r--sw/inc/index.hrc3
-rw-r--r--sw/inc/lineinfo.hxx2
-rw-r--r--sw/inc/list.hxx2
-rw-r--r--sw/inc/mdiexp.hxx2
-rw-r--r--sw/inc/ndarr.hxx2
-rw-r--r--sw/inc/ndgrf.hxx52
-rw-r--r--sw/inc/ndtxt.hxx4
-rw-r--r--sw/inc/node.hxx24
-rw-r--r--sw/inc/pagedesc.hxx2
-rw-r--r--sw/inc/paratr.hxx2
-rw-r--r--sw/inc/section.hxx2
-rw-r--r--sw/inc/swabstdlg.hxx13
-rw-r--r--sw/inc/swcalwrp.hxx4
-rw-r--r--sw/inc/swcrsr.hxx6
-rw-r--r--sw/inc/swmodule.hxx4
-rw-r--r--sw/inc/swrect.hxx2
-rw-r--r--sw/inc/swtable.hxx10
-rw-r--r--sw/inc/tox.hxx4
-rw-r--r--sw/inc/txatritr.hxx14
-rw-r--r--sw/inc/txtatr.hxx2
-rw-r--r--sw/inc/txtinet.hxx2
-rw-r--r--sw/inc/unoprnms.hxx42
-rw-r--r--sw/qa/core/Test-BigPtrArray.cxx2
-rw-r--r--sw/qa/core/data/odt/fail/.gitignore (renamed from fontconfig/prj/dmake)0
-rw-r--r--sw/qa/core/data/odt/indeterminate/.gitignore (renamed from freetype/prj/dmake)0
-rw-r--r--sw/qa/core/data/odt/pass/.gitignore (renamed from gdk-pixbuf/prj/dmake)0
-rw-r--r--sw/qa/core/data/odt/pass/CVE-2012-4233-1.odtbin0 -> 9021 bytes
-rw-r--r--sw/qa/core/data/ww8/pass/EDB-22215-1.docbin0 -> 374784 bytes
-rw-r--r--sw/qa/core/filters-test.cxx26
-rw-r--r--sw/qa/extras/odfexport/odfexport.cxx43
-rw-r--r--sw/qa/extras/odfimport/odfimport.cxx24
-rw-r--r--sw/qa/extras/ooxmlexport/data/fdo51550.odtbin0 -> 13611 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/data/table-borders.docxbin0 -> 13489 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/data/table-position.docx (renamed from sw/qa/extras/ooxmlimport/data/n779957.docx)bin13789 -> 13789 bytes
-rw-r--r--sw/qa/extras/ooxmlexport/ooxmlexport.cxx193
-rw-r--r--sw/qa/extras/ooxmlimport/data/fdo52208.docxbin0 -> 13356 bytes
-rw-r--r--sw/qa/extras/ooxmlimport/data/n773061.docxbin0 -> 7081 bytes
-rwxr-xr-xsw/qa/extras/ooxmlimport/data/n785767.docxbin0 -> 12848 bytes
-rw-r--r--sw/qa/extras/ooxmlimport/ooxmlimport.cxx247
-rw-r--r--sw/qa/extras/regression-test.cxx170
-rw-r--r--sw/qa/extras/rtfexport/data/fdo55939.odtbin0 -> 8853 bytes
-rw-r--r--sw/qa/extras/rtfexport/rtfexport.cxx145
-rw-r--r--sw/qa/extras/rtfimport/data/copypaste-pagestyle-paste.rtf17
-rw-r--r--sw/qa/extras/rtfimport/data/copypaste-pagestyle.rtf3
-rw-r--r--sw/qa/extras/rtfimport/data/do-dhgt.rtf9
-rw-r--r--sw/qa/extras/rtfimport/data/dplinehollow.rtf7
-rw-r--r--sw/qa/extras/rtfimport/data/dppolyline.rtf6
-rw-r--r--sw/qa/extras/rtfimport/data/fdo48442.rtf10
-rw-r--r--sw/qa/extras/rtfimport/data/fdo52989.rtf12
-rw-r--r--sw/qa/extras/rtfimport/data/fdo56512.rtf5
-rw-r--r--sw/qa/extras/rtfimport/data/leftmargin-default.rtf5
-rw-r--r--sw/qa/extras/rtfimport/data/shptxt-pard.rtf19
-rw-r--r--sw/qa/extras/rtfimport/rtfimport.cxx345
-rw-r--r--sw/qa/extras/swmodeltestbase.hxx7
-rw-r--r--sw/qa/extras/ww8export/ww8export.cxx56
-rw-r--r--sw/qa/extras/ww8import/ww8import.cxx41
-rw-r--r--sw/sdi/swriter.sdi4
-rw-r--r--sw/source/core/SwNumberTree/SwNodeNum.cxx2
-rw-r--r--sw/source/core/attr/calbck.cxx14
-rw-r--r--sw/source/core/attr/format.cxx25
-rw-r--r--sw/source/core/bastyp/SwSmartTagMgr.cxx4
-rw-r--r--sw/source/core/bastyp/bparr.cxx22
-rw-r--r--sw/source/core/bastyp/breakit.cxx6
-rw-r--r--sw/source/core/bastyp/calc.cxx15
-rw-r--r--sw/source/core/bastyp/init.cxx8
-rw-r--r--sw/source/core/bastyp/swcache.cxx16
-rw-r--r--sw/source/core/crsr/crsrsh.cxx6
-rw-r--r--sw/source/core/crsr/crstrvl.cxx40
-rw-r--r--sw/source/core/crsr/pam.cxx2
-rw-r--r--sw/source/core/crsr/swcrsr.cxx14
-rw-r--r--sw/source/core/crsr/trvlreg.cxx12
-rw-r--r--sw/source/core/crsr/trvltbl.cxx14
-rw-r--r--sw/source/core/doc/acmplwrd.cxx2
-rw-r--r--sw/source/core/doc/doc.cxx24
-rw-r--r--sw/source/core/doc/docbasic.cxx16
-rw-r--r--sw/source/core/doc/docbm.cxx30
-rw-r--r--sw/source/core/doc/docchart.cxx14
-rw-r--r--sw/source/core/doc/doccomp.cxx48
-rw-r--r--sw/source/core/doc/docdde.cxx20
-rw-r--r--sw/source/core/doc/docdesc.cxx46
-rw-r--r--sw/source/core/doc/docdraw.cxx12
-rw-r--r--sw/source/core/doc/docedt.cxx64
-rw-r--r--sw/source/core/doc/docfld.cxx64
-rw-r--r--sw/source/core/doc/docfly.cxx40
-rw-r--r--sw/source/core/doc/docfmt.cxx102
-rw-r--r--sw/source/core/doc/docftn.cxx30
-rw-r--r--sw/source/core/doc/docglos.cxx8
-rw-r--r--sw/source/core/doc/doclay.cxx60
-rw-r--r--sw/source/core/doc/docnew.cxx190
-rw-r--r--sw/source/core/doc/docnum.cxx225
-rw-r--r--sw/source/core/doc/docredln.cxx100
-rw-r--r--sw/source/core/doc/docruby.cxx18
-rw-r--r--sw/source/core/doc/docsort.cxx84
-rw-r--r--sw/source/core/doc/doctxm.cxx50
-rw-r--r--sw/source/core/doc/fmtcol.cxx24
-rw-r--r--sw/source/core/doc/ftnidx.cxx6
-rw-r--r--sw/source/core/doc/gctable.cxx44
-rw-r--r--sw/source/core/doc/htmltbl.cxx4
-rw-r--r--sw/source/core/doc/lineinfo.cxx2
-rw-r--r--sw/source/core/doc/list.cxx6
-rw-r--r--sw/source/core/doc/notxtfrm.cxx319
-rw-r--r--sw/source/core/doc/number.cxx8
-rw-r--r--sw/source/core/doc/poolfmt.cxx160
-rw-r--r--sw/source/core/doc/tblcpy.cxx6
-rw-r--r--sw/source/core/doc/tblrwcl.cxx2
-rw-r--r--sw/source/core/doc/visiturl.cxx8
-rw-r--r--sw/source/core/docnode/ndcopy.cxx12
-rw-r--r--sw/source/core/docnode/ndsect.cxx221
-rw-r--r--sw/source/core/docnode/ndtbl.cxx672
-rw-r--r--sw/source/core/docnode/node.cxx352
-rw-r--r--sw/source/core/docnode/node2lay.cxx101
-rw-r--r--sw/source/core/docnode/nodes.cxx34
-rw-r--r--sw/source/core/docnode/section.cxx210
-rw-r--r--sw/source/core/docnode/swbaslnk.cxx67
-rw-r--r--sw/source/core/edit/acorrect.cxx2
-rw-r--r--sw/source/core/edit/autofmt.cxx2
-rw-r--r--sw/source/core/edit/edatmisc.cxx2
-rw-r--r--sw/source/core/edit/edattr.cxx12
-rw-r--r--sw/source/core/edit/edfmt.cxx4
-rw-r--r--sw/source/core/edit/edglbldc.cxx4
-rw-r--r--sw/source/core/edit/edglss.cxx2
-rw-r--r--sw/source/core/edit/editsh.cxx10
-rw-r--r--sw/source/core/edit/edlingu.cxx2
-rw-r--r--sw/source/core/edit/ednumber.cxx50
-rw-r--r--sw/source/core/edit/edsect.cxx6
-rw-r--r--sw/source/core/edit/edtox.cxx6
-rw-r--r--sw/source/core/fields/authfld.cxx7
-rw-r--r--sw/source/core/fields/docufld.cxx6
-rw-r--r--sw/source/core/fields/macrofld.cxx23
-rw-r--r--sw/source/core/fields/reffld.cxx6
-rw-r--r--sw/source/core/frmedt/fecopy.cxx53
-rw-r--r--sw/source/core/frmedt/fefly1.cxx10
-rw-r--r--sw/source/core/frmedt/feshview.cxx10
-rw-r--r--sw/source/core/frmedt/fews.cxx4
-rw-r--r--sw/source/core/frmedt/tblsel.cxx2
-rw-r--r--sw/source/core/graphic/ndgrf.cxx90
-rw-r--r--sw/source/core/inc/UndoAttribute.hxx2
-rw-r--r--sw/source/core/inc/UndoNumbering.hxx2
-rw-r--r--sw/source/core/inc/UndoSort.hxx2
-rw-r--r--sw/source/core/inc/docfld.hxx14
-rw-r--r--sw/source/core/inc/docsort.hxx20
-rw-r--r--sw/source/core/inc/doctxm.hxx2
-rw-r--r--sw/source/core/inc/flyfrm.hxx2
-rw-r--r--sw/source/core/inc/mvsave.hxx6
-rw-r--r--sw/source/core/inc/notxtfrm.hxx2
-rw-r--r--sw/source/core/inc/pagefrm.hxx2
-rw-r--r--sw/source/core/inc/rootfrm.hxx2
-rw-r--r--sw/source/core/inc/scriptinfo.hxx2
-rw-r--r--sw/source/core/inc/swfont.hxx10
-rw-r--r--sw/source/core/inc/tabfrm.hxx2
-rw-r--r--sw/source/core/inc/tblrwcl.hxx12
-rw-r--r--sw/source/core/inc/txmsrt.hxx20
-rw-r--r--sw/source/core/inc/txtfrm.hxx2
-rw-r--r--sw/source/core/layout/atrfrm.cxx6
-rw-r--r--sw/source/core/layout/findfrm.cxx8
-rw-r--r--sw/source/core/layout/fly.cxx8
-rw-r--r--sw/source/core/layout/ftnfrm.cxx3
-rw-r--r--sw/source/core/layout/hffrm.cxx5
-rw-r--r--sw/source/core/layout/laycache.cxx19
-rw-r--r--sw/source/core/layout/newfrm.cxx2
-rw-r--r--sw/source/core/layout/pagechg.cxx6
-rw-r--r--sw/source/core/layout/pagedesc.cxx4
-rw-r--r--sw/source/core/layout/paintfrm.cxx48
-rw-r--r--sw/source/core/layout/sectfrm.cxx4
-rw-r--r--sw/source/core/layout/tabfrm.cxx9
-rw-r--r--sw/source/core/para/paratr.cxx4
-rw-r--r--sw/source/core/swg/SwXMLTextBlocks1.cxx95
-rw-r--r--sw/source/core/table/swtable.cxx20
-rw-r--r--sw/source/core/text/EnhancedPDFExportHelper.cxx2
-rw-r--r--sw/source/core/text/frminf.cxx6
-rw-r--r--sw/source/core/text/frmpaint.cxx2
-rw-r--r--sw/source/core/text/guess.cxx4
-rw-r--r--sw/source/core/text/inftxt.cxx20
-rw-r--r--sw/source/core/text/inftxt.hxx17
-rw-r--r--sw/source/core/text/itratr.cxx10
-rw-r--r--sw/source/core/text/itrform2.cxx4
-rw-r--r--sw/source/core/text/porexp.cxx6
-rw-r--r--sw/source/core/text/porexp.hxx4
-rw-r--r--sw/source/core/text/porfld.cxx18
-rw-r--r--sw/source/core/text/porfld.hxx2
-rw-r--r--sw/source/core/text/porfly.cxx2
-rw-r--r--sw/source/core/text/porglue.cxx11
-rw-r--r--sw/source/core/text/porlay.cxx26
-rw-r--r--sw/source/core/text/pormulti.cxx8
-rw-r--r--sw/source/core/text/porref.cxx2
-rw-r--r--sw/source/core/text/porrst.cxx4
-rw-r--r--sw/source/core/text/portab.hxx22
-rw-r--r--sw/source/core/text/portox.cxx2
-rw-r--r--sw/source/core/text/portxt.cxx20
-rw-r--r--sw/source/core/text/txtdrop.cxx2
-rw-r--r--sw/source/core/text/txtfld.cxx2
-rw-r--r--sw/source/core/text/txtfrm.cxx12
-rw-r--r--sw/source/core/text/txtftn.cxx4
-rw-r--r--sw/source/core/text/txthyph.cxx6
-rw-r--r--sw/source/core/text/txttab.cxx12
-rw-r--r--sw/source/core/text/wrong.cxx4
-rw-r--r--sw/source/core/text/xmldump.cxx10
-rw-r--r--sw/source/core/tox/txmsrt.cxx38
-rw-r--r--sw/source/core/txtnode/atrfld.cxx6
-rw-r--r--sw/source/core/txtnode/atrftn.cxx2
-rw-r--r--sw/source/core/txtnode/fmtatr2.cxx4
-rw-r--r--sw/source/core/txtnode/fntcache.cxx16
-rw-r--r--sw/source/core/txtnode/ndtxt.cxx28
-rw-r--r--sw/source/core/txtnode/thints.cxx10
-rw-r--r--sw/source/core/txtnode/txatritr.cxx18
-rw-r--r--sw/source/core/txtnode/txtatr2.cxx12
-rw-r--r--sw/source/core/txtnode/txtedt.cxx5
-rw-r--r--sw/source/core/undo/SwUndoFmt.cxx36
-rw-r--r--sw/source/core/undo/SwUndoPageDesc.cxx8
-rw-r--r--sw/source/core/undo/unattr.cxx10
-rw-r--r--sw/source/core/undo/unmove.cxx2
-rw-r--r--sw/source/core/undo/unnum.cxx8
-rw-r--r--sw/source/core/undo/unovwr.cxx20
-rw-r--r--sw/source/core/undo/unsort.cxx2
-rw-r--r--sw/source/core/undo/unspnd.cxx2
-rw-r--r--sw/source/core/undo/untbl.cxx6
-rw-r--r--sw/source/core/undo/untblk.cxx2
-rw-r--r--sw/source/core/unocore/swunohelper.cxx9
-rw-r--r--sw/source/core/unocore/unochart.cxx50
-rw-r--r--sw/source/core/unocore/unocoll.cxx27
-rw-r--r--sw/source/core/unocore/unocrsrhelper.cxx4
-rw-r--r--sw/source/core/unocore/unodraw.cxx6
-rw-r--r--sw/source/core/unocore/unoframe.cxx65
-rw-r--r--sw/source/core/unocore/unoidx.cxx4
-rw-r--r--sw/source/core/unocore/unomap.cxx38
-rw-r--r--sw/source/core/unocore/unoobj.cxx8
-rw-r--r--sw/source/core/unocore/unoobj2.cxx2
-rw-r--r--sw/source/core/unocore/unoparagraph.cxx4
-rw-r--r--sw/source/core/unocore/unoportenum.cxx2
-rw-r--r--sw/source/core/unocore/unoprnms.cxx46
-rw-r--r--sw/source/core/unocore/unosett.cxx2
-rw-r--r--sw/source/core/unocore/unotbl.cxx4
-rw-r--r--sw/source/core/unocore/unotext.cxx2
-rw-r--r--sw/source/core/view/viewsh.cxx2
-rw-r--r--sw/source/core/view/vnew.cxx2
-rw-r--r--sw/source/filter/basflt/fltini.cxx2
-rw-r--r--sw/source/filter/basflt/shellio.cxx2
-rw-r--r--sw/source/filter/html/htmlcss1.cxx10
-rw-r--r--sw/source/filter/html/htmlfldw.cxx5
-rw-r--r--sw/source/filter/html/htmlfly.cxx2
-rw-r--r--sw/source/filter/html/htmlgrin.cxx4
-rw-r--r--sw/source/filter/html/swhtml.cxx2
-rw-r--r--sw/source/filter/rtf/rtfnum.cxx8
-rw-r--r--sw/source/filter/rtf/rtftbl.cxx2
-rw-r--r--sw/source/filter/rtf/swparrtf.cxx6
-rw-r--r--sw/source/filter/ww1/fltshell.cxx14
-rw-r--r--sw/source/filter/ww1/w1class.cxx10
-rw-r--r--sw/source/filter/ww1/w1class.hxx16
-rw-r--r--sw/source/filter/ww1/w1filter.cxx30
-rw-r--r--sw/source/filter/ww8/WW8Sttbf.cxx10
-rw-r--r--sw/source/filter/ww8/WW8TableInfo.cxx93
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx90
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.hxx11
-rw-r--r--sw/source/filter/ww8/rtfattributeoutput.cxx5
-rw-r--r--sw/source/filter/ww8/rtfexport.cxx11
-rw-r--r--sw/source/filter/ww8/wrtw8esh.cxx12
-rw-r--r--sw/source/filter/ww8/wrtw8nds.cxx13
-rw-r--r--sw/source/filter/ww8/wrtw8sty.cxx4
-rw-r--r--sw/source/filter/ww8/wrtww8.cxx74
-rw-r--r--sw/source/filter/ww8/wrtww8gr.cxx2
-rw-r--r--sw/source/filter/ww8/ww8glsy.cxx6
-rw-r--r--sw/source/filter/ww8/ww8graf.cxx8
-rw-r--r--sw/source/filter/ww8/ww8graf2.cxx1
-rw-r--r--sw/source/filter/ww8/ww8par.cxx4
-rw-r--r--sw/source/filter/ww8/ww8par.hxx2
-rw-r--r--sw/source/filter/ww8/ww8par2.cxx9
-rw-r--r--sw/source/filter/ww8/ww8par3.cxx9
-rw-r--r--sw/source/filter/ww8/ww8par5.cxx1
-rw-r--r--sw/source/filter/ww8/ww8par6.cxx4
-rw-r--r--sw/source/filter/xml/swxml.cxx8
-rw-r--r--sw/source/filter/xml/wrtxml.cxx11
-rw-r--r--sw/source/ui/app/app.src17
-rw-r--r--sw/source/ui/app/docsh.cxx2
-rw-r--r--sw/source/ui/app/docsh2.cxx8
-rw-r--r--sw/source/ui/app/docst.cxx2
-rw-r--r--sw/source/ui/app/docstyle.cxx6
-rw-r--r--sw/source/ui/app/swmodul1.cxx16
-rw-r--r--sw/source/ui/cctrl/actctrl.cxx2
-rw-r--r--sw/source/ui/chrdlg/drpcps.cxx46
-rw-r--r--sw/source/ui/chrdlg/swuiccoll.cxx6
-rw-r--r--sw/source/ui/config/mailconfigpage.cxx2
-rw-r--r--sw/source/ui/config/optcomp.cxx2
-rw-r--r--sw/source/ui/config/optload.cxx10
-rw-r--r--sw/source/ui/config/optload.src5
-rw-r--r--sw/source/ui/config/uinums.cxx2
-rw-r--r--sw/source/ui/dbui/addresslistdialog.cxx26
-rw-r--r--sw/source/ui/dbui/addresslistdialog.hxx6
-rw-r--r--sw/source/ui/dbui/dbmgr.cxx6
-rw-r--r--sw/source/ui/dbui/dbtree.cxx22
-rw-r--r--sw/source/ui/dbui/mmaddressblockpage.cxx16
-rw-r--r--sw/source/ui/dbui/mmlayoutpage.cxx4
-rw-r--r--sw/source/ui/dbui/selectdbtabledialog.cxx10
-rw-r--r--sw/source/ui/dialog/swdlgfact.cxx92
-rw-r--r--sw/source/ui/dialog/swdlgfact.hxx11
-rw-r--r--sw/source/ui/dialog/uiregionsw.cxx52
-rw-r--r--sw/source/ui/dochdl/gloshdl.cxx6
-rw-r--r--sw/source/ui/dochdl/swdtflvr.cxx2
-rw-r--r--sw/source/ui/docvw/HeaderFooterWin.cxx21
-rw-r--r--sw/source/ui/docvw/PageBreakWin.cxx17
-rw-r--r--sw/source/ui/docvw/PostItMgr.cxx36
-rw-r--r--sw/source/ui/docvw/edtwin.cxx28
-rw-r--r--sw/source/ui/docvw/edtwin3.cxx4
-rw-r--r--sw/source/ui/envelp/label1.cxx12
-rw-r--r--sw/source/ui/envelp/labelexp.cxx2
-rw-r--r--sw/source/ui/envelp/labimp.hxx2
-rw-r--r--sw/source/ui/envelp/mailmrge.cxx13
-rw-r--r--sw/source/ui/fldui/FldRefTreeListBox.cxx2
-rw-r--r--sw/source/ui/fldui/FldRefTreeListBox.hxx2
-rw-r--r--sw/source/ui/fldui/changedb.cxx18
-rw-r--r--sw/source/ui/fldui/flddb.cxx6
-rw-r--r--sw/source/ui/fldui/flddinf.cxx8
-rw-r--r--sw/source/ui/fldui/flddinf.hxx2
-rw-r--r--sw/source/ui/fldui/fldmgr.cxx22
-rw-r--r--sw/source/ui/fldui/fldref.cxx18
-rw-r--r--sw/source/ui/inc/app.hrc5
-rw-r--r--sw/source/ui/inc/changedb.hxx2
-rw-r--r--sw/source/ui/inc/conttree.hxx58
-rw-r--r--sw/source/ui/inc/dbtree.hxx2
-rw-r--r--sw/source/ui/inc/edtwin.hxx2
-rw-r--r--sw/source/ui/inc/gloshdl.hxx2
-rw-r--r--sw/source/ui/inc/glossary.hxx20
-rw-r--r--sw/source/ui/inc/insrule.hxx25
-rw-r--r--sw/source/ui/inc/misc.hrc1
-rw-r--r--sw/source/ui/inc/optload.hxx4
-rw-r--r--sw/source/ui/inc/pview.hxx5
-rw-r--r--sw/source/ui/inc/redlndlg.hxx8
-rw-r--r--sw/source/ui/inc/regionsw.hxx2
-rw-r--r--sw/source/ui/inc/swtablerep.hxx5
-rw-r--r--sw/source/ui/inc/swuiidxmrk.hxx155
-rw-r--r--sw/source/ui/inc/swvset.hxx7
-rw-r--r--sw/source/ui/inc/view.hxx8
-rw-r--r--sw/source/ui/inc/wrtsh.hxx10
-rw-r--r--sw/source/ui/index/cnttab.cxx18
-rw-r--r--sw/source/ui/index/idxmrk.cxx4
-rw-r--r--sw/source/ui/index/idxmrk.hrc75
-rw-r--r--sw/source/ui/index/idxmrk.src495
-rw-r--r--sw/source/ui/index/swuiidxmrk.cxx840
-rw-r--r--sw/source/ui/lingu/hhcwrp.cxx1
-rw-r--r--sw/source/ui/misc/bookmark.cxx2
-rw-r--r--sw/source/ui/misc/docfnote.cxx239
-rw-r--r--sw/source/ui/misc/docfnote.hrc51
-rw-r--r--sw/source/ui/misc/docfnote.src506
-rw-r--r--sw/source/ui/misc/glosbib.cxx18
-rw-r--r--sw/source/ui/misc/glossary.cxx76
-rw-r--r--sw/source/ui/misc/impfnote.hxx53
-rw-r--r--sw/source/ui/misc/insrule.cxx74
-rw-r--r--sw/source/ui/misc/insrule.src68
-rw-r--r--sw/source/ui/misc/numberingtypelistbox.cxx2
-rw-r--r--sw/source/ui/misc/redlndlg.cxx28
-rw-r--r--sw/source/ui/ribbar/inputwin.cxx4
-rw-r--r--sw/source/ui/shells/basesh.cxx9
-rw-r--r--sw/source/ui/shells/drwbassh.cxx4
-rw-r--r--sw/source/ui/shells/drwtxtex.cxx7
-rw-r--r--sw/source/ui/shells/drwtxtsh.cxx1
-rw-r--r--sw/source/ui/shells/grfsh.cxx40
-rw-r--r--sw/source/ui/shells/listsh.cxx12
-rw-r--r--sw/source/ui/shells/textglos.cxx2
-rw-r--r--sw/source/ui/shells/textidx.cxx4
-rw-r--r--sw/source/ui/shells/textsh.cxx5
-rw-r--r--sw/source/ui/shells/textsh1.cxx4
-rw-r--r--sw/source/ui/table/swtablerep.cxx2
-rw-r--r--sw/source/ui/table/tautofmt.cxx7
-rw-r--r--sw/source/ui/uiview/formatclipboard.cxx1
-rw-r--r--sw/source/ui/uiview/pview.cxx27
-rw-r--r--sw/source/ui/uiview/srcview.cxx7
-rw-r--r--sw/source/ui/uiview/view.cxx4
-rw-r--r--sw/source/ui/uiview/view0.cxx2
-rw-r--r--sw/source/ui/uiview/view2.cxx16
-rw-r--r--sw/source/ui/uiview/viewmdi.cxx19
-rw-r--r--sw/source/ui/uiview/viewport.cxx9
-rw-r--r--sw/source/ui/uiview/viewprt.cxx2
-rw-r--r--sw/source/ui/uiview/viewtab.cxx8
-rw-r--r--sw/source/ui/uno/dlelstnr.cxx62
-rw-r--r--sw/source/ui/uno/unotxdoc.cxx2
-rw-r--r--sw/source/ui/utlui/bookctrl.cxx2
-rw-r--r--sw/source/ui/utlui/content.cxx124
-rw-r--r--sw/source/ui/utlui/glbltree.cxx68
-rw-r--r--sw/source/ui/utlui/navipi.cxx6
-rw-r--r--sw/source/ui/utlui/unotools.cxx76
-rw-r--r--sw/source/ui/web/wview.cxx1
-rw-r--r--sw/source/ui/wrtsh/move.cxx10
-rw-r--r--sw/source/ui/wrtsh/wrtsh2.cxx4
-rw-r--r--sw/source/ui/wrtsh/wrtsh3.cxx2
-rw-r--r--sw/uiconfig/sglobal/menubar/menubar.xml3
-rw-r--r--sw/uiconfig/sglobal/toolbar/graphicobjectbar.xml4
-rw-r--r--sw/uiconfig/sglobal/toolbar/numobjectbar.xml7
-rw-r--r--sw/uiconfig/sglobal/toolbar/tableobjectbar.xml2
-rw-r--r--sw/uiconfig/sw/ui/20872.ui10
-rw-r--r--sw/uiconfig/sw/ui/20876.ui10
-rw-r--r--sw/uiconfig/sweb/menubar/menubar.xml3
-rw-r--r--sw/uiconfig/sweb/toolbar/numobjectbar.xml7
-rw-r--r--sw/uiconfig/sweb/toolbar/tableobjectbar.xml2
-rw-r--r--sw/uiconfig/swform/menubar/menubar.xml3
-rw-r--r--sw/uiconfig/swform/toolbar/graphicobjectbar.xml4
-rw-r--r--sw/uiconfig/swform/toolbar/numobjectbar.xml7
-rw-r--r--sw/uiconfig/swform/toolbar/tableobjectbar.xml2
-rw-r--r--sw/uiconfig/swreport/menubar/menubar.xml3
-rw-r--r--sw/uiconfig/swreport/toolbar/graphicobjectbar.xml4
-rw-r--r--sw/uiconfig/swreport/toolbar/numobjectbar.xml7
-rw-r--r--sw/uiconfig/swreport/toolbar/tableobjectbar.xml2
-rw-r--r--sw/uiconfig/swriter/menubar/menubar.xml3
-rw-r--r--sw/uiconfig/swriter/toolbar/graphicobjectbar.xml4
-rw-r--r--sw/uiconfig/swriter/toolbar/numobjectbar.xml7
-rw-r--r--sw/uiconfig/swriter/toolbar/tableobjectbar.xml2
-rw-r--r--sw/uiconfig/swriter/ui/autoformattable.ui8
-rw-r--r--sw/uiconfig/swriter/ui/bibliographyentry.ui306
-rw-r--r--sw/uiconfig/swriter/ui/charurlpage.ui43
-rw-r--r--sw/uiconfig/swriter/ui/columnwidth.ui4
-rw-r--r--sw/uiconfig/swriter/ui/converttexttable.ui8
-rw-r--r--sw/uiconfig/swriter/ui/endnotepage.ui366
-rw-r--r--sw/uiconfig/swriter/ui/footnotepage.ui582
-rw-r--r--sw/uiconfig/swriter/ui/horizontalrule.ui122
-rw-r--r--sw/uiconfig/swriter/ui/indexentry.ui651
-rw-r--r--sw/uiconfig/swriter/ui/insertbreak.ui6
-rw-r--r--sw/uiconfig/swriter/ui/inserttable.ui11
-rw-r--r--sw/uiconfig/swriter/ui/linenumbering.ui12
-rw-r--r--sw/uiconfig/swriter/ui/printeroptions.ui12
-rw-r--r--sw/uiconfig/swriter/ui/sortdialog.ui20
-rw-r--r--sw/uiconfig/swriter/ui/splittable.ui4
-rw-r--r--sw/uiconfig/swriter/ui/stringinput.ui3
-rw-r--r--sw/uiconfig/swriter/ui/titlepage.ui12
-rw-r--r--sw/uiconfig/swriter/ui/wordcount.ui427
-rw-r--r--sw/uiconfig/swxform/menubar/menubar.xml3
-rw-r--r--sw/uiconfig/swxform/toolbar/graphicobjectbar.xml4
-rw-r--r--sw/uiconfig/swxform/toolbar/numobjectbar.xml7
-rw-r--r--sw/uiconfig/swxform/toolbar/tableobjectbar.xml2
-rw-r--r--swext/Extension_wiki-publisher.mk6
-rw-r--r--swext/mediawiki/src/META-INF/manifest.xml (renamed from swext/mediawiki/src/manifest.xml)0
-rwxr-xr-xsysui/desktop/freedesktop/freedesktop-menus.spec1
-rw-r--r--sysui/desktop/menus/binfilter.desktop9
-rwxr-xr-xsysui/desktop/menus/calc.desktop2
-rwxr-xr-xsysui/desktop/menus/draw.desktop4
-rwxr-xr-xsysui/desktop/menus/impress.desktop2
-rwxr-xr-xsysui/desktop/menus/math.desktop2
-rwxr-xr-xsysui/desktop/menus/writer.desktop2
-rw-r--r--sysui/desktop/share/launcher_genericname.ulf5
-rw-r--r--sysui/desktop/share/makefile.mk2
-rwxr-xr-xsysui/desktop/suse/suse-menus.spec1
-rw-r--r--sysui/prj/build.lst2
-rw-r--r--tail_build/prj/build.lst2
-rw-r--r--test/README4
-rw-r--r--test/source/bootstrapfixture.cxx2
-rw-r--r--test/source/sheet/xcellrangesquery.cxx14
-rw-r--r--tomcat/prj/build.lst2
-rw-r--r--toolkit/inc/toolkit/awt/vclxtoolkit.hxx23
-rw-r--r--toolkit/source/awt/vclxtoolkit.cxx36
-rw-r--r--toolkit/source/helper/registerservices.cxx2
-rw-r--r--toolkit/source/helper/vclunohelper.cxx12
-rw-r--r--tools/CustomTarget_reversemap.mk3
-rw-r--r--tools/README8
-rw-r--r--tools/StaticLibrary_ooopathutils.mk5
-rw-r--r--tools/inc/poly.h6
-rw-r--r--tools/inc/tools/date.hxx2
-rw-r--r--tools/inc/tools/datetime.hxx2
-rw-r--r--tools/inc/tools/debug.hxx7
-rw-r--r--tools/inc/tools/fract.hxx2
-rw-r--r--tools/inc/tools/poly.hxx10
-rw-r--r--tools/inc/tools/solar.h1
-rw-r--r--tools/inc/tools/string.hxx3
-rw-r--r--tools/inc/tools/time.hxx2
-rw-r--r--tools/inc/tools/unqidx.hxx2
-rw-r--r--tools/inc/tools/urlobj.hxx2
-rw-r--r--tools/qa/cppunit/test_urlobj.cxx8
-rw-r--r--tools/source/fsys/dirent.cxx2
-rw-r--r--tools/source/fsys/urlobj.cxx12
-rw-r--r--tools/source/inet/inetmime.cxx8
-rw-r--r--tools/source/inet/inetstrm.cxx2
-rw-r--r--tools/source/ref/errinf.cxx6
-rw-r--r--tools/source/stream/strmunx.cxx4
-rw-r--r--tools/source/string/tustring.cxx29
-rw-r--r--touch/source/uno/Document.cxx6
m---------translations0
-rw-r--r--ucb/README6
-rw-r--r--ucb/source/core/ucb.cxx43
-rw-r--r--ucb/source/core/ucb.hxx9
-rw-r--r--ucb/source/core/ucbcmds.cxx131
-rw-r--r--ucb/source/core/ucbcmds.hxx3
-rw-r--r--ucb/source/core/ucbstore.cxx11
-rw-r--r--ucb/source/ucp/cmis/cmis_content.cxx335
-rw-r--r--ucb/source/ucp/cmis/cmis_content.hxx18
-rw-r--r--ucb/source/ucp/cmis/cmis_provider.cxx11
-rw-r--r--ucb/source/ucp/cmis/cmis_provider.hxx2
-rw-r--r--ucb/source/ucp/cmis/cmis_repo_content.cxx2
-rw-r--r--ucb/source/ucp/cmis/cmis_repo_content.hxx2
-rw-r--r--ucb/source/ucp/cmis/cmis_url.cxx2
-rw-r--r--ucb/source/ucp/ext/ucpext_provider.cxx11
-rw-r--r--ucb/source/ucp/ext/ucpext_provider.hxx2
-rw-r--r--ucb/source/ucp/file/filrow.cxx3
-rw-r--r--ucb/source/ucp/file/filrset.cxx8
-rw-r--r--ucb/source/ucp/file/prov.cxx13
-rw-r--r--ucb/source/ucp/file/prov.hxx4
-rw-r--r--ucb/source/ucp/file/shell.cxx17
-rw-r--r--ucb/source/ucp/file/shell.hxx5
-rw-r--r--ucb/source/ucp/ftp/ftpcontentprovider.cxx15
-rw-r--r--ucb/source/ucp/ftp/ftpcontentprovider.hxx3
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetI.cxx3
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetbase.cxx10
-rw-r--r--ucb/source/ucp/ftp/ftpresultsetbase.hxx4
-rw-r--r--ucb/source/ucp/gio/gio_content.cxx6
-rw-r--r--ucb/source/ucp/gio/gio_provider.cxx9
-rw-r--r--ucb/source/ucp/gio/gio_provider.hxx2
-rw-r--r--ucb/source/ucp/gvfs/gvfs_content.cxx19
-rw-r--r--ucb/source/ucp/gvfs/gvfs_provider.cxx9
-rw-r--r--ucb/source/ucp/gvfs/gvfs_provider.hxx2
-rw-r--r--ucb/source/ucp/hierarchy/hierarchycontent.cxx11
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydatasource.cxx20
-rw-r--r--ucb/source/ucp/hierarchy/hierarchydatasource.hxx7
-rw-r--r--ucb/source/ucp/hierarchy/hierarchyprovider.cxx21
-rw-r--r--ucb/source/ucp/hierarchy/hierarchyprovider.hxx2
-rw-r--r--ucb/source/ucp/odma/odma_provider.cxx8
-rw-r--r--ucb/source/ucp/odma/odma_provider.hxx2
-rw-r--r--ucb/source/ucp/package/pkgcontent.cxx17
-rw-r--r--ucb/source/ucp/package/pkgprovider.cxx17
-rw-r--r--ucb/source/ucp/package/pkgprovider.hxx2
-rw-r--r--ucb/source/ucp/tdoc/tdoc_content.cxx18
-rw-r--r--ucb/source/ucp/tdoc/tdoc_provider.cxx11
-rw-r--r--ucb/source/ucp/webdav-neon/DAVResourceAccess.cxx17
-rw-r--r--ucb/source/ucp/webdav-neon/DAVResourceAccess.hxx4
-rw-r--r--ucb/source/ucp/webdav-neon/DAVSessionFactory.cxx6
-rw-r--r--ucb/source/ucp/webdav-neon/DAVSessionFactory.hxx10
-rw-r--r--ucb/source/ucp/webdav-neon/NeonSession.cxx16
-rw-r--r--ucb/source/ucp/webdav-neon/NeonSession.hxx4
-rw-r--r--ucb/source/ucp/webdav-neon/webdavcontent.cxx20
-rw-r--r--ucb/source/ucp/webdav-neon/webdavprovider.cxx11
-rw-r--r--ucb/source/ucp/webdav-neon/webdavprovider.hxx2
-rw-r--r--ucb/source/ucp/webdav/AprEnv.cxx3
-rw-r--r--ucb/source/ucp/webdav/ContentProperties.cxx10
-rw-r--r--ucb/source/ucp/webdav/DAVProperties.cxx5
-rw-r--r--ucb/source/ucp/webdav/DAVResourceAccess.cxx7
-rw-r--r--ucb/source/ucp/webdav/DAVSessionFactory.cxx4
-rw-r--r--ucb/source/ucp/webdav/DateTimeHelper.cxx5
-rw-r--r--ucb/source/ucp/webdav/SerfCallbacks.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfCopyReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfDeleteReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfGetReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfHeadReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfInputStream.cxx10
-rw-r--r--ucb/source/ucp/webdav/SerfLockStore.cxx7
-rw-r--r--ucb/source/ucp/webdav/SerfMkColReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfMoveReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfPostReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfPropFindReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfPropPatchReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfPutReqProcImpl.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfRequestProcessor.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfRequestProcessorImplFac.cxx3
-rw-r--r--ucb/source/ucp/webdav/SerfSession.cxx12
-rw-r--r--ucb/source/ucp/webdav/SerfUri.cxx3
-rw-r--r--ucb/source/ucp/webdav/UCBDeadPropertyValue.cxx6
-rw-r--r--ucb/source/ucp/webdav/webdavcontent.cxx12
-rw-r--r--ucb/source/ucp/webdav/webdavcontentcaps.cxx10
-rw-r--r--ucb/source/ucp/webdav/webdavdatasupplier.cxx10
-rw-r--r--ucb/source/ucp/webdav/webdavprovider.cxx10
-rw-r--r--ucb/source/ucp/webdav/webdavresponseparser.cxx6
-rw-r--r--ucb/source/ucp/webdav/webdavresultset.cxx5
-rw-r--r--ucb/source/ucp/webdav/webdavservices.cxx4
-rw-r--r--ucbhelper/Library_ucbhelper.mk1
-rw-r--r--ucbhelper/Package_inc.mk1
-rw-r--r--ucbhelper/inc/ucbhelper/content.hxx14
-rw-r--r--ucbhelper/inc/ucbhelper/contentidentifier.hxx7
-rw-r--r--ucbhelper/inc/ucbhelper/getcomponentcontext.hxx47
-rw-r--r--ucbhelper/inc/ucbhelper/macros.hxx35
-rw-r--r--ucbhelper/inc/ucbhelper/providerhelper.hxx5
-rw-r--r--ucbhelper/inc/ucbhelper/proxydecider.hxx3
-rw-r--r--ucbhelper/inc/ucbhelper/resultsetmetadata.hxx6
-rw-r--r--ucbhelper/source/client/content.cxx49
-rw-r--r--ucbhelper/source/client/proxydecider.cxx16
-rw-r--r--ucbhelper/source/provider/contenthelper.cxx2
-rw-r--r--ucbhelper/source/provider/contentidentifier.cxx20
-rw-r--r--ucbhelper/source/provider/getcomponentcontext.cxx41
-rw-r--r--ucbhelper/source/provider/providerhelper.cxx30
-rw-r--r--ucbhelper/source/provider/resultset.cxx3
-rw-r--r--ucbhelper/source/provider/resultsetmetadata.cxx50
-rw-r--r--ucpp/UnpackedTarball_ucpp.mk2
-rw-r--r--udm/StaticLibrary_udm.mk2
-rw-r--r--unodevtools/source/skeletonmaker/cppcompskeleton.cxx1
-rw-r--r--unodevtools/source/skeletonmaker/cpptypemaker.cxx1
-rw-r--r--unodevtools/source/skeletonmaker/javacompskeleton.cxx1
-rw-r--r--unodevtools/source/skeletonmaker/javatypemaker.cxx1
-rw-r--r--unodevtools/source/skeletonmaker/ostringostreaminserter.hxx49
-rw-r--r--unodevtools/source/skeletonmaker/skeletoncommon.cxx1
-rw-r--r--unodevtools/source/skeletonmaker/skeletonmaker.cxx1
-rw-r--r--unotest/inc/unotest/bootstrapfixturebase.hxx10
-rw-r--r--unotest/inc/unotest/filters-test.hxx19
-rw-r--r--unotest/source/cpp/bootstrapfixturebase.cxx25
-rw-r--r--unotest/source/cpp/filters-test.cxx34
-rw-r--r--unotest/source/cpp/macros_test.cxx3
-rw-r--r--unotools/inc/unotools/calendarwrapper.hxx7
-rw-r--r--unotools/inc/unotools/charclass.hxx7
-rw-r--r--unotools/inc/unotools/confignode.hxx3
-rw-r--r--unotools/inc/unotools/textsearch.hxx13
-rw-r--r--unotools/inc/unotools/transliterationwrapper.hxx8
-rw-r--r--unotools/source/config/accelcfg.cxx11
-rw-r--r--unotools/source/config/configmgr.cxx10
-rw-r--r--unotools/source/config/confignode.cxx28
-rw-r--r--unotools/source/config/fontcfg.cxx186
-rw-r--r--unotools/source/config/historyoptions.cxx4
-rw-r--r--unotools/source/config/itemholder1.cxx10
-rw-r--r--unotools/source/config/lingucfg.cxx13
-rw-r--r--unotools/source/config/saveopt.cxx4
-rw-r--r--unotools/source/config/useroptions.cxx2
-rw-r--r--unotools/source/config/viewoptions.cxx2
-rw-r--r--unotools/source/i18n/calendarwrapper.cxx9
-rw-r--r--unotools/source/i18n/charclass.cxx14
-rw-r--r--unotools/source/i18n/localedatawrapper.cxx6
-rw-r--r--unotools/source/i18n/textsearch.cxx18
-rw-r--r--unotools/source/i18n/transliterationwrapper.cxx14
-rw-r--r--unotools/source/misc/syslocale.cxx2
-rwxr-xr-xunusedcode.easy78
-rw-r--r--ure/Zip_uretest.mk1
-rw-r--r--uui/source/iahndl.cxx15
-rw-r--r--uui/source/interactionhandler.cxx24
-rw-r--r--uui/source/newerverwarn.cxx2
-rw-r--r--vbahelper/README1
-rw-r--r--vbahelper/source/vbahelper/vbahelper.cxx8
-rw-r--r--vcl/AllLangResTarget_vcl.mk33
-rw-r--r--vcl/Library_vcl.mk40
-rw-r--r--vcl/Library_vclplug_gen.mk9
-rw-r--r--vcl/Library_vclplug_kde.mk33
-rw-r--r--vcl/Library_vclplug_kde4.mk33
-rw-r--r--vcl/Library_vclplug_svp.mk33
-rw-r--r--vcl/Makefile7
-rw-r--r--vcl/Package_inc.mk4
-rw-r--r--vcl/StaticLibrary_vclmain.mk33
-rw-r--r--vcl/aqua/source/a11y/aqua11yfocuslistener.cxx37
-rw-r--r--vcl/aqua/source/a11y/aqua11yfocuslistener.hxx43
-rw-r--r--vcl/aqua/source/a11y/aqua11yrolehelper.mm37
-rw-r--r--vcl/aqua/source/a11y/aqua11ytextattributeswrapper.mm37
-rw-r--r--vcl/aqua/source/a11y/documentfocuslistener.cxx37
-rw-r--r--vcl/aqua/source/app/saldata.cxx37
-rw-r--r--vcl/aqua/source/app/salinst.cxx37
-rw-r--r--vcl/aqua/source/app/salsys.cxx37
-rw-r--r--vcl/aqua/source/dtrans/DataFlavorMapping.cxx41
-rw-r--r--vcl/aqua/source/dtrans/DataFlavorMapping.hxx37
-rw-r--r--vcl/aqua/source/dtrans/DragSource.cxx37
-rw-r--r--vcl/aqua/source/dtrans/DropTarget.cxx37
-rw-r--r--vcl/aqua/source/dtrans/OSXTransferable.cxx37
-rw-r--r--vcl/aqua/source/dtrans/aqua_clipboard.cxx42
-rw-r--r--vcl/aqua/source/gdi/aquaprintaccessoryview.mm37
-rw-r--r--vcl/aqua/source/gdi/aquaprintview.mm37
-rw-r--r--vcl/aqua/source/gdi/atsui/salatslayout.cxx37
-rw-r--r--vcl/aqua/source/gdi/atsui/salatsuifontutils.cxx37
-rw-r--r--vcl/aqua/source/gdi/atsui/salgdi.cxx48
-rw-r--r--vcl/aqua/source/gdi/coretext/salcoretextlayout.cxx2
-rw-r--r--vcl/aqua/source/gdi/salbmp.cxx37
-rw-r--r--vcl/aqua/source/gdi/salgdicommon.cxx46
-rw-r--r--vcl/aqua/source/gdi/salgdiutils.cxx37
-rw-r--r--vcl/aqua/source/gdi/salnativewidgets.cxx37
-rw-r--r--vcl/aqua/source/window/salframe.cxx6
-rw-r--r--vcl/aqua/source/window/salframeview.mm38
-rw-r--r--vcl/aqua/source/window/salmenu.cxx37
-rw-r--r--vcl/aqua/source/window/salnsmenu.mm37
-rw-r--r--vcl/aqua/source/window/salobj.cxx37
-rw-r--r--vcl/generic/fontmanager/adobeenc.tab37
-rw-r--r--vcl/generic/fontmanager/fontcache.cxx37
-rw-r--r--vcl/generic/fontmanager/fontconfig.cxx37
-rw-r--r--vcl/generic/fontmanager/fontmanager.cxx37
-rw-r--r--vcl/generic/fontmanager/helper.cxx37
-rw-r--r--vcl/generic/print/bitmap_gfx.cxx37
-rw-r--r--vcl/generic/print/common_gfx.cxx37
-rw-r--r--vcl/generic/print/genprnpsp.cxx37
-rw-r--r--vcl/generic/print/genpspgraphics.cxx45
-rw-r--r--vcl/generic/print/glyphset.cxx37
-rw-r--r--vcl/generic/print/glyphset.hxx37
-rw-r--r--vcl/generic/print/printerjob.cxx37
-rw-r--r--vcl/generic/print/psheader.ps33
-rw-r--r--vcl/generic/print/psputil.cxx37
-rw-r--r--vcl/generic/print/psputil.hxx37
-rw-r--r--vcl/generic/print/text_gfx.cxx37
-rw-r--r--vcl/headless/svpbmp.cxx37
-rw-r--r--vcl/headless/svpdummies.cxx37
-rw-r--r--vcl/headless/svpelement.cxx37
-rw-r--r--vcl/headless/svpframe.cxx37
-rw-r--r--vcl/headless/svpgdi.cxx44
-rw-r--r--vcl/headless/svpinst.cxx40
-rw-r--r--vcl/headless/svpprn.cxx37
-rw-r--r--vcl/headless/svptext.cxx37
-rw-r--r--vcl/headless/svpvd.cxx37
-rw-r--r--vcl/inc/accmgr.hxx43
-rw-r--r--vcl/inc/aqua/atsui/salatsuifontutils.hxx43
-rw-r--r--vcl/inc/aqua/atsui/salgdi.h44
-rw-r--r--vcl/inc/aqua/coretext/salgdi.h26
-rw-r--r--vcl/inc/aqua/salbmp.h37
-rw-r--r--vcl/inc/aqua/salconst.h43
-rw-r--r--vcl/inc/aqua/salframe.h37
-rw-r--r--vcl/inc/aqua/salgdicommon.hxx17
-rw-r--r--vcl/inc/aqua/salinst.h37
-rw-r--r--vcl/inc/aqua/salmenu.h37
-rw-r--r--vcl/inc/aqua/salobj.h37
-rw-r--r--vcl/inc/aqua/salprn.h37
-rw-r--r--vcl/inc/aqua/salsys.h43
-rw-r--r--vcl/inc/brdwin.hxx37
-rw-r--r--vcl/inc/cupsmgr.hxx37
-rw-r--r--vcl/inc/dndevdis.hxx37
-rw-r--r--vcl/inc/fontcache.hxx37
-rw-r--r--vcl/inc/generic/genprn.h37
-rw-r--r--vcl/inc/generic/genpspgraphics.h44
-rw-r--r--vcl/inc/generic/gensys.h37
-rw-r--r--vcl/inc/generic/printergfx.hxx37
-rw-r--r--vcl/inc/generic/printerjob.hxx37
-rw-r--r--vcl/inc/graphite_features.hxx37
-rw-r--r--vcl/inc/graphite_layout.hxx37
-rw-r--r--vcl/inc/graphite_serverfont.hxx37
-rw-r--r--vcl/inc/headless/svpgdi.hxx44
-rw-r--r--vcl/inc/helpwin.hxx37
-rw-r--r--vcl/inc/idlemgr.hxx43
-rw-r--r--vcl/inc/ilstbox.hxx37
-rw-r--r--vcl/inc/image.h37
-rw-r--r--vcl/inc/impbmp.hxx37
-rw-r--r--vcl/inc/impfont.hxx37
-rw-r--r--vcl/inc/impgraph.hxx59
-rw-r--r--vcl/inc/impimagetree.hxx37
-rw-r--r--vcl/inc/ios/salbmp.h37
-rw-r--r--vcl/inc/ios/salcolorutils.hxx43
-rw-r--r--vcl/inc/ios/salconst.h43
-rw-r--r--vcl/inc/ios/salgdi.h45
-rw-r--r--vcl/inc/ios/salgdicommon.hxx37
-rw-r--r--vcl/inc/ios/salinst.h37
-rw-r--r--vcl/inc/ios/salmathutils.hxx37
-rw-r--r--vcl/inc/ios/salmenu.h43
-rw-r--r--vcl/inc/ios/salnstimer.h43
-rw-r--r--vcl/inc/ios/salobj.h37
-rw-r--r--vcl/inc/ios/salprn.h37
-rw-r--r--vcl/inc/ios/salsys.h43
-rw-r--r--vcl/inc/ios/saltimer.h37
-rw-r--r--vcl/inc/jobset.h37
-rw-r--r--vcl/inc/list.h37
-rw-r--r--vcl/inc/outdev.h37
-rw-r--r--vcl/inc/outfont.hxx37
-rw-r--r--vcl/inc/print.h37
-rw-r--r--vcl/inc/printdlg.hxx37
-rw-r--r--vcl/inc/salbmp.hxx43
-rw-r--r--vcl/inc/saldatabasic.hxx43
-rw-r--r--vcl/inc/salframe.hxx37
-rw-r--r--vcl/inc/salgdi.hxx54
-rw-r--r--vcl/inc/salgeom.hxx43
-rw-r--r--vcl/inc/salinst.hxx37
-rw-r--r--vcl/inc/sallayout.hxx47
-rw-r--r--vcl/inc/salmenu.hxx37
-rw-r--r--vcl/inc/salobj.hxx37
-rw-r--r--vcl/inc/salprn.hxx37
-rw-r--r--vcl/inc/salsys.hxx37
-rw-r--r--vcl/inc/salwtype.hxx37
-rw-r--r--vcl/inc/svdata.hxx44
-rw-r--r--vcl/inc/svids.hrc4
-rw-r--r--vcl/inc/textlayout.hxx37
-rw-r--r--vcl/inc/unx/desktops.hxx43
-rw-r--r--vcl/inc/unx/gtk/gtkdata.hxx37
-rw-r--r--vcl/inc/unx/gtk/gtkframe.hxx37
-rw-r--r--vcl/inc/unx/gtk/gtkgdi.hxx37
-rw-r--r--vcl/inc/unx/gtk/gtkinst.hxx41
-rw-r--r--vcl/inc/unx/gtk/gtkobject.hxx43
-rw-r--r--vcl/inc/unx/i18n_cb.hxx37
-rw-r--r--vcl/inc/unx/i18n_ic.hxx37
-rw-r--r--vcl/inc/unx/i18n_im.hxx43
-rw-r--r--vcl/inc/unx/i18n_status.hxx37
-rw-r--r--vcl/inc/unx/i18n_xkb.hxx37
-rw-r--r--vcl/inc/unx/kde/kdedata.hxx37
-rw-r--r--vcl/inc/unx/salbmp.h37
-rw-r--r--vcl/inc/unx/saldata.hxx37
-rw-r--r--vcl/inc/unx/saldisp.hxx37
-rw-r--r--vcl/inc/unx/salframe.h37
-rw-r--r--vcl/inc/unx/salgdi.h44
-rw-r--r--vcl/inc/unx/salinst.h37
-rw-r--r--vcl/inc/unx/salmenu.h43
-rw-r--r--vcl/inc/unx/salobj.h37
-rw-r--r--vcl/inc/unx/saltimer.h43
-rw-r--r--vcl/inc/unx/salunx.h43
-rw-r--r--vcl/inc/unx/salunxtime.h37
-rw-r--r--vcl/inc/unx/salvd.h37
-rw-r--r--vcl/inc/unx/sm.hxx37
-rw-r--r--vcl/inc/unx/soicon.hxx43
-rw-r--r--vcl/inc/unx/x11/x11sys.hxx43
-rw-r--r--vcl/inc/unx/x11_cursors/airbrush_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/airbrush_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/ase_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/ase_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asn_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asn_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asne_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asne_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asns_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asns_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asnswe_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asnswe_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asnw_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asnw_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/ass_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/ass_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asse_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asse_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/assw_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/assw_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asw_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/asw_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/aswe_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/aswe_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/chain_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/chain_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/chainnot_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/chainnot_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/chart_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/chart_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copydata_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copydata_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copydlnk_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copydlnk_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copyfile_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copyfile_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copyfiles_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copyfiles_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copyflnk_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/copyflnk_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/crook_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/crook_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/crop_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/crop_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/detective_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/detective_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawarc_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawarc_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawbezier_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawbezier_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawcaption_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawcaption_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawcirclecut_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawcirclecut_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawconnect_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawconnect_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawellipse_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawellipse_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawfreehand_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawfreehand_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawline_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawline_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawpie_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawpie_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawpolygon_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawpolygon_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawrect_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawrect_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawtext_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/drawtext_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/fill_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/fill_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/hshear_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/hshear_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/invert50.h43
-rw-r--r--vcl/inc/unx/x11_cursors/linkdata_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/linkdata_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/linkfile_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/linkfile_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/magnify_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/magnify_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/mirror_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/mirror_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movebezierweight_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movebezierweight_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movedata_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movedata_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movedlnk_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movedlnk_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movefile_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movefile_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movefiles_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movefiles_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/moveflnk_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/moveflnk_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movepoint_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/movepoint_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/nodrop_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/nodrop_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/null_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/null_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/paintbrush_curs.h18
-rw-r--r--vcl/inc/unx/x11_cursors/paintbrush_mask.h18
-rw-r--r--vcl/inc/unx/x11_cursors/pivotcol_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/pivotcol_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/pivotdel_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/pivotdel_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/pivotfld_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/pivotfld_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/pivotrow_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/pivotrow_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/rotate_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/rotate_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/tblsele_curs.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblsele_mask.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblsels_curs.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblsels_mask.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblselse_curs.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblselse_mask.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblselsw_curs.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblselsw_mask.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblselw_curs.h18
-rw-r--r--vcl/inc/unx/x11_cursors/tblselw_mask.h18
-rw-r--r--vcl/inc/unx/x11_cursors/timemove_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/timemove_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/timesize_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/timesize_mask.h43
-rw-r--r--vcl/inc/unx/x11_cursors/vertcurs_curs.h18
-rw-r--r--vcl/inc/unx/x11_cursors/vertcurs_mask.h18
-rw-r--r--vcl/inc/unx/x11_cursors/vshear_curs.h43
-rw-r--r--vcl/inc/unx/x11_cursors/vshear_mask.h43
-rw-r--r--vcl/inc/vcl/ImageListProvider.hxx43
-rw-r--r--vcl/inc/vcl/accel.hxx37
-rw-r--r--vcl/inc/vcl/alpha.hxx37
-rw-r--r--vcl/inc/vcl/animate.hxx37
-rw-r--r--vcl/inc/vcl/apptypes.hxx43
-rw-r--r--vcl/inc/vcl/bitmap.hxx37
-rw-r--r--vcl/inc/vcl/bitmapex.hxx37
-rw-r--r--vcl/inc/vcl/bmpacc.hxx37
-rw-r--r--vcl/inc/vcl/btndlg.hxx37
-rw-r--r--vcl/inc/vcl/builder.hxx27
-rw-r--r--vcl/inc/vcl/button.hxx37
-rw-r--r--vcl/inc/vcl/canvastools.hxx37
-rw-r--r--vcl/inc/vcl/cmdevt.hxx37
-rw-r--r--vcl/inc/vcl/combobox.hxx48
-rw-r--r--vcl/inc/vcl/configsettings.hxx37
-rw-r--r--vcl/inc/vcl/cursor.hxx39
-rw-r--r--vcl/inc/vcl/cvtgrf.hxx43
-rw-r--r--vcl/inc/vcl/cvtsvm.hxx39
-rw-r--r--vcl/inc/vcl/dialog.hxx41
-rw-r--r--vcl/inc/vcl/dockwin.hxx37
-rw-r--r--vcl/inc/vcl/edit.hxx49
-rw-r--r--vcl/inc/vcl/event.hxx45
-rw-r--r--vcl/inc/vcl/field.hxx37
-rw-r--r--vcl/inc/vcl/fixed.hxx40
-rw-r--r--vcl/inc/vcl/floatwin.hxx37
-rw-r--r--vcl/inc/vcl/font.hxx39
-rw-r--r--vcl/inc/vcl/fontmanager.hxx37
-rw-r--r--vcl/inc/vcl/gdimtf.hxx50
-rw-r--r--vcl/inc/vcl/gradient.hxx37
-rw-r--r--vcl/inc/vcl/graph.h37
-rw-r--r--vcl/inc/vcl/graph.hxx47
-rw-r--r--vcl/inc/vcl/graphictools.hxx37
-rw-r--r--vcl/inc/vcl/hatch.hxx37
-rw-r--r--vcl/inc/vcl/helper.hxx43
-rw-r--r--vcl/inc/vcl/i18nhelp.hxx37
-rw-r--r--vcl/inc/vcl/image.hxx37
-rw-r--r--vcl/inc/vcl/imagerepository.hxx37
-rw-r--r--vcl/inc/vcl/imgctrl.hxx43
-rw-r--r--vcl/inc/vcl/introwin.hxx43
-rw-r--r--vcl/inc/vcl/jobset.hxx37
-rw-r--r--vcl/inc/vcl/keycod.hxx37
-rw-r--r--vcl/inc/vcl/layout.hxx31
-rw-r--r--vcl/inc/vcl/lazydelete.hxx37
-rw-r--r--vcl/inc/vcl/lineinfo.hxx44
-rw-r--r--vcl/inc/vcl/longcurr.hxx37
-rw-r--r--vcl/inc/vcl/lstbox.hxx38
-rw-r--r--vcl/inc/vcl/menu.hxx37
-rw-r--r--vcl/inc/vcl/menubtn.hxx37
-rw-r--r--vcl/inc/vcl/metaact.hxx80
-rw-r--r--vcl/inc/vcl/metric.hxx37
-rw-r--r--vcl/inc/vcl/mnemonicengine.hxx37
-rw-r--r--vcl/inc/vcl/morebtn.hxx37
-rw-r--r--vcl/inc/vcl/msgbox.hxx37
-rw-r--r--vcl/inc/vcl/octree.hxx37
-rw-r--r--vcl/inc/vcl/outdev.hxx57
-rw-r--r--vcl/inc/vcl/pdfwriter.hxx37
-rw-r--r--vcl/inc/vcl/ppdparser.hxx37
-rw-r--r--vcl/inc/vcl/print.hxx46
-rw-r--r--vcl/inc/vcl/printerinfomanager.hxx37
-rw-r--r--vcl/inc/vcl/quickselectionengine.hxx41
-rw-r--r--vcl/inc/vcl/regband.hxx37
-rw-r--r--vcl/inc/vcl/region.hxx37
-rw-r--r--vcl/inc/vcl/salnativewidgets.hxx37
-rw-r--r--vcl/inc/vcl/scrbar.hxx37
-rw-r--r--vcl/inc/vcl/seleng.hxx37
-rw-r--r--vcl/inc/vcl/settings.hxx17
-rw-r--r--vcl/inc/vcl/slider.hxx37
-rw-r--r--vcl/inc/vcl/split.hxx37
-rw-r--r--vcl/inc/vcl/splitwin.hxx37
-rw-r--r--vcl/inc/vcl/status.hxx37
-rw-r--r--vcl/inc/vcl/stdtext.hxx41
-rw-r--r--vcl/inc/vcl/strhelper.hxx37
-rw-r--r--vcl/inc/vcl/svapp.hxx42
-rw-r--r--vcl/inc/vcl/svgdata.hxx76
-rw-r--r--vcl/inc/vcl/syschild.hxx37
-rw-r--r--vcl/inc/vcl/syswin.hxx37
-rw-r--r--vcl/inc/vcl/tabctrl.hxx37
-rw-r--r--vcl/inc/vcl/tabpage.hxx37
-rw-r--r--vcl/inc/vcl/taskpanelist.hxx43
-rw-r--r--vcl/inc/vcl/texteng.hxx37
-rw-r--r--vcl/inc/vcl/textview.hxx37
-rw-r--r--vcl/inc/vcl/threadex.hxx37
-rw-r--r--vcl/inc/vcl/toolbox.hxx37
-rw-r--r--vcl/inc/vcl/txtattr.hxx37
-rw-r--r--vcl/inc/vcl/unohelp.hxx44
-rw-r--r--vcl/inc/vcl/unowrap.hxx37
-rw-r--r--vcl/inc/vcl/vclenum.hxx37
-rw-r--r--vcl/inc/vcl/vclevent.hxx37
-rw-r--r--vcl/inc/vcl/vclmedit.hxx40
-rw-r--r--vcl/inc/vcl/virdev.hxx37
-rw-r--r--vcl/inc/vcl/wall.hxx37
-rw-r--r--vcl/inc/vcl/window.hxx84
-rw-r--r--vcl/inc/vcl/wrkwin.hxx37
-rw-r--r--vcl/inc/win/salbmp.h37
-rw-r--r--vcl/inc/win/saldata.hxx37
-rw-r--r--vcl/inc/win/salframe.h37
-rw-r--r--vcl/inc/win/salgdi.h44
-rw-r--r--vcl/inc/win/salinst.h37
-rw-r--r--vcl/inc/win/salmenu.h37
-rw-r--r--vcl/inc/win/salobj.h43
-rw-r--r--vcl/inc/win/salprn.h37
-rw-r--r--vcl/inc/win/salsys.h37
-rw-r--r--vcl/inc/win/wincomp.hxx37
-rw-r--r--vcl/inc/window.h40
-rw-r--r--vcl/ios/source/app/salnstimer.mm43
-rw-r--r--vcl/ios/source/app/salsys.cxx37
-rw-r--r--vcl/ios/source/dtrans/iOSTransferable.hxx37
-rw-r--r--vcl/ios/source/dtrans/ios_clipboard.cxx42
-rw-r--r--vcl/ios/source/dtrans/ios_clipboard.hxx37
-rw-r--r--vcl/ios/source/gdi/salbmp.cxx37
-rw-r--r--vcl/ios/source/gdi/salcoretextlayout.cxx2
-rw-r--r--vcl/ios/source/gdi/salgdi.cxx37
-rw-r--r--vcl/ios/source/gdi/salgdicommon.cxx63
-rw-r--r--vcl/ios/source/gdi/salgdiutils.cxx37
-rw-r--r--vcl/ios/source/gdi/salvd.cxx37
-rw-r--r--vcl/ios/source/window/salobj.cxx37
-rw-r--r--vcl/null/printerinfomanager.cxx38
-rw-r--r--vcl/qa/cppunit/builder/demo.ui11
-rw-r--r--vcl/source/app/brand.cxx40
-rw-r--r--vcl/source/app/dbggui.cxx39
-rw-r--r--vcl/source/app/dndhelp.cxx37
-rw-r--r--vcl/source/app/i18nhelp.cxx40
-rw-r--r--vcl/source/app/idlemgr.cxx37
-rw-r--r--vcl/source/app/salvtables.cxx37
-rw-r--r--vcl/source/app/session.cxx37
-rw-r--r--vcl/source/app/settings.cxx29
-rw-r--r--vcl/source/app/stdtext.cxx58
-rw-r--r--vcl/source/app/svapp.cxx37
-rw-r--r--vcl/source/app/svdata.cxx76
-rw-r--r--vcl/source/app/svmain.cxx50
-rw-r--r--vcl/source/app/svmainhook.cxx43
-rw-r--r--vcl/source/app/timer.cxx37
-rw-r--r--vcl/source/app/unohelp.cxx161
-rw-r--r--vcl/source/app/unohelp2.cxx37
-rw-r--r--vcl/source/app/vclevent.cxx37
-rw-r--r--vcl/source/components/display.cxx37
-rw-r--r--vcl/source/components/dtranscomp.cxx37
-rw-r--r--vcl/source/components/factory.cxx51
-rw-r--r--vcl/source/components/rasterizer_rsvg.cxx538
-rw-r--r--vcl/source/control/button.cxx50
-rw-r--r--vcl/source/control/combobox.cxx53
-rw-r--r--vcl/source/control/edit.cxx111
-rw-r--r--vcl/source/control/field.cxx95
-rw-r--r--vcl/source/control/field2.cxx64
-rw-r--r--vcl/source/control/fixed.cxx72
-rw-r--r--vcl/source/control/group.cxx37
-rw-r--r--vcl/source/control/ilstbox.cxx42
-rw-r--r--vcl/source/control/imgctrl.cxx37
-rw-r--r--vcl/source/control/longcurr.cxx74
-rw-r--r--vcl/source/control/lstbox.cxx39
-rw-r--r--vcl/source/control/menubtn.cxx37
-rw-r--r--vcl/source/control/morebtn.cxx37
-rw-r--r--vcl/source/control/quickselectionengine.cxx43
-rw-r--r--vcl/source/control/scrbar.cxx73
-rw-r--r--vcl/source/control/slider.cxx37
-rw-r--r--vcl/source/control/spinbtn.cxx37
-rw-r--r--vcl/source/control/tabctrl.cxx37
-rw-r--r--vcl/source/control/throbber.cxx37
-rw-r--r--vcl/source/edit/textdat2.hxx39
-rw-r--r--vcl/source/edit/textdata.cxx37
-rw-r--r--vcl/source/edit/textdoc.cxx41
-rw-r--r--vcl/source/edit/textdoc.hxx37
-rw-r--r--vcl/source/edit/texteng.cxx39
-rw-r--r--vcl/source/edit/textundo.cxx37
-rw-r--r--vcl/source/edit/textundo.hxx37
-rw-r--r--vcl/source/edit/textview.cxx41
-rw-r--r--vcl/source/edit/txtattr.cxx37
-rw-r--r--vcl/source/edit/vclmedit.cxx53
-rw-r--r--vcl/source/edit/xtextedt.cxx41
-rw-r--r--vcl/source/fontsubset/cff.cxx40
-rw-r--r--vcl/source/fontsubset/fontsubset.cxx37
-rw-r--r--vcl/source/fontsubset/gsub.cxx37
-rw-r--r--vcl/source/fontsubset/list.c238
-rw-r--r--vcl/source/fontsubset/list.cxx225
-rw-r--r--vcl/source/fontsubset/sft.cxx37
-rw-r--r--vcl/source/fontsubset/ttcr.cxx37
-rw-r--r--vcl/source/gdi/alpha.cxx37
-rw-r--r--vcl/source/gdi/animate.cxx37
-rw-r--r--vcl/source/gdi/base14.cxx37
-rw-r--r--vcl/source/gdi/bitmap.cxx37
-rw-r--r--vcl/source/gdi/bitmap2.cxx37
-rw-r--r--vcl/source/gdi/bitmap4.cxx37
-rw-r--r--vcl/source/gdi/bitmapex.cxx37
-rw-r--r--vcl/source/gdi/bmpacc.cxx37
-rw-r--r--vcl/source/gdi/bmpacc3.cxx37
-rw-r--r--vcl/source/gdi/bmpconv.cxx37
-rw-r--r--vcl/source/gdi/bmpfast.cxx37
-rw-r--r--vcl/source/gdi/configsettings.cxx37
-rw-r--r--vcl/source/gdi/cvtgrf.cxx37
-rw-r--r--vcl/source/gdi/cvtsvm.cxx90
-rw-r--r--vcl/source/gdi/font.cxx37
-rw-r--r--vcl/source/gdi/gdimtf.cxx411
-rw-r--r--vcl/source/gdi/gfxlink.cxx37
-rw-r--r--vcl/source/gdi/gradient.cxx37
-rw-r--r--vcl/source/gdi/graph.cxx94
-rw-r--r--vcl/source/gdi/graphictools.cxx37
-rw-r--r--vcl/source/gdi/hatch.cxx37
-rw-r--r--vcl/source/gdi/image.cxx37
-rw-r--r--vcl/source/gdi/imagerepository.cxx43
-rw-r--r--vcl/source/gdi/impbmp.cxx37
-rw-r--r--vcl/source/gdi/impgraph.cxx418
-rw-r--r--vcl/source/gdi/impimage.cxx37
-rw-r--r--vcl/source/gdi/impimagetree.cxx37
-rw-r--r--vcl/source/gdi/impvect.cxx37
-rw-r--r--vcl/source/gdi/jobset.cxx37
-rw-r--r--vcl/source/gdi/lineinfo.cxx83
-rw-r--r--vcl/source/gdi/metaact.cxx123
-rw-r--r--vcl/source/gdi/metric.cxx37
-rw-r--r--vcl/source/gdi/octree.cxx37
-rw-r--r--vcl/source/gdi/oldprintadaptor.cxx37
-rw-r--r--vcl/source/gdi/outdev.cxx147
-rw-r--r--vcl/source/gdi/outdev2.cxx37
-rw-r--r--vcl/source/gdi/outdev3.cxx74
-rw-r--r--vcl/source/gdi/outdev4.cxx37
-rw-r--r--vcl/source/gdi/outdev5.cxx37
-rw-r--r--vcl/source/gdi/outdev6.cxx66
-rw-r--r--vcl/source/gdi/outdevnative.cxx37
-rw-r--r--vcl/source/gdi/outmap.cxx43
-rw-r--r--vcl/source/gdi/pdfwriter.cxx37
-rw-r--r--vcl/source/gdi/pdfwriter_impl.cxx144
-rw-r--r--vcl/source/gdi/pdfwriter_impl.hxx37
-rw-r--r--vcl/source/gdi/pdfwriter_impl2.cxx58
-rw-r--r--vcl/source/gdi/pngread.cxx37
-rw-r--r--vcl/source/gdi/pngwrite.cxx37
-rw-r--r--vcl/source/gdi/print.cxx141
-rw-r--r--vcl/source/gdi/print2.cxx66
-rw-r--r--vcl/source/gdi/print3.cxx87
-rw-r--r--vcl/source/gdi/regband.cxx37
-rw-r--r--vcl/source/gdi/region.cxx83
-rw-r--r--vcl/source/gdi/rendergraphicrasterizer.cxx4
-rw-r--r--vcl/source/gdi/salgdilayout.cxx50
-rw-r--r--vcl/source/gdi/sallayout.cxx39
-rw-r--r--vcl/source/gdi/salmisc.cxx37
-rw-r--r--vcl/source/gdi/salnativewidgets-none.cxx37
-rw-r--r--vcl/source/gdi/svgdata.cxx193
-rw-r--r--vcl/source/gdi/textlayout.cxx37
-rw-r--r--vcl/source/gdi/virdev.cxx37
-rw-r--r--vcl/source/gdi/wall.cxx37
-rw-r--r--vcl/source/glyphs/graphite_features.cxx37
-rw-r--r--vcl/source/glyphs/graphite_layout.cxx2
-rw-r--r--vcl/source/helper/canvasbitmap.cxx37
-rw-r--r--vcl/source/helper/canvastools.cxx37
-rw-r--r--vcl/source/helper/strhelper.cxx37
-rw-r--r--vcl/source/helper/threadex.cxx37
-rw-r--r--vcl/source/helper/xconnection.cxx37
-rw-r--r--vcl/source/salmain/salmain.cxx43
-rw-r--r--vcl/source/src/btntext.src47
-rw-r--r--vcl/source/src/images.src47
-rw-r--r--vcl/source/src/print.src37
-rw-r--r--vcl/source/src/stdtext.src37
-rw-r--r--vcl/source/src/units.src43
-rw-r--r--vcl/source/uipreviewer/previewer.cxx3
-rw-r--r--vcl/source/window/abstdlg.cxx37
-rw-r--r--vcl/source/window/accel.cxx37
-rw-r--r--vcl/source/window/accmgr.cxx37
-rw-r--r--vcl/source/window/brdwin.cxx37
-rw-r--r--vcl/source/window/btndlg.cxx37
-rw-r--r--vcl/source/window/builder.cxx274
-rw-r--r--vcl/source/window/cmdevt.cxx37
-rw-r--r--vcl/source/window/cursor.cxx45
-rw-r--r--vcl/source/window/decoview.cxx37
-rw-r--r--vcl/source/window/dialog.cxx41
-rw-r--r--vcl/source/window/dlgctrl.cxx43
-rw-r--r--vcl/source/window/dndevdis.cxx37
-rw-r--r--vcl/source/window/dockmgr.cxx37
-rw-r--r--vcl/source/window/dockwin.cxx37
-rw-r--r--vcl/source/window/floatwin.cxx37
-rw-r--r--vcl/source/window/introwin.cxx43
-rw-r--r--vcl/source/window/keycod.cxx37
-rw-r--r--vcl/source/window/keyevent.cxx37
-rw-r--r--vcl/source/window/layout.cxx210
-rw-r--r--vcl/source/window/menu.cxx14
-rw-r--r--vcl/source/window/mnemonic.cxx37
-rw-r--r--vcl/source/window/mouseevent.cxx43
-rw-r--r--vcl/source/window/msgbox.cxx38
-rw-r--r--vcl/source/window/printdlg.cxx49
-rw-r--r--vcl/source/window/scrwnd.cxx37
-rw-r--r--vcl/source/window/scrwnd.hxx37
-rw-r--r--vcl/source/window/seleng.cxx37
-rw-r--r--vcl/source/window/split.cxx37
-rw-r--r--vcl/source/window/splitwin.cxx37
-rw-r--r--vcl/source/window/status.cxx37
-rw-r--r--vcl/source/window/syschild.cxx42
-rw-r--r--vcl/source/window/syswin.cxx37
-rw-r--r--vcl/source/window/tabdlg.cxx37
-rw-r--r--vcl/source/window/tabpage.cxx37
-rw-r--r--vcl/source/window/taskpanelist.cxx37
-rw-r--r--vcl/source/window/toolbox.cxx37
-rw-r--r--vcl/source/window/toolbox2.cxx11
-rw-r--r--vcl/source/window/window.cxx247
-rw-r--r--vcl/source/window/window2.cxx152
-rw-r--r--vcl/source/window/winproc.cxx48
-rw-r--r--vcl/source/window/wrkwin.cxx2
-rw-r--r--vcl/test/canvasbitmaptest.cxx41
-rw-r--r--vcl/test/dndtest.cxx37
-rw-r--r--vcl/test/makefile.mk33
-rw-r--r--vcl/uiconfig/ui/printdialog.ui28
-rw-r--r--vcl/unx/generic/app/i18n_cb.cxx37
-rw-r--r--vcl/unx/generic/app/i18n_ic.cxx37
-rw-r--r--vcl/unx/generic/app/i18n_im.cxx37
-rw-r--r--vcl/unx/generic/app/i18n_status.cxx37
-rw-r--r--vcl/unx/generic/app/i18n_xkb.cxx37
-rw-r--r--vcl/unx/generic/app/keysymnames.cxx37
-rw-r--r--vcl/unx/generic/app/randrwrapper.cxx37
-rw-r--r--vcl/unx/generic/app/saldata.cxx8
-rw-r--r--vcl/unx/generic/app/saldisp.cxx37
-rw-r--r--vcl/unx/generic/app/salinst.cxx37
-rw-r--r--vcl/unx/generic/app/saltimer.cxx37
-rw-r--r--vcl/unx/generic/app/sm.cxx37
-rw-r--r--vcl/unx/generic/app/soicon.cxx37
-rw-r--r--vcl/unx/generic/desktopdetect/desktopdetector.cxx37
-rw-r--r--vcl/unx/generic/dtrans/X11_clipboard.cxx37
-rw-r--r--vcl/unx/generic/dtrans/X11_droptarget.cxx37
-rw-r--r--vcl/unx/generic/dtrans/X11_selection.cxx37
-rw-r--r--vcl/unx/generic/dtrans/X11_selection.hxx37
-rw-r--r--vcl/unx/generic/dtrans/X11_service.cxx37
-rw-r--r--vcl/unx/generic/dtrans/X11_transferable.cxx37
-rw-r--r--vcl/unx/generic/dtrans/X11_transferable.hxx43
-rw-r--r--vcl/unx/generic/dtrans/bmp.cxx37
-rw-r--r--vcl/unx/generic/dtrans/config.cxx37
-rw-r--r--vcl/unx/generic/dtrans/copydata_curs.h43
-rw-r--r--vcl/unx/generic/dtrans/copydata_mask.h43
-rw-r--r--vcl/unx/generic/dtrans/linkdata_curs.h43
-rw-r--r--vcl/unx/generic/dtrans/linkdata_mask.h43
-rw-r--r--vcl/unx/generic/dtrans/movedata_curs.h43
-rw-r--r--vcl/unx/generic/dtrans/movedata_mask.h43
-rw-r--r--vcl/unx/generic/dtrans/nodrop_curs.h43
-rw-r--r--vcl/unx/generic/dtrans/nodrop_mask.h43
-rw-r--r--vcl/unx/generic/gdi/gcach_xpeer.cxx37
-rw-r--r--vcl/unx/generic/gdi/gcach_xpeer.hxx43
-rw-r--r--vcl/unx/generic/gdi/salbmp.cxx37
-rw-r--r--vcl/unx/generic/gdi/salgdi.cxx51
-rw-r--r--vcl/unx/generic/gdi/salgdi2.cxx37
-rw-r--r--vcl/unx/generic/gdi/salvd.cxx37
-rw-r--r--vcl/unx/generic/gdi/xrender_peer.cxx37
-rw-r--r--vcl/unx/generic/gdi/xrender_peer.hxx37
-rw-r--r--vcl/unx/generic/printer/cupsmgr.cxx37
-rw-r--r--vcl/unx/generic/printer/jobdata.cxx37
-rw-r--r--vcl/unx/generic/printer/ppdparser.cxx37
-rw-r--r--vcl/unx/generic/printer/printerinfomanager.cxx37
-rw-r--r--vcl/unx/generic/window/salobj.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atkaction.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atkimage.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atktable.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atktext.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atktextattributes.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atkutil.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atkwindow.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atkwrapper.cxx37
-rw-r--r--vcl/unx/gtk/a11y/atkwrapper.hxx37
-rw-r--r--vcl/unx/gtk/app/gtkinst.cxx39
-rw-r--r--vcl/unx/gtk/app/gtksys.cxx39
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkFilePicker.cxx40
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkFilePicker.hxx37
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkFolderPicker.cxx40
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkFolderPicker.hxx37
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkPicker.cxx37
-rw-r--r--vcl/unx/gtk/fpicker/SalGtkPicker.hxx37
-rw-r--r--vcl/unx/gtk/fpicker/eventnotification.hxx43
-rw-r--r--vcl/unx/gtk/fpicker/resourceprovider.cxx37
-rw-r--r--vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx63
-rw-r--r--vcl/unx/gtk/window/gtkframe.cxx6
-rw-r--r--vcl/unx/gtk/window/gtkobject.cxx37
-rw-r--r--vcl/unx/gtk3/gdi/gtk3salnativewidgets-gtk.cxx10
-rw-r--r--vcl/unx/kde/kdedata.cxx45
-rw-r--r--vcl/unx/kde/salnativewidgets-kde.cxx37
-rw-r--r--vcl/unx/kde4/FPServiceInfo.hxx43
-rw-r--r--vcl/unx/kde4/KDE4FilePicker.cxx37
-rw-r--r--vcl/unx/kde4/KDE4FilePicker.hxx37
-rw-r--r--vcl/unx/kde4/KDEData.hxx43
-rw-r--r--vcl/unx/kde4/KDESalDisplay.cxx37
-rw-r--r--vcl/unx/kde4/KDESalDisplay.hxx43
-rw-r--r--vcl/unx/kde4/KDESalFrame.cxx37
-rw-r--r--vcl/unx/kde4/KDESalGraphics.cxx39
-rw-r--r--vcl/unx/kde4/KDESalGraphics.hxx37
-rw-r--r--vcl/unx/kde4/KDESalInstance.cxx43
-rw-r--r--vcl/unx/kde4/KDESalInstance.hxx43
-rw-r--r--vcl/unx/kde4/KDEXLib.cxx49
-rw-r--r--vcl/unx/kde4/KDEXLib.hxx37
-rw-r--r--vcl/unx/kde4/VCLKDEApplication.cxx43
-rw-r--r--vcl/unx/kde4/VCLKDEApplication.hxx43
-rw-r--r--vcl/unx/kde4/main.cxx37
-rw-r--r--vcl/vcl.android.component46
-rw-r--r--vcl/vcl.headless.component43
-rw-r--r--vcl/vcl.ios.component46
-rw-r--r--vcl/vcl.macosx.component46
-rw-r--r--vcl/vcl.unx.component46
-rw-r--r--vcl/vcl.windows.component46
-rw-r--r--vcl/win/source/app/saldata.cxx37
-rw-r--r--vcl/win/source/app/salinst.cxx37
-rw-r--r--vcl/win/source/app/salshl.cxx37
-rw-r--r--vcl/win/source/gdi/salbmp.cxx37
-rw-r--r--vcl/win/source/gdi/salgdi.cxx37
-rw-r--r--vcl/win/source/gdi/salgdi2.cxx37
-rw-r--r--vcl/win/source/gdi/salgdi3.cxx2
-rw-r--r--vcl/win/source/gdi/salgdi_gdiplus.cxx66
-rw-r--r--vcl/win/source/gdi/salnativewidgets-luna.cxx44
-rw-r--r--vcl/win/source/gdi/salprn.cxx37
-rw-r--r--vcl/win/source/src/salsrc.rc37
-rw-r--r--vcl/win/source/window/salframe.cxx41
-rw-r--r--vcl/win/source/window/salmenu.cxx37
-rw-r--r--vcl/win/source/window/salobj.cxx37
-rw-r--r--vcl/workben/makefile.mk36
-rw-r--r--vcl/workben/outdevgrind.cxx37
-rw-r--r--vcl/workben/svdem.cxx6
-rw-r--r--vcl/workben/svpclient.cxx39
-rw-r--r--vcl/workben/svptest.cxx41
-rw-r--r--vcl/workben/vcldemo.cxx41
-rw-r--r--vigra/prj/build.lst3
-rw-r--r--wizards/Jar_fax.mk57
-rw-r--r--wizards/Jar_letter.mk60
-rw-r--r--wizards/Module_wizards.mk3
-rw-r--r--wizards/Pyuno_fax.mk6
-rw-r--r--wizards/Pyuno_letter.mk (renamed from rdbmaker/Module_rdbmaker.mk)23
-rw-r--r--wizards/com/sun/star/wizards/README19
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaTemplate.py388
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialog.py191
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialogConst.py104
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialogImpl.py95
-rw-r--r--wizards/com/sun/star/wizards/agenda/AgendaWizardDialogResources.py10
-rw-r--r--wizards/com/sun/star/wizards/agenda/CallWizard.py50
-rw-r--r--wizards/com/sun/star/wizards/agenda/TemplateConsts.py144
-rw-r--r--wizards/com/sun/star/wizards/agenda/TopicsControl.py13
-rw-r--r--wizards/com/sun/star/wizards/common/Configuration.py186
-rw-r--r--wizards/com/sun/star/wizards/common/Desktop.py37
-rw-r--r--wizards/com/sun/star/wizards/common/FileAccess.py13
-rw-r--r--wizards/com/sun/star/wizards/common/NumberFormatter.py2
-rw-r--r--wizards/com/sun/star/wizards/common/Resource.py17
-rw-r--r--wizards/com/sun/star/wizards/common/SystemDialog.py26
-rw-r--r--wizards/com/sun/star/wizards/fax/CGFax.java50
-rw-r--r--wizards/com/sun/star/wizards/fax/CallWizard.java228
-rw-r--r--wizards/com/sun/star/wizards/fax/CallWizard.py30
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxDocument.java201
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxDocument.py5
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialog.java618
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialog.py74
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogConst.java106
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogConst.py146
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.java1073
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py61
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogResources.java216
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogResources.py27
-rw-r--r--wizards/com/sun/star/wizards/fax/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/fax/fax.component10
-rw-r--r--wizards/com/sun/star/wizards/letter/CGLetter.java55
-rw-r--r--wizards/com/sun/star/wizards/letter/CGLetter.py6
-rw-r--r--wizards/com/sun/star/wizards/letter/CGLetterWizard.py5
-rw-r--r--wizards/com/sun/star/wizards/letter/CGPaperElementLocation.py3
-rw-r--r--wizards/com/sun/star/wizards/letter/CallWizard.java228
-rw-r--r--wizards/com/sun/star/wizards/letter/CallWizard.py50
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterDocument.java319
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterDocument.py8
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialog.java883
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialog.py167
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogConst.java82
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogConst.py116
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogEvents.java79
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.java1484
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.py271
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogResources.java224
-rw-r--r--wizards/com/sun/star/wizards/letter/LetterWizardDialogResources.py68
-rw-r--r--wizards/com/sun/star/wizards/letter/LocaleCodes.java192
-rw-r--r--wizards/com/sun/star/wizards/letter/LocaleCodes.py171
-rw-r--r--wizards/com/sun/star/wizards/letter/MANIFEST.MF2
-rw-r--r--wizards/com/sun/star/wizards/letter/letter.component8
-rw-r--r--wizards/com/sun/star/wizards/text/TextDocument.py98
-rw-r--r--wizards/com/sun/star/wizards/text/TextElement.py (renamed from wizards/com/sun/star/wizards/common/TextElement.py)19
-rw-r--r--wizards/com/sun/star/wizards/ui/UnoDialog2.py3
-rw-r--r--wizards/com/sun/star/wizards/ui/WizardDialog.py2
-rw-r--r--wizards/com/sun/star/wizards/ui/event/CommonListener.py1
-rw-r--r--wizards/com/sun/star/wizards/ui/event/DataAware.py3
-rw-r--r--wizards/com/sun/star/wizards/ui/event/RadioDataAware.py5
-rw-r--r--wizards/com/sun/star/wizards/ui/event/UnoDataAware.py7
-rw-r--r--writerfilter/Library_writerfilter_uno.mk64
-rw-r--r--writerfilter/Module_writerfilter.mk1
-rw-r--r--writerfilter/inc/dmapper/DomainMapper.hxx3
-rw-r--r--writerfilter/inc/resourcemodel/TableData.hxx4
-rw-r--r--writerfilter/inc/resourcemodel/TableManager.hxx6
-rw-r--r--writerfilter/qa/cppunittests/rtftok/testrtftok.cxx25
-rw-r--r--writerfilter/source/dmapper/DomainMapper.cxx27
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableHandler.cxx14
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableManager.cxx22
-rw-r--r--writerfilter/source/dmapper/DomainMapperTableManager.hxx10
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.cxx22
-rw-r--r--writerfilter/source/dmapper/DomainMapper_Impl.hxx9
-rw-r--r--writerfilter/source/dmapper/GraphicImport.cxx1
-rw-r--r--writerfilter/source/dmapper/PropertyMap.cxx14
-rw-r--r--writerfilter/source/dmapper/PropertyMap.hxx4
-rw-r--r--writerfilter/source/dmapper/StyleSheetTable.cxx13
-rw-r--r--writerfilter/source/dmapper/TDefTableHandler.cxx2
-rw-r--r--writerfilter/source/dmapper/TablePropertiesHandler.cxx2
-rw-r--r--writerfilter/source/dmapper/TablePropertiesHandler.hxx8
-rw-r--r--writerfilter/source/filter/ImportFilter.cxx1
-rw-r--r--writerfilter/source/filter/RtfFilter.cxx40
-rw-r--r--writerfilter/source/ooxml/factoryimpl_ns.xsl7
-rw-r--r--writerfilter/source/ooxml/model.xml2
-rw-r--r--writerfilter/source/resourcemodel/resourcemodel.cxx2
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.cxx170
-rw-r--r--writerfilter/source/rtftok/rtfdocumentimpl.hxx19
-rw-r--r--writerfilter/source/rtftok/rtfsdrimport.cxx39
-rw-r--r--writerfilter/source/rtftok/rtfsdrimport.hxx2
-rw-r--r--writerfilter/source/rtftok/rtftokenizer.cxx22
-rw-r--r--writerfilter/source/rtftok/rtftokenizer.hxx3
-rw-r--r--writerfilter/unocomponent/component.cxx63
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokAnalyzeService.cxx253
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokAnalyzeService.hxx64
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokTestService.cxx107
-rw-r--r--writerfilter/unocomponent/debugservices/doctok/DocTokTestService.hxx63
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLAnalyzeService.cxx247
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLAnalyzeService.hxx64
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLTestService.cxx126
-rw-r--r--writerfilter/unocomponent/debugservices/ooxml/OOXMLTestService.hxx63
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/ScannerTestService.cxx416
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/ScannerTestService.hxx64
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/XMLScanner.cxx306
-rw-r--r--writerfilter/unocomponent/debugservices/rtftok/XMLScanner.hxx64
-rw-r--r--writerperfect/Library_wpftdraw.mk1
-rw-r--r--x11_extensions/prj/build.lst2
-rw-r--r--xmlhelp/source/cxxhelp/provider/content.cxx21
-rw-r--r--xmlhelp/source/cxxhelp/provider/databases.cxx56
-rw-r--r--xmlhelp/source/cxxhelp/provider/provider.cxx40
-rw-r--r--xmlhelp/source/cxxhelp/provider/provider.hxx2
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetbase.cxx10
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetbase.hxx6
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforquery.cxx24
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforquery.hxx4
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforroot.cxx4
-rw-r--r--xmlhelp/source/cxxhelp/provider/resultsetforroot.hxx4
-rw-r--r--xmlhelp/source/treeview/tvread.cxx38
-rw-r--r--xmlhelp/source/treeview/tvread.hxx4
-rw-r--r--xmloff/Library_xo.mk34
-rw-r--r--xmloff/Package_inc.mk34
-rw-r--r--xmloff/inc/xmloff/txtparae.hxx41
-rw-r--r--xmloff/inc/xmloff/xmlmultiimagehelper.hxx59
-rw-r--r--xmloff/inc/xmloff/xmltoken.hxx42
-rw-r--r--xmloff/source/chart/SchXMLAutoStylePoolP.cxx1
-rw-r--r--xmloff/source/chart/SchXMLExport.cxx13
-rw-r--r--xmloff/source/chart/SchXMLPlotAreaContext.cxx2
-rw-r--r--xmloff/source/chart/SchXMLSeriesHelper.cxx4
-rw-r--r--xmloff/source/chart/SchXMLSeriesHelper.hxx1
-rw-r--r--xmloff/source/core/RDFaExportHelper.cxx10
-rw-r--r--xmloff/source/core/unointerfacetouniqueidentifiermapper.cxx27
-rw-r--r--xmloff/source/core/xmlexp.cxx1
-rw-r--r--xmloff/source/core/xmlmultiimagehelper.cxx140
-rw-r--r--xmloff/source/core/xmltoken.cxx42
-rw-r--r--xmloff/source/core/xmluconv.cxx20
-rw-r--r--xmloff/source/draw/sdpropls.cxx53
-rw-r--r--xmloff/source/draw/sdpropls.hxx38
-rw-r--r--xmloff/source/draw/shapeexport2.cxx68
-rw-r--r--xmloff/source/draw/ximpshap.cxx160
-rw-r--r--xmloff/source/draw/ximpshap.hxx45
-rw-r--r--xmloff/source/meta/MetaExportComponent.cxx4
-rw-r--r--xmloff/source/meta/xmlversion.cxx7
-rw-r--r--xmloff/source/style/MarkerStyle.cxx3
-rw-r--r--xmloff/source/style/XMLBackgroundImageContext.cxx1
-rw-r--r--xmloff/source/style/backhdl.cxx1
-rw-r--r--xmloff/source/style/xmlaustp.cxx2
-rw-r--r--xmloff/source/style/xmlexppr.cxx3
-rw-r--r--xmloff/source/style/xmlnumfe.cxx18
-rw-r--r--xmloff/source/style/xmlnumfi.cxx6
-rw-r--r--xmloff/source/style/xmlnumi.cxx1
-rw-r--r--xmloff/source/text/XMLRedlineExport.cxx2
-rw-r--r--xmloff/source/text/XMLTextFrameContext.cxx104
-rw-r--r--xmloff/source/text/XMLTextFrameContext.hxx45
-rw-r--r--xmloff/source/text/txtparae.cxx75
-rw-r--r--xmloff/source/transform/EventOASISTContext.cxx63
-rw-r--r--xmloff/source/transform/StyleOASISTContext.cxx3
-rw-r--r--xmloff/source/transform/TransformerBase.cxx64
-rw-r--r--xmlscript/inc/xmlscript/xmllib_imexp.hxx6
-rw-r--r--xmlscript/inc/xmlscript/xmlmod_imexp.hxx4
-rw-r--r--xmlscript/source/xmldlg_imexp/xmldlg_addfunc.cxx28
-rw-r--r--xmlscript/source/xmllib_imexp/xmllib_export.cxx4
-rw-r--r--xmlscript/source/xmlmod_imexp/xmlmod_export.cxx2
-rw-r--r--xmlsecurity/inc/xmlsecurity/certificateviewer.hxx2
-rw-r--r--xmlsecurity/inc/xmlsecurity/xmlsignaturehelper.hxx5
-rw-r--r--xmlsecurity/qa/certext/SanCertExt.cxx6
-rw-r--r--xmlsecurity/source/dialogs/certificatechooser.cxx4
-rw-r--r--xmlsecurity/source/dialogs/certificateviewer.cxx20
-rw-r--r--xmlsecurity/source/dialogs/digitalsignaturesdialog.cxx18
-rw-r--r--xmlsecurity/source/dialogs/macrosecurity.cxx9
-rw-r--r--xmlsecurity/source/helper/xmlsignaturehelper.cxx35
-rw-r--r--xmlsecurity/source/xmlsec/nss/nssinitializer.cxx58
-rw-r--r--xmlsecurity/source/xmlsec/nss/nssinitializer.hxx16
-rw-r--r--xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx8
-rw-r--r--xmlsecurity/source/xmlsec/nss/seinitializer_nssimpl.cxx50
-rw-r--r--xmlsecurity/source/xmlsec/nss/seinitializer_nssimpl.hxx4
-rw-r--r--xmlsecurity/source/xmlsec/saxhelper.cxx1
-rw-r--r--xmlsecurity/workben/signaturetest.cxx2
-rw-r--r--xpdf/makefile.mk8
-rw-r--r--xsltml/prj/build.lst3
-rw-r--r--zlib/ExternalPackage_zlib.mk17
-rw-r--r--zlib/Makefile14
-rw-r--r--zlib/Module_zlib.mk28
-rw-r--r--zlib/StaticLibrary_zlib.mk28
-rw-r--r--zlib/StaticLibrary_zlib_x64.mk35
-rw-r--r--zlib/UnpackedTarball_zlib.mk19
-rwxr-xr-xzlib/make_patched_header.pl66
-rw-r--r--zlib/makefile.mk73
-rw-r--r--zlib/prj/d.lst11
-rw-r--r--zlib/prj/dmake0
-rw-r--r--zlib/zlib-dmakebuild.patch67
5521 files changed, 525406 insertions, 186489 deletions
diff --git a/git-hooks/README b/.git-hooks/README
index 3ddd71a663ef..3ddd71a663ef 100644
--- a/git-hooks/README
+++ b/.git-hooks/README
diff --git a/git-hooks/commit-msg b/.git-hooks/commit-msg
index fa0b2e20aea8..fa0b2e20aea8 100755
--- a/git-hooks/commit-msg
+++ b/.git-hooks/commit-msg
diff --git a/git-hooks/post-merge b/.git-hooks/post-merge
index 25e62ed8a97f..25e62ed8a97f 100755
--- a/git-hooks/post-merge
+++ b/.git-hooks/post-merge
diff --git a/git-hooks/pre-commit b/.git-hooks/pre-commit
index 5b752a307a11..fdd07ad94603 100755
--- a/git-hooks/pre-commit
+++ b/.git-hooks/pre-commit
@@ -14,8 +14,8 @@ $ENV{LC_ALL} = "C";
sub check_whitespaces($)
{
my ($h) = @_;
- my $src_limited = "c|cpp|cxx|h|hrc|hxx|idl|inl|java|map|MK|pmk|pl|pm|sdi|sh|src|tab|xcu|xml";
- my $src_full = "c|cpp|cxx|h|hrc|hxx|idl|inl|java|map|mk|MK|pmk|pl|pm|sdi|sh|src|tab|xcu|xml";
+ my $src_limited = "c|cpp|cxx|h|hrc|hxx|idl|inl|java|map|MK|pmk|pl|pm|sdi|sh|src|tab|ui|xcu|xml";
+ my $src_full = "c|cpp|cxx|h|hrc|hxx|idl|inl|java|map|mk|MK|pmk|pl|pm|sdi|sh|src|tab|ui|xcu|xml";
my $found_bad = 0;
my $filename;
@@ -80,6 +80,10 @@ sub check_whitespaces($)
{
bad_line("temporary debug in commit", $_, $src_limited);
}
+ if (/<property name="use_markup">True<\/property>/)
+ {
+ bad_line("use font attributes instead of use-markup", $_, $src_limited);
+ }
}
}
if ( $found_bad)
diff --git a/.gitignore b/.gitignore
index eab21d94ac9e..e1799e23ebb1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,8 +10,7 @@
# python generated file
*.pyc
-# where the 'subrepos' and downloads are located
-/clone
+# where the downloads are located
/src
# the build directories
@@ -41,7 +40,6 @@
/*/wnt*.obsolete
/*/callcatcher
/workdir
-/solver
/instsetoo_native/util/LibreOffice
/instsetoo_native/util/LibreOffice_SDK
@@ -58,11 +56,11 @@
/config.parms
/config_host.mk
/config_host.mk.last
+/config_host.mk.stamp
/config_build.mk
/configure
/desktop/scripts/soffice.sh
/makefile.mk
-/post_download
/bin/repo-list
/src.downloaded
/ooo.lst
@@ -78,11 +76,9 @@
# misc
/file-lists
/cross-build-toolset.built
-/set_soenv.stamp
/warn
/build.log
/build_error.log
-/post_download.log
/install
/downloaded
/ID
@@ -101,20 +97,10 @@ TAGS
/external/*/*.msm
/moz/zipped/*.zip
-# links to the other repositories
-/binfilter
-/dictionaries
-/helpcontent2
-/translations
-
# compiled python objects for gdb pretty printers
/solenv/gdb/libreoffice/*.py[co]
/solenv/gdb/libreoffice/util/*.py[co]
-# botstrap generated tool
-/solenv/bin/concat-deps
-/solenv/bin/concat-deps.exe
-
# test output files
test/user-template/user/psprint/pspfontcache
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 000000000000..f432476e24cc
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,12 @@
+[submodule "dictionaries"]
+ path = dictionaries
+ url = git://gerrit.libreoffice.org/dictionaries
+ branch = .
+[submodule "helpcontent2"]
+ path = helpcontent2
+ url = git://gerrit.libreoffice.org/help
+ branch = .
+[submodule "translations"]
+ path = translations
+ url = git://gerrit.libreoffice.org/translations
+ branch = .
diff --git a/Library_merged.mk b/Library_merged.mk
index 51b919415bea..b943f388921b 100644
--- a/Library_merged.mk
+++ b/Library_merged.mk
@@ -201,7 +201,6 @@ endif
ifeq ($(ENABLE_LIBLANGTAG),YES)
$(eval $(call gb_Library_use_externals,merged,\
- glib \
liblangtag \
))
endif
diff --git a/Makefile b/Makefile
index 4d97e71920a8..65be21f95cca 100644
--- a/Makefile
+++ b/Makefile
@@ -24,9 +24,8 @@ $(filter-out help,$(firstword $(MAKECMDGOALS))) : $(SRCDIR)/config_host.mk
# run configure in an environment not polluted by config_host.mk
$(SRCDIR)/config_host.mk : \
$(SRCDIR)/config_host.mk.in \
- $(SRCDIR)/bin/repo-list.in \
$(SRCDIR)/ooo.lst.in \
- $(SRCDIR)/configure.in \
+ $(SRCDIR)/configure.ac \
$(SRCDIR)/autogen.lastrun
./autogen.sh
diff --git a/Makefile.top b/Makefile.top
index 2b0cac09df04..1842c55a4bba 100644
--- a/Makefile.top
+++ b/Makefile.top
@@ -62,7 +62,9 @@ cppcanvas\
cppu\
cppuhelper\
cpputools\
+ct2n\
cui\
+curl\
dbaccess\
desktop\
dictionaries \
@@ -71,18 +73,25 @@ dtrans\
editeng\
embeddedobj\
embedserv\
+epm\
eventattacher\
+expat\
extensions\
extras\
fileaccess\
filter\
+fontconfig\
forms\
formula\
fpicker\
framework\
+freetype\
+graphite\
helpcompiler\
hsqldb\
+hunspell\
hwpfilter\
+hyphen\
i18npool\
i18nutil\
idl\
@@ -96,12 +105,14 @@ jvmaccess\
jvmfwk\
l10ntools\
languagetool\
+lcms2\
libcdr\
libcmis\
+libexttextcat\
libmspub\
liborcus\
libpng\
-librsvg\
+librelogo\
libvisio\
libwpd\
libwpg\
@@ -109,8 +120,10 @@ libwps\
lingucomponent\
linguistic\
lotuswordpro\
+lpsolve\
mdds\
more_fonts\
+mythes\
neon\
nlpsolver\
np_sdk\
@@ -119,13 +132,14 @@ offapi\
officecfg\
oovbaapi\
oox\
+openldap\
package\
packimages\
padmin\
+postgresql\
psprint_config\
pyuno\
qadevOOo\
-rdbmaker\
readlicense_oo\
regexp\
registry\
@@ -139,7 +153,6 @@ sal\
salhelper\
sane\
sax\
-saxon\
sc\
scaddins\
sccomp\
@@ -157,6 +170,7 @@ sot\
starmath\
stoc\
store\
+svgio\
svl\
svtools\
svx\
@@ -199,58 +213,35 @@ xmlreader\
xmlscript\
xmlsecurity\
xsltml\
+zlib\
dmake_modules:=\
berkeleydb\
-binfilter \
cairo\
cppunit\
crashrep\
-ct2n\
-curl\
-epm\
-expat\
external\
-fontconfig\
-freetype\
-gdk-pixbuf\
-gettext\
-glib\
-graphite\
helpcontent2 \
-hunspell\
-hyphen\
icu\
instsetoo_native\
-libcroco\
-libexttextcat\
-libgsf\
liblangtag\
libxml2\
libxmlsec\
libxslt\
-lcms2\
-lpsolve\
migrationanalysis\
moz\
mysqlc\
mysqlcppconn\
-mythes\
nss\
odk\
-openldap\
openssl\
-pango\
-postgresql\
postprocess\
python\
redland\
setup_native\
-stax\
stlport\
sysui\
xpdf\
-zlib\
export gb_TAILBUILDTARGET=all slowcheck
@@ -258,7 +249,7 @@ define gbuild_module_rules
.PHONY: $(1) $(1).all $(1).build $(1).check $(1).clean $(1).subsequentcheck $(1).deliver
$(1): bootstrap fetch
- cd $(1) && $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS) gb_PARTIALBUILD=T
+ cd $(1) && $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) gb_PARTIALBUILD=T
$(1).all: bootstrap fetch
$$(if $$(filter $(1),$$(shell $(GNUMAKE) -r -f $(SRCDIR)/tail_build/Makefile showmodules)), \
@@ -267,16 +258,16 @@ $(1).all: bootstrap fetch
, \
cd $(1) && unset MAKEFLAGS && \
) \
- $(SOLARENV)/bin/build.pl -P$(BUILD_NCPUS) --all -- -P$(GMAKE_PARALLELISM)
+ $(SOLARENV)/bin/build.pl -P$(PARALLELISM) --all -- -P$(PARALLELISM)
$(1).build:
- cd $(1) && $(GNUMAKE) -j $(CHECK_PARALLELISM) $(GMAKE_OPTIONS) build gb_PARTIALBUILD=T
+ cd $(1) && $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) build gb_PARTIALBUILD=T
$(1).check:
- cd $(1) && $(GNUMAKE) -j $(CHECK_PARALLELISM) $(GMAKE_OPTIONS) check gb_PARTIALBUILD=T
+ cd $(1) && $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) check gb_PARTIALBUILD=T
$(1).clean:
- cd $(1) && $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS) clean gb_PARTIALBUILD=T
+ cd $(1) && $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) clean gb_PARTIALBUILD=T
$(1).subsequentcheck:
cd $(1) && $(GNUMAKE) -j $(CHECK_PARALLELISM) $(GMAKE_OPTIONS) subsequentcheck gb_PARTIALBUILD=T
@@ -295,11 +286,11 @@ define dmake_module_rules
$(1): bootstrap fetch
cd $(1) && unset MAKEFLAGS && \
- $(SOLARENV)/bin/build.pl -P$(BUILD_NCPUS) -- -P$(GMAKE_PARALLELISM)
+ $(SOLARENV)/bin/build.pl -P$(PARALLELISM) -- -P$(PARALLELISM)
$(1).all: bootstrap fetch
cd $(1) && unset MAKEFLAGS && \
- $(SOLARENV)/bin/build.pl -P$(BUILD_NCPUS) --all -- -P$(GMAKE_PARALLELISM)
+ $(SOLARENV)/bin/build.pl -P$(PARALLELISM) --all -- -P$(PARALLELISM)
$(1).deliver: $(1)
cd $(1) && $(SOLARENV)/bin/deliver.pl
@@ -336,7 +327,7 @@ clean: clean-host clean-build
clean-host:
ifeq ($(BUILD_DMAKE),YES)
- if [ -f dmake/Makefile ] ; then $(GNUMAKE) -j $(GMAKE_PARALLELISM) -C dmake clean; fi
+ if [ -f dmake/Makefile ] ; then $(GNUMAKE) -j $(PARALLELISM) -C dmake clean; fi
endif
rm -fr $(DEVINSTALLDIR)
rm -fr $(OUTDIR)
@@ -358,14 +349,12 @@ include $(SRCDIR)/compilerplugins/Makefile.mk
#
distclean : clean compilerplugins-clean
ifeq ($(BUILD_DMAKE),YES)
- (if [ -f dmake/Makefile ] ; then $(GNUMAKE) -j $(GMAKE_PARALLELISM) -C dmake distclean; fi) && \
+ (if [ -f dmake/Makefile ] ; then $(GNUMAKE) -j $(PARALLELISM) -C dmake distclean; fi) && \
rm -f solenv/*/bin/dmake*
endif
rm -fr config_host.mk config_build.mk aclocal.m4 autom4te.cache \
- bin/repo-list config.log config.status configure \
- ooo.lst post_download post_download.log \
- config_host.mk.last set_soenv.stamp src.downloaded warn \
- solenv/bin/concat-deps.exe solenv/bin/concat-deps
+ config.log config.status configure ooo.lst \
+ config_host.mk.last config_host.mk.stamp src.downloaded warn
find $(SOLARENV)/gdb -name "*.pyc" -exec rm {} \;
#
@@ -383,7 +372,7 @@ ifneq ($(filter-out clean distclean,$(MAKECMDGOALS)),)
#
fetch: src.downloaded
-src.downloaded : Makefile.top download ooo.lst bin/repo-list
+src.downloaded : Makefile.top download ooo.lst
ifeq ($(DO_FETCH_TARBALLS),YES)
@./download $(SRCDIR)/ooo.lst && touch $@
else
@@ -395,7 +384,7 @@ endif
#
bootstrap: $(WORKDIR)/bootstrap compilerplugins
-$(WORKDIR)/bootstrap: solenv/bin/concat-deps.c
+$(WORKDIR)/bootstrap:
@cd $(SRCDIR) && ./bootstrap
@mkdir -p $(dir $@) && touch $@
@@ -416,26 +405,31 @@ ifeq ($(DISABLE_DBCONNECTIVITY),TRUE)
cd connectivity && sed -e 's/^\(export [A-Z0-9_]*=\)\(.*\)$$/\1"\2"/' <../config_host.mk >conftmp.sh && . conftmp.sh && rm conftmp.sh && $(SOLARENV)/bin/deliver.pl
endif
cd packimages && unset MAKEFLAGS && \
- $(SOLARENV)/bin/build.pl -P$(BUILD_NCPUS) --all -- -P$(GMAKE_PARALLELISM) && \
- $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS)
+ $(SOLARENV)/bin/build.pl -P$(PARALLELISM) --all -- -P$(PARALLELISM) && \
+ $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS)
build: build-packimages
ifeq ($(OS_FOR_BUILD),WNT)
cd instsetoo_native && unset MAKEFLAGS && $(SOLARENV)/bin/build.pl
else
cd instsetoo_native && unset MAKEFLAGS && \
- $(SOLARENV)/bin/build.pl -P$(BUILD_NCPUS) -- -P$(GMAKE_PARALLELISM)
+ $(SOLARENV)/bin/build.pl -P$(PARALLELISM) -- -P$(PARALLELISM)
endif
ifeq ($(OS),ANDROID)
- cd android && $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS)
+ cd android && $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS)
endif
build-nocheck : export SKIP_TESTS := YES
build-nocheck : build
cross-toolset: bootstrap fetch
- cd cross_toolset && $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS)
-
+ cd cross_toolset && $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS)
+ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
+ifneq (WNT,$(OS))
+# We need to build nss for nsinstall... See NSINSTALL=... in nss/makefile.mk
+ $(GNUMAKE) gb_Side=build nss
+endif
+endif
#
# Install
@@ -475,6 +469,13 @@ endif
dev-install-nocheck : export SKIP_TESTS := YES
dev-install-nocheck : dev-install
+dev-update:
+ifeq ($(DISABLE_LINKOO),TRUE)
+ @linkoo --copy $(DEVINSTALLDIR)/opt $(SRCDIR)
+else
+ @linkoo $(DEVINSTALLDIR)/opt $(SRCDIR)
+endif
+
install-tb:
@rm -rf $(DEVINSTALLDIR)
@mkdir $(DEVINSTALLDIR)
@@ -547,16 +548,16 @@ findunusedcode:
check: dev-install subsequentcheck
subsequentcheck :| $(if $(filter-out subsequentcheck,$(MAKECMDGOALS)),dev-install)
- $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
+ $(GNUMAKE) -j $(CHECK_PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
unitcheck:
- $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
+ $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
slowcheck:
- $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
+ $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
debugrun:
- $(GNUMAKE) -j $(GMAKE_PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
+ $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) -f Makefile.post $@
endif # not clean or distclean
diff --git a/Module_cross_tail_build.mk b/Module_cross_tail_build.mk
index 429891b89b46..78b113d274c8 100644
--- a/Module_cross_tail_build.mk
+++ b/Module_cross_tail_build.mk
@@ -65,14 +65,12 @@ $(eval $(call gb_Module_add_moduledirs,cross_tail_build,\
$(if $(filter QADEVOOO,$(BUILD_TYPE)),\
qadevOOo \
) \
- $(if $(filter DESKTOP,$(BUILD_TYPE)),\
- rdbmaker \
- ) \
regexp \
registry \
remotebridges \
ridljar \
rsc \
+ sal \
salhelper \
sax \
shell \
diff --git a/Module_tail_build.mk b/Module_tail_build.mk
index b6c651276916..6fe3b673cd20 100644
--- a/Module_tail_build.mk
+++ b/Module_tail_build.mk
@@ -37,6 +37,7 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
basegfx \
basic \
bean \
+ $(call gb_Helper_optional,BOOST,boost) \
$(call gb_Helper_optional,BSH,beanshell) \
binaryurp \
$(call gb_Helper_optional,BLUEZ,bluez_bluetooth) \
@@ -54,7 +55,9 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
cppu \
cppuhelper \
cpputools \
+ $(call gb_Helper_optional,CT2N,ct2n) \
cui \
+ $(call gb_Helper_optional,CURL,curl) \
dbaccess \
desktop \
$(call gb_Helper_optional,DICTIONARIES,dictionaries) \
@@ -63,6 +66,7 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
editeng \
embeddedobj \
embedserv \
+ $(call gb_Helper_optional,EPM,epm) \
eventattacher \
extensions \
extras \
@@ -72,9 +76,12 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
formula \
fpicker \
framework \
+ $(call gb_Helper_optional,GRAPHITE,graphite) \
$(call gb_Helper_optional,DESKTOP,helpcompiler) \
$(call gb_Helper_optional,HSQLDB,hsqldb) \
+ $(call gb_Helper_optional,HUNSPELL,hunspell) \
hwpfilter \
+ $(call gb_Helper_optional,HYPHEN,hyphen) \
i18npool \
i18nutil \
idl \
@@ -85,11 +92,14 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
jurt \
jvmaccess \
jvmfwk \
+ $(call gb_Helper_optional,LANGUAGETOOL,languagetool) \
+ $(call gb_Helper_optional,LCMS2,lcms2) \
libcdr \
libcmis \
+ $(call gb_Helper_optional,LIBEXTTEXTCAT,libexttextcat) \
libmspub \
liborcus \
- $(call gb_Helper_optional,LIBRSVG,librsvg) \
+ librelogo \
libvisio \
libwpd \
libwpg \
@@ -97,11 +107,13 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
lingucomponent \
linguistic \
lotuswordpro \
+ $(call gb_Helper_optional,LPSOLVE,lpsolve) \
$(call gb_Helper_optional,DESKTOP,l10ntools) \
MathMLDTD \
mdds \
Mesa \
$(call gb_Helper_optional,MORE_FONTS,more_fonts) \
+ $(call gb_Helper_optional,MYTHES,mythes) \
$(call gb_Helper_optional,NEON,neon) \
$(call gb_Helper_optional,NLPSOLVER,nlpsolver) \
np_sdk \
@@ -110,12 +122,13 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
officecfg \
oovbaapi \
oox \
+ $(call gb_Helper_optional,OPENLDAP,openldap) \
package \
padmin \
+ $(call gb_Helper_optional,POSTGRESQL,postgresql) \
psprint_config \
$(call gb_Helper_optional,PYUNO,pyuno) \
$(call gb_Helper_optional,QADEVOOO,qadevOOo) \
- $(call gb_Helper_optional,DESKTOP,rdbmaker) \
readlicense_oo \
regexp \
registry \
@@ -125,10 +138,10 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
$(call gb_Helper_optional,RHINO,rhino) \
ridljar \
rsc \
+ sal \
salhelper \
sane \
sax \
- $(call gb_Helper_optional,SAXON,saxon) \
sc \
scaddins \
sccomp \
@@ -146,6 +159,7 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
store \
svl \
svtools \
+ svgio \
svx \
sw \
swext \
@@ -178,7 +192,7 @@ $(eval $(call gb_Module_add_moduledirs,tail_end,\
wizards \
writerfilter \
writerperfect \
- $(call gb_Helper_optional,EXTENSIONS,x11_extensions) \
+ $(call gb_Helper_optional,X11_EXTENSIONS,x11_extensions) \
xmerge \
$(call gb_Helper_optional,DESKTOP,xmlhelp) \
xmloff \
diff --git a/README.Android b/README.Android
index 04d1684b43bb..f86c87214c38 100644
--- a/README.Android
+++ b/README.Android
@@ -9,7 +9,11 @@ reality...
the data partition size right in the GUI, that is doomed to producing
and AVD that doesn't work. Instead start it from the console:
- emulator-arm -avd <Name> -partition-size 500
+ LD_LIBRARY_PATH=$(pwd)/lib emulator-arm -avd <Name> -partition-size 500
+
+In order to have proper acceleration, you need the 32-bit libGL.so:
+
+ sudo zypper in Mesa-libGL-devel-32bit
Where <Name> is the literal name of the AVD that you entered.
diff --git a/README.cross b/README.cross
index c57b14cd7b3f..06123b642dc7 100644
--- a/README.cross
+++ b/README.cross
@@ -136,7 +136,6 @@ CXX_FOR_BUILD=ccache g++
--host=i686-w64-mingw32
--with-distro=LibreOfficeWin32
--disable-activex
---disable-binfilter
--disable-build-mozilla
--disable-directx
--disable-ext-nlpsolver
@@ -334,8 +333,8 @@ will probably drive you insane.
You will also need the SDK as full "make" also builds a couple of
Android apps (written in Java). Use the "android" tool from the SDK to
-install the SDK Tools, SDK Platform Tools, the API 14 SDK Platform,
-and the Android Support Library. (Hopefully that list is enough.)
+install the SDK Tools, SDK Platform Tools, the API 14 SDK Platform + ARM EABI
+v7a System Image, and the Android Support Library.
Here is an autogen.lastrun for Android, when cross-compiling from Mac
OS X 10.8 with Xcode 4.4.1:
diff --git a/Repository.mk b/Repository.mk
index 5b24259e59c1..cc41b0631363 100644..100755
--- a/Repository.mk
+++ b/Repository.mk
@@ -57,10 +57,9 @@ $(eval $(call gb_Helper_register_executables,NONE, \
pdf2xml \
pdfunzip \
propex \
- rdbmaker \
regsingleton \
regsvrex \
- renewpo \
+ renewpo \
rsc \
rscdep \
saxparser \
@@ -353,6 +352,7 @@ $(eval $(call gb_Helper_register_libraries,OOOLIBS, \
spl \
sts \
svgfilter \
+ svgio \
svl \
svt \
svx \
@@ -412,7 +412,7 @@ endif
$(eval $(call gb_Helper_register_libraries,PLAINLIBS_URE, \
affine_uno \
- cli_cppuhelper_native \
+ cli_cppuhelper \
cli_uno \
gcc3_uno \
java_uno \
@@ -468,7 +468,6 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
pyuno \
pyuno_wrapper \
recentfile \
- librsvg-2-2 \
scriptframe \
sdbc2 \
smoketest \
@@ -562,6 +561,7 @@ $(eval $(call gb_Helper_register_libraries,UNOLIBS_OOO, \
ldapbe2 \
localebe1 \
lomenubar \
+ losessioninstall \
macbe1 \
migrationoo2 \
migrationoo3 \
@@ -589,8 +589,6 @@ $(eval $(call gb_Helper_register_libraries,UNOLIBS_OOO, \
vbaobj \
vbaswobj \
vclcanvas \
- writerfilter_uno \
- writerfilter_debug \
$(if $(filter $(GUIBASE),aqua), \
fps_aqua \
) \
@@ -738,7 +736,6 @@ $(eval $(call gb_Helper_register_jars,OOO, \
fax \
form \
htmlsoff \
- java_accessibility \
java_uno_accessbridge \
letter \
officebean \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 8c8e44935b56..019f0bed5c7c 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -167,23 +167,46 @@ $(call gb_LinkTarget_add_libs,$(1),-lz)
endef
+# nothing on system
+define gb_LinkTarget__use_zlib_x64
+
+endef
+
else # !SYSTEM_ZLIB
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
zlib \
+ zlib_x64 \
))
-define gb_LinkTarget__use_zlib
+define gb_LinkTarget__use_zlib_multiarch
+$(if $(2),,$(call gb_Output_error,gb_LinkTarget__use_zlib_multiarch needs two arguments))
+
+$(call gb_LinkTarget_use_packages,$(1),\
+ zlib_inc \
+)
+
$(call gb_LinkTarget_set_include,$(1),\
-I$(OUTDIR)/inc/external/zlib \
$$(INCLUDE) \
)
+
$(call gb_LinkTarget_use_static_libraries,$(1),\
- zlib \
+ $(2) \
)
endef
+define gb_LinkTarget__use_zlib
+$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib)
+
+endef
+
+define gb_LinkTarget__use_zlib_x64
+$(call gb_LinkTarget__use_zlib_multiarch,$(1),zlib_x64)
+
+endef
+
endif # SYSTEM_ZLIB
@@ -217,6 +240,35 @@ endef
endif # SYSTEM_JPEG
+ifeq ($(SYSTEM_MYTHES),YES)
+
+define gb_LinkTarget__use_mythes
+$(call gb_LinkTarget_set_include,$(1),\
+ $$(INCLUDE) \
+ $(MYTHES_CFLAGS) \
+)
+$(call gb_LinkTarget_add_libs,$(1),$(MYTHES_LIBS))
+
+endef
+
+else # !SYSTEM_MYTHES
+
+$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
+ mythes \
+))
+
+define gb_LinkTarget__use_mythes
+$(call gb_LinkTarget_use_package,$(1),\
+ mythes \
+)
+$(call gb_LinkTarget_use_static_libraries,$(1),\
+ mythes \
+)
+
+endef
+
+endif # SYSTEM_MYTHES
+
ifeq ($(SYSTEM_EXPAT),YES)
@@ -237,19 +289,24 @@ $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
ascii_expat_xmlparse \
expat_xmlparse \
expat_xmltok \
+ expat_x64 \
))
define gb_LinkTarget__use_expat
$(if $(2),,$(error gb_LinkTarget__use_expat needs additional parameter))
-$(if $(filter-out ascii_expat_xmlparse,$(2)),\
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(OUTDIR)/inc/external/expat \
+ $$(INCLUDE) \
+)
+
+$(if $(filter-out ascii_expat_xmlparse expat_xmltok,$(2)),\
$(call gb_LinkTarget_add_defs,$(1),\
-DXML_UNICODE \
))
$(call gb_LinkTarget_use_static_libraries,$(1),\
$(2) \
- expat_xmltok \
)
endef
@@ -258,12 +315,17 @@ endif # SYSTEM_EXPAT
# now define 2 wrappers that select which internal static library to use...
define gb_LinkTarget__use_expat_utf8
-$(call gb_LinkTarget__use_expat,$(1),ascii_expat_xmlparse)
+$(call gb_LinkTarget__use_expat,$(1),ascii_expat_xmlparse expat_xmltok)
endef
define gb_LinkTarget__use_expat_utf16
-$(call gb_LinkTarget__use_expat,$(1),expat_xmlparse)
+$(call gb_LinkTarget__use_expat,$(1),expat_xmlparse expat_xmltok)
+
+endef
+
+define gb_LinkTarget__use_expat_utf16_x64
+$(call gb_LinkTarget__use_expat,$(1),expat_x64)
endef
@@ -274,6 +336,33 @@ $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
))
endif
+ifeq ($(SYSTEM_HYPH),YES)
+
+define gb_LinkTarget__use_hyphen
+$(call gb_LinkTarget_add_libs,$(1),$(HYPHEN_LIB))
+
+endef
+
+else # !SYSTEM_HYPH
+
+$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
+ hyphen \
+))
+
+define gb_LinkTarget__use_hyphen
+$(call gb_LinkTarget_use_unpacked,$(1),hyphen)
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,hyphen)\
+ $$(INCLUDE) \
+)
+$(call gb_LinkTarget_use_static_libraries,$(1),\
+ hyphen \
+)
+
+endef
+
+endif # SYSTEM_HYPH
+
ifeq ($(SYSTEM_HUNSPELL),YES)
define gb_LinkTarget__use_hunspell
@@ -288,19 +377,20 @@ endef
else # !SYSTEM_HUNSPELL
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
- $(if $(filter MSC,$(COM)),libhunspell,hunspell-1.3) \
+ hunspell \
))
define gb_LinkTarget__use_hunspell
$(call gb_LinkTarget_add_defs,$(1),\
-DHUNSPELL_STATIC \
)
+$(call gb_LinkTarget_use_unpacked,$(1),hunspell)
$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,hunspell/src/hunspell)\
$$(INCLUDE) \
- -I$(OUTDIR)/inc/hunspell \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
- $(if $(filter MSC,$(COM)),libhunspell,hunspell-1.3) \
+ hunspell \
)
endef
@@ -326,6 +416,8 @@ $(call gb_LinkTarget_add_libs,$(1),\
endef
+gb_ExternalProject__use_boost_headers:=
+
else # !SYSTEM_BOOST
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
@@ -360,6 +452,10 @@ $(call gb_LinkTarget_use_static_libraries,$(1),\
endef
+define gb_ExternalProject__use_boost_headers
+$(call gb_ExternalProject_get_preparation_target,$(1)) : $(call gb_UnpackedTarball_get_target,boost)
+
+endef
endif # SYSTEM_BOOST
@@ -397,32 +493,28 @@ $(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
$(LIBEXTTEXTCAT_CFLAGS) \
)
+$(call gb_LinkTarget_add_defs,$(1),\
+ -DSYSTEM_LIBEXTTEXTCAT \
+)
$(call gb_LinkTarget_add_libs,$(1),$(LIBEXTTEXTCAT_LIBS))
endef
else # !SYSTEM_LIBEXTTEXTCAT
-ifeq ($(OS),WNT)
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
- libexttextcat \
-))
-else
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
- exttextcat-1.0 \
+ exttextcat \
))
-endif
define gb_LinkTarget__use_libexttextcat
-ifeq ($(OS),WNT)
-$(call gb_LinkTarget_use_libraries,$(1),\
- libexttextcat \
-)
-else
$(call gb_LinkTarget_use_static_libraries,$(1),\
- exttextcat-1.0 \
+ exttextcat \
+)
+
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,exttextcat/src) \
+ $$(INCLUDE) \
)
-endif
endef
@@ -503,42 +595,10 @@ endef
endif # SYSTEM_LIBXSLT
-
-ifeq ($(SYSTEM_GLIB),YES)
-
define gb_LinkTarget__use_glib
-$(call gb_LinkTarget_set_include,$(1),\
- $$(INCLUDE) \
- $(GLIB_CFLAGS) \
-)
-
-$(call gb_LinkTarget_add_libs,$(1),$(GLIB_LIBS))
-
+$(error gb_LinkTarget__use_glib should not be called any more)
endef
-else # !SYSTEM_GLIB
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
- glib-2.0 \
- gmodule-2.0 \
-))
-
-define gb_LinkTarget__use_glib
-$(call gb_LinkTarget_set_include,$(1),\
- $$(INCLUDE) \
- -I$(OUTDIR)/inc/external/glib-2.0 \
-)
-
-$(call gb_LinkTarget_use_libraries,$(1),\
- glib-2.0 \
- gmodule-2.0 \
-)
-
-endef
-
-endif # SYSTEM_GLIB
-
-
ifeq ($(ENABLE_LIBLANGTAG),YES)
ifeq ($(SYSTEM_LIBLANGTAG),YES)
@@ -564,12 +624,6 @@ $(call gb_LinkTarget_use_libraries,$(1),\
langtag \
)
-ifeq ($(OS),MACOSX)
-
-$(call gb_LinkTarget_add_libs,$(1),$(foreach replaceme,libglib-2.0.0 libgmodule-2.0.0,-dylib_file @loader_path/$(replaceme).dylib:$(gb_Library_OUTDIRLOCATION)/$(replaceme).dylib))
-
-endif
-
endef
endif # SYSTEM_LIBLANGTAG
@@ -599,6 +653,7 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
))
define gb_LinkTarget__use_neon
+$(call gb_LinkTarget_use_unpacked,$(1),neon)
$(call gb_LinkTarget_set_include,$(1),\
-I$(call gb_UnpackedTarball_get_dir,neon/src) \
$$(INCLUDE) \
@@ -764,20 +819,28 @@ $(call gb_LinkTarget_add_libs,$(1),$(GRAPHITE_LIBS))
endef
-else # !SYSTEM_GRAPHITE
+else ifeq ($(SYSTEM_GRAPHITE),NO)
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
- graphite2_off \
+ graphite \
))
define gb_LinkTarget__use_graphite
+$(call gb_LinkTarget_use_unpacked,$(1),graphite)
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
+ $$(INCLUDE) \
+)
$(call gb_LinkTarget_use_static_libraries,$(1),\
- graphite2_off \
+ graphite \
)
endef
-endif # SYSTEM_GRAPHITE
+else # DISABLED GRAPHITE
+gb_LinkTarget__use_graphite :=
+
+endif # SYSTEM_GRAPHITE
ifeq ($(SYSTEM_ICU),YES)
@@ -810,7 +873,7 @@ else
gb_ICU_suffix:=
endif
-# icudata and icui18n is called icudt and icuin when built with MSVC :-(
+# icudata and icui18n is called icudt and icuin when built with MSVC :-/
ifeq ($(OS)$(COM),WNTMSC)
$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
icudt \
@@ -997,12 +1060,15 @@ endef
else # !SYSTEM_LIBVISIO
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
- visiolib \
+ visio-0.0 \
))
define gb_LinkTarget__use_visio
+$(call gb_LinkTarget_use_package,$(1),\
+ libvisio \
+)
$(call gb_LinkTarget_use_static_libraries,$(1),\
- visiolib \
+ visio-0.0 \
)
endef
@@ -1119,14 +1185,21 @@ ifeq ($(SYSTEM_LCMS2),YES)
define gb_LinkTarget__use_lcms2
$(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
- $(LCMS2_CFLAGS) \
+ $(LCMS2_CFLAGS) \
)
$(call gb_LinkTarget_add_libs,$(1),$(LCMS2_LIBS))
endef
+gb_ExternalProject__use_lcms2 :=
+
else # !SYSTEM_LCMS2
+define gb_ExternalProject__use_lcms2
+$(call gb_ExternalProject_use_package,$(1),lcms2)
+
+endef
+
ifeq ($(OS),ANDROID)
$(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
@@ -1134,8 +1207,9 @@ $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS, \
))
define gb_LinkTarget__use_lcms2
+$(call gb_LinkTarget_use_external_project,$(1),lcms2)
$(call gb_LinkTarget_set_include,$(1),\
- -I$(OUTDIR)/inc/lcms2 \
+ -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_static_libraries,$(1),\
@@ -1151,8 +1225,9 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
))
define gb_LinkTarget__use_lcms2
+$(call gb_LinkTarget_use_external_project,$(1),lcms2)
$(call gb_LinkTarget_set_include,$(1),\
- -I$(OUTDIR)/inc/lcms2 \
+ -I$(call gb_UnpackedTarball_get_dir,lcms2/include) \
$$(INCLUDE) \
)
$(call gb_LinkTarget_use_libraries,$(1),\
@@ -1167,8 +1242,11 @@ endif # SYSTEM_LCMS2
ifeq ($(SYSTEM_LPSOLVE),YES)
-define gb_LinkTarget__use_lpsolve55
+define gb_LinkTarget__use_lpsolve
$(call gb_LinkTarget_add_libs,$(1),-llpsolve55)
+$(call gb_LinkTarget_add_defs,$(1),\
+ -DSYSTEM_LPSOLVE \
+)
endef
@@ -1178,10 +1256,15 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
lpsolve55 \
))
-define gb_LinkTarget__use_lpsolve55
+define gb_LinkTarget__use_lpsolve
+$(call gb_LinkTarget_use_unpacked,$(1),lpsolve)
$(call gb_LinkTarget_use_libraries,$(1),\
lpsolve55 \
)
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,lpsolve) \
+ $$(INCLUDE) \
+)
endef
@@ -1205,25 +1288,10 @@ endef
else # ENABLE_GIO
-ifeq ($(SYSTEM_GLIB),YES)
-
-gb_LinkTarget__use_gio :=
-
-else # !SYSTEM_GLIB
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
- gio-2.0 \
-))
-
define gb_LinkTarget__use_gio
-$(call gb_LinkTarget_use_libraries,$(1),\
- gio-2.0 \
-)
endef
-endif # SYSTEM_GLIB
-
endif # ENABLE_GIO
define gb_LinkTarget__use_gtk
@@ -1249,27 +1317,10 @@ endif
endef
-ifeq ($(SYSTEM_GLIB),YES)
-
define gb_LinkTarget__use_gthread
$(call gb_LinkTarget_add_libs,$(1),$(GTHREAD_LIBS))
-
endef
-else # !SYSTEM_GLIB
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
- gthread-2.0 \
-))
-
-define gb_LinkTarget__use_gthread
-$(call gb_LinkTarget_use_libraries,$(1),\
- gthread-2.0 \
-)
-endef
-
-endif # SYSTEM_GLIB
-
ifeq ($(ENABLE_CUPS),TRUE)
define gb_LinkTarget__use_cups
@@ -1355,108 +1406,22 @@ gb_LinkTarget__use_telepathy :=
endif # ENABLE_TELEPATHY
-ifeq ($(SYSTEM_LIBCROCO),NO)
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
- croco-0.6-3 \
-))
-
define gb_LinkTarget__use_croco
-
-$(call gb_LinkTarget_set_include,$(1),\
- $$(INCLUDE) \
- -I$(OUTDIR)/inc/external/libcroco-0.6 \
-)
-
-$(call gb_LinkTarget_use_libraries,$(1),\
- croco-0.6-3 \
-)
-
+$(error gb_LinkTarget__use_croco should not be used any more)
endef
-else # !SYSTEM_LIBCROCO
-
-gb_LinkTarget__use_croco :=
-
-endif # SYSTEM_LIBCROCO
-
-ifeq ($(SYSTEM_PANGO),NO)
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
- pango-1.0 \
- pangocairo-1.0 \
-))
-
define gb_LinkTarget__use_pango
-
-$(call gb_LinkTarget_set_include,$(1),\
- $$(INCLUDE) \
- -I$(OUTDIR)/inc/external/pango-1.0 \
-)
-
-$(call gb_LinkTarget_use_libraries,$(1),\
- pango-1.0 \
- pangocairo-1.0 \
-)
-
+$(error gb_LinkTarget__use_pango should not be used any more)
endef
-else # !SYSTEM_PANGO
-
-gb_LinkTarget__use_pango :=
-
-endif # SYSTEM_PANGO
-
-ifeq ($(SYSTEM_LIBGSF),NO)
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
- gsf-1 \
-))
-
define gb_LinkTarget__use_gsf
-
-$(call gb_LinkTarget_set_include,$(1),\
- $$(INCLUDE) \
- -I$(OUTDIR)/inc/external/libgsf-1 \
-)
-
-$(call gb_LinkTarget_use_libraries,$(1),\
- gsf-1 \
-)
-
+$(error gb_LinkTarget__use_gsf should not be used any more)
endef
-else # !SYSTEM_LIBGSF
-
-gb_LinkTarget__use_gsf :=
-
-endif # SYSTEM_LIBGSF
-
-ifeq ($(SYSTEM_GDKPIXBUF),NO)
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
- gdk_pixbuf-2.0 \
-))
-
define gb_LinkTarget__use_pixbuf
-
-$(call gb_LinkTarget_set_include,$(1),\
- $$(INCLUDE) \
- -I$(OUTDIR)/inc/external/gdk-pixbuf-2.0 \
-)
-
-$(call gb_LinkTarget_use_libraries,$(1),\
- gdk_pixbuf-2.0 \
-)
-
+$(error gb_LinkTarget__use_pixbuf should not be used any more)
endef
-else # !SYSTEM_GDKPIXBUF
-
-gb_LinkTarget__use_pixbuf :=
-
-endif # SYSTEM_GDKPIXBUF
-
ifeq ($(SYSTEM_DB),YES)
define gb_LinkTarget__use_berkeleydb
@@ -1551,6 +1516,11 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
))
define gb_LinkTarget__use_curl
+$(call gb_LinkTarget_use_external_project,$(1),curl)
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,curl/include) \
+ $$(INCLUDE) \
+)
$(call gb_LinkTarget_use_libraries,$(1),\
curl \
)
@@ -1559,11 +1529,13 @@ endef
endif # SYSTEM_CURL
-ifneq ($(VALGRIND_CFLAGS),)
+# strip because of gb_SPACE
+ifneq ($(strip $(VALGRIND_CFLAGS)),)
define gb_LinkTarget__use_valgrind
$(call gb_LinkTarget_add_defs,$(1),\
- -DHAVE_VALGRIND_H \
+ -DHAVE_VALGRIND_H \
+ -DHAVE_MEMCHECK_H \
)
$(call gb_LinkTarget_set_include,$(1),\
@@ -1668,32 +1640,17 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO,\
endif # SYSTEM_CLUCENE
-ifeq ($(SYSTEM_GLIB),YES)
define gb_LinkTarget__use_gobject
$(call gb_LinkTarget_add_libs,$(1),\
- $(GOBJECT_LIBS) \
+ $(GOBJECT_LIBS) \
)
$(call gb_LinkTarget_set_include,$(1),\
- $$(INCLUDE) \
- $(GOBJECT_CFLAGS) \
+ $$(INCLUDE) \
+ $(GOBJECT_CFLAGS) \
)
endef
-else # !SYSTEM_GLIB
-
-$(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
- gobject-2.0 \
-))
-
-define gb_LinkTarget__use_gobject
-$(call gb_LinkTarget_use_libraries,$(1),\
- gobject-2.0 \
-)
-endef
-
-endif # !SYSTEM_GLIB
-
ifeq ($(SYSTEM_HSQLDB),YES)
define gb_LinkTarget__use_hsqldb
@@ -1733,12 +1690,12 @@ $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
))
define gb_LinkTarget__use_openldap
-
+$(call gb_LinkTarget_use_unpacked,$(1),openldap)
$(call gb_LinkTarget_set_include,$(1),\
- -I$(OUTDIR)/inc/openldap \
+ -I$(call gb_UnpackedTarball_get_dir,openldap/include) \
$$(INCLUDE) \
)
-
+$(call gb_LinkTarget_use_package,$(1),openldap)
$(call gb_LinkTarget_use_static_libraries,$(1),\
ldap \
lber \
@@ -1772,6 +1729,10 @@ else # !SYSTEM_POSTGRESQL
define gb_LinkTarget__use_postgresql
+$(call gb_LinkTarget_use_packages,$(1),\
+ postgresql \
+)
+
$(call gb_LinkTarget_set_include,$(1),\
-I$(OUTDIR)/inc/postgresql \
$$(INCLUDE) \
@@ -2101,6 +2062,7 @@ $(eval $(call gb_Helper_register_static_libraries,PLAINLIBS,\
))
define gb_LinkTarget__use_orcus
+$(call gb_LinkTarget_use_unpacked,$(1),orcus)
$(call gb_LinkTarget_set_include,$(1),\
-I$(call gb_UnpackedTarball_get_dir,orcus/include) \
$$(INCLUDE) \
@@ -2264,23 +2226,6 @@ endef
endif # SYSTEM_HSQLDB
-ifeq ($(SYSTEM_SAXON),YES)
-
-define gb_Jar__use_saxon
-$(call gb_Jar_use_system_jar,$(1),$(SAXON_JAR))
-endef
-
-else # !SYSTEM_SAXON
-
-$(eval $(call gb_Helper_register_jars,OOO,\
- saxon9 \
-))
-
-define gb_Jar__use_saxon
-$(call gb_Jar_use_jar,$(1),saxon9)
-endef
-
-endif # SYSTEM_SAXON
ifeq ($(SYSTEM_BSH),YES)
diff --git a/RepositoryFixes.mk b/RepositoryFixes.mk
index 5bc1fd18f087..6f8686080139 100644
--- a/RepositoryFixes.mk
+++ b/RepositoryFixes.mk
@@ -78,14 +78,12 @@ gb_Library_FILENAMES := $(patsubst vbahelper:ivbahelper%,vbahelper:vbahelper%,$(
gb_Library_FILENAMES := $(patsubst curl:icurl%,curl:libcurl%,$(gb_Library_FILENAMES))
gb_Library_FILENAMES := $(patsubst npsoplugin:inpsoplugin%,npsoplugin:npsoplugin%,$(gb_Library_FILENAMES))
-gb_StaticLibrary_FILENAMES := $(patsubst graphite:graphite%,graphite:graphite_dll%,$(gb_StaticLibrary_FILENAMES))
gb_StaticLibrary_FILENAMES := $(patsubst png:png%,png:libpng%,$(gb_StaticLibrary_FILENAMES))
gb_StaticLibrary_FILENAMES := $(patsubst salcpprt:salcpprt%,salcpprt:cpprtl%,$(gb_StaticLibrary_FILENAMES))
ifeq ($(COM),GCC)
gb_Library_FILENAMES := $(patsubst crypto:icrypto%,crypto:crypto%,$(gb_Library_FILENAMES))
gb_Library_FILENAMES := $(patsubst exslt:iexslt%,exslt:libexslt$(gb_Library_IARCEXT),$(gb_Library_FILENAMES))
-gb_Library_FILENAMES := $(patsubst graphite2_off:%.dll.a,graphite2_off:%.a,$(gb_Library_FILENAMES))
gb_Library_FILENAMES := $(patsubst libexttextcat:liblibext%,libexttextcat:libilibext%,$(gb_Library_FILENAMES))
gb_Library_FILENAMES := $(patsubst rdf:irdf%,rdf:librdf.dll$(gb_Library_IARCEXT),$(gb_Library_FILENAMES))
gb_Library_FILENAMES := $(patsubst ssl:issl%,ssl:ssl%,$(gb_Library_FILENAMES))
@@ -140,12 +138,13 @@ gb_Library_NOILIBFILENAMES := \
gmodule-2.0 \
gobject-2.0 \
gthread-2.0 \
- graphite2_off \
icudt icuin icule icuuc \
langtag \
lcms2 \
pango-1.0 \
pangocairo-1.0 \
+ xpcom \
+ xpcom_core \
nspr4 \
nss3 \
smime3 \
diff --git a/RepositoryModule_ooo.mk b/RepositoryModule_ooo.mk
index acdb736e062e..68140781722e 100644
--- a/RepositoryModule_ooo.mk
+++ b/RepositoryModule_ooo.mk
@@ -29,176 +29,189 @@
$(eval $(call gb_Module_Module,ooo))
$(eval $(call gb_Module_add_moduledirs,ooo,\
- accessibility \
+ accessibility \
$(call gb_Helper_optional,AFMS,afms) \
- animations \
+ animations \
$(call gb_Helper_optional,APACHE_COMMONS,apache-commons) \
- apple_remote \
- autodoc \
- avmedia \
- basctl \
- basebmp \
- basegfx \
- basic \
- bean \
+ apple_remote \
+ autodoc \
+ avmedia \
+ basctl \
+ basebmp \
+ basegfx \
+ basic \
+ bean \
$(call gb_Helper_optional,BSH,beanshell) \
- binaryurp \
+ binaryurp \
$(call gb_Helper_optional,BLUEZ,bluez_bluetooth) \
boost \
bridges \
- canvas \
- chart2 \
+ canvas \
+ chart2 \
cli_ure \
$(call gb_Helper_optional,CLUCENE,clucene) \
$(call gb_Helper_optional,DESKTOP,codemaker) \
- comphelper \
- configmgr \
- connectivity \
- cosv \
- cppcanvas \
- cppu \
- cppuhelper \
- cpputools \
- cui \
- dbaccess \
- desktop \
+ comphelper \
+ configmgr \
+ connectivity \
+ cosv \
+ cppcanvas \
+ cppu \
+ cppuhelper \
+ cpputools \
+ $(call gb_Helper_optional,CT2N,ct2n) \
+ cui \
+ $(call gb_Helper_optional,CURL,curl) \
+ dbaccess \
+ desktop \
$(call gb_Helper_optional,DICTIONARIES,dictionaries) \
- drawinglayer \
- dtrans \
- editeng \
- embeddedobj \
- embedserv \
- eventattacher \
- extensions \
+ drawinglayer \
+ dtrans \
+ editeng \
+ embeddedobj \
+ embedserv \
+ $(call gb_Helper_optional,EPM,epm) \
+ eventattacher \
+ $(call gb_Helper_optional,EXPAT,expat) \
+ extensions \
extras \
- fileaccess \
- filter \
- forms \
- formula \
- fpicker \
- framework \
+ fileaccess \
+ filter \
+ $(call gb_Helper_optional,FONTCONFIG,fontconfig) \
+ forms \
+ formula \
+ fpicker \
+ framework \
+ $(call gb_Helper_optional,FREETYPE,freetype) \
+ $(call gb_Helper_optional,GRAPHITE,graphite) \
$(call gb_Helper_optional,DESKTOP,helpcompiler) \
$(call gb_Helper_optional,HSQLDB,hsqldb) \
- hwpfilter \
- i18npool \
- i18nutil \
- idl \
+ $(call gb_Helper_optional,HUNSPELL,hunspell) \
+ hwpfilter \
+ $(call gb_Helper_optional,HYPHEN,hyphen) \
+ i18npool \
+ i18nutil \
+ idl \
$(call gb_Helper_optional,DESKTOP,idlc) \
- io \
- javaunohelper \
+ io \
+ javaunohelper \
$(call gb_Helper_optional,JFREEREPORT,jfreereport) \
- jurt \
- $(call gb_Helper_optional,JPEG,jpeg) \
- jvmaccess \
- jvmfwk \
+ jurt \
+ $(call gb_Helper_optional,JPEG,jpeg) \
+ jvmaccess \
+ jvmfwk \
$(call gb_Helper_optional,DESKTOP,l10ntools) \
$(call gb_Helper_optional,LANGUAGETOOL,languagetool) \
+ $(call gb_Helper_optional,LCMS2,lcms2) \
libcdr \
libcmis \
+ $(call gb_Helper_optional,LIBEXTTEXTCAT,libexttextcat) \
libmspub \
liborcus \
libpng \
- $(call gb_Helper_optional,LIBRSVG,librsvg) \
+ librelogo \
libvisio \
libwpd \
libwpg \
libwps \
- lingucomponent \
- linguistic \
- lotuswordpro \
- MathMLDTD \
+ lingucomponent \
+ linguistic \
+ lotuswordpro \
+ $(call gb_Helper_optional,LPSOLVE,lpsolve) \
+ MathMLDTD \
mdds \
- Mesa \
+ Mesa \
$(call gb_Helper_optional,MORE_FONTS,more_fonts) \
+ $(call gb_Helper_optional,MYTHES,mythes) \
$(call gb_Helper_optional,NEON,neon) \
$(call gb_Helper_optional,NLPSOLVER,nlpsolver) \
- np_sdk \
- o3tl \
- offapi \
- officecfg \
- oovbaapi \
- oox \
- package \
- packimages \
- padmin \
- psprint_config \
+ np_sdk \
+ o3tl \
+ offapi \
+ officecfg \
+ oovbaapi \
+ oox \
+ $(call gb_Helper_optional,OPENLDAP,openldap) \
+ package \
+ packimages \
+ padmin \
+ $(call gb_Helper_optional,POSTGRESQL,postgresql) \
+ psprint_config \
$(call gb_Helper_optional,PYUNO,pyuno) \
- $(if $(strip $(OOO_JUNIT_JAR)),\
- qadevOOo \
- ) \
- $(call gb_Helper_optional,DESKTOP,rdbmaker) \
+ $(call gb_Helper_optional,QADEVOOO,qadevOOo) \
readlicense_oo \
- regexp \
- registry \
- remotebridges \
- reportbuilder \
- reportdesign \
+ regexp \
+ registry \
+ remotebridges \
+ reportbuilder \
+ reportdesign \
$(call gb_Helper_optional,RHINO,rhino) \
- ridljar \
- rsc \
- sal \
- salhelper \
- sane \
- sax \
- $(call gb_Helper_optional,SAXON,saxon) \
- sc \
- scaddins \
- sccomp \
+ ridljar \
+ rsc \
+ sal \
+ salhelper \
+ sane \
+ sax \
+ sc \
+ scaddins \
+ sccomp \
$(call gb_Helper_optional,DESKTOP,scp2) \
- scripting \
- sd \
- sdext \
- sfx2 \
- shell \
- slideshow \
- smoketest \
- solenv \
- sot \
- starmath \
- stoc \
- store \
- svl \
- svtools \
- svx \
- sw \
- swext \
- test \
- testtools \
+ scripting \
+ sd \
+ sdext \
+ sfx2 \
+ shell \
+ slideshow \
+ smoketest \
+ solenv \
+ soltools \
+ sot \
+ starmath \
+ stoc \
+ store \
+ svl \
+ svtools \
+ svx \
+ sw \
+ swext \
+ test \
+ testtools \
$(call gb_Helper_optional,TOMCAT,tomcat) \
- toolkit \
- tools \
+ toolkit \
+ tools \
touch \
$(call gb_Helper_optional,TRANSLATIONS,translations) \
tubes \
- twain \
- ucb \
- ucbhelper \
+ twain \
+ ucb \
+ ucbhelper \
$(call gb_Helper_optional,UCPP,ucpp) \
- udkapi \
+ udkapi \
udm \
- unixODBC \
- UnoControls \
- unodevtools \
- unoil \
- unotest \
- unotools \
- unoxml \
- ure \
- uui \
- vbahelper \
- vcl \
+ unixODBC \
+ UnoControls \
+ unodevtools \
+ unoil \
+ unotest \
+ unotools \
+ unoxml \
+ ure \
+ uui \
+ vbahelper \
+ vcl \
vigra \
- wizards \
- writerfilter \
- writerperfect \
+ wizards \
+ writerfilter \
+ writerperfect \
$(call gb_Helper_optional,X11_EXTENSIONS,x11_extensions) \
- xmerge \
+ xmerge \
$(call gb_Helper_optional,DESKTOP,xmlhelp) \
- xmloff \
- xmlreader \
- xmlscript \
- xmlsecurity \
+ xmloff \
+ xmlreader \
+ xmlscript \
+ xmlsecurity \
xsltml \
+ $(call gb_Helper_optional,ZLIB,zlib) \
))
# vim: set noet ts=4 sw=4:
diff --git a/UnoControls/inc/basecontainercontrol.hxx b/UnoControls/inc/basecontainercontrol.hxx
index 857a8d7c50a2..a6a0906bdb08 100644
--- a/UnoControls/inc/basecontainercontrol.hxx
+++ b/UnoControls/inc/basecontainercontrol.hxx
@@ -78,7 +78,7 @@ public:
@onerror -
*/
- BaseContainerControl( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ BaseContainerControl( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
/**_______________________________________________________________________________________________________
@short -
diff --git a/UnoControls/inc/basecontrol.hxx b/UnoControls/inc/basecontrol.hxx
index f54033ef84d8..0aa633d41f95 100644
--- a/UnoControls/inc/basecontrol.hxx
+++ b/UnoControls/inc/basecontrol.hxx
@@ -144,7 +144,7 @@ public:
@onerror -
*/
- BaseControl( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ BaseControl( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
/**_______________________________________________________________________________________________________
@short -
@@ -1049,7 +1049,7 @@ protected:
@onerror -
*/
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > impl_getMultiServiceFactory();
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > impl_getComponentContext();
/**_______________________________________________________________________________________________________
@short -
@@ -1217,7 +1217,7 @@ private:
private:
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xFactory ;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xComponentContext ;
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > m_xDelegator ;
OMRCListenerMultiplexerHelper* m_pMultiplexer ; // multiplex events
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > m_xMultiplexer ;
diff --git a/UnoControls/source/base/basecontainercontrol.cxx b/UnoControls/source/base/basecontainercontrol.cxx
index 83bedbf3cfc5..2ef9a9e6e1de 100644
--- a/UnoControls/source/base/basecontainercontrol.cxx
+++ b/UnoControls/source/base/basecontainercontrol.cxx
@@ -39,8 +39,8 @@ namespace unocontrols{
// construct/destruct
//____________________________________________________________________________________________________________
-BaseContainerControl::BaseContainerControl( const Reference< XMultiServiceFactory >& xFactory )
- : BaseControl ( xFactory )
+BaseContainerControl::BaseContainerControl( const Reference< XComponentContext >& rxContext )
+ : BaseControl ( rxContext )
, m_aListeners ( m_aMutex )
{
}
diff --git a/UnoControls/source/base/basecontrol.cxx b/UnoControls/source/base/basecontrol.cxx
index 068317b9075b..02e3a04dbe0f 100644
--- a/UnoControls/source/base/basecontrol.cxx
+++ b/UnoControls/source/base/basecontrol.cxx
@@ -24,6 +24,8 @@
#include <com/sun/star/awt/DeviceInfo.hpp>
#include <com/sun/star/awt/WindowAttribute.hpp>
#include <com/sun/star/awt/PosSize.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
+#include <comphelper/processfactory.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <cppuhelper/typeprovider.hxx>
@@ -48,16 +50,15 @@ namespace unocontrols{
#define DEFAULT_VISIBLE sal_False
#define DEFAULT_INDESIGNMODE sal_False
#define DEFAULT_ENABLE sal_True
-#define SERVICE_VCLTOOLKIT "com.sun.star.awt.Toolkit"
//____________________________________________________________________________________________________________
// construct/destruct
//____________________________________________________________________________________________________________
-BaseControl::BaseControl( const Reference< XMultiServiceFactory >& xFactory )
+BaseControl::BaseControl( const Reference< XComponentContext >& rxContext )
: IMPL_MutexContainer ( )
, OComponentHelper ( m_aMutex )
- , m_xFactory ( xFactory )
+ , m_xComponentContext ( rxContext )
, m_pMultiplexer ( DEFAULT_PMULTIPLEXER )
, m_nX ( DEFAULT_X )
, m_nY ( DEFAULT_Y )
@@ -335,8 +336,8 @@ void SAL_CALL BaseControl::createPeer( const Reference< XToolkit >& xToo
Reference< XToolkit > xLocalToolkit = xToolkit ;
if ( xLocalToolkit.is() == sal_False )
{
- // but first create wellknown toolkit, if it not exist
- xLocalToolkit = Reference< XToolkit > ( m_xFactory->createInstance( SERVICE_VCLTOOLKIT ), UNO_QUERY );
+ // but first create well known toolkit, if it not exist
+ xLocalToolkit = Reference< XToolkit > ( Toolkit::create(m_xComponentContext), UNO_QUERY_THROW );
}
m_xPeer = xLocalToolkit->createWindow( *pDescriptor );
m_xPeerWindow = Reference< XWindow >( m_xPeer, UNO_QUERY );
@@ -848,9 +849,9 @@ const OUString BaseControl::impl_getStaticImplementationName()
// protected method
//____________________________________________________________________________________________________________
-const Reference< XMultiServiceFactory > BaseControl::impl_getMultiServiceFactory()
+const Reference< XComponentContext > BaseControl::impl_getComponentContext()
{
- return m_xFactory ;
+ return m_xComponentContext ;
}
//____________________________________________________________________________________________________________
diff --git a/UnoControls/source/base/registercontrols.cxx b/UnoControls/source/base/registercontrols.cxx
index 5738fec896b9..dfcdfb0d8f67 100644
--- a/UnoControls/source/base/registercontrols.cxx
+++ b/UnoControls/source/base/registercontrols.cxx
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <comphelper/processfactory.hxx>
#include <cppuhelper/factory.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
@@ -55,7 +56,7 @@ using namespace ::com::sun::star::registry ;
\
static Reference< XInterface > SAL_CALL CLASS##_createInstance ( const Reference< XMultiServiceFactory >& rServiceManager ) throw ( Exception ) \
{ \
- return Reference< XInterface >( *(OWeakObject*)(new CLASS( rServiceManager )) ); \
+ return Reference< XInterface >( *(OWeakObject*)(new CLASS( comphelper::getComponentContext(rServiceManager) )) ); \
}
//******************************************************************************************************************************
diff --git a/UnoControls/source/controls/framecontrol.cxx b/UnoControls/source/controls/framecontrol.cxx
index 53f2ce080daf..27afd5d4e83b 100644
--- a/UnoControls/source/controls/framecontrol.cxx
+++ b/UnoControls/source/controls/framecontrol.cxx
@@ -49,8 +49,8 @@ namespace unocontrols{
// construct/destruct
//______________________________________________________________________________________________________________
-FrameControl::FrameControl( const Reference< XMultiServiceFactory >& xFactory )
- : BaseControl ( xFactory )
+FrameControl::FrameControl( const Reference< XComponentContext >& rxContext)
+ : BaseControl ( rxContext )
, OBroadcastHelper ( m_aMutex )
, OPropertySetHelper ( *(static_cast< OBroadcastHelper * >(this)) )
, m_aInterfaceContainer ( m_aMutex )
@@ -467,7 +467,9 @@ void FrameControl::impl_createFrame( const Reference< XWindowPeer >& xPee
xOldFrame = m_xFrame ;
}
- xNewFrame = Reference< XFrame > ( impl_getMultiServiceFactory()->createInstance ( "com.sun.star.frame.Frame" ), UNO_QUERY ) ;
+
+
+ xNewFrame = Reference< XFrame > ( impl_getComponentContext()->getServiceManager()->createInstanceWithContext("com.sun.star.frame.Frame", impl_getComponentContext()), UNO_QUERY ) ;
Reference< XDispatchProvider > xDSP ( xNewFrame, UNO_QUERY ) ;
if (xDSP.is())
@@ -478,9 +480,7 @@ void FrameControl::impl_createFrame( const Reference< XWindowPeer >& xPee
// option
//xFrame->setName( "WhatYouWant" );
- Reference< XURLTransformer > xTrans (
- URLTransformer::create(
- ::comphelper::getComponentContext( impl_getMultiServiceFactory() ) ) );
+ Reference< XURLTransformer > xTrans = URLTransformer::create( impl_getComponentContext() );
// load file
URL aURL ;
diff --git a/UnoControls/source/controls/progressbar.cxx b/UnoControls/source/controls/progressbar.cxx
index aff0ff069907..ce7c5eb2c1e8 100644
--- a/UnoControls/source/controls/progressbar.cxx
+++ b/UnoControls/source/controls/progressbar.cxx
@@ -42,8 +42,8 @@ namespace unocontrols{
// construct/destruct
//____________________________________________________________________________________________________________
-ProgressBar::ProgressBar( const Reference< XMultiServiceFactory >& xFactory )
- : BaseControl ( xFactory )
+ProgressBar::ProgressBar( const Reference< XComponentContext >& rxContext )
+ : BaseControl ( rxContext )
, m_bHorizontal ( PROGRESSBAR_DEFAULT_HORIZONTAL )
, m_aBlockSize ( PROGRESSBAR_DEFAULT_BLOCKDIMENSION )
, m_nForegroundColor ( PROGRESSBAR_DEFAULT_FOREGROUNDCOLOR )
diff --git a/UnoControls/source/controls/progressmonitor.cxx b/UnoControls/source/controls/progressmonitor.cxx
index cea1990b81f8..ef4d53f01797 100644
--- a/UnoControls/source/controls/progressmonitor.cxx
+++ b/UnoControls/source/controls/progressmonitor.cxx
@@ -47,20 +47,21 @@ namespace unocontrols{
// construct/destruct
//____________________________________________________________________________________________________________
-ProgressMonitor::ProgressMonitor( const Reference< XMultiServiceFactory >& xFactory )
- : BaseContainerControl ( xFactory )
+ProgressMonitor::ProgressMonitor( const Reference< XComponentContext >& rxContext )
+ : BaseContainerControl ( rxContext )
{
// Its not allowed to work with member in this method (refcounter !!!)
// But with a HACK (++refcount) its "OK" :-(
++m_refCount ;
// Create instances for fixedtext, button and progress ...
- m_xTopic_Top = Reference< XFixedText > ( xFactory->createInstance ( FIXEDTEXT_SERVICENAME ), UNO_QUERY ) ;
- m_xText_Top = Reference< XFixedText > ( xFactory->createInstance ( FIXEDTEXT_SERVICENAME ), UNO_QUERY ) ;
- m_xTopic_Bottom = Reference< XFixedText > ( xFactory->createInstance ( FIXEDTEXT_SERVICENAME ), UNO_QUERY ) ;
- m_xText_Bottom = Reference< XFixedText > ( xFactory->createInstance ( FIXEDTEXT_SERVICENAME ), UNO_QUERY ) ;
- m_xButton = Reference< XButton > ( xFactory->createInstance ( BUTTON_SERVICENAME ), UNO_QUERY ) ;
- m_xProgressBar = Reference< XProgressBar > ( xFactory->createInstance ( SERVICENAME_PROGRESSBAR ), UNO_QUERY ) ;
+
+ m_xTopic_Top = Reference< XFixedText > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_SERVICENAME, rxContext ), UNO_QUERY ) ;
+ m_xText_Top = Reference< XFixedText > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_SERVICENAME, rxContext ), UNO_QUERY ) ;
+ m_xTopic_Bottom = Reference< XFixedText > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_SERVICENAME, rxContext ), UNO_QUERY ) ;
+ m_xText_Bottom = Reference< XFixedText > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_SERVICENAME, rxContext ), UNO_QUERY ) ;
+ m_xButton = Reference< XButton > ( rxContext->getServiceManager()->createInstanceWithContext( BUTTON_SERVICENAME, rxContext ), UNO_QUERY ) ;
+ m_xProgressBar = Reference< XProgressBar > ( rxContext->getServiceManager()->createInstanceWithContext( SERVICENAME_PROGRESSBAR, rxContext ), UNO_QUERY ) ;
// ... cast controls to Reference< XControl > (for "setModel"!) ...
Reference< XControl > xRef_Topic_Top ( m_xTopic_Top , UNO_QUERY ) ;
@@ -70,12 +71,13 @@ ProgressMonitor::ProgressMonitor( const Reference< XMultiServiceFactory >& xFact
Reference< XControl > xRef_Button ( m_xButton , UNO_QUERY ) ;
Reference< XControl > xRef_ProgressBar ( m_xProgressBar , UNO_QUERY ) ;
+
// ... set models ...
- xRef_Topic_Top->setModel ( Reference< XControlModel > ( xFactory->createInstance ( FIXEDTEXT_MODELNAME ), UNO_QUERY ) ) ;
- xRef_Text_Top->setModel ( Reference< XControlModel > ( xFactory->createInstance ( FIXEDTEXT_MODELNAME ), UNO_QUERY ) ) ;
- xRef_Topic_Bottom->setModel ( Reference< XControlModel > ( xFactory->createInstance ( FIXEDTEXT_MODELNAME ), UNO_QUERY ) ) ;
- xRef_Text_Bottom->setModel ( Reference< XControlModel > ( xFactory->createInstance ( FIXEDTEXT_MODELNAME ), UNO_QUERY ) ) ;
- xRef_Button->setModel ( Reference< XControlModel > ( xFactory->createInstance ( BUTTON_MODELNAME ), UNO_QUERY ) ) ;
+ xRef_Topic_Top->setModel ( Reference< XControlModel > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, rxContext ), UNO_QUERY ) ) ;
+ xRef_Text_Top->setModel ( Reference< XControlModel > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, rxContext ), UNO_QUERY ) ) ;
+ xRef_Topic_Bottom->setModel ( Reference< XControlModel > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, rxContext ), UNO_QUERY ) ) ;
+ xRef_Text_Bottom->setModel ( Reference< XControlModel > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, rxContext ), UNO_QUERY ) ) ;
+ xRef_Button->setModel ( Reference< XControlModel > ( rxContext->getServiceManager()->createInstanceWithContext( BUTTON_MODELNAME, rxContext ), UNO_QUERY ) ) ;
// ProgressBar has no model !!!
// ... and add controls to basecontainercontrol!
diff --git a/UnoControls/source/controls/statusindicator.cxx b/UnoControls/source/controls/statusindicator.cxx
index 87d44a2a2395..a3e9515eb551 100644
--- a/UnoControls/source/controls/statusindicator.cxx
+++ b/UnoControls/source/controls/statusindicator.cxx
@@ -39,21 +39,21 @@ namespace unocontrols{
// construct/destruct
//____________________________________________________________________________________________________________
-StatusIndicator::StatusIndicator( const Reference< XMultiServiceFactory >& xFactory )
- : BaseContainerControl ( xFactory )
+StatusIndicator::StatusIndicator( const Reference< XComponentContext >& rxContext )
+ : BaseContainerControl ( rxContext )
{
// Its not allowed to work with member in this method (refcounter !!!)
// But with a HACK (++refcount) its "OK" :-(
++m_refCount ;
// Create instances for fixedtext and progress ...
- m_xText = Reference< XFixedText > ( xFactory->createInstance( FIXEDTEXT_SERVICENAME ), UNO_QUERY );
- m_xProgressBar = Reference< XProgressBar > ( xFactory->createInstance( SERVICENAME_PROGRESSBAR ), UNO_QUERY );
+ m_xText = Reference< XFixedText > ( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_SERVICENAME, rxContext ), UNO_QUERY );
+ m_xProgressBar = Reference< XProgressBar > ( rxContext->getServiceManager()->createInstanceWithContext( SERVICENAME_PROGRESSBAR, rxContext ), UNO_QUERY );
// ... cast controls to Reference< XControl > and set model ...
// ( ProgressBar has no model !!! )
Reference< XControl > xTextControl ( m_xText , UNO_QUERY );
Reference< XControl > xProgressControl ( m_xProgressBar, UNO_QUERY );
- xTextControl->setModel( Reference< XControlModel >( xFactory->createInstance( FIXEDTEXT_MODELNAME ), UNO_QUERY ) );
+ xTextControl->setModel( Reference< XControlModel >( rxContext->getServiceManager()->createInstanceWithContext( FIXEDTEXT_MODELNAME, rxContext ), UNO_QUERY ) );
// ... and add controls to basecontainercontrol!
addControl( CONTROLNAME_TEXT, xTextControl );
addControl( CONTROLNAME_PROGRESSBAR, xProgressControl );
diff --git a/UnoControls/source/inc/framecontrol.hxx b/UnoControls/source/inc/framecontrol.hxx
index 7f4340ccd808..ca913f638a77 100644
--- a/UnoControls/source/inc/framecontrol.hxx
+++ b/UnoControls/source/inc/framecontrol.hxx
@@ -84,7 +84,7 @@ public:
@onerror
*/
- FrameControl( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ FrameControl( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
/**_________________________________________________________________________________________________________
@short
diff --git a/UnoControls/source/inc/progressbar.hxx b/UnoControls/source/inc/progressbar.hxx
index 8fb3d8bcdeab..1c8d89255512 100644
--- a/UnoControls/source/inc/progressbar.hxx
+++ b/UnoControls/source/inc/progressbar.hxx
@@ -73,7 +73,7 @@ public:
@onerror
*/
- ProgressBar( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ ProgressBar( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
/**_________________________________________________________________________________________________________
@short
diff --git a/UnoControls/source/inc/progressmonitor.hxx b/UnoControls/source/inc/progressmonitor.hxx
index 3915b46509fc..163dc0963626 100644
--- a/UnoControls/source/inc/progressmonitor.hxx
+++ b/UnoControls/source/inc/progressmonitor.hxx
@@ -128,7 +128,7 @@ public:
@onerror
*/
- ProgressMonitor( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ ProgressMonitor( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
/**_______________________________________________________________________________________________________
@short
diff --git a/UnoControls/source/inc/statusindicator.hxx b/UnoControls/source/inc/statusindicator.hxx
index 688e18689a82..300cfc6711c3 100644
--- a/UnoControls/source/inc/statusindicator.hxx
+++ b/UnoControls/source/inc/statusindicator.hxx
@@ -84,7 +84,7 @@ class StatusIndicator : public ::com::sun::star::awt::XLayoutConstrains
@onerror
*/
- StatusIndicator( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ StatusIndicator( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
/**_______________________________________________________________________________________________________
@short
diff --git a/accessibility/Jar_accessibility.mk b/accessibility/Jar_accessibility.mk
deleted file mode 100644
index 0f7af1d4b26e..000000000000
--- a/accessibility/Jar_accessibility.mk
+++ /dev/null
@@ -1,90 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2010 Red Hat, Inc., David Tardon <dtardon@redhat.com>
-# (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-$(eval $(call gb_Jar_Jar,java_accessibility))
-
-$(eval $(call gb_Jar_use_jars,java_accessibility,\
- jurt \
- ridl \
- unoil \
-))
-
-$(eval $(call gb_Jar_set_packageroot,java_accessibility,org))
-
-$(eval $(call gb_Jar_add_sourcefiles,java_accessibility,\
- accessibility/bridge/org/openoffice/java/accessibility/AbstractButton \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl \
- accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl \
- accessibility/bridge/org/openoffice/java/accessibility/Alert \
- accessibility/bridge/org/openoffice/java/accessibility/Application \
- accessibility/bridge/org/openoffice/java/accessibility/Button \
- accessibility/bridge/org/openoffice/java/accessibility/CheckBox \
- accessibility/bridge/org/openoffice/java/accessibility/ComboBox \
- accessibility/bridge/org/openoffice/java/accessibility/Component \
- accessibility/bridge/org/openoffice/java/accessibility/Container \
- accessibility/bridge/org/openoffice/java/accessibility/DescendantManager \
- accessibility/bridge/org/openoffice/java/accessibility/Dialog \
- accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy \
- accessibility/bridge/org/openoffice/java/accessibility/Frame \
- accessibility/bridge/org/openoffice/java/accessibility/Icon \
- accessibility/bridge/org/openoffice/java/accessibility/Label \
- accessibility/bridge/org/openoffice/java/accessibility/List \
- accessibility/bridge/org/openoffice/java/accessibility/Menu \
- accessibility/bridge/org/openoffice/java/accessibility/MenuContainer \
- accessibility/bridge/org/openoffice/java/accessibility/MenuItem \
- accessibility/bridge/org/openoffice/java/accessibility/NativeFrame \
- accessibility/bridge/org/openoffice/java/accessibility/Paragraph \
- accessibility/bridge/org/openoffice/java/accessibility/RadioButton \
- accessibility/bridge/org/openoffice/java/accessibility/ScrollBar \
- accessibility/bridge/org/openoffice/java/accessibility/Separator \
- accessibility/bridge/org/openoffice/java/accessibility/Table \
- accessibility/bridge/org/openoffice/java/accessibility/TextComponent \
- accessibility/bridge/org/openoffice/java/accessibility/ToggleButton \
- accessibility/bridge/org/openoffice/java/accessibility/ToolTip \
- accessibility/bridge/org/openoffice/java/accessibility/Tree \
- accessibility/bridge/org/openoffice/java/accessibility/Window \
- accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog \
- accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog \
- accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog \
-))
-
-$(eval $(call gb_Jar_add_generated_sourcefiles,java_accessibility,\
- CustomTarget/accessibility/bridge/org/openoffice/java/accessibility/Build \
-))
-
-# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/accessibility/Jar_uno_accessbridge.mk b/accessibility/Jar_uno_accessbridge.mk
index 20be9f8b68b1..0486750633af 100644
--- a/accessibility/Jar_uno_accessbridge.mk
+++ b/accessibility/Jar_uno_accessbridge.mk
@@ -28,7 +28,6 @@
$(eval $(call gb_Jar_Jar,java_uno_accessbridge))
$(eval $(call gb_Jar_use_jars,java_uno_accessbridge,\
- java_accessibility \
jurt \
ridl \
unoil \
@@ -45,6 +44,55 @@ $(eval $(call gb_Jar_add_sourcefiles,java_uno_accessbridge,\
accessibility/bridge/org/openoffice/accessibility/KeyHandler \
accessibility/bridge/org/openoffice/accessibility/PopupWindow \
accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter \
+ accessibility/bridge/org/openoffice/java/accessibility/AbstractButton \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl \
+ accessibility/bridge/org/openoffice/java/accessibility/Alert \
+ accessibility/bridge/org/openoffice/java/accessibility/Application \
+ accessibility/bridge/org/openoffice/java/accessibility/Button \
+ accessibility/bridge/org/openoffice/java/accessibility/CheckBox \
+ accessibility/bridge/org/openoffice/java/accessibility/ComboBox \
+ accessibility/bridge/org/openoffice/java/accessibility/Component \
+ accessibility/bridge/org/openoffice/java/accessibility/Container \
+ accessibility/bridge/org/openoffice/java/accessibility/DescendantManager \
+ accessibility/bridge/org/openoffice/java/accessibility/Dialog \
+ accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy \
+ accessibility/bridge/org/openoffice/java/accessibility/Frame \
+ accessibility/bridge/org/openoffice/java/accessibility/Icon \
+ accessibility/bridge/org/openoffice/java/accessibility/Label \
+ accessibility/bridge/org/openoffice/java/accessibility/List \
+ accessibility/bridge/org/openoffice/java/accessibility/Menu \
+ accessibility/bridge/org/openoffice/java/accessibility/MenuContainer \
+ accessibility/bridge/org/openoffice/java/accessibility/MenuItem \
+ accessibility/bridge/org/openoffice/java/accessibility/NativeFrame \
+ accessibility/bridge/org/openoffice/java/accessibility/Paragraph \
+ accessibility/bridge/org/openoffice/java/accessibility/RadioButton \
+ accessibility/bridge/org/openoffice/java/accessibility/ScrollBar \
+ accessibility/bridge/org/openoffice/java/accessibility/Separator \
+ accessibility/bridge/org/openoffice/java/accessibility/Table \
+ accessibility/bridge/org/openoffice/java/accessibility/TextComponent \
+ accessibility/bridge/org/openoffice/java/accessibility/ToggleButton \
+ accessibility/bridge/org/openoffice/java/accessibility/ToolTip \
+ accessibility/bridge/org/openoffice/java/accessibility/Tree \
+ accessibility/bridge/org/openoffice/java/accessibility/Window \
+ accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog \
+ accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog \
+ accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog \
+))
+
+$(eval $(call gb_Jar_add_generated_sourcefiles,java_uno_accessbridge,\
+ CustomTarget/accessibility/bridge/org/openoffice/java/accessibility/Build \
))
# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/accessibility/Module_accessibility.mk b/accessibility/Module_accessibility.mk
index 368973e54581..47751e88b396 100644
--- a/accessibility/Module_accessibility.mk
+++ b/accessibility/Module_accessibility.mk
@@ -37,7 +37,6 @@ ifeq ($(OS),WNT)
$(eval $(call gb_Module_add_targets,accessibility,\
CustomTarget_bridge \
CustomTarget_bridge_inc \
- Jar_accessibility \
Jar_uno_accessbridge \
Library_java_uno_accessbridge \
))
diff --git a/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx b/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
index cb0fa441fc49..5b66b22106d3 100644
--- a/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
+++ b/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
@@ -68,12 +68,12 @@ jmethodID g_jmRevokeTopWindow = 0;
// functions
//------------------------------------------------------------------------
-JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *, void *)
+SAL_DLLPUBLIC_EXPORT jint JNICALL JNI_OnLoad(JavaVM *, void *)
{
return JNI_VERSION_1_2;
}
-JNIEXPORT jbyteArray JNICALL
+SAL_DLLPUBLIC_EXPORT jbyteArray JNICALL
Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_getProcessID(JNIEnv *pJNIEnv, jclass clazz)
{
// Initialize global class and method references
@@ -109,7 +109,7 @@ Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_getProcessID(JNIEnv
return jbaProcessID;
}
-JNIEXPORT jboolean JNICALL
+SAL_DLLPUBLIC_EXPORT jboolean JNICALL
Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_createMapping(JNIEnv *, jclass, jlong pointer)
{
uno_Environment * pJava_environment = NULL;
@@ -165,7 +165,7 @@ Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_createMapping(JNIEn
return JNI_TRUE;
}
-JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *jvm, void *)
+SAL_DLLPUBLIC_EXPORT void JNICALL JNI_OnUnload(JavaVM *jvm, void *)
{
::Application::RemoveEventListener(g_aEventListenerLink);
diff --git a/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx b/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx
index 6941c5a1af38..2027208305eb 100644
--- a/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx
+++ b/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx
@@ -47,7 +47,7 @@ namespace com { namespace sun { namespace star { namespace awt {
} } } }
class SvTreeListBox;
-class SvLBoxEntry;
+class SvTreeListEntry;
//........................................................................
namespace accessibility
@@ -119,7 +119,7 @@ namespace accessibility
@param _xParent
is our parent accessible object
*/
- AccessibleListBoxEntry( SvTreeListBox& _rListBox, SvLBoxEntry* _pEntry,
+ AccessibleListBoxEntry( SvTreeListBox& _rListBox, SvTreeListEntry* _pEntry,
const ::com::sun::star::uno::Reference<
::com::sun::star::accessibility::XAccessible >& _xParent );
diff --git a/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx b/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx
index a1dd5ab94835..cd95a11ccd30 100644
--- a/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx
+++ b/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx
@@ -213,7 +213,7 @@ namespace accessibility
{
ENSURE_OR_RETURN_VOID( i_nPosition <= m_aChildren.size(), "AccessibleToolPanelTabBar_Impl::PanelInserted: illegal position (or invalid cache!)" );
(void)i_pPanel;
- m_aChildren.insert( m_aChildren.begin() + i_nPosition, NULL );
+ m_aChildren.insert( m_aChildren.begin() + i_nPosition, (Reference< XAccessible >)NULL );
m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), makeAny( getAccessiblePanelItem( i_nPosition ) ) );
}
diff --git a/accessibility/source/extended/accessiblelistbox.cxx b/accessibility/source/extended/accessiblelistbox.cxx
index 4a43b6c235fd..63dc7add5905 100644
--- a/accessibility/source/extended/accessiblelistbox.cxx
+++ b/accessibility/source/extended/accessiblelistbox.cxx
@@ -81,7 +81,7 @@ namespace accessibility
{
if ( getListBox() && getListBox()->HasFocus() )
{
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ SvTreeListEntry* pEntry = static_cast< SvTreeListEntry* >( rVclWindowEvent.GetData() );
if ( !pEntry )
pEntry = getListBox()->GetCurEntry();
@@ -105,7 +105,7 @@ namespace accessibility
NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
if ( getListBox() && getListBox()->HasFocus() )
{
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ SvTreeListEntry* pEntry = static_cast< SvTreeListEntry* >( rVclWindowEvent.GetData() );
if ( pEntry )
{
Reference< XAccessible > xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
@@ -120,7 +120,7 @@ namespace accessibility
case VCLEVENT_ITEM_EXPANDED :
case VCLEVENT_ITEM_COLLAPSED :
{
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ SvTreeListEntry* pEntry = static_cast< SvTreeListEntry* >( rVclWindowEvent.GetData() );
if ( pEntry )
{
AccessibleListBoxEntry* pAccListBoxEntry =
@@ -237,7 +237,7 @@ namespace accessibility
::comphelper::OExternalLockGuard aGuard( this );
ensureAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntry(i);
+ SvTreeListEntry* pEntry = getListBox()->GetEntry(i);
if ( !pEntry )
throw IndexOutOfBoundsException();
@@ -281,7 +281,7 @@ namespace accessibility
ensureAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntry( nChildIndex );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( nChildIndex );
if ( !pEntry )
throw IndexOutOfBoundsException();
@@ -294,7 +294,7 @@ namespace accessibility
ensureAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntry( nChildIndex );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( nChildIndex );
if ( !pEntry )
throw IndexOutOfBoundsException();
@@ -310,7 +310,7 @@ namespace accessibility
sal_Int32 nCount = getListBox()->GetLevelChildCount( NULL );
for ( sal_Int32 i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( i );
if ( getListBox()->IsSelected( pEntry ) )
getListBox()->Select( pEntry, sal_False );
}
@@ -325,7 +325,7 @@ namespace accessibility
sal_Int32 nCount = getListBox()->GetLevelChildCount( NULL );
for ( sal_Int32 i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( i );
if ( !getListBox()->IsSelected( pEntry ) )
getListBox()->Select( pEntry, sal_True );
}
@@ -341,7 +341,7 @@ namespace accessibility
sal_Int32 nCount = getListBox()->GetLevelChildCount( NULL );
for ( sal_Int32 i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( i );
if ( getListBox()->IsSelected( pEntry ) )
++nSelCount;
}
@@ -363,7 +363,7 @@ namespace accessibility
sal_Int32 nCount = getListBox()->GetLevelChildCount( NULL );
for ( sal_Int32 i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( i );
if ( getListBox()->IsSelected( pEntry ) )
++nSelCount;
@@ -383,7 +383,7 @@ namespace accessibility
ensureAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntry( nSelectedChildIndex );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( nSelectedChildIndex );
if ( !pEntry )
throw IndexOutOfBoundsException();
diff --git a/accessibility/source/extended/accessiblelistboxentry.cxx b/accessibility/source/extended/accessiblelistboxentry.cxx
index 16ef81de82e8..e0b5bbb3cb22 100644
--- a/accessibility/source/extended/accessiblelistboxentry.cxx
+++ b/accessibility/source/extended/accessiblelistboxentry.cxx
@@ -65,7 +65,7 @@ namespace accessibility
// Ctor() and Dtor()
// -----------------------------------------------------------------------------
AccessibleListBoxEntry::AccessibleListBoxEntry( SvTreeListBox& _rListBox,
- SvLBoxEntry* _pEntry,
+ SvTreeListEntry* _pEntry,
const Reference< XAccessible >& _xParent ) :
AccessibleListBoxEntry_BASE ( m_aMutex ),
@@ -92,11 +92,11 @@ namespace accessibility
Rectangle AccessibleListBoxEntry::GetBoundingBox_Impl() const
{
Rectangle aRect;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( pEntry )
{
aRect = getListBox()->GetBoundingRect( pEntry );
- SvLBoxEntry* pParent = getListBox()->GetParent( pEntry );
+ SvTreeListEntry* pParent = getListBox()->GetParent( pEntry );
if ( pParent )
{
// position relative to parent entry
@@ -112,7 +112,7 @@ namespace accessibility
Rectangle AccessibleListBoxEntry::GetBoundingBoxOnScreen_Impl() const
{
Rectangle aRect;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( pEntry )
{
aRect = getListBox()->GetBoundingRect( pEntry );
@@ -173,7 +173,7 @@ namespace accessibility
OUString AccessibleListBoxEntry::implGetText()
{
OUString sRet;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( pEntry )
sRet = getListBox()->SearchEntryText( pEntry );
return sRet;
@@ -295,7 +295,7 @@ namespace accessibility
::osl::MutexGuard aGuard( m_aMutex );
EnsureIsAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
sal_Int32 nCount = 0;
if ( pEntry )
nCount = getListBox()->GetLevelChildCount( pEntry );
@@ -309,8 +309,8 @@ namespace accessibility
::osl::MutexGuard aGuard( m_aMutex );
EnsureIsAlive();
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = pParent ? getListBox()->GetEntry( pParent, i ) : NULL;
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = pParent ? getListBox()->GetEntry( pParent, i ) : NULL;
if ( !pEntry )
throw IndexOutOfBoundsException();
@@ -338,7 +338,7 @@ namespace accessibility
aParentPath.pop_back();
// get the entry for this shortened access path
- SvLBoxEntry* pParentEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pParentEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
OSL_ENSURE( pParentEntry, "AccessibleListBoxEntry::implGetParentAccessible: could not obtain a parent entry!" );
if ( pParentEntry )
@@ -454,7 +454,7 @@ namespace accessibility
::osl::MutexGuard aGuard( m_aMutex );
EnsureIsAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntry( VCLPoint( _aPoint ) );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( VCLPoint( _aPoint ) );
if ( !pEntry )
throw RuntimeException();
@@ -539,7 +539,7 @@ namespace accessibility
throw IndexOutOfBoundsException();
awt::Rectangle aBounds( 0, 0, 0, 0 );
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( pEntry )
{
::vcl::ControlLayoutData aLayoutData;
@@ -560,7 +560,7 @@ namespace accessibility
EnsureIsAlive();
sal_Int32 nIndex = -1;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( pEntry )
{
::vcl::ControlLayoutData aLayoutData;
@@ -644,7 +644,7 @@ namespace accessibility
checkActionIndex_Impl( nIndex );
EnsureIsAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( pEntry )
{
if ( getListBox()->IsExpanded( pEntry ) )
@@ -688,8 +688,8 @@ namespace accessibility
EnsureIsAlive();
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
if ( !pEntry )
throw IndexOutOfBoundsException();
@@ -703,8 +703,8 @@ namespace accessibility
EnsureIsAlive();
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
if ( !pEntry )
throw IndexOutOfBoundsException();
@@ -718,13 +718,13 @@ namespace accessibility
EnsureIsAlive();
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( !pParent )
throw RuntimeException();
sal_Int32 nCount = getListBox()->GetLevelChildCount( pParent );
for ( sal_Int32 i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( pParent, i );
if ( getListBox()->IsSelected( pEntry ) )
getListBox()->Select( pEntry, sal_False );
}
@@ -737,13 +737,13 @@ namespace accessibility
EnsureIsAlive();
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( !pParent )
throw RuntimeException();
sal_Int32 nCount = getListBox()->GetLevelChildCount( pParent );
for ( sal_Int32 i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( pParent, i );
if ( !getListBox()->IsSelected( pEntry ) )
getListBox()->Select( pEntry, sal_True );
}
@@ -758,13 +758,13 @@ namespace accessibility
sal_Int32 i, nSelCount = 0, nCount = 0;
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( !pParent )
throw RuntimeException();
nCount = getListBox()->GetLevelChildCount( pParent );
for ( i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( pParent, i );
if ( getListBox()->IsSelected( pEntry ) )
++nSelCount;
}
@@ -785,13 +785,13 @@ namespace accessibility
Reference< XAccessible > xChild;
sal_Int32 i, nSelCount = 0, nCount = 0;
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
if ( !pParent )
throw RuntimeException();
nCount = getListBox()->GetLevelChildCount( pParent );
for ( i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( pParent, i );
if ( getListBox()->IsSelected( pEntry ) )
++nSelCount;
@@ -812,8 +812,8 @@ namespace accessibility
EnsureIsAlive();
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nSelectedChildIndex );
+ SvTreeListEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
+ SvTreeListEntry* pEntry = getListBox()->GetEntry( pParent, nSelectedChildIndex );
if ( !pEntry )
throw IndexOutOfBoundsException();
diff --git a/accessibility/source/extended/accessibletablistboxtable.cxx b/accessibility/source/extended/accessibletablistboxtable.cxx
index 1ddaff3ec234..a33c9f1ea774 100644
--- a/accessibility/source/extended/accessibletablistboxtable.cxx
+++ b/accessibility/source/extended/accessibletablistboxtable.cxx
@@ -96,7 +96,7 @@ namespace accessibility
commitEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
if ( m_pTabListBox && m_pTabListBox->HasFocus() )
{
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ SvTreeListEntry* pEntry = static_cast< SvTreeListEntry* >( rVclWindowEvent.GetData() );
if ( pEntry )
{
sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
@@ -136,7 +136,7 @@ namespace accessibility
{
if ( m_pTabListBox && m_pTabListBox->HasFocus() )
{
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
+ SvTreeListEntry* pEntry = static_cast< SvTreeListEntry* >( rVclWindowEvent.GetData() );
if ( pEntry )
{
sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
@@ -161,7 +161,7 @@ namespace accessibility
{
commitEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
TabListBoxEventData* pData = static_cast< TabListBoxEventData* >( rVclWindowEvent.GetData() );
- SvLBoxEntry* pEntry = pData != NULL ? pData->m_pEntry : NULL;
+ SvTreeListEntry* pEntry = pData != NULL ? pData->m_pEntry : NULL;
if ( pEntry )
{
sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
@@ -244,7 +244,7 @@ namespace accessibility
if ( m_pTabListBox )
{
sal_Int32 nRow = 0;
- SvLBoxEntry* pEntry = m_pTabListBox->FirstSelected();
+ SvTreeListEntry* pEntry = m_pTabListBox->FirstSelected();
while ( pEntry )
{
++nRow;
diff --git a/accessibility/source/extended/textwindowaccessibility.cxx b/accessibility/source/extended/textwindowaccessibility.cxx
index 9f48b1a1ae2c..f25c46cf64f3 100644
--- a/accessibility/source/extended/textwindowaccessibility.cxx
+++ b/accessibility/source/extended/textwindowaccessibility.cxx
@@ -17,7 +17,6 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-
#include <accessibility/extended/textwindowaccessibility.hxx>
#include "comphelper/accessibleeventnotifier.hxx"
#include "unotools/accessiblerelationsethelper.hxx"
@@ -2124,12 +2123,19 @@ void Document::handleSelectionChangeNotification()
void Document::notifySelectionChange( sal_Int32 nFirst, sal_Int32 nLast )
{
- if ( nFirst < nLast )
+ nFirst = std::max( nFirst, sal_Int32( 0 ) );
+ nLast = std::min( nLast, sal_Int32( m_xParagraphs->size() ) );
+ Paragraphs::iterator iFirst(m_xParagraphs->begin() + nFirst);
+ Paragraphs::iterator iLast(m_xParagraphs->begin() + nLast);
+ if ( iFirst < m_aVisibleBegin )
+ iFirst = m_aVisibleBegin;
+ if ( iLast > m_aVisibleEnd )
+ iLast = m_aVisibleEnd;
+ if ( iFirst < iLast )
{
- Paragraphs::iterator aEnd( ::std::min( m_xParagraphs->begin() + nLast, m_aVisibleEnd ) );
- for ( Paragraphs::iterator aIt = ::std::max( m_xParagraphs->begin() + nFirst, m_aVisibleBegin ); aIt < aEnd; ++aIt )
+ for ( Paragraphs::iterator i = iFirst; i != iLast; i++ )
{
- ::rtl::Reference< ParagraphImpl > xParagraph( getParagraph( aIt ) );
+ ::rtl::Reference< ParagraphImpl > xParagraph( getParagraph( i ) );
if ( xParagraph.is() )
{
xParagraph->notifyEvent(
diff --git a/accessibility/source/standard/vclxaccessibleedit.cxx b/accessibility/source/standard/vclxaccessibleedit.cxx
index 60b8414c0c6f..20e4c862a895 100644
--- a/accessibility/source/standard/vclxaccessibleedit.cxx
+++ b/accessibility/source/standard/vclxaccessibleedit.cxx
@@ -143,7 +143,7 @@ OUString VCLXAccessibleEdit::implGetText()
if ( getAccessibleRole() == AccessibleRole::PASSWORD_TEXT )
{
- xub_Unicode cEchoChar = pEdit->GetEchoChar();
+ sal_Unicode cEchoChar = pEdit->GetEchoChar();
if ( !cEchoChar )
cEchoChar = '*';
OUStringBuffer sTmp;
diff --git a/android/experimental/DocumentLoader/Makefile b/android/experimental/DocumentLoader/Makefile
index d9e7c88830bd..15c6a0a11339 100644
--- a/android/experimental/DocumentLoader/Makefile
+++ b/android/experimental/DocumentLoader/Makefile
@@ -49,7 +49,7 @@ properties:
link-so:
# Build the single .so for this app
mkdir -p $(OBJLOCAL)
- $(CXX) -Wl,--stats -Wl,--no-keep-files-mapped -Wl,--no-undefined -DANDROID -DDISABLE_DYNLOADING -shared -o $(OBJLOCAL)/liblo-native-code.so -I$(OUTDIR)/inc native-code.cxx -L$(OUTDIR)/lib $(WHOLELIBS) $(LIBS) -lgnustl_static -landroid -llog -lz
+ $(CXX) -Wl,-Map,liblo-native-code.map -Wl,--gc-sections -Wl,--stats -Wl,--no-keep-files-mapped -Wl,--no-undefined -DANDROID -DDISABLE_DYNLOADING -shared -o $(OBJLOCAL)/liblo-native-code.so -I$(OUTDIR)/inc native-code.cxx -L$(OUTDIR)/lib $(WHOLELIBS) $(LIBS) -lgnustl_static -landroid -llog -lz
mkdir -p $(SODEST)
cp $(OBJLOCAL)/liblo-native-code.so $(SODEST)
$(STRIP) --strip-debug $(SODEST)/liblo-native-code.so
diff --git a/android/experimental/DocumentLoader/native-code.cxx b/android/experimental/DocumentLoader/native-code.cxx
index d4ef4b0e82fe..22c9a7e04ab7 100644
--- a/android/experimental/DocumentLoader/native-code.cxx
+++ b/android/experimental/DocumentLoader/native-code.cxx
@@ -11,7 +11,9 @@
extern "C"
{
+ extern void * animcore_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * avmedia_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
+ extern void * dba_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * dbaxml_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * evtatt_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * fileacc_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
@@ -34,6 +36,7 @@ extern "C"
extern void * sdd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * sm_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * smd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
+ extern void * spell_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * svgfilter_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * sw_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * swd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
@@ -55,7 +58,9 @@ const lib_to_component_mapping *
lo_get_libmap(void)
{
static lib_to_component_mapping map[] = {
+ { "libanimcorelo.a", animcore_component_getFactory },
{ "libavmedialo.a", avmedia_component_getFactory },
+ { "libdbalo.a", dba_component_getFactory },
{ "libdbaxmllo.a", dbaxml_component_getFactory },
{ "libevtattlo.a", evtatt_component_getFactory },
{ "libfileacc.a", fileacc_component_getFactory },
diff --git a/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java b/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java
index e1e7506a75af..8c9a71374196 100644
--- a/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java
+++ b/android/experimental/DocumentLoader/src/org/libreoffice/android/examples/DocumentLoader.java
@@ -92,7 +92,7 @@ import com.sun.star.awt.Size;
import com.sun.star.awt.XBitmap;
import com.sun.star.awt.XControl;
import com.sun.star.awt.XDevice;
-import com.sun.star.awt.XToolkit2;
+import com.sun.star.awt.XToolkitExperimental;
import com.sun.star.beans.PropertyValue;
import com.sun.star.frame.XComponentLoader;
import com.sun.star.frame.XController;
@@ -130,7 +130,7 @@ public class DocumentLoader
XComponentContext context;
XMultiComponentFactory mcf;
XComponentLoader componentLoader;
- XToolkit2 toolkit;
+ XToolkitExperimental toolkit;
XDevice dummySmallDevice;
Object doc;
int pageCount;
@@ -575,7 +575,9 @@ public class DocumentLoader
int t = (int)(h/2 - values[Matrix.MTRANS_Y]/scale);
Log.i(TAG, "Unzoomed rect: " + l + ", " + t + ", " + (int)(l+w/scale) + ", " + (int)(t+h/scale));
- Assert.assertTrue(values[Matrix.MSCALE_X] == values[Matrix.MSCALE_Y]);
+ Log.i(TAG, "Scales: " + values[Matrix.MSCALE_X] + ", " + values[Matrix.MSCALE_Y]);
+
+ // Assert.assertTrue(values[Matrix.MSCALE_X] == values[Matrix.MSCALE_Y]);
super.draw(canvas);
@@ -820,7 +822,7 @@ public class DocumentLoader
Object toolkitService = mcf.createInstanceWithContext
("com.sun.star.awt.Toolkit", context);
- toolkit = (XToolkit2) UnoRuntime.queryInterface(XToolkit2.class, toolkitService);
+ toolkit = (XToolkitExperimental) UnoRuntime.queryInterface(XToolkitExperimental.class, toolkitService);
renderable = (XRenderable) UnoRuntime.queryInterface(XRenderable.class, doc);
diff --git a/android/experimental/LibreOffice4Android/Makefile b/android/experimental/LibreOffice4Android/Makefile
index f81e814e56be..c823ebf2b425 100644
--- a/android/experimental/LibreOffice4Android/Makefile
+++ b/android/experimental/LibreOffice4Android/Makefile
@@ -24,7 +24,7 @@ APP_PACKAGE=org.libreoffice
link-so:
# Build the single .so for this app
mkdir -p $(OBJLOCAL)
- $(CXX) -Wl,--stats -Wl,--no-keep-files-mapped -Wl,--no-undefined -DANDROID -DDISABLE_DYNLOADING -shared -o $(OBJLOCAL)/liblo-native-code.so -I$(OUTDIR)/inc native-code.cxx -L$(OUTDIR)/lib $(WHOLELIBS) $(LIBS) -lgnustl_static -landroid -llog -lz
+ $(CXX) -Wl,-Map,liblo-native-code.map -Wl,--gc-sections -Wl,--stats -Wl,--no-keep-files-mapped -Wl,--no-undefined -DANDROID -DDISABLE_DYNLOADING -shared -o $(OBJLOCAL)/liblo-native-code.so -I$(OUTDIR)/inc native-code.cxx -L$(OUTDIR)/lib $(WHOLELIBS) $(LIBS) -lgnustl_static -landroid -llog -lz
mkdir -p $(SODEST)
cp $(OBJLOCAL)/liblo-native-code.so $(SODEST)
$(STRIP) --strip-debug $(SODEST)/liblo-native-code.so
diff --git a/android/experimental/LibreOffice4Android/native-code.cxx b/android/experimental/LibreOffice4Android/native-code.cxx
index d4ef4b0e82fe..616bb86c21ba 100644
--- a/android/experimental/LibreOffice4Android/native-code.cxx
+++ b/android/experimental/LibreOffice4Android/native-code.cxx
@@ -11,7 +11,7 @@
extern "C"
{
- extern void * avmedia_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
+ extern void * dba_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * dbaxml_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * evtatt_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * fileacc_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
@@ -27,18 +27,13 @@ extern "C"
extern void * lotuswordpro_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * oox_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * sb_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
- extern void * sc_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
- extern void * scd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
- extern void * scfilt_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
- extern void * sd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
- extern void * sdd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
- extern void * sm_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
- extern void * smd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
+ extern void * spell_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * svgfilter_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * sw_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * swd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * t602filter_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * textfd_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
+ extern void * ucppkg1_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * unoxml_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * unordf_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
extern void * wpftdraw_component_getFactory( const char * pImplName, void * pServiceManager, void * pRegistryKey );
@@ -55,7 +50,7 @@ const lib_to_component_mapping *
lo_get_libmap(void)
{
static lib_to_component_mapping map[] = {
- { "libavmedialo.a", avmedia_component_getFactory },
+ { "libdbalo.a", dba_component_getFactory },
{ "libdbaxmllo.a", dbaxml_component_getFactory },
{ "libevtattlo.a", evtatt_component_getFactory },
{ "libfileacc.a", fileacc_component_getFactory },
@@ -70,19 +65,13 @@ lo_get_libmap(void)
{ "liblnthlo.a", lnth_component_getFactory },
{ "liblwpftlo.a", lotuswordpro_component_getFactory },
{ "libooxlo.a", oox_component_getFactory },
- { "libscdlo.a", scd_component_getFactory },
- { "libscfiltlo.a", scfilt_component_getFactory },
{ "libsblo.a", sb_component_getFactory },
- { "libsclo.a", sc_component_getFactory },
- { "libsddlo.a", sdd_component_getFactory },
- { "libsdlo.a", sd_component_getFactory },
- { "libsmdlo.a", smd_component_getFactory },
- { "libsmlo.a", sm_component_getFactory },
{ "libsvgfilterlo.a", svgfilter_component_getFactory },
{ "libswdlo.a", swd_component_getFactory },
{ "libswlo.a", sw_component_getFactory },
{ "libt602filterlo.a", t602filter_component_getFactory },
{ "libtextfdlo.a", textfd_component_getFactory },
+ { "libucppkg1.a", ucppkg1_component_getFactory },
{ "libunordflo.a", unordf_component_getFactory },
{ "libunoxmllo.a", unoxml_component_getFactory },
{ "libwpftdrawlo.a", wpftdraw_component_getFactory },
diff --git a/android/experimental/LibreOffice4Android/src/org/libreoffice/android/DocumentLoader.java b/android/experimental/LibreOffice4Android/src/org/libreoffice/android/DocumentLoader.java
index 601e583268d7..ea410512d20a 100644
--- a/android/experimental/LibreOffice4Android/src/org/libreoffice/android/DocumentLoader.java
+++ b/android/experimental/LibreOffice4Android/src/org/libreoffice/android/DocumentLoader.java
@@ -79,7 +79,7 @@ import com.sun.star.awt.Size;
import com.sun.star.awt.XBitmap;
import com.sun.star.awt.XControl;
import com.sun.star.awt.XDevice;
-import com.sun.star.awt.XToolkit2;
+import com.sun.star.awt.XToolkitExperimental;
import com.sun.star.beans.PropertyValue;
import com.sun.star.frame.XComponentLoader;
import com.sun.star.frame.XController;
@@ -121,7 +121,7 @@ public class DocumentLoader
XComponentContext context;
XMultiComponentFactory mcf;
XComponentLoader componentLoader;
- XToolkit2 toolkit;
+ XToolkitExperimental toolkit;
XDevice dummySmallDevice;
Object doc;
int pageCount;
@@ -681,7 +681,7 @@ public class DocumentLoader
Object toolkitService = mcf.createInstanceWithContext
("com.sun.star.awt.Toolkit", context);
- toolkit = (XToolkit2) UnoRuntime.queryInterface(XToolkit2.class, toolkitService);
+ toolkit = (XToolkitExperimental) UnoRuntime.queryInterface(XToolkitExperimental.class, toolkitService);
renderable = (XRenderable) UnoRuntime.queryInterface(XRenderable.class, doc);
diff --git a/android/experimental/LibreOffice4Android/src/org/libreoffice/ui/LibreOfficeUIActivity.java b/android/experimental/LibreOffice4Android/src/org/libreoffice/ui/LibreOfficeUIActivity.java
index d47d25599066..029db572d5a5 100644
--- a/android/experimental/LibreOffice4Android/src/org/libreoffice/ui/LibreOfficeUIActivity.java
+++ b/android/experimental/LibreOffice4Android/src/org/libreoffice/ui/LibreOfficeUIActivity.java
@@ -64,7 +64,7 @@ import com.sun.star.awt.Size;
import com.sun.star.awt.XBitmap;
import com.sun.star.awt.XControl;
import com.sun.star.awt.XDevice;
-import com.sun.star.awt.XToolkit2;
+import com.sun.star.awt.XToolkitExperimental;
import com.sun.star.beans.PropertyValue;
import com.sun.star.frame.XComponentLoader;
import com.sun.star.frame.XController;
@@ -117,7 +117,7 @@ public class LibreOfficeUIActivity extends SherlockActivity implements ActionBar
XComponentContext context;
XMultiComponentFactory mcf;
XComponentLoader componentLoader;
- XToolkit2 toolkit;
+ XToolkitExperimental toolkit;
XDevice dummySmallDevice;
Object doc;
int pageCount;
@@ -796,7 +796,7 @@ class ListItemAdapter implements ListAdapter{
Object toolkitService = mcf.createInstanceWithContext
("com.sun.star.awt.Toolkit", context);
- toolkit = (XToolkit2) UnoRuntime.queryInterface(XToolkit2.class, toolkitService);
+ toolkit = (XToolkitExperimental) UnoRuntime.queryInterface(XToolkitExperimental.class, toolkitService);
renderable = (XRenderable) UnoRuntime.queryInterface(XRenderable.class, doc);
if (renderable == null)
diff --git a/android/sdremote/src/org/libreoffice/impressremote/AboutDialogBuilder.java b/android/sdremote/src/org/libreoffice/impressremote/AboutDialogBuilder.java
index 7b6a31bcd7e6..3f1cd3a163ae 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/AboutDialogBuilder.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/AboutDialogBuilder.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote;
import java.text.MessageFormat;
@@ -49,3 +57,4 @@ public class AboutDialogBuilder extends AlertDialog.Builder {
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/ActivityChangeBroadcastProcessor.java b/android/sdremote/src/org/libreoffice/impressremote/ActivityChangeBroadcastProcessor.java
index 3df8874984b8..2c70e173b3ef 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/ActivityChangeBroadcastProcessor.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/ActivityChangeBroadcastProcessor.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote;
import org.libreoffice.impressremote.communication.CommunicationService;
@@ -54,3 +62,4 @@ public class ActivityChangeBroadcastProcessor {
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/BlankScreenFragment.java b/android/sdremote/src/org/libreoffice/impressremote/BlankScreenFragment.java
index 3760b22cb9d6..1bb2aa4803be 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/BlankScreenFragment.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/BlankScreenFragment.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote;
import org.libreoffice.impressremote.communication.CommunicationService;
@@ -77,3 +85,4 @@ public class BlankScreenFragment extends SherlockFragment {
mCommunicationService.getTransmitter().resume();
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/PairingActivity.java b/android/sdremote/src/org/libreoffice/impressremote/PairingActivity.java
index bf466f43cc9f..2ce2990e321d 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/PairingActivity.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/PairingActivity.java
@@ -64,3 +64,4 @@ public class PairingActivity extends SherlockActivity {
};
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/PresentationActivity.java b/android/sdremote/src/org/libreoffice/impressremote/PresentationActivity.java
index a2765e40f344..bf04750ba49c 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/PresentationActivity.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/PresentationActivity.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote;
import java.text.ParseException;
@@ -534,3 +542,4 @@ public class PresentationActivity extends SherlockFragmentActivity {
}
};
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/PresentationFragment.java b/android/sdremote/src/org/libreoffice/impressremote/PresentationFragment.java
index fe510db4f8f7..779e395e639a 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/PresentationFragment.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/PresentationFragment.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote;
import org.libreoffice.impressremote.communication.CommunicationService;
@@ -276,8 +284,6 @@ public class PresentationFragment extends SherlockFragment {
// ------------------------------------------------- THUMBNAIL ADAPTER ----
protected class ThumbnailAdapter extends AbstractCoverFlowImageAdapter {
- private Context mContext;
-
private SlideShow mSlideShow;
public ThumbnailAdapter(Context aContext, SlideShow aSlideShow) {
@@ -313,3 +319,4 @@ public class PresentationFragment extends SherlockFragment {
}
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/SelectorActivity.java b/android/sdremote/src/org/libreoffice/impressremote/SelectorActivity.java
index f2930c0a5ead..21596c09fcff 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/SelectorActivity.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/SelectorActivity.java
@@ -381,4 +381,4 @@ public class SelectorActivity extends SherlockActivity {
return super.onContextItemSelected(item);
}
}
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/SettingsActivity.java b/android/sdremote/src/org/libreoffice/impressremote/SettingsActivity.java
index b11f789d020e..95ed9050bd26 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/SettingsActivity.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/SettingsActivity.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote;
import android.os.Bundle;
@@ -8,7 +16,6 @@ public class SettingsActivity extends SherlockPreferenceActivity {
// We use addPreferencesFromResource as we need sdk-9 compatibility
// but build with sdk 15
- @SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
@@ -29,3 +36,4 @@ public class SettingsActivity extends SherlockPreferenceActivity {
}
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/StartPresentationActivity.java b/android/sdremote/src/org/libreoffice/impressremote/StartPresentationActivity.java
index ab59946a6a96..0d89c843bef6 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/StartPresentationActivity.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/StartPresentationActivity.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote;
import org.libreoffice.impressremote.communication.CommunicationService;
@@ -18,7 +26,6 @@ import com.actionbarsherlock.app.SherlockActivity;
public class StartPresentationActivity extends SherlockActivity {
private CommunicationService mCommunicationService = null;
- private boolean mIsBound = false;
private ActivityChangeBroadcastProcessor mBroadcastProcessor;
/** Called when the activity is first created. */
@@ -29,7 +36,6 @@ public class StartPresentationActivity extends SherlockActivity {
setContentView(R.layout.activity_startpresentation);
bindService(new Intent(this, CommunicationService.class), mConnection,
Context.BIND_IMPORTANT);
- mIsBound = true;
IntentFilter aFilter = new IntentFilter(
CommunicationService.MSG_SLIDESHOW_STARTED);
@@ -71,7 +77,6 @@ public class StartPresentationActivity extends SherlockActivity {
@Override
public void onServiceDisconnected(ComponentName aClassName) {
mCommunicationService = null;
- mIsBound = false;
}
};
@@ -93,3 +98,4 @@ public class StartPresentationActivity extends SherlockActivity {
}
};
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothClient.java b/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothClient.java
index f7846b01bfdd..a4fd1ef5345e 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothClient.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothClient.java
@@ -45,7 +45,6 @@ public class BluetoothClient extends Client {
mSocket = aDevice.createRfcommSocketToServiceRecord(UUID
.fromString("00001101-0000-1000-8000-00805F9B34FB"));
mSocket.connect();
- // mSocket = aSocket;
System.out.println("Connected");
mInputStream = mSocket.getInputStream();
@@ -74,7 +73,6 @@ public class BluetoothClient extends Client {
if (mSocket != null)
mSocket.close();
} catch (IOException e) {
- // TODO Auto-generated catch block
e.printStackTrace();
}
}
@@ -86,4 +84,4 @@ public class BluetoothClient extends Client {
}
}
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothFinder.java b/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothFinder.java
index e55f2643cd47..c3a54afee066 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothFinder.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/BluetoothFinder.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote.communication;
import java.util.Collection;
@@ -95,3 +103,4 @@ public class BluetoothFinder {
};
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java b/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java
index aa1cd9d01d9b..b35e1e93de35 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java
@@ -276,7 +276,8 @@ public class CommunicationService extends Service implements Runnable {
SharedPreferences aPref = getSharedPreferences(SERVERSTORAGE_KEY,
MODE_PRIVATE);
- Map<String, String> aStoredMap = (Map<String, String>) aPref.getAll();
+ @SuppressWarnings("unchecked")
+ Map<String, String> aStoredMap = (Map<String, String>) aPref.getAll();
for (Entry<String, String> aServerEntry : aStoredMap.entrySet()) {
mManualServers.put(aServerEntry.getKey(), new Server(
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/ReconnectionActivity.java b/android/sdremote/src/org/libreoffice/impressremote/communication/ReconnectionActivity.java
index ecc579ef468b..d519188364a9 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/ReconnectionActivity.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/ReconnectionActivity.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote.communication;
import org.libreoffice.impressremote.R;
@@ -10,9 +18,9 @@ public class ReconnectionActivity extends SherlockActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
- // TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_reconnect);
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/Server.java b/android/sdremote/src/org/libreoffice/impressremote/communication/Server.java
index 08f973f87056..42d028bb1a05 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/Server.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/Server.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote.communication;
public class Server {
@@ -46,3 +54,4 @@ public class Server {
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/ServerFinder.java b/android/sdremote/src/org/libreoffice/impressremote/communication/ServerFinder.java
index d9022ecb0738..70bfa60bebfd 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/ServerFinder.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/ServerFinder.java
@@ -1,3 +1,11 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
package org.libreoffice.impressremote.communication;
import java.io.IOException;
@@ -177,3 +185,4 @@ public class ServerFinder {
return mServerList.values();
}
}
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/Transmitter.java b/android/sdremote/src/org/libreoffice/impressremote/communication/Transmitter.java
index 480324e64fb5..1c8ce9b9a4c1 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/Transmitter.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/Transmitter.java
@@ -66,4 +66,4 @@ public class Transmitter {
mClient.sendCommand("presentation_stop\n\n");
}
}
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ \ No newline at end of file
diff --git a/avmedia/source/win/player.cxx b/avmedia/source/win/player.cxx
index dfe6e55447f5..f91c906d930b 100644
--- a/avmedia/source/win/player.cxx
+++ b/avmedia/source/win/player.cxx
@@ -414,7 +414,7 @@ void SAL_CALL Player::setMute( sal_Bool bSet )
{
::osl::MutexGuard aGuard(m_aMutex);
- if( mpBA && ( mbMuted != bSet ) )
+ if (mpBA && (mbMuted != static_cast<bool>(bSet)))
{
mbMuted = bSet;
mpBA->put_Volume( mbMuted ? -10000 : mnUnmutedVolume );
diff --git a/basctl/Module_basctl.mk b/basctl/Module_basctl.mk
index 11cabbbbbde5..3542e2b461aa 100644
--- a/basctl/Module_basctl.mk
+++ b/basctl/Module_basctl.mk
@@ -39,6 +39,7 @@ endif
$(eval $(call gb_Module_add_targets,basctl,\
Package_uiconfig \
+ UI_basicide \
))
# vim: set noet sw=4 ts=4:
diff --git a/basctl/UI_basicide.mk b/basctl/UI_basicide.mk
new file mode 100644
index 000000000000..a808d92155d8
--- /dev/null
+++ b/basctl/UI_basicide.mk
@@ -0,0 +1,16 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UI_UI,modules/BasicIDE))
+
+$(eval $(call gb_UI_add_uifiles,modules/BasicIDE,\
+ basctl/uiconfig/basicide/ui/basicmacrodialog \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/basctl/inc/basidesh.hrc b/basctl/inc/basidesh.hrc
index b8fa629b896a..5c551b311083 100644
--- a/basctl/inc/basidesh.hrc
+++ b/basctl/inc/basidesh.hrc
@@ -69,10 +69,10 @@
#define RID_STR_RUNTIMEERROR ( RID_BASICIDE_START + 22 )
#define RID_STR_COMPILEERROR ( RID_BASICIDE_START + 23 )
#define RID_STR_STDDIALOGNAME ( RID_BASICIDE_START + 24 )
-#define RID_STR_STDMACRONAME ( RID_BASICIDE_START + 25 )
+
#define RID_STR_STDMODULENAME ( RID_BASICIDE_START + 27 )
#define RID_STR_ALL ( RID_BASICIDE_START + 28 )
-#define RID_STR_CLOSE ( RID_BASICIDE_START + 29 )
+
#define RID_STR_PAGE ( RID_BASICIDE_START + 30 )
#define RID_STR_BADSBXNAME ( RID_BASICIDE_START + 31 )
#define RID_STR_STDLIBNAME ( RID_BASICIDE_START + 32 )
diff --git a/basctl/source/basicide/baside2.cxx b/basctl/source/basicide/baside2.cxx
index 657182d10420..fa9d50ea7de4 100644
--- a/basctl/source/basicide/baside2.cxx
+++ b/basctl/source/basicide/baside2.cxx
@@ -37,6 +37,7 @@
#include <com/sun/star/ui/dialogs/XFilePickerControlAccess.hpp>
#include <com/sun/star/ui/dialogs/XFilterManager.hpp>
#include <comphelper/processfactory.hxx>
+#include <comphelper/string.hxx>
#include <sfx2/dinfdlg.hxx>
#include <sfx2/dispatch.hxx>
#include <sfx2/docfile.hxx>
@@ -164,13 +165,13 @@ void lcl_ConvertTabsToSpaces( String& rLine )
if ( rLine.GetChar( nPos ) == '\t' )
{
// not 4 Blanks, but at 4 TabPos:
- String aBlanker;
- aBlanker.Fill( ( 4 - ( nPos % 4 ) ), ' ' );
+ rtl::OUStringBuffer aBlanker;
+ string::padToLength(aBlanker, ( 4 - ( nPos % 4 ) ), ' ');
rLine.Erase( nPos, 1 );
- rLine.Insert( aBlanker, nPos );
+ rLine.Insert( aBlanker.makeStringAndClear(), nPos );
nMax = rLine.Len();
}
- nPos++;
+ ++nPos;
}
}
}
diff --git a/basctl/source/basicide/baside2.hxx b/basctl/source/basicide/baside2.hxx
index 8ca38127b4df..1619261e7d78 100644
--- a/basctl/source/basicide/baside2.hxx
+++ b/basctl/source/basicide/baside2.hxx
@@ -191,17 +191,17 @@ class WatchTreeListBox : public SvHeaderTabListBox
String aEditingRes;
protected:
- virtual sal_Bool EditingEntry( SvLBoxEntry* pEntry, Selection& rSel );
- virtual sal_Bool EditedEntry( SvLBoxEntry* pEntry, const OUString& rNewText );
+ virtual sal_Bool EditingEntry( SvTreeListEntry* pEntry, Selection& rSel );
+ virtual sal_Bool EditedEntry( SvTreeListEntry* pEntry, const OUString& rNewText );
- bool ImplBasicEntryEdited( SvLBoxEntry* pEntry, const String& rResult );
- SbxBase* ImplGetSBXForEntry( SvLBoxEntry* pEntry, bool& rbArrayElement );
+ bool ImplBasicEntryEdited( SvTreeListEntry* pEntry, const String& rResult );
+ SbxBase* ImplGetSBXForEntry( SvTreeListEntry* pEntry, bool& rbArrayElement );
public:
WatchTreeListBox( Window* pParent, WinBits nWinBits );
~WatchTreeListBox();
- void RequestingChildren( SvLBoxEntry * pParent );
+ void RequestingChildren( SvTreeListEntry * pParent );
void UpdateWatches( bool bBasicStopped = false );
using SvTabListBox::SetTabs;
diff --git a/basctl/source/basicide/baside2b.cxx b/basctl/source/basicide/baside2b.cxx
index 914a916fcb0e..1ef15c52e05d 100644
--- a/basctl/source/basicide/baside2b.cxx
+++ b/basctl/source/basicide/baside2b.cxx
@@ -106,7 +106,7 @@ OUString getTextEngineText (ExtTextEngine& rEngine)
void setTextEngineText (ExtTextEngine& rEngine, OUString const& aStr)
{
rEngine.SetText(String());
- OString aUTF8Str = ::rtl::OUStringToOString( aStr, RTL_TEXTENCODING_UTF8 );
+ OString aUTF8Str = OUStringToOString( aStr, RTL_TEXTENCODING_UTF8 );
SvMemoryStream aMemStream( (void*)aUTF8Str.getStr(), aUTF8Str.getLength(),
STREAM_READ | STREAM_SEEK_TO_BEGIN );
aMemStream.SetStreamCharSet( RTL_TEXTENCODING_UTF8 );
@@ -278,7 +278,7 @@ String EditorWindow::GetWordAtCursor()
const TextPaM& rSelStart = rSelection.GetStart();
const TextPaM& rSelEnd = rSelection.GetEnd();
String aText = pTextEngine->GetText( rSelEnd.GetPara() );
- CharClass aClass( ::comphelper::getProcessServiceFactory() , Application::GetSettings().GetLocale() );
+ CharClass aClass( ::comphelper::getProcessComponentContext() , Application::GetSettings().GetLocale() );
xub_StrLen nSelStart = static_cast< xub_StrLen >( rSelStart.GetIndex() );
xub_StrLen nSelEnd = static_cast< xub_StrLen >( rSelEnd.GetIndex() );
xub_StrLen nLength = static_cast< xub_StrLen >( aText.Len() );
@@ -358,7 +358,7 @@ void EditorWindow::RequestHelp( const HelpEvent& rHEvt )
if ( !aHelpText.Len() ) // name is not copied with the passed parameters
aHelpText = aWord;
aHelpText += '=';
- aHelpText += pVar->GetString();
+ aHelpText += pVar->GetOUString();
}
}
if ( aHelpText.Len() )
@@ -1363,7 +1363,7 @@ void WatchWindow::AddWatch( const String& rVName )
OUString aWatchStr_( aVar );
aWatchStr_ += OUString( "\t\t" );
- SvLBoxEntry* pNewEntry = aTreeListBox.InsertEntry( aWatchStr_, 0, true, LIST_APPEND );
+ SvTreeListEntry* pNewEntry = aTreeListBox.InsertEntry( aWatchStr_, 0, true, LIST_APPEND );
pNewEntry->SetUserData( pWatchItem );
aTreeListBox.Select(pNewEntry, true);
@@ -1375,7 +1375,7 @@ void WatchWindow::AddWatch( const String& rVName )
bool WatchWindow::RemoveSelectedWatch()
{
- SvLBoxEntry* pEntry = aTreeListBox.GetCurEntry();
+ SvTreeListEntry* pEntry = aTreeListBox.GetCurEntry();
if ( pEntry )
{
aTreeListBox.GetModel()->Remove( pEntry );
@@ -1406,7 +1406,7 @@ IMPL_LINK_INLINE_END( WatchWindow, ButtonHdl, ImageButton *, pButton )
IMPL_LINK_NOARG_INLINE_START(WatchWindow, TreeListHdl)
{
- SvLBoxEntry* pCurEntry = aTreeListBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aTreeListBox.GetCurEntry();
if ( pCurEntry && pCurEntry->GetUserData() )
aXEdit.SetText( ((WatchItem*)pCurEntry->GetUserData())->maName );
@@ -1567,22 +1567,32 @@ void StackWindow::UpdateCalls()
{
SbxVariable* pVar = pParams->Get( nParam );
DBG_ASSERT( pVar, "Parameter?!" );
- if ( pVar->GetName().Len() )
+ if ( !pVar->GetName().isEmpty() )
+ {
aEntry += pVar->GetName();
+ }
else if ( pInfo )
{
const SbxParamInfo* pParam = pInfo->GetParam( nParam );
if ( pParam )
+ {
aEntry += pParam->aName;
+ }
}
aEntry += '=';
SbxDataType eType = pVar->GetType();
if( eType & SbxARRAY )
+ {
aEntry += OUString( "..." );
+ }
else if( eType != SbxOBJECT )
- aEntry += pVar->GetString();
+ {
+ aEntry += pVar->GetOUString();
+ }
if ( nParam < ( pParams->Count() - 1 ) )
+ {
aEntry += OUString( ", " );
+ }
}
aEntry += ')';
}
@@ -1724,7 +1734,7 @@ WatchTreeListBox::WatchTreeListBox( Window* pParent, WinBits nWinBits )
WatchTreeListBox::~WatchTreeListBox()
{
// Destroy user data
- SvLBoxEntry* pEntry = First();
+ SvTreeListEntry* pEntry = First();
while ( pEntry )
{
delete (WatchItem*)pEntry->GetUserData();
@@ -1746,7 +1756,7 @@ void WatchTreeListBox::SetTabs()
}
}
-void WatchTreeListBox::RequestingChildren( SvLBoxEntry * pParent )
+void WatchTreeListBox::RequestingChildren( SvTreeListEntry * pParent )
{
if( !StarBASIC::IsRunning() )
return;
@@ -1754,7 +1764,7 @@ void WatchTreeListBox::RequestingChildren( SvLBoxEntry * pParent )
if( GetChildCount( pParent ) > 0 )
return;
- SvLBoxEntry* pEntry = pParent;
+ SvTreeListEntry* pEntry = pParent;
WatchItem* pItem = (WatchItem*)pEntry->GetUserData();
SbxDimArray* pArray = pItem->mpArray;
@@ -1780,7 +1790,7 @@ void WatchTreeListBox::RequestingChildren( SvLBoxEntry * pParent )
pItem->maMemberList.push_back(String(pVar->GetName()));
String const& rName = pItem->maMemberList.back();
- SvLBoxEntry* pChildEntry = SvTreeListBox::InsertEntry( rName, pEntry );
+ SvTreeListEntry* pChildEntry = SvTreeListBox::InsertEntry( rName, pEntry );
pChildEntry->SetUserData(new WatchItem(rName));
}
if( nPropCount > 0 )
@@ -1828,7 +1838,7 @@ void WatchTreeListBox::RequestingChildren( SvLBoxEntry * pParent )
aDisplayName += aIndexStr;
pChildItem->maDisplayName = aDisplayName;
- SvLBoxEntry* pChildEntry = SvTreeListBox::InsertEntry( aDisplayName, pEntry );
+ SvTreeListEntry* pChildEntry = SvTreeListBox::InsertEntry( aDisplayName, pEntry );
nElementCount++;
pChildEntry->SetUserData( pChildItem );
}
@@ -1839,7 +1849,7 @@ void WatchTreeListBox::RequestingChildren( SvLBoxEntry * pParent )
}
}
-SbxBase* WatchTreeListBox::ImplGetSBXForEntry( SvLBoxEntry* pEntry, bool& rbArrayElement )
+SbxBase* WatchTreeListBox::ImplGetSBXForEntry( SvTreeListEntry* pEntry, bool& rbArrayElement )
{
SbxBase* pSBX = NULL;
rbArrayElement = false;
@@ -1847,7 +1857,7 @@ SbxBase* WatchTreeListBox::ImplGetSBXForEntry( SvLBoxEntry* pEntry, bool& rbArra
WatchItem* pItem = (WatchItem*)pEntry->GetUserData();
String aVName( pItem->maName );
- SvLBoxEntry* pParentEntry = GetParent( pEntry );
+ SvTreeListEntry* pParentEntry = GetParent( pEntry );
WatchItem* pParentItem = pParentEntry ? (WatchItem*)pParentEntry->GetUserData() : NULL;
if( pParentItem )
{
@@ -1879,7 +1889,7 @@ SbxBase* WatchTreeListBox::ImplGetSBXForEntry( SvLBoxEntry* pEntry, bool& rbArra
return pSBX;
}
-sal_Bool WatchTreeListBox::EditingEntry( SvLBoxEntry* pEntry, Selection& )
+sal_Bool WatchTreeListBox::EditingEntry( SvTreeListEntry* pEntry, Selection& )
{
WatchItem* pItem = (WatchItem*)pEntry->GetUserData();
@@ -1904,7 +1914,7 @@ sal_Bool WatchTreeListBox::EditingEntry( SvLBoxEntry* pEntry, Selection& )
return bEdit;
}
-sal_Bool WatchTreeListBox::EditedEntry( SvLBoxEntry* pEntry, const OUString& rNewText )
+sal_Bool WatchTreeListBox::EditedEntry( SvTreeListEntry* pEntry, const OUString& rNewText )
{
WatchItem* pItem = (WatchItem*)pEntry->GetUserData();
String aVName( pItem->maName );
@@ -1920,7 +1930,7 @@ sal_Bool WatchTreeListBox::EditedEntry( SvLBoxEntry* pEntry, const OUString& rNe
return aResult != aEditingRes && ImplBasicEntryEdited(pEntry, aResult);
}
-bool WatchTreeListBox::ImplBasicEntryEdited( SvLBoxEntry* pEntry, const String& rResult )
+bool WatchTreeListBox::ImplBasicEntryEdited( SvTreeListEntry* pEntry, const String& rResult )
{
bool bArrayElement;
SbxBase* pSBX = ImplGetSBXForEntry( pEntry, bArrayElement );
@@ -1953,12 +1963,12 @@ bool WatchTreeListBox::ImplBasicEntryEdited( SvLBoxEntry* pEntry, const String&
namespace
{
-void implCollapseModifiedObjectEntry( SvLBoxEntry* pParent, WatchTreeListBox* pThis )
+void implCollapseModifiedObjectEntry( SvTreeListEntry* pParent, WatchTreeListBox* pThis )
{
pThis->Collapse( pParent );
- SvLBoxTreeList* pModel = pThis->GetModel();
- SvLBoxEntry* pDeleteEntry;
+ SvTreeList* pModel = pThis->GetModel();
+ SvTreeListEntry* pDeleteEntry;
while( (pDeleteEntry = pThis->SvTreeListBox::GetEntry( pParent, 0 )) != NULL )
{
implCollapseModifiedObjectEntry( pDeleteEntry, pThis );
@@ -1998,7 +2008,7 @@ String implCreateTypeStringForDimArray( WatchItem* pItem, SbxDataType eType )
return aRetStr;
}
-void implEnableChildren( SvLBoxEntry* pEntry, bool bEnable )
+void implEnableChildren( SvTreeListEntry* pEntry, bool bEnable )
{
if( bEnable )
{
@@ -2023,7 +2033,7 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped )
SbxError eOld = SbxBase::GetError();
setBasicWatchMode( true );
- SvLBoxEntry* pEntry = First();
+ SvTreeListEntry* pEntry = First();
while ( pEntry )
{
WatchItem* pItem = (WatchItem*)pEntry->GetUserData();
@@ -2086,11 +2096,13 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped )
}
}
else if( pNewArray == NULL || pOldArray == NULL )
+ {
bArrayChanged = true;
-
+ }
if( pNewArray )
+ {
implEnableChildren( pEntry, true );
-
+ }
// #i37227 Clear always and replace array
if( pNewArray != pOldArray )
{
@@ -2106,12 +2118,15 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped )
}
}
if( bArrayChanged && pOldArray != NULL )
+ {
bCollapse = true;
-
+ }
aTypeStr = implCreateTypeStringForDimArray( pItem, eType );
}
else
+ {
aWatchStr += OUString( "<?>" );
+ }
}
else if ( (sal_uInt8)eType == (sal_uInt8)SbxOBJECT )
{
@@ -2134,7 +2149,9 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped )
}
}
if( bObjChanged )
+ {
bCollapse = true;
+ }
}
pItem->mpObject = pObj;
@@ -2166,23 +2183,33 @@ void WatchTreeListBox::UpdateWatches( bool bBasicStopped )
bool bString = ((sal_uInt8)eType == (sal_uInt8)SbxSTRING);
OUString aStrStr( "\"" );
if( bString )
+ {
aWatchStr += aStrStr;
- aWatchStr += pVar->GetString();
+ }
+ aWatchStr += pVar->GetOUString();
if( bString )
+ {
aWatchStr += aStrStr;
+ }
}
if( !aTypeStr.Len() )
{
if( !pVar->IsFixed() )
+ {
aTypeStr = OUString( "Variant/" );
+ }
aTypeStr += getBasicTypeName( pVar->GetType() );
}
}
else if( !bArrayElement )
+ {
aWatchStr += OUString( "<Out of Scope>" );
+ }
if( bCollapse )
+ {
implCollapseModifiedObjectEntry( pEntry, this );
+ }
}
else if( bBasicStopped )
diff --git a/basctl/source/basicide/basides2.cxx b/basctl/source/basicide/basides2.cxx
index 410d3a78652c..fe91e703f1ba 100644
--- a/basctl/source/basicide/basides2.cxx
+++ b/basctl/source/basicide/basides2.cxx
@@ -108,7 +108,7 @@ sal_uInt16 Shell::SetPrinter( SfxPrinter *pNewPrinter, sal_uInt16 nDiffFlags, bo
void Shell::SetMDITitle()
{
- ::rtl::OUStringBuffer aTitleBuf;
+ OUStringBuffer aTitleBuf;
if ( !m_aCurLibName.isEmpty() )
{
LibraryLocation eLocation = m_aCurDocument.getLibraryLocation( m_aCurLibName );
diff --git a/basctl/source/basicide/basidesh.cxx b/basctl/source/basicide/basidesh.cxx
index 4639b4eaf734..ed86cca52bce 100644
--- a/basctl/source/basicide/basidesh.cxx
+++ b/basctl/source/basicide/basidesh.cxx
@@ -790,7 +790,9 @@ void Shell::UpdateWindows()
if ( bChangeCurWindow )
{
if ( !pNextActiveWindow )
+ {
pNextActiveWindow = FindApplicationWindow();
+ }
SetCurWindow( pNextActiveWindow, true );
}
}
@@ -804,9 +806,13 @@ void Shell::RemoveWindow( BaseWindow* pWindow_, bool bDestroy, bool bAllowChange
if ( pWindow_ == pCurWin )
{
if ( bAllowChangeCurWindow )
+ {
SetCurWindow( FindApplicationWindow(), true );
+ }
else
+ {
SetCurWindow( NULL, false );
+ }
}
if ( bDestroy )
{
@@ -825,8 +831,10 @@ void Shell::RemoveWindow( BaseWindow* pWindow_, bool bDestroy, bool bAllowChange
if ( pWindow_->GetDocument().isInVBAMode() )
{
SbModule* pMod = StarBASIC::GetActiveModule();
- if ( !pMod || ( pMod && ( !pMod->GetName().Equals(pWindow_->GetName()) ) ) )
+ if ( !pMod || ( pMod && ( !pMod->GetName().equals(pWindow_->GetName()) ) ) )
+ {
bStop = false;
+ }
}
if ( bStop )
{
diff --git a/basctl/source/basicide/basobj3.cxx b/basctl/source/basicide/basobj3.cxx
index 7850b9597a68..f0aa0bac3b6b 100644
--- a/basctl/source/basicide/basobj3.cxx
+++ b/basctl/source/basicide/basobj3.cxx
@@ -84,7 +84,7 @@ SbMethod* CreateMacro( SbModule* pModule, const String& rMacroName )
return 0;
OUString aMacroName( rMacroName );
- if ( aMacroName.getLength() == 0 )
+ if ( aMacroName.isEmpty() )
{
if ( !pModule->GetMethods()->Count() )
aMacroName = "Main" ;
diff --git a/basctl/source/basicide/bastype2.cxx b/basctl/source/basicide/bastype2.cxx
index 8ef1a92fe785..285aefccdbc1 100644
--- a/basctl/source/basicide/bastype2.cxx
+++ b/basctl/source/basicide/bastype2.cxx
@@ -20,7 +20,8 @@
#include <memory>
-#include "vcl/bitmap.hxx"
+#include <vcl/bitmap.hxx>
+#include <vcl/builder.hxx>
#include "basidesh.hxx"
#include "iderdll.hxx"
@@ -184,21 +185,38 @@ bool EntryDescriptor::operator == (EntryDescriptor const& rDesc) const
// ===========
//
-TreeListBox::TreeListBox (Window* pParent, ResId const& rRes) :
- SvTreeListBox( pParent, IDEResId( sal::static_int_cast<sal_uInt16>( rRes.GetId() ) ) ),
- m_aNotifier( *this )
+TreeListBox::TreeListBox (Window* pParent, ResId const& rRes)
+ : SvTreeListBox( pParent, IDEResId( sal::static_int_cast<sal_uInt16>( rRes.GetId() ) ) )
+ , m_aNotifier( *this )
+{
+ Init();
+}
+
+TreeListBox::TreeListBox (Window* pParent)
+ : SvTreeListBox(pParent)
+ , m_aNotifier( *this )
+{
+ Init();
+}
+
+void TreeListBox::Init()
{
SetNodeDefaultImages();
SetSelectionMode( SINGLE_SELECTION );
nMode = 0xFF; // everything
}
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeTreeListBox(Window *pParent, VclBuilder::stringmap &)
+{
+ return new TreeListBox(pParent);
+}
+
TreeListBox::~TreeListBox ()
{
m_aNotifier.dispose();
// destroy user data
- SvLBoxEntry* pEntry = First();
+ SvTreeListEntry* pEntry = First();
while ( pEntry )
{
delete static_cast<Entry*>(pEntry->GetUserData());
@@ -218,7 +236,7 @@ void TreeListBox::ScanEntry( const ScriptDocument& rDocument, LibraryLocation eL
SetUpdateMode(false);
// level 1: BasicManager (application, document, ...)
- SvLBoxEntry* pDocumentRootEntry = FindRootEntry( rDocument, eLocation );
+ SvTreeListEntry* pDocumentRootEntry = FindRootEntry( rDocument, eLocation );
if ( pDocumentRootEntry && IsExpanded( pDocumentRootEntry ) )
ImpCreateLibEntries( pDocumentRootEntry, rDocument, eLocation );
if ( !pDocumentRootEntry )
@@ -239,7 +257,7 @@ void TreeListBox::ScanEntry( const ScriptDocument& rDocument, LibraryLocation eL
SetUpdateMode(true);
}
-void TreeListBox::ImpCreateLibEntries( SvLBoxEntry* pDocumentRootEntry, const ScriptDocument& rDocument, LibraryLocation eLocation )
+void TreeListBox::ImpCreateLibEntries( SvTreeListEntry* pDocumentRootEntry, const ScriptDocument& rDocument, LibraryLocation eLocation )
{
// get a sorted list of library names
Sequence< OUString > aLibNames( rDocument.getLibraryNames() );
@@ -283,7 +301,7 @@ void TreeListBox::ImpCreateLibEntries( SvLBoxEntry* pDocumentRootEntry, const Sc
nId = bLoaded ? RID_IMG_DLGLIB : RID_IMG_DLGLIBNOTLOADED;
else
nId = bLoaded ? RID_IMG_MODLIB : RID_IMG_MODLIBNOTLOADED;
- SvLBoxEntry* pLibRootEntry = FindEntry( pDocumentRootEntry, aLibName, OBJ_TYPE_LIBRARY );
+ SvTreeListEntry* pLibRootEntry = FindEntry( pDocumentRootEntry, aLibName, OBJ_TYPE_LIBRARY );
if ( pLibRootEntry )
{
SetEntryBitmaps( pLibRootEntry, Image( IDEResId( nId ) ) );
@@ -303,7 +321,7 @@ void TreeListBox::ImpCreateLibEntries( SvLBoxEntry* pDocumentRootEntry, const Sc
}
}
-void TreeListBox::ImpCreateLibSubEntries( SvLBoxEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName )
+void TreeListBox::ImpCreateLibSubEntries( SvTreeListEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName )
{
// modules
if ( nMode & BROWSEMODE_MODULES )
@@ -326,7 +344,7 @@ void TreeListBox::ImpCreateLibSubEntries( SvLBoxEntry* pLibRootEntry, const Scri
for ( sal_Int32 i = 0 ; i < nModCount ; i++ )
{
OUString aModName = pModNames[ i ];
- SvLBoxEntry* pModuleEntry = FindEntry( pLibRootEntry, aModName, OBJ_TYPE_MODULE );
+ SvTreeListEntry* pModuleEntry = FindEntry( pLibRootEntry, aModName, OBJ_TYPE_MODULE );
if ( !pModuleEntry )
pModuleEntry = AddEntry(
aModName,
@@ -345,7 +363,7 @@ void TreeListBox::ImpCreateLibSubEntries( SvLBoxEntry* pLibRootEntry, const Scri
for ( sal_Int32 j = 0 ; j < nCount ; j++ )
{
OUString aName = pNames[ j ];
- SvLBoxEntry* pEntry = FindEntry( pModuleEntry, aName, OBJ_TYPE_METHOD );
+ SvTreeListEntry* pEntry = FindEntry( pModuleEntry, aName, OBJ_TYPE_METHOD );
if ( !pEntry )
pEntry = AddEntry(
aName,
@@ -382,7 +400,7 @@ void TreeListBox::ImpCreateLibSubEntries( SvLBoxEntry* pLibRootEntry, const Scri
for ( sal_Int32 i = 0 ; i < nDlgCount ; i++ )
{
OUString aDlgName = pDlgNames[ i ];
- SvLBoxEntry* pDialogEntry = FindEntry( pLibRootEntry, aDlgName, OBJ_TYPE_DIALOG );
+ SvTreeListEntry* pDialogEntry = FindEntry( pLibRootEntry, aDlgName, OBJ_TYPE_DIALOG );
if ( !pDialogEntry )
pDialogEntry = AddEntry(
aDlgName,
@@ -400,7 +418,7 @@ void TreeListBox::ImpCreateLibSubEntries( SvLBoxEntry* pLibRootEntry, const Scri
}
}
-void TreeListBox::ImpCreateLibSubEntriesInVBAMode( SvLBoxEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName )
+void TreeListBox::ImpCreateLibSubEntriesInVBAMode( SvTreeListEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName )
{
std::vector<std::pair<EntryType, OUString> > aEntries;
@@ -414,7 +432,7 @@ void TreeListBox::ImpCreateLibSubEntriesInVBAMode( SvLBoxEntry* pLibRootEntry, c
{
EntryType eType = iter->first;
OUString aEntryName = iter->second;
- SvLBoxEntry* pLibSubRootEntry = FindEntry( pLibRootEntry, aEntryName, eType );
+ SvTreeListEntry* pLibSubRootEntry = FindEntry( pLibRootEntry, aEntryName, eType );
if( pLibSubRootEntry )
{
SetEntryBitmaps( pLibSubRootEntry, Image( IDEResId( RID_IMG_MODLIB ) ) );
@@ -433,7 +451,7 @@ void TreeListBox::ImpCreateLibSubEntriesInVBAMode( SvLBoxEntry* pLibRootEntry, c
}
}
-void TreeListBox::ImpCreateLibSubSubEntriesInVBAMode( SvLBoxEntry* pLibSubRootEntry, const ScriptDocument& rDocument, const OUString& rLibName )
+void TreeListBox::ImpCreateLibSubSubEntriesInVBAMode( SvTreeListEntry* pLibSubRootEntry, const ScriptDocument& rDocument, const OUString& rLibName )
{
uno::Reference< container::XNameContainer > xLib = rDocument.getOrCreateLibrary( E_SCRIPTS, rLibName );
if( !xLib.is() )
@@ -486,7 +504,7 @@ void TreeListBox::ImpCreateLibSubSubEntriesInVBAMode( SvLBoxEntry* pLibSubRootEn
}
}
OUString aEntryName(aEntryNameBuf.makeStringAndClear());
- SvLBoxEntry* pModuleEntry = FindEntry( pLibSubRootEntry, aEntryName, OBJ_TYPE_MODULE );
+ SvTreeListEntry* pModuleEntry = FindEntry( pLibSubRootEntry, aEntryName, OBJ_TYPE_MODULE );
if ( !pModuleEntry )
pModuleEntry = AddEntry(
aEntryName,
@@ -505,7 +523,7 @@ void TreeListBox::ImpCreateLibSubSubEntriesInVBAMode( SvLBoxEntry* pLibSubRootEn
for ( sal_Int32 j = 0 ; j < nCount ; j++ )
{
OUString aName = pNames[ j ];
- SvLBoxEntry* pEntry = FindEntry( pModuleEntry, aName, OBJ_TYPE_METHOD );
+ SvTreeListEntry* pEntry = FindEntry( pModuleEntry, aName, OBJ_TYPE_METHOD );
if ( !pEntry )
pEntry = AddEntry(
aName,
@@ -523,10 +541,10 @@ void TreeListBox::ImpCreateLibSubSubEntriesInVBAMode( SvLBoxEntry* pLibSubRootEn
}
}
-SvLBoxEntry* TreeListBox::ImpFindEntry( SvLBoxEntry* pParent, const OUString& rText )
+SvTreeListEntry* TreeListBox::ImpFindEntry( SvTreeListEntry* pParent, const OUString& rText )
{
sal_uLong nRootPos = 0;
- SvLBoxEntry* pEntry = pParent ? FirstChild( pParent ) : GetEntry( nRootPos );
+ SvTreeListEntry* pEntry = pParent ? FirstChild( pParent ) : GetEntry( nRootPos );
while ( pEntry )
{
if ( rText.equals(GetEntryText( pEntry )) )
@@ -590,8 +608,8 @@ void TreeListBox::UpdateEntries()
EntryDescriptor aCurDesc( GetEntryDescriptor( FirstSelected() ) );
// removing the invalid entries
- SvLBoxEntry* pLastValid = 0;
- SvLBoxEntry* pEntry = First();
+ SvTreeListEntry* pLastValid = 0;
+ SvTreeListEntry* pEntry = First();
while ( pEntry )
{
if ( IsValidEntry( pEntry ) )
@@ -607,7 +625,7 @@ void TreeListBox::UpdateEntries()
}
// Removes the entry from the tree.
-void TreeListBox::RemoveEntry (SvLBoxEntry* pEntry)
+void TreeListBox::RemoveEntry (SvTreeListEntry* pEntry)
{
// removing the associated user data
delete static_cast<Entry*>(pEntry->GetUserData());
@@ -619,7 +637,7 @@ void TreeListBox::RemoveEntry (SvLBoxEntry* pEntry)
void TreeListBox::RemoveEntry (ScriptDocument const& rDocument)
{
// finding the entry of rDocument
- for (SvLBoxEntry* pEntry = First(); pEntry; pEntry = Next(pEntry))
+ for (SvTreeListEntry* pEntry = First(); pEntry; pEntry = Next(pEntry))
if (rDocument == GetEntryDescriptor(pEntry).GetDocument())
{
RemoveEntry(pEntry);
@@ -627,9 +645,9 @@ void TreeListBox::RemoveEntry (ScriptDocument const& rDocument)
}
}
-SvLBoxEntry* TreeListBox::CloneEntry( SvLBoxEntry* pSource )
+SvTreeListEntry* TreeListBox::CloneEntry( SvTreeListEntry* pSource )
{
- SvLBoxEntry* pNew = SvTreeListBox::CloneEntry( pSource );
+ SvTreeListEntry* pNew = SvTreeListBox::CloneEntry( pSource );
Entry* pUser = static_cast<Entry*>(pSource->GetUserData());
DBG_ASSERT( pUser, "User-Daten?!" );
@@ -640,10 +658,10 @@ SvLBoxEntry* TreeListBox::CloneEntry( SvLBoxEntry* pSource )
return pNew;
}
-SvLBoxEntry* TreeListBox::FindEntry( SvLBoxEntry* pParent, const OUString& rText, EntryType eType )
+SvTreeListEntry* TreeListBox::FindEntry( SvTreeListEntry* pParent, const OUString& rText, EntryType eType )
{
sal_uLong nRootPos = 0;
- SvLBoxEntry* pEntry = pParent ? FirstChild( pParent ) : GetEntry( nRootPos );
+ SvTreeListEntry* pEntry = pParent ? FirstChild( pParent ) : GetEntry( nRootPos );
while ( pEntry )
{
Entry* pBasicEntry = static_cast<Entry*>(pEntry->GetUserData());
@@ -662,7 +680,7 @@ long TreeListBox::ExpandingHdl()
bool bOK = true;
if ( GetModel()->GetDepth( GetHdlEntry() ) == 1 )
{
- SvLBoxEntry* pCurEntry = GetCurEntry();
+ SvTreeListEntry* pCurEntry = GetCurEntry();
EntryDescriptor aDesc( GetEntryDescriptor( pCurEntry ) );
ScriptDocument aDocument( aDesc.GetDocument() );
OSL_ENSURE( aDocument.isAlive(), "TreeListBox::ExpandingHdl: no document, or document is dead!" );
@@ -692,7 +710,7 @@ long TreeListBox::ExpandingHdl()
return bOK;
}
-bool TreeListBox::IsEntryProtected( SvLBoxEntry* pEntry )
+bool TreeListBox::IsEntryProtected( SvTreeListEntry* pEntry )
{
bool bProtected = false;
if ( pEntry && ( GetModel()->GetDepth( pEntry ) == 1 ) )
@@ -718,15 +736,15 @@ bool TreeListBox::IsEntryProtected( SvLBoxEntry* pEntry )
}
SAL_WNODEPRECATED_DECLARATIONS_PUSH
-SvLBoxEntry* TreeListBox::AddEntry(
+SvTreeListEntry* TreeListBox::AddEntry(
OUString const& rText,
const Image& rImage,
- SvLBoxEntry* pParent,
+ SvTreeListEntry* pParent,
bool bChildrenOnDemand,
std::auto_ptr<Entry> aUserData
)
{
- SvLBoxEntry* p = InsertEntry(
+ SvTreeListEntry* p = InsertEntry(
rText, rImage, rImage, pParent, bChildrenOnDemand, LIST_APPEND,
aUserData.release() // XXX possible leak
);
@@ -734,7 +752,7 @@ SvLBoxEntry* TreeListBox::AddEntry(
}
SAL_WNODEPRECATED_DECLARATIONS_POP
-void TreeListBox::SetEntryBitmaps( SvLBoxEntry * pEntry, const Image& rImage )
+void TreeListBox::SetEntryBitmaps( SvTreeListEntry * pEntry, const Image& rImage )
{
SetExpandedEntryBmp( pEntry, rImage );
SetCollapsedEntryBmp( pEntry, rImage );
@@ -809,7 +827,7 @@ void TreeListBox::GetRootEntryBitmaps( const ScriptDocument& rDocument, Image& r
void TreeListBox::SetCurrentEntry (EntryDescriptor& rDesc)
{
- SvLBoxEntry* pCurEntry = 0;
+ SvTreeListEntry* pCurEntry = 0;
EntryDescriptor aDesc = rDesc;
if ( aDesc.GetType() == OBJ_TYPE_UNKNOWN )
{
@@ -822,7 +840,7 @@ void TreeListBox::SetCurrentEntry (EntryDescriptor& rDesc)
ScriptDocument aDocument = aDesc.GetDocument();
OSL_ENSURE( aDocument.isValid(), "TreeListBox::SetCurrentEntry: invalid document!" );
LibraryLocation eLocation = aDesc.GetLocation();
- SvLBoxEntry* pRootEntry = FindRootEntry( aDocument, eLocation );
+ SvTreeListEntry* pRootEntry = FindRootEntry( aDocument, eLocation );
if ( pRootEntry )
{
pCurEntry = pRootEntry;
@@ -830,7 +848,7 @@ void TreeListBox::SetCurrentEntry (EntryDescriptor& rDesc)
if ( !aLibName.isEmpty() )
{
Expand( pRootEntry );
- SvLBoxEntry* pLibEntry = FindEntry( pRootEntry, aLibName, OBJ_TYPE_LIBRARY );
+ SvTreeListEntry* pLibEntry = FindEntry( pRootEntry, aLibName, OBJ_TYPE_LIBRARY );
if ( pLibEntry )
{
pCurEntry = pLibEntry;
@@ -838,7 +856,7 @@ void TreeListBox::SetCurrentEntry (EntryDescriptor& rDesc)
if( !aLibSubName.isEmpty() )
{
Expand( pLibEntry );
- SvLBoxEntry* pLibSubEntry = ImpFindEntry( pLibEntry, aLibSubName );
+ SvTreeListEntry* pLibSubEntry = ImpFindEntry( pLibEntry, aLibSubName );
if( pLibSubEntry )
{
pCurEntry = pLibSubEntry;
@@ -851,7 +869,7 @@ void TreeListBox::SetCurrentEntry (EntryDescriptor& rDesc)
EntryType eType = OBJ_TYPE_MODULE;
if ( aDesc.GetType() == OBJ_TYPE_DIALOG )
eType = OBJ_TYPE_DIALOG;
- SvLBoxEntry* pEntry = FindEntry( pCurEntry, aName, eType );
+ SvTreeListEntry* pEntry = FindEntry( pCurEntry, aName, eType );
if ( pEntry )
{
pCurEntry = pEntry;
@@ -859,7 +877,7 @@ void TreeListBox::SetCurrentEntry (EntryDescriptor& rDesc)
if ( !aMethodName.isEmpty() )
{
Expand( pEntry );
- SvLBoxEntry* pSubEntry = FindEntry( pEntry, aMethodName, OBJ_TYPE_METHOD );
+ SvTreeListEntry* pSubEntry = FindEntry( pEntry, aMethodName, OBJ_TYPE_METHOD );
if ( pSubEntry )
{
pCurEntry = pSubEntry;
diff --git a/basctl/source/basicide/bastype2.hxx b/basctl/source/basicide/bastype2.hxx
index 1c0de301f33f..4981a569817d 100644
--- a/basctl/source/basicide/bastype2.hxx
+++ b/basctl/source/basicide/bastype2.hxx
@@ -31,7 +31,7 @@
#include "basobj.hxx"
class SbModule;
-class SvLBoxEntry;
+class SvTreeListEntry;
class SbxVariable;
namespace basctl
@@ -177,21 +177,21 @@ class TreeListBox : public SvTreeListBox, public DocumentEventListener
private:
sal_uInt16 nMode;
DocumentEventNotifier m_aNotifier;
-
- void SetEntryBitmaps( SvLBoxEntry * pEntry, const Image& rImage );
+ void Init();
+ void SetEntryBitmaps( SvTreeListEntry * pEntry, const Image& rImage );
virtual void MouseButtonDown( const MouseEvent& rMEvt );
protected:
- virtual void RequestingChildren( SvLBoxEntry* pParent );
+ virtual void RequestingChildren( SvTreeListEntry* pParent );
virtual void ExpandedHdl();
- virtual SvLBoxEntry* CloneEntry( SvLBoxEntry* pSource );
+ virtual SvTreeListEntry* CloneEntry( SvTreeListEntry* pSource );
virtual long ExpandingHdl();
- void ImpCreateLibEntries( SvLBoxEntry* pShellRootEntry, const ScriptDocument& rDocument, LibraryLocation eLocation );
- void ImpCreateLibSubEntries( SvLBoxEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName );
- void ImpCreateLibSubEntriesInVBAMode( SvLBoxEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName );
- void ImpCreateLibSubSubEntriesInVBAMode( SvLBoxEntry* pLibSubRootEntry, const ScriptDocument& rDocument, const OUString& rLibName );
- SvLBoxEntry* ImpFindEntry( SvLBoxEntry* pParent, const OUString& rText );
+ void ImpCreateLibEntries( SvTreeListEntry* pShellRootEntry, const ScriptDocument& rDocument, LibraryLocation eLocation );
+ void ImpCreateLibSubEntries( SvTreeListEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName );
+ void ImpCreateLibSubEntriesInVBAMode( SvTreeListEntry* pLibRootEntry, const ScriptDocument& rDocument, const OUString& rLibName );
+ void ImpCreateLibSubSubEntriesInVBAMode( SvTreeListEntry* pLibSubRootEntry, const ScriptDocument& rDocument, const OUString& rLibName );
+ SvTreeListEntry* ImpFindEntry( SvTreeListEntry* pParent, const OUString& rText );
// DocumentEventListener
virtual void onDocumentCreated( const ScriptDocument& _rDocument );
@@ -205,34 +205,35 @@ protected:
virtual void onDocumentModeChanged( const ScriptDocument& _rDocument );
public:
- TreeListBox( Window* pParent, const ResId& rRes );
+ TreeListBox(Window* pParent, const ResId& rRes);
+ TreeListBox(Window* pParent);
~TreeListBox();
void ScanEntry( const ScriptDocument& rDocument, LibraryLocation eLocation );
void ScanAllEntries();
void UpdateEntries();
- bool IsEntryProtected( SvLBoxEntry* pEntry );
+ bool IsEntryProtected( SvTreeListEntry* pEntry );
void SetMode( sal_uInt16 nM ) { nMode = nM; }
sal_uInt16 GetMode() const { return nMode; }
- SbModule* FindModule( SvLBoxEntry* pEntry );
- SbxVariable* FindVariable( SvLBoxEntry* pEntry );
- SvLBoxEntry* FindRootEntry( const ScriptDocument& rDocument, LibraryLocation eLocation );
- SvLBoxEntry* FindEntry( SvLBoxEntry* pParent, const OUString& rText, EntryType eType );
+ SbModule* FindModule( SvTreeListEntry* pEntry );
+ SbxVariable* FindVariable( SvTreeListEntry* pEntry );
+ SvTreeListEntry* FindRootEntry( const ScriptDocument& rDocument, LibraryLocation eLocation );
+ SvTreeListEntry* FindEntry( SvTreeListEntry* pParent, const OUString& rText, EntryType eType );
- EntryDescriptor GetEntryDescriptor( SvLBoxEntry* pEntry );
+ EntryDescriptor GetEntryDescriptor( SvTreeListEntry* pEntry );
ItemType ConvertType (EntryType eType);
- bool IsValidEntry( SvLBoxEntry* pEntry );
+ bool IsValidEntry( SvTreeListEntry* pEntry );
- SvLBoxEntry* AddEntry(
+ SvTreeListEntry* AddEntry(
const OUString& rText, const Image& rImage,
- SvLBoxEntry* pParent, bool bChildrenOnDemand,
+ SvTreeListEntry* pParent, bool bChildrenOnDemand,
std::auto_ptr<Entry> aUserData
);
- void RemoveEntry (SvLBoxEntry*);
+ void RemoveEntry (SvTreeListEntry*);
void RemoveEntry (ScriptDocument const&);
OUString GetRootEntryName( const ScriptDocument& rDocument, LibraryLocation eLocation ) const;
diff --git a/basctl/source/basicide/bastype3.cxx b/basctl/source/basicide/bastype3.cxx
index 17c66a7cbe40..d201081dd30a 100644
--- a/basctl/source/basicide/bastype3.cxx
+++ b/basctl/source/basicide/bastype3.cxx
@@ -38,10 +38,10 @@ using namespace ::com::sun::star::uno;
using namespace ::com::sun::star;
-typedef std::deque< SvLBoxEntry* > EntryArray;
+typedef std::deque< SvTreeListEntry* > EntryArray;
-void TreeListBox::RequestingChildren( SvLBoxEntry* pEntry )
+void TreeListBox::RequestingChildren( SvTreeListEntry* pEntry )
{
EntryDescriptor aDesc = GetEntryDescriptor(pEntry);
ScriptDocument aDocument = aDesc.GetDocument();
@@ -133,12 +133,12 @@ void TreeListBox::RequestingChildren( SvLBoxEntry* pEntry )
void TreeListBox::ExpandedHdl()
{
- SvLBoxEntry* pEntry = GetHdlEntry();
+ SvTreeListEntry* pEntry = GetHdlEntry();
DBG_ASSERT( pEntry, "Was wurde zugeklappt?" );
if ( !IsExpanded( pEntry ) && pEntry->HasChildrenOnDemand() )
{
- SvLBoxEntry* pChild = FirstChild( pEntry );
+ SvTreeListEntry* pChild = FirstChild( pEntry );
while ( pChild )
{
GetModel()->Remove( pChild ); // does also call the DTOR
@@ -163,7 +163,7 @@ void TreeListBox::ScanAllEntries()
}
}
-SbxVariable* TreeListBox::FindVariable( SvLBoxEntry* pEntry )
+SbxVariable* TreeListBox::FindVariable( SvTreeListEntry* pEntry )
{
if ( !pEntry )
return 0;
@@ -199,7 +199,7 @@ SbxVariable* TreeListBox::FindVariable( SvLBoxEntry* pEntry )
{
for ( size_t n = 0; n < aEntries.size(); n++ )
{
- SvLBoxEntry* pLE = aEntries[n];
+ SvTreeListEntry* pLE = aEntries[n];
DBG_ASSERT( pLE, "Can not find entry in array" );
Entry* pBE = static_cast<Entry*>(pLE->GetUserData());
DBG_ASSERT( pBE, "The data in the entry not found!" );
@@ -260,7 +260,7 @@ SbxVariable* TreeListBox::FindVariable( SvLBoxEntry* pEntry )
return pVar;
}
-EntryDescriptor TreeListBox::GetEntryDescriptor( SvLBoxEntry* pEntry )
+EntryDescriptor TreeListBox::GetEntryDescriptor( SvTreeListEntry* pEntry )
{
ScriptDocument aDocument( ScriptDocument::getApplicationScriptDocument() );
LibraryLocation eLocation = LIBRARY_LOCATION_UNKNOWN;
@@ -306,7 +306,7 @@ EntryDescriptor TreeListBox::GetEntryDescriptor( SvLBoxEntry* pEntry )
{
for ( size_t n = 0; n < aEntries.size(); n++ )
{
- SvLBoxEntry* pLE = aEntries[n];
+ SvTreeListEntry* pLE = aEntries[n];
DBG_ASSERT( pLE, "Entrie im Array nicht gefunden" );
Entry* pBE = static_cast<Entry*>(pLE->GetUserData());
DBG_ASSERT( pBE, "Keine Daten im Eintrag gefunden!" );
@@ -376,7 +376,7 @@ ItemType TreeListBox::ConvertType (EntryType eType)
}
}
-bool TreeListBox::IsValidEntry( SvLBoxEntry* pEntry )
+bool TreeListBox::IsValidEntry( SvTreeListEntry* pEntry )
{
bool bIsValid = false;
@@ -431,16 +431,16 @@ bool TreeListBox::IsValidEntry( SvLBoxEntry* pEntry )
return bIsValid;
}
-SbModule* TreeListBox::FindModule( SvLBoxEntry* pEntry )
+SbModule* TreeListBox::FindModule( SvTreeListEntry* pEntry )
{
return dynamic_cast<SbModule*>(FindVariable(pEntry));
}
-SvLBoxEntry* TreeListBox::FindRootEntry( const ScriptDocument& rDocument, LibraryLocation eLocation )
+SvTreeListEntry* TreeListBox::FindRootEntry( const ScriptDocument& rDocument, LibraryLocation eLocation )
{
OSL_ENSURE( rDocument.isValid(), "basctl::TreeListBox::FindRootEntry: invalid document!" );
sal_uLong nRootPos = 0;
- SvLBoxEntry* pRootEntry = GetEntry( nRootPos );
+ SvTreeListEntry* pRootEntry = GetEntry( nRootPos );
while ( pRootEntry )
{
DBG_ASSERT( static_cast<Entry*>(pRootEntry->GetUserData())->GetType() == OBJ_TYPE_DOCUMENT, "Kein Shelleintrag?" );
diff --git a/basctl/source/basicide/macrodlg.cxx b/basctl/source/basicide/macrodlg.cxx
index 9bc56e994098..c4d16253a4d1 100644
--- a/basctl/source/basicide/macrodlg.cxx
+++ b/basctl/source/basicide/macrodlg.cxx
@@ -59,61 +59,58 @@ using ::std::pair;
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
-MacroChooser::MacroChooser( Window* pParnt, bool bCreateEntries ) :
- SfxModalDialog( pParnt, IDEResId( RID_MACROCHOOSER ) ),
- aMacroNameTxt( this, IDEResId( RID_TXT_MACRONAME ) ),
- aMacroNameEdit( this, IDEResId( RID_ED_MACRONAME ) ),
- aMacroFromTxT( this, IDEResId( RID_TXT_MACROFROM ) ),
- aMacrosSaveInTxt( this, IDEResId( RID_TXT_SAVEMACRO ) ),
- aBasicBox( this, IDEResId( RID_CTRL_LIB ) ),
- aMacrosInTxt( this, IDEResId( RID_TXT_MACROSIN ) ),
- aMacrosInTxtBaseStr(aMacrosInTxt.GetText()),
- aMacroBox( this, IDEResId( RID_CTRL_MACRO ) ),
- aRunButton( this, IDEResId( RID_PB_RUN ) ),
- aCloseButton( this, IDEResId( RID_PB_CLOSE ) ),
- aAssignButton( this, IDEResId( RID_PB_ASSIGN ) ),
- aEditButton( this, IDEResId( RID_PB_EDIT ) ),
- aNewDelButton( this, IDEResId( RID_PB_DEL ) ),
- aOrganizeButton( this, IDEResId( RID_PB_ORG ) ),
- aHelpButton( this, IDEResId( RID_PB_HELP ) ),
- aNewLibButton( this, IDEResId( RID_PB_NEWLIB ) ),
- aNewModButton( this, IDEResId( RID_PB_NEWMOD ) ),
- bNewDelIsDel(true),
+MacroChooser::MacroChooser( Window* pParnt, bool bCreateEntries )
+ : SfxModalDialog(pParnt, "BasicMacroDialog", "modules/BasicIDE/ui/basicmacrodialog.ui")
+ , bNewDelIsDel(true)
// the Sfx doesn't aske the BasicManger whether modified or not
// => start saving in case of a change without a into the BasicIDE.
- bForceStoreBasic(false),
- nMode(All)
+ , bForceStoreBasic(false)
+ , nMode(All)
{
- FreeResource();
-
- aMacroBox.SetSelectionMode( SINGLE_SELECTION );
- aMacroBox.SetHighlightRange(); // select over the whole width
-
- aRunButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
- aCloseButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
- aAssignButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
- aEditButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
- aNewDelButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
- aOrganizeButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ get(m_pMacroNameEdit, "macronameedit");
+ get(m_pMacroFromTxT, "macrofromft");
+ get(m_pMacrosSaveInTxt, "macrotoft");
+ get(m_pBasicBox, "libraries");
+ get(m_pMacrosInTxt, "existingmacrosft");
+ m_aMacrosInTxtBaseStr = m_pMacrosInTxt->GetText();
+ get(m_pMacroBox, "macros");
+ get(m_pRunButton, "run");
+ get(m_pCloseButton, "close");
+ get(m_pAssignButton, "assign");
+ get(m_pEditButton, "edit");
+ get(m_pDelButton, "delete");
+ get(m_pOrganizeButton, "organize");
+ get(m_pNewLibButton, "newlibrary");
+ get(m_pNewModButton, "newmodule");
+
+ m_pMacroBox->SetSelectionMode( SINGLE_SELECTION );
+ m_pMacroBox->SetHighlightRange(); // select over the whole width
+
+ m_pRunButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ m_pCloseButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ m_pAssignButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ m_pEditButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ m_pDelButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ m_pOrganizeButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
// Buttons only for MacroChooser::Recording
- aNewLibButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
- aNewModButton.SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
- aNewLibButton.Hide(); // default
- aNewModButton.Hide(); // default
- aMacrosSaveInTxt.Hide(); // default
+ m_pNewLibButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ m_pNewModButton->SetClickHdl( LINK( this, MacroChooser, ButtonHdl ) );
+ m_pNewLibButton->Hide(); // default
+ m_pNewModButton->Hide(); // default
+ m_pMacrosSaveInTxt->Hide(); // default
- aMacrosInTxt.SetStyle( WB_NOMULTILINE | WB_PATHELLIPSIS );
+ m_pMacrosInTxt->SetStyle( WB_NOMULTILINE | WB_PATHELLIPSIS );
- aMacroNameEdit.SetModifyHdl( LINK( this, MacroChooser, EditModifyHdl ) );
+ m_pMacroNameEdit->SetModifyHdl( LINK( this, MacroChooser, EditModifyHdl ) );
- aBasicBox.SetSelectHdl( LINK( this, MacroChooser, BasicSelectHdl ) );
+ m_pBasicBox->SetSelectHdl( LINK( this, MacroChooser, BasicSelectHdl ) );
- aMacroBox.SetDoubleClickHdl( LINK( this, MacroChooser, MacroDoubleClickHdl ) );
- aMacroBox.SetSelectHdl( LINK( this, MacroChooser, MacroSelectHdl ) );
+ m_pMacroBox->SetDoubleClickHdl( LINK( this, MacroChooser, MacroDoubleClickHdl ) );
+ m_pMacroBox->SetSelectHdl( LINK( this, MacroChooser, MacroSelectHdl ) );
- aBasicBox.SetMode( BROWSEMODE_MODULES );
- aBasicBox.SetStyle( WB_TABSTOP | WB_BORDER |
+ m_pBasicBox->SetMode( BROWSEMODE_MODULES );
+ m_pBasicBox->SetStyle( WB_TABSTOP | WB_BORDER |
WB_HASLINES | WB_HASLINESATROOT |
WB_HASBUTTONS | WB_HASBUTTONSATROOT |
WB_HSCROLL );
@@ -122,7 +119,7 @@ MacroChooser::MacroChooser( Window* pParnt, bool bCreateEntries ) :
pDispatcher->Execute( SID_BASICIDE_STOREALLMODULESOURCES );
if ( bCreateEntries )
- aBasicBox.ScanAllEntries();
+ m_pBasicBox->ScanAllEntries();
}
MacroChooser::~MacroChooser()
@@ -133,13 +130,13 @@ MacroChooser::~MacroChooser()
void MacroChooser::StoreMacroDescription()
{
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(aBasicBox.FirstSelected());
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(m_pBasicBox->FirstSelected());
String aMethodName;
- SvLBoxEntry* pEntry = aMacroBox.FirstSelected();
+ SvTreeListEntry* pEntry = m_pMacroBox->FirstSelected();
if ( pEntry )
- aMethodName = aMacroBox.GetEntryText( pEntry );
+ aMethodName = m_pMacroBox->GetEntryText( pEntry );
else
- aMethodName = aMacroNameEdit.GetText();
+ aMethodName = m_pMacroNameEdit->GetText();
if ( aMethodName.Len() )
{
aDesc.SetMethodName( aMethodName );
@@ -164,31 +161,31 @@ void MacroChooser::RestoreMacroDescription()
aDesc = pData->GetLastEntryDescriptor();
}
- aBasicBox.SetCurrentEntry( aDesc );
+ m_pBasicBox->SetCurrentEntry( aDesc );
String aLastMacro( aDesc.GetMethodName() );
if ( aLastMacro.Len() )
{
// find entry in macro box
- SvLBoxEntry* pEntry = 0;
+ SvTreeListEntry* pEntry = 0;
sal_uLong nPos = 0;
- SvLBoxEntry* pE = aMacroBox.GetEntry( nPos );
+ SvTreeListEntry* pE = m_pMacroBox->GetEntry( nPos );
while ( pE )
{
- if ( aMacroBox.GetEntryText( pE ) == aLastMacro )
+ if ( m_pMacroBox->GetEntryText( pE ) == aLastMacro )
{
pEntry = pE;
break;
}
- pE = aMacroBox.GetEntry( ++nPos );
+ pE = m_pMacroBox->GetEntry( ++nPos );
}
if ( pEntry )
- aMacroBox.SetCurEntry( pEntry );
+ m_pMacroBox->SetCurEntry( pEntry );
else
{
- aMacroNameEdit.SetText( aLastMacro );
- aMacroNameEdit.SetSelection( Selection( 0, 0 ) );
+ m_pMacroNameEdit->SetText( aLastMacro );
+ m_pMacroNameEdit->SetSelection( Selection( 0, 0 ) );
}
}
}
@@ -196,11 +193,11 @@ void MacroChooser::RestoreMacroDescription()
short MacroChooser::Execute()
{
RestoreMacroDescription();
- aRunButton.GrabFocus();
+ m_pRunButton->GrabFocus();
// #104198 Check if "wrong" document is active
- SvLBoxEntry* pSelectedEntry = aBasicBox.GetCurEntry();
- EntryDescriptor aDesc( aBasicBox.GetEntryDescriptor( pSelectedEntry ) );
+ SvTreeListEntry* pSelectedEntry = m_pBasicBox->GetCurEntry();
+ EntryDescriptor aDesc( m_pBasicBox->GetEntryDescriptor( pSelectedEntry ) );
const ScriptDocument& rSelectedDoc( aDesc.GetDocument() );
// App Basic is always ok, so only check if shell was found
@@ -208,24 +205,24 @@ short MacroChooser::Execute()
{
// Search for the right entry
sal_uLong nRootPos = 0;
- SvLBoxEntry* pRootEntry = aBasicBox.GetEntry( nRootPos );
+ SvTreeListEntry* pRootEntry = m_pBasicBox->GetEntry( nRootPos );
while( pRootEntry )
{
- EntryDescriptor aCmpDesc( aBasicBox.GetEntryDescriptor( pRootEntry ) );
+ EntryDescriptor aCmpDesc( m_pBasicBox->GetEntryDescriptor( pRootEntry ) );
const ScriptDocument& rCmpDoc( aCmpDesc.GetDocument() );
if ( rCmpDoc.isDocument() && rCmpDoc.isActive() )
{
- SvLBoxEntry* pEntry = pRootEntry;
- SvLBoxEntry* pLastValid = pEntry;
+ SvTreeListEntry* pEntry = pRootEntry;
+ SvTreeListEntry* pLastValid = pEntry;
while ( pEntry )
{
pLastValid = pEntry;
- pEntry = aBasicBox.FirstChild( pEntry );
+ pEntry = m_pBasicBox->FirstChild( pEntry );
}
if( pLastValid )
- aBasicBox.SetCurEntry( pLastValid );
+ m_pBasicBox->SetCurEntry( pLastValid );
}
- pRootEntry = aBasicBox.GetEntry( ++nRootPos );
+ pRootEntry = m_pBasicBox->GetEntry( ++nRootPos );
}
}
@@ -233,7 +230,7 @@ short MacroChooser::Execute()
UpdateFields();
if ( StarBASIC::IsRunning() )
- aCloseButton.GrabFocus();
+ m_pCloseButton->GrabFocus();
Window* pPrevDlgParent = Application::GetDefDialogParent();
Application::SetDefDialogParent( this );
@@ -250,7 +247,7 @@ void MacroChooser::EnableButton( Button& rButton, bool bEnable )
if ( bEnable )
{
if (nMode == ChooseOnly || nMode == Recording)
- rButton.Enable(&rButton == &aRunButton);
+ rButton.Enable(&rButton == m_pRunButton);
else
rButton.Enable();
}
@@ -264,13 +261,13 @@ void MacroChooser::EnableButton( Button& rButton, bool bEnable )
SbMethod* MacroChooser::GetMacro()
{
SbMethod* pMethod = 0;
- SbModule* pModule = aBasicBox.FindModule( aBasicBox.GetCurEntry() );
+ SbModule* pModule = m_pBasicBox->FindModule( m_pBasicBox->GetCurEntry() );
if ( pModule )
{
- SvLBoxEntry* pEntry = aMacroBox.FirstSelected();
+ SvTreeListEntry* pEntry = m_pMacroBox->FirstSelected();
if ( pEntry )
{
- String aMacroName( aMacroBox.GetEntryText( pEntry ) );
+ String aMacroName( m_pMacroBox->GetEntryText( pEntry ) );
pMethod = (SbMethod*)pModule->GetMethods()->Find( aMacroName, SbxCLASS_METHOD );
}
}
@@ -315,9 +312,9 @@ void MacroChooser::DeleteMacro()
String aModName = pModule->GetName();
OSL_VERIFY( aDocument.updateModule( aLibName, aModName, aSource ) );
- SvLBoxEntry* pEntry = aMacroBox.FirstSelected();
+ SvTreeListEntry* pEntry = m_pMacroBox->FirstSelected();
DBG_ASSERT( pEntry, "DeleteMacro: Entry ?!" );
- aMacroBox.GetModel()->Remove( pEntry );
+ m_pMacroBox->GetModel()->Remove( pEntry );
bForceStoreBasic = true;
}
}
@@ -325,8 +322,8 @@ void MacroChooser::DeleteMacro()
SbMethod* MacroChooser::CreateMacro()
{
SbMethod* pMethod = 0;
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
+ SvTreeListEntry* pCurEntry = m_pBasicBox->GetCurEntry();
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(pCurEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
OSL_ENSURE( aDocument.isAlive(), "MacroChooser::CreateMacro: no document!" );
if ( !aDocument.isAlive() )
@@ -369,10 +366,10 @@ SbMethod* MacroChooser::CreateMacro()
if ( !pModule )
{
pModule = createModImpl( static_cast<Window*>( this ),
- aDocument, aBasicBox, aLibName, aModName );
+ aDocument, *m_pBasicBox, aLibName, aModName );
}
- String aSubName = aMacroNameEdit.GetText();
+ String aSubName = m_pMacroNameEdit->GetText();
DBG_ASSERT( !pModule || !pModule->GetMethods()->Find( aSubName, SbxCLASS_METHOD ), "Macro existiert schon!" );
pMethod = pModule ? basctl::CreateMacro( pModule, aSubName ) : NULL;
}
@@ -380,28 +377,28 @@ SbMethod* MacroChooser::CreateMacro()
return pMethod;
}
-void MacroChooser::SaveSetCurEntry( SvTreeListBox& rBox, SvLBoxEntry* pEntry )
+void MacroChooser::SaveSetCurEntry( SvTreeListBox& rBox, SvTreeListEntry* pEntry )
{
// the edit would be killed by the highlight otherwise:
- String aSaveText( aMacroNameEdit.GetText() );
- Selection aCurSel( aMacroNameEdit.GetSelection() );
+ String aSaveText( m_pMacroNameEdit->GetText() );
+ Selection aCurSel( m_pMacroNameEdit->GetSelection() );
rBox.SetCurEntry( pEntry );
- aMacroNameEdit.SetText( aSaveText );
- aMacroNameEdit.SetSelection( aCurSel );
+ m_pMacroNameEdit->SetText( aSaveText );
+ m_pMacroNameEdit->SetSelection( aCurSel );
}
void MacroChooser::CheckButtons()
{
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
- SvLBoxEntry* pMacroEntry = aMacroBox.FirstSelected();
+ SvTreeListEntry* pCurEntry = m_pBasicBox->GetCurEntry();
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(pCurEntry);
+ SvTreeListEntry* pMacroEntry = m_pMacroBox->FirstSelected();
SbMethod* pMethod = GetMacro();
// check, if corresponding libraries are readonly
bool bReadOnly = false;
- sal_uInt16 nDepth = pCurEntry ? aBasicBox.GetModel()->GetDepth( pCurEntry ) : 0;
+ sal_uInt16 nDepth = pCurEntry ? m_pBasicBox->GetModel()->GetDepth( pCurEntry ) : 0;
if ( nDepth == 1 || nDepth == 2 )
{
ScriptDocument aDocument( aDesc.GetDocument() );
@@ -421,40 +418,40 @@ void MacroChooser::CheckButtons()
bool bEnable = pMethod ? true : false;
if (nMode != ChooseOnly && StarBASIC::IsRunning())
bEnable = false;
- EnableButton( aRunButton, bEnable );
+ EnableButton(*m_pRunButton, bEnable);
}
// organising still possible?
// Assign...
- EnableButton( aAssignButton, pMethod ? true : false );
+ EnableButton(*m_pAssignButton, pMethod ? true : false);
// Edit...
- EnableButton( aEditButton, pMacroEntry ? true : false );
+ EnableButton(*m_pEditButton, pMacroEntry ? true : false);
- // aOrganizeButton
- EnableButton( aOrganizeButton, !StarBASIC::IsRunning() && nMode == All );
+ // Organizer...
+ EnableButton(*m_pOrganizeButton, !StarBASIC::IsRunning() && nMode == All);
- // aNewDelButton....
- bool bProtected = aBasicBox.IsEntryProtected( pCurEntry );
+ // m_pDelButton->...
+ bool bProtected = m_pBasicBox->IsEntryProtected( pCurEntry );
bool bShare = ( aDesc.GetLocation() == LIBRARY_LOCATION_SHARE );
- EnableButton(aNewDelButton, !StarBASIC::IsRunning() && nMode == All && !bProtected && !bReadOnly && !bShare);
+ EnableButton(*m_pDelButton, !StarBASIC::IsRunning() && nMode == All && !bProtected && !bReadOnly && !bShare);
bool bPrev = bNewDelIsDel;
bNewDelIsDel = pMethod ? true : false;
if (bPrev != bNewDelIsDel && nMode == All)
{
String aBtnText( bNewDelIsDel ? IDEResId( RID_STR_BTNDEL) : IDEResId( RID_STR_BTNNEW ) );
- aNewDelButton.SetText( aBtnText );
+ m_pDelButton->SetText( aBtnText );
}
if (nMode == Recording)
{
// save button
- aRunButton.Enable(!bProtected && !bReadOnly && !bShare);
+ m_pRunButton->Enable(!bProtected && !bReadOnly && !bShare);
// new library button
- aNewLibButton.Enable(!bShare);
+ m_pNewLibButton->Enable(!bShare);
// new module button
- aNewModButton.Enable(!bProtected && !bReadOnly && !bShare);
+ m_pNewModButton->Enable(!bProtected && !bReadOnly && !bShare);
}
}
@@ -498,16 +495,16 @@ IMPL_LINK( MacroChooser, BasicSelectHdl, SvTreeListBox *, pBox )
if ( !pBox->IsSelected( pBox->GetHdlEntry() ) )
return 0;
- SbModule* pModule = aBasicBox.FindModule( aBasicBox.GetCurEntry() );
+ SbModule* pModule = m_pBasicBox->FindModule( m_pBasicBox->GetCurEntry() );
- aMacroBox.Clear();
+ m_pMacroBox->Clear();
if ( pModule )
{
- String aStr = aMacrosInTxtBaseStr;
+ String aStr = m_aMacrosInTxtBaseStr;
aStr += " " ;
aStr += pModule->GetName();
- aMacrosInTxt.SetText( aStr );
+ m_pMacrosInTxt->SetText( aStr );
// The macros should be called in the same order that they
// are written down in the module.
@@ -525,16 +522,16 @@ IMPL_LINK( MacroChooser, BasicSelectHdl, SvTreeListBox *, pBox )
aMacros.insert( map< sal_uInt16, SbMethod*>::value_type( nStart, pMethod ) );
}
- aMacroBox.SetUpdateMode(false);
+ m_pMacroBox->SetUpdateMode(false);
for ( map< sal_uInt16, SbMethod* >::iterator it = aMacros.begin(); it != aMacros.end(); ++it )
- aMacroBox.InsertEntry( (*it).second->GetName() );
- aMacroBox.SetUpdateMode(true);
+ m_pMacroBox->InsertEntry( (*it).second->GetName() );
+ m_pMacroBox->SetUpdateMode(true);
- if ( aMacroBox.GetEntryCount() )
+ if ( m_pMacroBox->GetEntryCount() )
{
- SvLBoxEntry* pEntry = aMacroBox.GetEntry( 0 );
+ SvTreeListEntry* pEntry = m_pMacroBox->GetEntry( 0 );
DBG_ASSERT( pEntry, "Entry ?!" );
- aMacroBox.SetCurEntry( pEntry );
+ m_pMacroBox->SetCurEntry( pEntry );
}
}
@@ -551,51 +548,51 @@ IMPL_LINK( MacroChooser, EditModifyHdl, Edit *, pEdit )
// select the module in which the macro is put at Neu (new),
// if BasicManager or Lib is selecting
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = m_pBasicBox->GetCurEntry();
if ( pCurEntry )
{
- sal_uInt16 nDepth = aBasicBox.GetModel()->GetDepth( pCurEntry );
- if ( ( nDepth == 1 ) && ( aBasicBox.IsEntryProtected( pCurEntry ) ) )
+ sal_uInt16 nDepth = m_pBasicBox->GetModel()->GetDepth( pCurEntry );
+ if ( ( nDepth == 1 ) && ( m_pBasicBox->IsEntryProtected( pCurEntry ) ) )
{
// then put to the respective Std-Lib...
- SvLBoxEntry* pManagerEntry = aBasicBox.GetModel()->GetParent( pCurEntry );
- pCurEntry = aBasicBox.GetModel()->FirstChild( pManagerEntry );
+ SvTreeListEntry* pManagerEntry = m_pBasicBox->GetModel()->GetParent( pCurEntry );
+ pCurEntry = m_pBasicBox->GetModel()->FirstChild( pManagerEntry );
}
if ( nDepth < 2 )
{
- SvLBoxEntry* pNewEntry = pCurEntry;
+ SvTreeListEntry* pNewEntry = pCurEntry;
while ( pCurEntry && ( nDepth < 2 ) )
{
- pCurEntry = aBasicBox.FirstChild( pCurEntry );
+ pCurEntry = m_pBasicBox->FirstChild( pCurEntry );
if ( pCurEntry )
{
pNewEntry = pCurEntry;
- nDepth = aBasicBox.GetModel()->GetDepth( pCurEntry );
+ nDepth = m_pBasicBox->GetModel()->GetDepth( pCurEntry );
}
}
- SaveSetCurEntry( aBasicBox, pNewEntry );
+ SaveSetCurEntry( *m_pBasicBox, pNewEntry );
}
- if ( aMacroBox.GetEntryCount() )
+ if ( m_pMacroBox->GetEntryCount() )
{
- String aEdtText( aMacroNameEdit.GetText() );
+ String aEdtText( m_pMacroNameEdit->GetText() );
bool bFound = false;
- for ( sal_uInt16 n = 0; n < aMacroBox.GetEntryCount(); n++ )
+ for ( sal_uInt16 n = 0; n < m_pMacroBox->GetEntryCount(); n++ )
{
- SvLBoxEntry* pEntry = aMacroBox.GetEntry( n );
+ SvTreeListEntry* pEntry = m_pMacroBox->GetEntry( n );
DBG_ASSERT( pEntry, "Entry ?!" );
- if ( aMacroBox.GetEntryText( pEntry ).CompareIgnoreCaseToAscii( aEdtText ) == COMPARE_EQUAL )
+ if ( m_pMacroBox->GetEntryText( pEntry ).CompareIgnoreCaseToAscii( aEdtText ) == COMPARE_EQUAL )
{
- SaveSetCurEntry( aMacroBox, pEntry );
+ SaveSetCurEntry(*m_pMacroBox, pEntry);
bFound = true;
break;
}
}
if ( !bFound )
{
- SvLBoxEntry* pEntry = aMacroBox.FirstSelected();
+ SvTreeListEntry* pEntry = m_pMacroBox->FirstSelected();
// if the entry exists ->Select ->Desription...
if ( pEntry )
- aMacroBox.Select( pEntry, false );
+ m_pMacroBox->Select( pEntry, false );
}
}
}
@@ -609,7 +606,7 @@ IMPL_LINK( MacroChooser, EditModifyHdl, Edit *, pEdit )
IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
{
// apart from New/Record the Description is done by LoseFocus
- if ( pButton == &aRunButton )
+ if (pButton == m_pRunButton)
{
StoreMacroDescription();
@@ -632,11 +629,11 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
}
else if (nMode == Recording )
{
- if ( !IsValidSbxName(aMacroNameEdit.GetText()) )
+ if ( !IsValidSbxName(m_pMacroNameEdit->GetText()) )
{
ErrorBox( this, WB_OK | WB_DEF_OK, String( IDEResId( RID_STR_BADSBXNAME ) ) ).Execute();
- aMacroNameEdit.SetSelection( Selection( 0, aMacroNameEdit.GetText().Len() ) );
- aMacroNameEdit.GrabFocus();
+ m_pMacroNameEdit->SetSelection( Selection( 0, m_pMacroNameEdit->GetText().Len() ) );
+ m_pMacroNameEdit->GrabFocus();
return 0;
}
@@ -647,15 +644,15 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
EndDialog(Macro_OkRun);
}
- else if ( pButton == &aCloseButton )
+ else if (pButton == m_pCloseButton)
{
StoreMacroDescription();
EndDialog(Macro_Close);
}
- else if ( ( pButton == &aEditButton ) || ( pButton == &aNewDelButton ) )
+ else if ((pButton == m_pEditButton) || (pButton == m_pDelButton))
{
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
+ SvTreeListEntry* pCurEntry = m_pBasicBox->GetCurEntry();
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(pCurEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
DBG_ASSERT( aDocument.isAlive(), "MacroChooser::ButtonHdl: no document, or document is dead!" );
if ( !aDocument.isAlive() )
@@ -671,11 +668,11 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
}
String aSub( aDesc.GetMethodName() );
SfxMacroInfoItem aInfoItem( SID_BASICIDE_ARG_MACROINFO, pBasMgr, aLib, aMod, aSub, String() );
- if ( pButton == &aEditButton )
+ if (pButton == m_pEditButton)
{
- SvLBoxEntry* pEntry = aMacroBox.FirstSelected();
+ SvTreeListEntry* pEntry = m_pMacroBox->FirstSelected();
if ( pEntry )
- aInfoItem.SetMethod( aMacroBox.GetEntryText( pEntry ) );
+ aInfoItem.SetMethod( m_pMacroBox->GetEntryText( pEntry ) );
StoreMacroDescription();
SfxAllItemSet aArgs( SFX_APP()->GetPool() );
SfxRequest aRequest( SID_BASICIDE_APPEAR, SFX_CALLMODE_SYNCHRON, aArgs );
@@ -695,16 +692,16 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
SFX_CALLMODE_SYNCHRON, &aInfoItem, 0L );
CheckButtons();
UpdateFields();
- //if ( aMacroBox.GetCurEntry() ) // OV-Bug ?
- // aMacroBox.Select( aMacroBox.GetCurEntry() );
+ //if ( m_pMacroBox->GetCurEntry() ) // OV-Bug ?
+ // m_pMacroBox->Select( m_pMacroBox->GetCurEntry() );
}
else
{
- if ( !IsValidSbxName(aMacroNameEdit.GetText()) )
+ if ( !IsValidSbxName(m_pMacroNameEdit->GetText()) )
{
ErrorBox( this, WB_OK | WB_DEF_OK, String( IDEResId( RID_STR_BADSBXNAME ) ) ).Execute();
- aMacroNameEdit.SetSelection( Selection( 0, aMacroNameEdit.GetText().Len() ) );
- aMacroNameEdit.GrabFocus();
+ m_pMacroNameEdit->SetSelection( Selection( 0, m_pMacroNameEdit->GetText().Len() ) );
+ m_pMacroNameEdit->GrabFocus();
return 1;
}
SbMethod* pMethod = CreateMacro();
@@ -725,11 +722,10 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
}
}
}
-
- else if ( pButton == &aAssignButton )
+ else if (pButton == m_pAssignButton)
{
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
+ SvTreeListEntry* pCurEntry = m_pBasicBox->GetCurEntry();
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(pCurEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
DBG_ASSERT( aDocument.isAlive(), "MacroChooser::ButtonHdl: no document, or document is dead!" );
if ( !aDocument.isAlive() )
@@ -737,7 +733,7 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
BasicManager* pBasMgr = aDocument.getBasicManager();
String aLib( aDesc.GetLibName() );
String aMod( aDesc.GetName() );
- String aSub( aMacroNameEdit.GetText() );
+ String aSub( m_pMacroNameEdit->GetText() );
SbMethod* pMethod = GetMacro();
DBG_ASSERT( pBasMgr, "BasMgr?" );
DBG_ASSERT( pMethod, "Method?" );
@@ -748,28 +744,28 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
aRequest.AppendItem( aItem );
SFX_APP()->ExecuteSlot( aRequest );
}
- else if ( pButton == &aNewLibButton )
+ else if (pButton == m_pNewLibButton)
{
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
+ SvTreeListEntry* pCurEntry = m_pBasicBox->GetCurEntry();
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(pCurEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
- createLibImpl( static_cast<Window*>( this ), aDocument, NULL, &aBasicBox );
+ createLibImpl( static_cast<Window*>( this ), aDocument, NULL, m_pBasicBox );
}
- else if ( pButton == &aNewModButton )
+ else if (pButton == m_pNewModButton)
{
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
+ SvTreeListEntry* pCurEntry = m_pBasicBox->GetCurEntry();
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(pCurEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
String aLibName( aDesc.GetLibName() );
String aModName;
createModImpl( static_cast<Window*>( this ), aDocument,
- aBasicBox, aLibName, aModName, true );
+ *m_pBasicBox, aLibName, aModName, true );
}
- else if ( pButton == &aOrganizeButton )
+ else if (pButton == m_pOrganizeButton)
{
StoreMacroDescription();
- EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(aBasicBox.FirstSelected());
+ EntryDescriptor aDesc = m_pBasicBox->GetEntryDescriptor(m_pBasicBox->FirstSelected());
OrganizeDialog* pDlg = new OrganizeDialog( this, 0, aDesc );
sal_uInt16 nRet = pDlg->Execute();
delete pDlg;
@@ -784,7 +780,7 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
if ( pShell && pShell->IsAppBasicModified() )
bForceStoreBasic = true;
- aBasicBox.UpdateEntries();
+ m_pBasicBox->UpdateEntries();
}
return 0;
}
@@ -793,12 +789,12 @@ IMPL_LINK( MacroChooser, ButtonHdl, Button *, pButton )
void MacroChooser::UpdateFields()
{
- SvLBoxEntry* pMacroEntry = aMacroBox.GetCurEntry();
+ SvTreeListEntry* pMacroEntry = m_pMacroBox->GetCurEntry();
String aEmptyStr;
- aMacroNameEdit.SetText( aEmptyStr );
+ m_pMacroNameEdit->SetText( aEmptyStr );
if ( pMacroEntry )
- aMacroNameEdit.SetText( aMacroBox.GetEntryText( pMacroEntry ) );
+ m_pMacroNameEdit->SetText( m_pMacroBox->GetEntryText( pMacroEntry ) );
}
void MacroChooser::SetMode (Mode nM)
@@ -808,41 +804,36 @@ void MacroChooser::SetMode (Mode nM)
{
case All:
{
- aRunButton.SetText( String( IDEResId( RID_STR_RUN ) ) );
- EnableButton( aNewDelButton, true );
- EnableButton( aOrganizeButton, true );
+ m_pRunButton->SetText( String( IDEResId( RID_STR_RUN ) ) );
+ EnableButton(*m_pDelButton, true);
+ EnableButton(*m_pOrganizeButton, true);
break;
}
case ChooseOnly:
{
- aRunButton.SetText( String( IDEResId( RID_STR_CHOOSE ) ) );
- EnableButton( aNewDelButton, false );
- EnableButton( aOrganizeButton, false );
+ m_pRunButton->SetText( String( IDEResId( RID_STR_CHOOSE ) ) );
+ EnableButton(*m_pDelButton, false);
+ EnableButton(*m_pOrganizeButton, false);
break;
}
case Recording:
{
- aRunButton.SetText( String( IDEResId( RID_STR_RECORD ) ) );
- EnableButton( aNewDelButton, false );
- EnableButton( aOrganizeButton, false );
-
- aAssignButton.Hide();
- aEditButton.Hide();
- aNewDelButton.Hide();
- aOrganizeButton.Hide();
- aMacroFromTxT.Hide();
-
- aNewLibButton.Show();
- aNewModButton.Show();
- aMacrosSaveInTxt.Show();
-
- Point aHelpPos = aHelpButton.GetPosPixel();
- Point aHelpPosLogic = PixelToLogic( aHelpPos, MapMode(MAP_APPFONT) );
- aHelpPosLogic.Y() -= 34;
- aHelpPos = LogicToPixel( aHelpPosLogic, MapMode(MAP_APPFONT) );
- aHelpButton.SetPosPixel( aHelpPos );
+ m_pRunButton->SetText( String( IDEResId( RID_STR_RECORD ) ) );
+ EnableButton(*m_pDelButton, false);
+ EnableButton(*m_pOrganizeButton, false);
+
+ m_pAssignButton->Hide();
+ m_pEditButton->Hide();
+ m_pDelButton->Hide();
+ m_pOrganizeButton->Hide();
+ m_pMacroFromTxT->Hide();
+
+ m_pNewLibButton->Show();
+ m_pNewModButton->Show();
+ m_pMacrosSaveInTxt->Show();
+
break;
}
}
diff --git a/basctl/source/basicide/macrodlg.hrc b/basctl/source/basicide/macrodlg.hrc
index 6ca7749ae1ff..8c4f2b21f461 100644
--- a/basctl/source/basicide/macrodlg.hrc
+++ b/basctl/source/basicide/macrodlg.hrc
@@ -20,31 +20,10 @@
#include <svl/solar.hrc>
-#define RID_MACROCHOOSER ( RID_BASICIDE_START + 50 )
#define RID_STR_BTNDEL ( RID_BASICIDE_START + 51 )
#define RID_STR_BTNNEW ( RID_BASICIDE_START + 52 )
#define RID_STR_CHOOSE ( RID_BASICIDE_START + 53 )
#define RID_STR_RUN ( RID_BASICIDE_START + 54 )
#define RID_STR_RECORD ( RID_BASICIDE_START + 56 )
-#define RID_CTRL_MACRO 1
-#define RID_CTRL_LIB 2
-#define RID_TXT_MACRONAME 3
-#define RID_TXT_MACROFROM 4
-#define RID_ED_MACRONAME 5
-#define RID_TXT_DESCRIPTION 6
-#define RID_PB_RUN 8
-#define RID_PB_CLOSE 9
-#define RID_PB_EDIT 10
-#define RID_PB_ORG 11
-#define RID_PB_DEL 12
-#define RID_PB_ASSIGN 13
-#define RID_PB_HELP 15
-#define RID_ML_DESCRIPTION 16
-#define RID_TXT_MACROSIN 17
-#define RID_TXT_SAVEMACRO 18
-#define RID_PB_NEWLIB 19
-#define RID_PB_NEWMOD 20
-
#endif // BASCTL_MACRODLG_HRC
-
diff --git a/basctl/source/basicide/macrodlg.hxx b/basctl/source/basicide/macrodlg.hxx
index 083cb2ef532a..339de6c54a61 100644
--- a/basctl/source/basicide/macrodlg.hxx
+++ b/basctl/source/basicide/macrodlg.hxx
@@ -49,24 +49,22 @@ public:
};
private:
- FixedText aMacroNameTxt;
- Edit aMacroNameEdit;
- FixedText aMacroFromTxT;
- FixedText aMacrosSaveInTxt;
- TreeListBox aBasicBox;
- FixedText aMacrosInTxt;
- String aMacrosInTxtBaseStr;
- SvTreeListBox aMacroBox;
-
- PushButton aRunButton;
- CancelButton aCloseButton;
- PushButton aAssignButton;
- PushButton aEditButton;
- PushButton aNewDelButton;
- PushButton aOrganizeButton;
- HelpButton aHelpButton;
- PushButton aNewLibButton;
- PushButton aNewModButton;
+ Edit* m_pMacroNameEdit;
+ FixedText* m_pMacroFromTxT;
+ FixedText* m_pMacrosSaveInTxt;
+ TreeListBox* m_pBasicBox;
+ FixedText* m_pMacrosInTxt;
+ String m_aMacrosInTxtBaseStr;
+ SvTreeListBox* m_pMacroBox;
+
+ PushButton* m_pRunButton;
+ PushButton* m_pCloseButton;
+ PushButton* m_pAssignButton;
+ PushButton* m_pEditButton;
+ PushButton* m_pDelButton;
+ PushButton* m_pOrganizeButton;
+ PushButton* m_pNewLibButton;
+ PushButton* m_pNewModButton;
bool bNewDelIsDel;
bool bForceStoreBasic;
@@ -80,7 +78,7 @@ private:
DECL_LINK( ButtonHdl, Button * );
void CheckButtons();
- void SaveSetCurEntry( SvTreeListBox& rBox, SvLBoxEntry* pEntry );
+ void SaveSetCurEntry( SvTreeListBox& rBox, SvTreeListEntry* pEntry );
void UpdateFields();
void EnableButton( Button& rButton, bool bEnable );
diff --git a/basctl/source/basicide/macrodlg.src b/basctl/source/basicide/macrodlg.src
index 7e6860cdb9db..d9dc3f4a214d 100644
--- a/basctl/source/basicide/macrodlg.src
+++ b/basctl/source/basicide/macrodlg.src
@@ -20,156 +20,6 @@
#include <macrodlg.hrc>
#include <basidesh.hrc>
#include <helpid.hrc>
-ModalDialog RID_MACROCHOOSER
-{
- HelpId = "basctl:ModalDialog:RID_MACROCHOOSER" ;
- OutputSize = TRUE ;
- SVLook = TRUE ;
- Size = MAP_APPFONT ( 287 , 165 ) ;
- Text [ en-US ] = "%PRODUCTNAME Basic Macros" ;
- Moveable = TRUE ;
- // Closeable = TRUE;
-
- FixedText RID_TXT_MACROSIN
- {
- Pos = MAP_APPFONT ( 122 , 30 ) ;
- Size = MAP_APPFONT ( 100 , 10 ) ;
- Text [ en-US ] = "Existing macros ~in:";
- };
- Control RID_CTRL_MACRO
- {
- HelpID = HID_BASICIDE_MACROS ;
- Border = TRUE ;
- Pos = MAP_APPFONT ( 122 , 41 ) ;
- Size = MAP_APPFONT ( 100 , 117 ) ;
- // Size = MAP_APPFONT ( 100 , 117 ) ;
- TabStop = TRUE ;
- };
- Control RID_CTRL_LIB
- {
- HelpID = HID_BASICIDE_LIBS ;
- Border = TRUE ;
- Pos = MAP_APPFONT ( 6 , 41 ) ;
- Size = MAP_APPFONT ( 110 , 117 ) ;
- TabStop = TRUE ;
- };
- FixedText RID_TXT_MACRONAME
- {
- Pos = MAP_APPFONT ( 6 , 3 ) ;
- Size = MAP_APPFONT ( 100 , 10 ) ;
- Text [ en-US ] = "~Macro name" ;
- };
- Edit RID_ED_MACRONAME
- {
- HelpID = "basctl:Edit:RID_MACROCHOOSER:RID_ED_MACRONAME";
- Border = TRUE ;
- SVLook = TRUE ;
- Pos = MAP_APPFONT ( 6 , 14 ) ;
- Size = MAP_APPFONT ( 110 , 12 ) ;
- TabStop = TRUE ;
- };
- FixedText RID_TXT_MACROFROM
- {
- Pos = MAP_APPFONT ( 6 , 30 ) ;
- Size = MAP_APPFONT ( 100 , 10 ) ;
- Text [ en-US ] = "Macro ~from" ;
- };
- FixedText RID_TXT_SAVEMACRO
- {
- Pos = MAP_APPFONT ( 6 , 30 ) ;
- Size = MAP_APPFONT ( 100 , 10 ) ;
- Text [ en-US ] = "Save m~acro in";
- };
-
- FixedText RID_TXT_DESCRIPTION
- {
- Pos = MAP_APPFONT ( 6 , 117 ) ;
- Size = MAP_APPFONT ( 100 , 10 ) ;
- Text [ en-US ] = "De~scription" ;
- };
- PushButton RID_PB_RUN
- {
- HelpID = "basctl:PushButton:RID_MACROCHOOSER:RID_PB_RUN";
- Pos = MAP_APPFONT ( 231 , 6 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- DefButton = TRUE;
- Text [ en-US ] = "R~un" ;
- TabStop = TRUE ;
- };
- CancelButton RID_PB_CLOSE
- {
- Pos = MAP_APPFONT ( 231 , 23 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- TabStop = TRUE ;
- Text [ en-US ] = "Close";
- };
-
- PushButton RID_PB_ASSIGN
- {
- HelpID = "basctl:PushButton:RID_MACROCHOOSER:RID_PB_ASSIGN";
- Pos = MAP_APPFONT ( 231 , 60 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- Text [ en-US ] = "~Assign..." ;
- TabStop = TRUE ;
- };
- PushButton RID_PB_EDIT
- {
- HelpID = "basctl:PushButton:RID_MACROCHOOSER:RID_PB_EDIT";
- Size = MAP_APPFONT ( 50 , 14 ) ;
- Pos = MAP_APPFONT ( 231 , 77 ) ;
- Text [ en-US ] = "~Edit" ;
- TabStop = TRUE ;
- };
- PushButton RID_PB_NEWLIB
- {
- HelpID = "basctl:PushButton:RID_MACROCHOOSER:RID_PB_NEWLIB";
- Pos = MAP_APPFONT ( 231 , 60 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- Text [ en-US ] = "New ~Library";
- };
- PushButton RID_PB_NEWMOD
- {
- HelpID = "basctl:PushButton:RID_MACROCHOOSER:RID_PB_NEWMOD";
- Size = MAP_APPFONT ( 50 , 14 ) ;
- Pos = MAP_APPFONT ( 231 , 77 ) ;
- Text [ en-US ] = "New M~odule";
- };
- PushButton RID_PB_DEL
- {
- HelpID = "basctl:PushButton:RID_MACROCHOOSER:RID_PB_DEL";
- Pos = MAP_APPFONT ( 231 , 94 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- Text [ en-US ] = "~Delete" ;
- TabStop = TRUE ;
- };
- PushButton RID_PB_ORG
- {
- HelpID = "basctl:PushButton:RID_MACROCHOOSER:RID_PB_ORG";
- Pos = MAP_APPFONT ( 231 , 114 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- Text [ en-US ] = "~Organizer..." ;
- };
- HelpButton RID_PB_HELP
- {
- Pos = MAP_APPFONT ( 231 , 131 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- TabStop = TRUE ;
- };
- MultiLineEdit RID_ML_DESCRIPTION
- {
- HelpID = "basctl:MultiLineEdit:RID_MACROCHOOSER:RID_ML_DESCRIPTION";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 6 , 131 ) ;
- Size = MAP_APPFONT ( 216 , 28 ) ;
- TabStop = TRUE ;
- VScroll = TRUE ;
- IgnoreTab = TRUE ;
- };
-};
-String RID_STR_STDMACRONAME
-{
- Text [ en-US ] = "Macro" ;
-};
String RID_STR_BTNDEL
{
Text [ en-US ] = "~Delete" ;
@@ -178,10 +28,6 @@ String RID_STR_BTNNEW
{
Text [ en-US ] = "~New" ;
};
-String RID_STR_CLOSE
-{
- Text [ en-US ] = "Close" ;
-};
String RID_STR_CHOOSE
{
Text [ en-US ] = "Choose" ;
@@ -190,7 +36,6 @@ String RID_STR_RUN
{
Text [ en-US ] = "Run" ;
};
-
String RID_STR_RECORD
{
Text [ en-US ] = "~Save" ;
diff --git a/basctl/source/basicide/moduldl2.cxx b/basctl/source/basicide/moduldl2.cxx
index 4986ad2dad37..05f5c1051d8c 100644
--- a/basctl/source/basicide/moduldl2.cxx
+++ b/basctl/source/basicide/moduldl2.cxx
@@ -45,7 +45,7 @@
#include <sot/storage.hxx>
#include <com/sun/star/io/Pipe.hpp>
#include <com/sun/star/ui/dialogs/XFilePicker.hpp>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <com/sun/star/ui/dialogs/XFilterManager.hpp>
#include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
#include <com/sun/star/script/XLibraryContainer2.hpp>
@@ -56,7 +56,7 @@
#include <com/sun/star/ucb/XSimpleFileAccess2.hpp>
#include "com/sun/star/ucb/XCommandEnvironment.hpp"
#include <com/sun/star/ucb/NameClash.hpp>
-#include "com/sun/star/packages/manifest/XManifestWriter.hpp"
+#include "com/sun/star/packages/manifest/ManifestWriter.hpp"
#include <unotools/pathoptions.hxx>
#include <comphelper/processfactory.hxx>
@@ -119,15 +119,15 @@ public:
class LibLBoxString : public SvLBoxString
{
public:
- LibLBoxString( SvLBoxEntry* pEntry, sal_uInt16 nFlags, const String& rTxt ) :
+ LibLBoxString( SvTreeListEntry* pEntry, sal_uInt16 nFlags, const String& rTxt ) :
SvLBoxString( pEntry, nFlags, rTxt ) {}
- virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvLBoxEntry* pEntry );
+ virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvTreeListEntry* pEntry );
};
//----------------------------------------------------------------------------
-void LibLBoxString::Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16, SvLBoxEntry* pEntry )
+void LibLBoxString::Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16, SvTreeListEntry* pEntry )
{
// Change text color if library is read only:
bool bReadOnly = false;
@@ -180,7 +180,7 @@ CheckBox::~CheckBox()
delete pCheckButton;
// delete user data
- SvLBoxEntry* pEntry = First();
+ SvTreeListEntry* pEntry = First();
while ( pEntry )
{
delete static_cast<LibUserData*>(pEntry->GetUserData());
@@ -216,19 +216,19 @@ void CheckBox::SetMode (ObjectMode::Mode e)
//----------------------------------------------------------------------------
-SvLBoxEntry* CheckBox::DoInsertEntry( const String& rStr, sal_uLong nPos )
+SvTreeListEntry* CheckBox::DoInsertEntry( const String& rStr, sal_uLong nPos )
{
return SvTabListBox::InsertEntryToColumn( rStr, nPos, 0 );
}
//----------------------------------------------------------------------------
-SvLBoxEntry* CheckBox::FindEntry( const String& rName )
+SvTreeListEntry* CheckBox::FindEntry( const String& rName )
{
sal_uLong nCount = GetEntryCount();
for ( sal_uLong i = 0; i < nCount; i++ )
{
- SvLBoxEntry* pEntry = GetEntry( i );
+ SvTreeListEntry* pEntry = GetEntry( i );
DBG_ASSERT( pEntry, "pEntry?!" );
if ( rName.CompareIgnoreCaseToAscii( GetEntryText( pEntry, 0 ) ) == COMPARE_EQUAL )
return pEntry;
@@ -242,7 +242,7 @@ void CheckBox::CheckEntryPos( sal_uLong nPos )
{
if ( nPos < GetEntryCount() )
{
- SvLBoxEntry* pEntry = GetEntry( nPos );
+ SvTreeListEntry* pEntry = GetEntry( nPos );
if ( GetCheckButtonState( pEntry ) != SV_BUTTON_CHECKED )
SetCheckButtonState( pEntry, SvButtonState(SV_BUTTON_CHECKED) );
@@ -260,9 +260,10 @@ bool CheckBox::IsChecked( sal_uLong nPos ) const
//----------------------------------------------------------------------------
-void CheckBox::InitEntry( SvLBoxEntry* pEntry, const XubString& rTxt, const Image& rImg1, const Image& rImg2, SvLBoxButtonKind eButtonKind )
+void CheckBox::InitEntry(SvTreeListEntry* pEntry, const OUString& rTxt,
+ const Image& rImg1, const Image& rImg2, SvLBoxButtonKind eButtonKind )
{
- SvTabListBox::InitEntry( pEntry, rTxt, rImg1, rImg2, eButtonKind );
+ SvTabListBox::InitEntry(pEntry, rTxt, rImg1, rImg2, eButtonKind);
if (eMode == ObjectMode::Module)
{
@@ -279,7 +280,7 @@ void CheckBox::InitEntry( SvLBoxEntry* pEntry, const XubString& rTxt, const Imag
//----------------------------------------------------------------------------
-sal_Bool CheckBox::EditingEntry( SvLBoxEntry* pEntry, Selection& )
+sal_Bool CheckBox::EditingEntry( SvTreeListEntry* pEntry, Selection& )
{
if (eMode != ObjectMode::Module)
return false;
@@ -327,7 +328,7 @@ sal_Bool CheckBox::EditingEntry( SvLBoxEntry* pEntry, Selection& )
//----------------------------------------------------------------------------
-sal_Bool CheckBox::EditedEntry( SvLBoxEntry* pEntry, const OUString& rNewName )
+sal_Bool CheckBox::EditedEntry( SvTreeListEntry* pEntry, const OUString& rNewName )
{
bool bValid = rNewName.getLength() <= 30 && IsValidSbxName(rNewName);
OUString aOldName( GetEntryText( pEntry, 0 ) );
@@ -558,7 +559,7 @@ LibPage::~LibPage()
void LibPage::CheckButtons()
{
- SvLBoxEntry* pCur = aLibBox.GetCurEntry();
+ SvTreeListEntry* pCur = aLibBox.GetCurEntry();
if ( pCur )
{
OUString aLibName = aLibBox.GetEntryText( pCur, 0 );
@@ -656,7 +657,7 @@ IMPL_LINK( LibPage, ButtonHdl, Button *, pButton )
SFX_APP()->ExecuteSlot( aRequest );
SfxUsrAnyItem aDocItem( SID_BASICIDE_ARG_DOCUMENT_MODEL, makeAny( m_aCurDocument.getDocumentOrNull() ) );
- SvLBoxEntry* pCurEntry = aLibBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aLibBox.GetCurEntry();
DBG_ASSERT( pCurEntry, "Entry?!" );
String aLibName( aLibBox.GetEntryText( pCurEntry, 0 ) );
SfxStringItem aLibNameItem( SID_BASICIDE_ARG_LIBNAME, aLibName );
@@ -681,7 +682,7 @@ IMPL_LINK( LibPage, ButtonHdl, Button *, pButton )
}
else if ( pButton == &aPasswordButton )
{
- SvLBoxEntry* pCurEntry = aLibBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aLibBox.GetCurEntry();
OUString aLibName( aLibBox.GetEntryText( pCurEntry, 0 ) );
// load module library (if not loaded)
@@ -748,7 +749,7 @@ IMPL_LINK_INLINE_START( LibPage, CheckPasswordHdl, SvxPasswordDialog *, pDlg )
{
long nRet = 0;
- SvLBoxEntry* pCurEntry = aLibBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aLibBox.GetCurEntry();
OUString aLibName( aLibBox.GetEntryText( pCurEntry, 0 ) );
Reference< script::XLibraryContainerPassword > xPasswd( m_aCurDocument.getLibraryContainer( E_SCRIPTS ), UNO_QUERY );
@@ -899,7 +900,7 @@ void LibPage::InsertLib()
if ( !( ( xModLibContImport.is() && xModLibContImport->hasByName( aLibName ) && xModLibContImport->isLibraryLink( aLibName ) ) ||
( xDlgLibContImport.is() && xDlgLibContImport->hasByName( aLibName ) && xDlgLibContImport->isLibraryLink( aLibName ) ) ) )
{
- SvLBoxEntry* pEntry = pLibDlg->GetLibBox().DoInsertEntry( aLibName );
+ SvTreeListEntry* pEntry = pLibDlg->GetLibBox().DoInsertEntry( aLibName );
sal_uInt16 nPos = (sal_uInt16) pLibDlg->GetLibBox().GetModel()->GetAbsPos( pEntry );
pLibDlg->GetLibBox().CheckEntryPos(nPos);
}
@@ -928,7 +929,7 @@ void LibPage::InsertLib()
{
if ( pLibDlg->GetLibBox().IsChecked( nLib ) )
{
- SvLBoxEntry* pEntry = pLibDlg->GetLibBox().GetEntry( nLib );
+ SvTreeListEntry* pEntry = pLibDlg->GetLibBox().GetEntry( nLib );
DBG_ASSERT( pEntry, "Entry?!" );
OUString aLibName( pLibDlg->GetLibBox().GetEntryText( pEntry, 0 ) );
Reference< script::XLibraryContainer2 > xModLibContainer( m_aCurDocument.getLibraryContainer( E_SCRIPTS ), UNO_QUERY );
@@ -1001,7 +1002,7 @@ void LibPage::InsertLib()
if ( bRemove )
{
// remove listbox entry
- SvLBoxEntry* pEntry_ = aLibBox.FindEntry( aLibName );
+ SvTreeListEntry* pEntry_ = aLibBox.FindEntry( aLibName );
if ( pEntry_ )
aLibBox.SvTreeListBox::GetModel()->Remove( pEntry_ );
@@ -1141,7 +1142,7 @@ void LibPage::InsertLib()
}
}
- SvLBoxEntry* pFirstNew = aLibBox.GetEntry( nNewPos );
+ SvTreeListEntry* pFirstNew = aLibBox.GetEntry( nNewPos );
if ( pFirstNew )
aLibBox.SetCurEntry( pFirstNew );
}
@@ -1158,7 +1159,7 @@ void LibPage::InsertLib()
void LibPage::Export( void )
{
- SvLBoxEntry* pCurEntry = aLibBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aLibBox.GetCurEntry();
String aLibName( aLibBox.GetEntryText( pCurEntry, 0 ) );
// Password verification
@@ -1355,9 +1356,8 @@ void LibPage::ExportAsPackage( const String& aLibName )
manifest.push_back( attribs );
// write into pipe:
- Reference<packages::manifest::XManifestWriter> xManifestWriter( xMSF->createInstance
- ( DEFINE_CONST_UNICODE("com.sun.star.packages.manifest.ManifestWriter") ), UNO_QUERY );
- Reference<io::XOutputStream> xPipe( io::Pipe::create(comphelper::getComponentContext(xMSF)), UNO_QUERY_THROW );
+ Reference<packages::manifest::XManifestWriter> xManifestWriter = packages::manifest::ManifestWriter::create( xContext );
+ Reference<io::XOutputStream> xPipe( io::Pipe::create( xContext ), UNO_QUERY_THROW );
xManifestWriter->writeManifestSequence(
xPipe, Sequence< Sequence<beans::PropertyValue> >(
&manifest[ 0 ], manifest.size() ) );
@@ -1384,32 +1384,27 @@ void LibPage::ExportAsPackage( const String& aLibName )
void LibPage::ExportAsBasic( const String& aLibName )
{
// Folder picker
- Reference< lang::XMultiServiceFactory > xMSF( ::comphelper::getProcessServiceFactory() );
Reference< uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
- Reference< XFolderPicker > xFolderPicker( xMSF->createInstance(
- "com.sun.star.ui.dialogs.FolderPicker" ), UNO_QUERY );
+ Reference< XFolderPicker2 > xFolderPicker = FolderPicker::create(xContext);
Reference< task::XInteractionHandler2 > xHandler( task::InteractionHandler::createWithParent(xContext, 0) );
- if( xFolderPicker.is() )
- {
- xFolderPicker->setTitle( String( IDEResId( RID_STR_EXPORTBASIC ) ) );
-
- // set display directory and filter
- String aPath =GetExtraData()->GetAddLibPath();
- if( !aPath.Len() )
- aPath = SvtPathOptions().GetWorkPath();
+ xFolderPicker->setTitle( String( IDEResId( RID_STR_EXPORTBASIC ) ) );
- // INetURLObject aURL(m_sSavePath, INET_PROT_FILE);
- xFolderPicker->setDisplayDirectory( aPath );
- short nRet = xFolderPicker->execute();
- if( nRet == RET_OK )
- {
- String aTargetURL = xFolderPicker->getDirectory();
- GetExtraData()->SetAddLibPath(aTargetURL);
+ // set display directory and filter
+ String aPath =GetExtraData()->GetAddLibPath();
+ if( !aPath.Len() )
+ aPath = SvtPathOptions().GetWorkPath();
+
+ // INetURLObject aURL(m_sSavePath, INET_PROT_FILE);
+ xFolderPicker->setDisplayDirectory( aPath );
+ short nRet = xFolderPicker->execute();
+ if( nRet == RET_OK )
+ {
+ String aTargetURL = xFolderPicker->getDirectory();
+ GetExtraData()->SetAddLibPath(aTargetURL);
- Reference< task::XInteractionHandler > xDummyHandler( new DummyInteractionHandler( xHandler ) );
- implExportLib( aLibName, aTargetURL, xDummyHandler );
- }
+ Reference< task::XInteractionHandler > xDummyHandler( new DummyInteractionHandler( xHandler ) );
+ implExportLib( aLibName, aTargetURL, xDummyHandler );
}
}
@@ -1417,7 +1412,7 @@ void LibPage::ExportAsBasic( const String& aLibName )
void LibPage::DeleteCurrent()
{
- SvLBoxEntry* pCurEntry = aLibBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aLibBox.GetCurEntry();
String aLibName( aLibBox.GetEntryText( pCurEntry, 0 ) );
// check, if library is link
@@ -1518,7 +1513,7 @@ void LibPage::SetCurLib()
ImpInsertLibEntry( aLibName, i );
}
- SvLBoxEntry* pEntry_ = aLibBox.FindEntry( OUString( "Standard" ) );
+ SvTreeListEntry* pEntry_ = aLibBox.FindEntry( OUString( "Standard" ) );
if ( !pEntry_ )
pEntry_ = aLibBox.GetEntry( 0 );
aLibBox.SetCurEntry( pEntry_ );
@@ -1528,7 +1523,7 @@ void LibPage::SetCurLib()
//----------------------------------------------------------------------------
-SvLBoxEntry* LibPage::ImpInsertLibEntry( const String& rLibName, sal_uLong nPos )
+SvTreeListEntry* LibPage::ImpInsertLibEntry( const String& rLibName, sal_uLong nPos )
{
// check, if library is password protected
bool bProtected = false;
@@ -1543,7 +1538,7 @@ SvLBoxEntry* LibPage::ImpInsertLibEntry( const String& rLibName, sal_uLong nPos
}
}
- SvLBoxEntry* pNewEntry = aLibBox.DoInsertEntry( rLibName, nPos );
+ SvTreeListEntry* pNewEntry = aLibBox.DoInsertEntry( rLibName, nPos );
pNewEntry->SetUserData( new LibUserData(m_aCurDocument) );
if (bProtected)
@@ -1620,7 +1615,7 @@ void createLibImpl( Window* pWin, const ScriptDocument& rDocument,
if( pLibBox )
{
- SvLBoxEntry* pEntry = pLibBox->DoInsertEntry( aLibName );
+ SvTreeListEntry* pEntry = pLibBox->DoInsertEntry( aLibName );
pEntry->SetUserData( new LibUserData( rDocument ) );
pLibBox->SetCurEntry( pEntry );
}
@@ -1638,8 +1633,8 @@ void createLibImpl( Window* pWin, const ScriptDocument& rDocument,
if( pBasicBox )
{
- SvLBoxEntry* pEntry = pBasicBox->GetCurEntry();
- SvLBoxEntry* pRootEntry = NULL;
+ SvTreeListEntry* pEntry = pBasicBox->GetCurEntry();
+ SvTreeListEntry* pRootEntry = NULL;
while( pEntry )
{
pRootEntry = pEntry;
@@ -1649,7 +1644,7 @@ void createLibImpl( Window* pWin, const ScriptDocument& rDocument,
sal_uInt16 nMode = pBasicBox->GetMode();
bool bDlgMode = ( nMode & BROWSEMODE_DIALOGS ) && !( nMode & BROWSEMODE_MODULES );
sal_uInt16 nId = bDlgMode ? RID_IMG_DLGLIB : RID_IMG_MODLIB;
- SvLBoxEntry* pNewLibEntry = pBasicBox->AddEntry(
+ SvTreeListEntry* pNewLibEntry = pBasicBox->AddEntry(
aLibName,
Image( IDEResId( nId ) ),
pRootEntry, false,
@@ -1659,7 +1654,7 @@ void createLibImpl( Window* pWin, const ScriptDocument& rDocument,
if( pNewLibEntry )
{
- SvLBoxEntry* pEntry_ = pBasicBox->AddEntry(
+ SvTreeListEntry* pEntry_ = pBasicBox->AddEntry(
aModName,
Image( IDEResId( RID_IMG_MODULE ) ),
pNewLibEntry, false,
diff --git a/basctl/source/basicide/moduldlg.cxx b/basctl/source/basicide/moduldlg.cxx
index 4a8cdb5e6261..cfbea3e86b0e 100644
--- a/basctl/source/basicide/moduldlg.cxx
+++ b/basctl/source/basicide/moduldlg.cxx
@@ -59,7 +59,7 @@ ExtTreeListBox::ExtTreeListBox (Window* pParent, ResId const& rRes) :
ExtTreeListBox::~ExtTreeListBox ()
{ }
-sal_Bool ExtTreeListBox::EditingEntry( SvLBoxEntry* pEntry, Selection& )
+sal_Bool ExtTreeListBox::EditingEntry( SvTreeListEntry* pEntry, Selection& )
{
bool bRet = false;
@@ -70,7 +70,7 @@ sal_Bool ExtTreeListBox::EditingEntry( SvLBoxEntry* pEntry, Selection& )
{
EntryDescriptor aDesc = GetEntryDescriptor(pEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
- ::rtl::OUString aLibName( aDesc.GetLibName() );
+ OUString aLibName( aDesc.GetLibName() );
Reference< script::XLibraryContainer2 > xModLibContainer( aDocument.getLibraryContainer( E_SCRIPTS ), UNO_QUERY );
Reference< script::XLibraryContainer2 > xDlgLibContainer( aDocument.getLibraryContainer( E_DIALOGS ), UNO_QUERY );
if ( !( ( xModLibContainer.is() && xModLibContainer->hasByName( aLibName ) && xModLibContainer->isLibraryReadOnly( aLibName ) ) ||
@@ -85,7 +85,7 @@ sal_Bool ExtTreeListBox::EditingEntry( SvLBoxEntry* pEntry, Selection& )
return bRet;
}
-sal_Bool ExtTreeListBox::EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString& rNewText )
+sal_Bool ExtTreeListBox::EditedEntry( SvTreeListEntry* pEntry, const OUString& rNewText )
{
if ( !IsValidSbxName(rNewText) )
{
@@ -93,7 +93,7 @@ sal_Bool ExtTreeListBox::EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString&
return false;
}
- rtl::OUString aCurText( GetEntryText( pEntry ) );
+ OUString aCurText( GetEntryText( pEntry ) );
if ( aCurText == rNewText )
// nothing to do
return true;
@@ -103,7 +103,7 @@ sal_Bool ExtTreeListBox::EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString&
DBG_ASSERT( aDocument.isValid(), "ExtTreeListBox::EditedEntry: no document!" );
if ( !aDocument.isValid() )
return false;
- ::rtl::OUString aLibName( aDesc.GetLibName() );
+ OUString aLibName( aDesc.GetLibName() );
EntryType eType = aDesc.GetType();
bool bSuccess = eType == OBJ_TYPE_MODULE ?
@@ -133,7 +133,7 @@ sal_Bool ExtTreeListBox::EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString&
}
-DragDropMode ExtTreeListBox::NotifyStartDrag( TransferDataContainer&, SvLBoxEntry* pEntry )
+DragDropMode ExtTreeListBox::NotifyStartDrag( TransferDataContainer&, SvTreeListEntry* pEntry )
{
DragDropMode nMode_ = SV_DRAGDROP_NONE;
@@ -145,7 +145,7 @@ DragDropMode ExtTreeListBox::NotifyStartDrag( TransferDataContainer&, SvLBoxEntr
nMode_ = SV_DRAGDROP_CTRL_COPY;
EntryDescriptor aDesc = GetEntryDescriptor(pEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
- ::rtl::OUString aLibName( aDesc.GetLibName() );
+ OUString aLibName( aDesc.GetLibName() );
// allow MOVE mode only for libraries, which are not readonly
Reference< script::XLibraryContainer2 > xModLibContainer( aDocument.getLibraryContainer( E_SCRIPTS ), UNO_QUERY );
Reference< script::XLibraryContainer2 > xDlgLibContainer( aDocument.getLibraryContainer( E_DIALOGS ), UNO_QUERY );
@@ -173,14 +173,14 @@ DragDropMode ExtTreeListBox::NotifyStartDrag( TransferDataContainer&, SvLBoxEntr
}
-sal_Bool ExtTreeListBox::NotifyAcceptDrop( SvLBoxEntry* pEntry )
+sal_Bool ExtTreeListBox::NotifyAcceptDrop( SvTreeListEntry* pEntry )
{
// don't drop on a BasicManager (nDepth == 0)
sal_uInt16 nDepth = pEntry ? GetModel()->GetDepth( pEntry ) : 0;
bool bValid = nDepth != 0;
// don't drop in the same library
- SvLBoxEntry* pSelected = FirstSelected();
+ SvTreeListEntry* pSelected = FirstSelected();
if ( ( nDepth == 1 ) && ( pEntry == GetParent( pSelected ) ) )
bValid = false;
else if ( ( nDepth == 2 ) && ( GetParent( pEntry ) == GetParent( pSelected ) ) )
@@ -192,13 +192,13 @@ sal_Bool ExtTreeListBox::NotifyAcceptDrop( SvLBoxEntry* pEntry )
{
// get source module/dialog name
EntryDescriptor aSourceDesc = GetEntryDescriptor(pSelected);
- rtl::OUString aSourceName = aSourceDesc.GetName();
+ OUString aSourceName = aSourceDesc.GetName();
EntryType eSourceType = aSourceDesc.GetType();
// get target shell and target library name
EntryDescriptor aDestDesc = GetEntryDescriptor(pEntry);
ScriptDocument const& rDestDoc = aDestDesc.GetDocument();
- rtl::OUString aDestLibName = aDestDesc.GetLibName();
+ OUString aDestLibName = aDestDesc.GetLibName();
// check if module library is not loaded, readonly or password protected
Reference< script::XLibraryContainer2 > xModLibContainer( rDestDoc.getLibraryContainer( E_SCRIPTS ), UNO_QUERY );
@@ -237,15 +237,15 @@ sal_Bool ExtTreeListBox::NotifyAcceptDrop( SvLBoxEntry* pEntry )
return bValid;
}
-sal_Bool ExtTreeListBox::NotifyMoving( SvLBoxEntry* pTarget, SvLBoxEntry* pEntry,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos )
+sal_Bool ExtTreeListBox::NotifyMoving( SvTreeListEntry* pTarget, SvTreeListEntry* pEntry,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos )
{
return NotifyCopyingMoving( pTarget, pEntry,
rpNewParent, rNewChildPos, true );
}
-sal_Bool ExtTreeListBox::NotifyCopying( SvLBoxEntry* pTarget, SvLBoxEntry* pEntry,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos )
+sal_Bool ExtTreeListBox::NotifyCopying( SvTreeListEntry* pTarget, SvTreeListEntry* pEntry,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos )
{
// return false; // how do I copy an SBX?!
return NotifyCopyingMoving( pTarget, pEntry,
@@ -255,10 +255,10 @@ sal_Bool ExtTreeListBox::NotifyCopying( SvLBoxEntry* pTarget, SvLBoxEntry* pEntr
void Shell::CopyDialogResources(
Reference< io::XInputStreamProvider >& io_xISP,
ScriptDocument const& rSourceDoc,
- rtl::OUString const& rSourceLibName,
+ OUString const& rSourceLibName,
ScriptDocument const& rDestDoc,
- rtl::OUString const& rDestLibName,
- rtl::OUString const& rDlgName
+ OUString const& rDestLibName,
+ OUString const& rDlgName
)
{
if ( !io_xISP.is() )
@@ -285,7 +285,7 @@ void Shell::CopyDialogResources(
// create dialog model
Reference< lang::XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
Reference< container::XNameContainer > xDialogModel = Reference< container::XNameContainer >( xMSF->createInstance
- ( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDialogModel" ) ) ), UNO_QUERY );
+ ( "com.sun.star.awt.UnoControlDialogModel" ), UNO_QUERY );
Reference< io::XInputStream > xInput( io_xISP->createInputStream() );
Reference< XComponentContext > xContext(
comphelper::getComponentContext( xMSF ) );
@@ -311,8 +311,8 @@ void Shell::CopyDialogResources(
}
-sal_Bool ExtTreeListBox::NotifyCopyingMoving( SvLBoxEntry* pTarget, SvLBoxEntry* pEntry,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos, sal_Bool bMove )
+sal_Bool ExtTreeListBox::NotifyCopyingMoving( SvTreeListEntry* pTarget, SvTreeListEntry* pEntry,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos, sal_Bool bMove )
{
(void)pEntry;
DBG_ASSERT( pEntry, "Kein Eintrag?" ); // ASS is ok here, should not be reached
@@ -335,13 +335,13 @@ sal_Bool ExtTreeListBox::NotifyCopyingMoving( SvLBoxEntry* pTarget, SvLBoxEntry*
// get target shell and target library name
EntryDescriptor aDestDesc = GetEntryDescriptor(rpNewParent);
const ScriptDocument& rDestDoc( aDestDesc.GetDocument() );
- ::rtl::OUString aDestLibName( aDestDesc.GetLibName() );
+ OUString aDestLibName( aDestDesc.GetLibName() );
// get source shell, library name and module/dialog name
EntryDescriptor aSourceDesc = GetEntryDescriptor(FirstSelected());
const ScriptDocument rSourceDoc( aSourceDesc.GetDocument() );
- ::rtl::OUString aSourceLibName( aSourceDesc.GetLibName() );
- ::rtl::OUString aSourceName( aSourceDesc.GetName() );
+ OUString aSourceLibName( aSourceDesc.GetLibName() );
+ OUString aSourceName( aSourceDesc.GetName() );
EntryType eType = aSourceDesc.GetType();
// get dispatcher
@@ -365,7 +365,7 @@ sal_Bool ExtTreeListBox::NotifyCopyingMoving( SvLBoxEntry* pTarget, SvLBoxEntry*
if ( eType == OBJ_TYPE_MODULE ) // module
{
// get module
- ::rtl::OUString aModule;
+ OUString aModule;
if ( rSourceDoc.getModule( aSourceLibName, aSourceName, aModule ) )
{
// remove module from source library
@@ -412,7 +412,7 @@ sal_Bool ExtTreeListBox::NotifyCopyingMoving( SvLBoxEntry* pTarget, SvLBoxEntry*
if ( eType == OBJ_TYPE_MODULE ) // module
{
// get module
- ::rtl::OUString aModule;
+ OUString aModule;
if ( rSourceDoc.getModule( aSourceLibName, aSourceName, aModule ) )
{
// insert module into target library
@@ -606,11 +606,11 @@ void ObjectPage::DeactivatePage()
void ObjectPage::CheckButtons()
{
// enable/disable edit button
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aBasicBox.GetCurEntry();
EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
ScriptDocument aDocument( aDesc.GetDocument() );
- ::rtl::OUString aLibName( aDesc.GetLibName() );
- ::rtl::OUString aLibSubName( aDesc.GetLibSubName() );
+ OUString aLibName( aDesc.GetLibName() );
+ OUString aLibSubName( aDesc.GetLibSubName() );
bool bVBAEnabled = aDocument.isInVBAMode();
sal_uInt16 nMode = aBasicBox.GetMode();
@@ -679,14 +679,14 @@ IMPL_LINK( ObjectPage, ButtonHdl, Button *, pButton )
SFX_APP()->ExecuteSlot( aRequest );
SfxDispatcher* pDispatcher = GetDispatcher();
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aBasicBox.GetCurEntry();
DBG_ASSERT( pCurEntry, "Entry?!" );
if ( aBasicBox.GetModel()->GetDepth( pCurEntry ) >= 2 )
{
EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
if ( pDispatcher )
{
- ::rtl::OUString aModName( aDesc.GetName() );
+ OUString aModName( aDesc.GetName() );
// extract the module name from the string like "Sheet1 (Example1)"
if( aDesc.GetLibSubName() == IDE_RESSTR(RID_STR_DOCUMENT_OBJECTS) )
{
@@ -702,7 +702,7 @@ IMPL_LINK( ObjectPage, ButtonHdl, Button *, pButton )
{
DBG_ASSERT( aBasicBox.GetModel()->GetDepth( pCurEntry ) == 1, "Kein LibEntry?!" );
ScriptDocument aDocument( ScriptDocument::getApplicationScriptDocument() );
- SvLBoxEntry* pParentEntry = aBasicBox.GetParent( pCurEntry );
+ SvTreeListEntry* pParentEntry = aBasicBox.GetParent( pCurEntry );
if ( pParentEntry )
{
DocumentEntry* pDocumentEntry = (DocumentEntry*)pParentEntry->GetUserData();
@@ -710,7 +710,7 @@ IMPL_LINK( ObjectPage, ButtonHdl, Button *, pButton )
aDocument = pDocumentEntry->GetDocument();
}
SfxUsrAnyItem aDocItem( SID_BASICIDE_ARG_DOCUMENT_MODEL, makeAny( aDocument.getDocumentOrNull() ) );
- ::rtl::OUString aLibName( aBasicBox.GetEntryText( pCurEntry ) );
+ OUString aLibName( aBasicBox.GetEntryText( pCurEntry ) );
SfxStringItem aLibNameItem( SID_BASICIDE_ARG_LIBNAME, aLibName );
if ( pDispatcher )
{
@@ -731,16 +731,16 @@ IMPL_LINK( ObjectPage, ButtonHdl, Button *, pButton )
return 0;
}
-bool ObjectPage::GetSelection( ScriptDocument& rDocument, ::rtl::OUString& rLibName )
+bool ObjectPage::GetSelection( ScriptDocument& rDocument, OUString& rLibName )
{
bool bRet = false;
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aBasicBox.GetCurEntry();
EntryDescriptor aDesc = aBasicBox.GetEntryDescriptor(pCurEntry);
rDocument = aDesc.GetDocument();
rLibName = aDesc.GetLibName();
if ( rLibName.isEmpty() )
- rLibName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Standard"));
+ rLibName = "Standard" ;
DBG_ASSERT( rDocument.isAlive(), "ObjectPage::GetSelection: no or dead ScriptDocument in the selection!" );
if ( !rDocument.isAlive() )
@@ -748,7 +748,7 @@ bool ObjectPage::GetSelection( ScriptDocument& rDocument, ::rtl::OUString& rLibN
// check if the module library is loaded
bool bOK = true;
- ::rtl::OUString aLibName( rLibName );
+ OUString aLibName( rLibName );
Reference< script::XLibraryContainer > xModLibContainer( rDocument.getLibraryContainer( E_SCRIPTS ) );
if ( xModLibContainer.is() && xModLibContainer->hasByName( aLibName ) && !xModLibContainer->isLibraryLoaded( aLibName ) )
{
@@ -756,7 +756,7 @@ bool ObjectPage::GetSelection( ScriptDocument& rDocument, ::rtl::OUString& rLibN
Reference< script::XLibraryContainerPassword > xPasswd( xModLibContainer, UNO_QUERY );
if ( xPasswd.is() && xPasswd->isLibraryPasswordProtected( aLibName ) && !xPasswd->isLibraryPasswordVerified( aLibName ) )
{
- ::rtl::OUString aPassword;
+ OUString aPassword;
bOK = QueryPassword( xModLibContainer, rLibName, aPassword );
}
@@ -783,11 +783,11 @@ bool ObjectPage::GetSelection( ScriptDocument& rDocument, ::rtl::OUString& rLibN
void ObjectPage::NewModule()
{
ScriptDocument aDocument( ScriptDocument::getApplicationScriptDocument() );
- ::rtl::OUString aLibName;
+ OUString aLibName;
if ( GetSelection( aDocument, aLibName ) )
{
- ::rtl::OUString aModName;
+ OUString aModName;
createModImpl( static_cast<Window*>( this ), aDocument,
aBasicBox, aLibName, aModName, true );
}
@@ -796,7 +796,7 @@ void ObjectPage::NewModule()
void ObjectPage::NewDialog()
{
ScriptDocument aDocument( ScriptDocument::getApplicationScriptDocument() );
- ::rtl::OUString aLibName;
+ OUString aLibName;
if ( GetSelection( aDocument, aLibName ) )
{
@@ -807,7 +807,7 @@ void ObjectPage::NewDialog()
if (aNewDlg.Execute() != 0)
{
- rtl::OUString aDlgName = aNewDlg.GetObjectName();
+ OUString aDlgName = aNewDlg.GetObjectName();
if (aDlgName.isEmpty())
aDlgName = aDocument.createObjectName( E_DIALOGS, aLibName);
@@ -827,18 +827,18 @@ void ObjectPage::NewDialog()
pDispatcher->Execute( SID_BASICIDE_SBXINSERTED,
SFX_CALLMODE_SYNCHRON, &aSbxItem, 0L );
LibraryLocation eLocation = aDocument.getLibraryLocation( aLibName );
- SvLBoxEntry* pRootEntry = aBasicBox.FindRootEntry( aDocument, eLocation );
+ SvTreeListEntry* pRootEntry = aBasicBox.FindRootEntry( aDocument, eLocation );
if ( pRootEntry )
{
if ( !aBasicBox.IsExpanded( pRootEntry ) )
aBasicBox.Expand( pRootEntry );
- SvLBoxEntry* pLibEntry = aBasicBox.FindEntry( pRootEntry, aLibName, OBJ_TYPE_LIBRARY );
+ SvTreeListEntry* pLibEntry = aBasicBox.FindEntry( pRootEntry, aLibName, OBJ_TYPE_LIBRARY );
DBG_ASSERT( pLibEntry, "Libeintrag nicht gefunden!" );
if ( pLibEntry )
{
if ( !aBasicBox.IsExpanded( pLibEntry ) )
aBasicBox.Expand( pLibEntry );
- SvLBoxEntry* pEntry = aBasicBox.FindEntry( pLibEntry, aDlgName, OBJ_TYPE_DIALOG );
+ SvTreeListEntry* pEntry = aBasicBox.FindEntry( pLibEntry, aDlgName, OBJ_TYPE_DIALOG );
if ( !pEntry )
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
@@ -862,15 +862,15 @@ void ObjectPage::NewDialog()
void ObjectPage::DeleteCurrent()
{
- SvLBoxEntry* pCurEntry = aBasicBox.GetCurEntry();
+ SvTreeListEntry* pCurEntry = aBasicBox.GetCurEntry();
DBG_ASSERT( pCurEntry, "Kein aktueller Eintrag!" );
EntryDescriptor aDesc( aBasicBox.GetEntryDescriptor( pCurEntry ) );
ScriptDocument aDocument( aDesc.GetDocument() );
DBG_ASSERT( aDocument.isAlive(), "ObjectPage::DeleteCurrent: no document!" );
if ( !aDocument.isAlive() )
return;
- ::rtl::OUString aLibName( aDesc.GetLibName() );
- ::rtl::OUString aName( aDesc.GetName() );
+ OUString aLibName( aDesc.GetLibName() );
+ OUString aName( aDesc.GetName() );
EntryType eType = aDesc.GetType();
if ( ( eType == OBJ_TYPE_MODULE && QueryDelModule( aName, this ) ) ||
@@ -933,16 +933,16 @@ LibDialog::~LibDialog()
{
}
-void LibDialog::SetStorageName( const ::rtl::OUString& rName )
+void LibDialog::SetStorageName( const OUString& rName )
{
- ::rtl::OUString aName( IDE_RESSTR(RID_STR_FILENAME) );
+ OUString aName( IDE_RESSTR(RID_STR_FILENAME) );
aName += rName;
aStorageName.SetText( aName );
}
// Helper function
SbModule* createModImpl( Window* pWin, const ScriptDocument& rDocument,
- TreeListBox& rBasicBox, const ::rtl::OUString& rLibName, ::rtl::OUString aModName, bool bMain )
+ TreeListBox& rBasicBox, const OUString& rLibName, OUString aModName, bool bMain )
{
OSL_ENSURE( rDocument.isAlive(), "createModImpl: invalid document!" );
if ( !rDocument.isAlive() )
@@ -950,9 +950,9 @@ SbModule* createModImpl( Window* pWin, const ScriptDocument& rDocument,
SbModule* pModule = NULL;
- ::rtl::OUString aLibName( rLibName );
+ OUString aLibName( rLibName );
if ( aLibName.isEmpty() )
- aLibName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Standard"));
+ aLibName = "Standard" ;
rDocument.getOrCreateLibrary( E_SCRIPTS, aLibName );
if ( aModName.isEmpty() )
aModName = rDocument.createObjectName( E_SCRIPTS, aLibName );
@@ -967,7 +967,7 @@ SbModule* createModImpl( Window* pWin, const ScriptDocument& rDocument,
try
{
- ::rtl::OUString sModuleCode;
+ OUString sModuleCode;
// the module has existed
if( rDocument.hasModule( aLibName, aModName ) )
return NULL;
@@ -981,22 +981,22 @@ SbModule* createModImpl( Window* pWin, const ScriptDocument& rDocument,
pDispatcher->Execute( SID_BASICIDE_SBXINSERTED,
SFX_CALLMODE_SYNCHRON, &aSbxItem, 0L );
LibraryLocation eLocation = rDocument.getLibraryLocation( aLibName );
- SvLBoxEntry* pRootEntry = rBasicBox.FindRootEntry( rDocument, eLocation );
+ SvTreeListEntry* pRootEntry = rBasicBox.FindRootEntry( rDocument, eLocation );
if ( pRootEntry )
{
if ( !rBasicBox.IsExpanded( pRootEntry ) )
rBasicBox.Expand( pRootEntry );
- SvLBoxEntry* pLibEntry = rBasicBox.FindEntry( pRootEntry, aLibName, OBJ_TYPE_LIBRARY );
+ SvTreeListEntry* pLibEntry = rBasicBox.FindEntry( pRootEntry, aLibName, OBJ_TYPE_LIBRARY );
DBG_ASSERT( pLibEntry, "Libeintrag nicht gefunden!" );
if ( pLibEntry )
{
if ( !rBasicBox.IsExpanded( pLibEntry ) )
rBasicBox.Expand( pLibEntry );
- SvLBoxEntry* pSubRootEntry = pLibEntry;
+ SvTreeListEntry* pSubRootEntry = pLibEntry;
if( pBasic && rDocument.isInVBAMode() )
{
// add the new module in the "Modules" entry
- SvLBoxEntry* pLibSubEntry = rBasicBox.FindEntry( pLibEntry, IDE_RESSTR(RID_STR_NORMAL_MODULES) , OBJ_TYPE_NORMAL_MODULES );
+ SvTreeListEntry* pLibSubEntry = rBasicBox.FindEntry( pLibEntry, IDE_RESSTR(RID_STR_NORMAL_MODULES) , OBJ_TYPE_NORMAL_MODULES );
if( pLibSubEntry )
{
if( !rBasicBox.IsExpanded( pLibSubEntry ) )
@@ -1005,7 +1005,7 @@ SbModule* createModImpl( Window* pWin, const ScriptDocument& rDocument,
}
}
- SvLBoxEntry* pEntry = rBasicBox.FindEntry( pSubRootEntry, aModName, OBJ_TYPE_MODULE );
+ SvTreeListEntry* pEntry = rBasicBox.FindEntry( pSubRootEntry, aModName, OBJ_TYPE_MODULE );
if ( !pEntry )
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
diff --git a/basctl/source/basicide/moduldlg.hxx b/basctl/source/basicide/moduldlg.hxx
index 71f6e66c9554..34de345f8964 100644
--- a/basctl/source/basicide/moduldlg.hxx
+++ b/basctl/source/basicide/moduldlg.hxx
@@ -104,18 +104,18 @@ public:
class ExtTreeListBox : public TreeListBox
{
protected:
- virtual sal_Bool EditingEntry( SvLBoxEntry* pEntry, Selection& rSel );
- virtual sal_Bool EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString& rNewText );
+ virtual sal_Bool EditingEntry( SvTreeListEntry* pEntry, Selection& rSel );
+ virtual sal_Bool EditedEntry( SvTreeListEntry* pEntry, const OUString& rNewText );
- virtual DragDropMode NotifyStartDrag( TransferDataContainer& rData, SvLBoxEntry* pEntry );
- virtual sal_Bool NotifyAcceptDrop( SvLBoxEntry* pEntry );
+ virtual DragDropMode NotifyStartDrag( TransferDataContainer& rData, SvTreeListEntry* pEntry );
+ virtual sal_Bool NotifyAcceptDrop( SvTreeListEntry* pEntry );
- virtual sal_Bool NotifyMoving( SvLBoxEntry* pTarget, SvLBoxEntry* pEntry,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos );
- virtual sal_Bool NotifyCopying( SvLBoxEntry* pTarget, SvLBoxEntry* pEntry,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos );
- sal_Bool NotifyCopyingMoving( SvLBoxEntry* pTarget, SvLBoxEntry* pEntry,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos, sal_Bool bMove );
+ virtual sal_Bool NotifyMoving( SvTreeListEntry* pTarget, SvTreeListEntry* pEntry,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos );
+ virtual sal_Bool NotifyCopying( SvTreeListEntry* pTarget, SvTreeListEntry* pEntry,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos );
+ sal_Bool NotifyCopyingMoving( SvTreeListEntry* pTarget, SvTreeListEntry* pEntry,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos, sal_Bool bMove );
public:
ExtTreeListBox( Window* pParent, const ResId& rRes );
@@ -134,15 +134,15 @@ public:
CheckBox( Window* pParent, const ResId& rResId );
~CheckBox();
- SvLBoxEntry* DoInsertEntry( const String& rStr, sal_uLong nPos = LISTBOX_APPEND );
- SvLBoxEntry* FindEntry( const String& rName );
+ SvTreeListEntry* DoInsertEntry( const String& rStr, sal_uLong nPos = LISTBOX_APPEND );
+ SvTreeListEntry* FindEntry( const String& rName );
void CheckEntryPos( sal_uLong nPos );
bool IsChecked( sal_uLong nPos ) const;
- virtual void InitEntry( SvLBoxEntry*, const XubString&, const Image&, const Image&, SvLBoxButtonKind eButtonKind );
- virtual sal_Bool EditingEntry( SvLBoxEntry* pEntry, Selection& rSel );
- virtual sal_Bool EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString& rNewText );
+ virtual void InitEntry(SvTreeListEntry*, const OUString&, const Image&, const Image&, SvLBoxButtonKind eButtonKind);
+ virtual sal_Bool EditingEntry( SvTreeListEntry* pEntry, Selection& rSel );
+ virtual sal_Bool EditedEntry( SvTreeListEntry* pEntry, const OUString& rNewText );
void SetDocument( const ScriptDocument& rDocument ) { m_aDocument = rDocument; }
@@ -165,7 +165,7 @@ public:
LibDialog( Window* pParent );
~LibDialog();
- void SetStorageName( const ::rtl::OUString& rName );
+ void SetStorageName( const OUString& rName );
CheckBox& GetLibBox() { return aLibBox; }
bool IsReference() const { return aReferenceBox.IsChecked(); }
@@ -205,7 +205,7 @@ protected:
DECL_LINK( BasicBoxHighlightHdl, TreeListBox * );
DECL_LINK( ButtonHdl, Button * );
void CheckButtons();
- bool GetSelection( ScriptDocument& rDocument, ::rtl::OUString& rLibName );
+ bool GetSelection( ScriptDocument& rDocument, OUString& rLibName );
void DeleteCurrent();
void NewModule();
void NewDialog();
@@ -259,7 +259,7 @@ protected:
void FillListBox();
void InsertListBoxEntry( const ScriptDocument& rDocument, LibraryLocation eLocation );
void SetCurLib();
- SvLBoxEntry* ImpInsertLibEntry( const String& rLibName, sal_uLong nPos );
+ SvTreeListEntry* ImpInsertLibEntry( const String& rLibName, sal_uLong nPos );
virtual void ActivatePage();
virtual void DeactivatePage();
@@ -274,7 +274,7 @@ public:
// Helper functions
SbModule* createModImpl( Window* pWin, const ScriptDocument& rDocument,
- TreeListBox& rBasicBox, const ::rtl::OUString& rLibName, ::rtl::OUString aModName, bool bMain = false );
+ TreeListBox& rBasicBox, const OUString& rLibName, OUString aModName, bool bMain = false );
void createLibImpl( Window* pWin, const ScriptDocument& rDocument,
CheckBox* pLibBox, TreeListBox* pBasicBox );
diff --git a/basctl/source/basicide/register.cxx b/basctl/source/basicide/register.cxx
index 563cc6246de9..15b751074f6c 100644
--- a/basctl/source/basicide/register.cxx
+++ b/basctl/source/basicide/register.cxx
@@ -29,7 +29,6 @@
namespace basctl
{
-using ::rtl::OUString;
using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::lang;
diff --git a/basctl/source/basicide/sbxitem.cxx b/basctl/source/basicide/sbxitem.cxx
index a53b1b28323a..75ff877b192f 100644
--- a/basctl/source/basicide/sbxitem.cxx
+++ b/basctl/source/basicide/sbxitem.cxx
@@ -25,8 +25,8 @@ namespace basctl
SbxItem::SbxItem (
sal_uInt16 nWhichItem,
ScriptDocument const& rDocument,
- rtl::OUString const& aLibName,
- rtl::OUString const& aName,
+ OUString const& aLibName,
+ OUString const& aName,
ItemType eType
) :
SfxPoolItem(nWhichItem),
@@ -39,9 +39,9 @@ SbxItem::SbxItem (
SbxItem::SbxItem (
sal_uInt16 nWhichItem,
ScriptDocument const& rDocument,
- rtl::OUString const& aLibName,
- rtl::OUString const& aName,
- rtl::OUString const& aMethodName,
+ OUString const& aLibName,
+ OUString const& aName,
+ OUString const& aMethodName,
ItemType eType
) :
SfxPoolItem(nWhichItem),
diff --git a/basctl/source/basicide/scriptdocument.cxx b/basctl/source/basicide/scriptdocument.cxx
index cdf91fbc37e5..3826f5a31783 100644
--- a/basctl/source/basicide/scriptdocument.cxx
+++ b/basctl/source/basicide/scriptdocument.cxx
@@ -25,7 +25,7 @@
#include "doceventnotifier.hxx"
#include "documentenumeration.hxx"
-#include <com/sun/star/uri/XUriReferenceFactory.hpp>
+#include <com/sun/star/uri/UriReferenceFactory.hpp>
#include <com/sun/star/util/XMacroExpander.hpp>
#include <com/sun/star/document/MacroExecMode.hpp>
#include <com/sun/star/frame/XStorable.hpp>
@@ -88,6 +88,7 @@ namespace basctl
using ::com::sun::star::uno::makeAny;
using ::com::sun::star::script::XLibraryContainer2;
using ::com::sun::star::lang::XMultiServiceFactory;
+ using ::com::sun::star::uri::UriReferenceFactory;
using ::com::sun::star::uri::XUriReferenceFactory;
using ::com::sun::star::uri::XUriReference;
using ::com::sun::star::uno::XComponentContext;
@@ -231,7 +232,7 @@ namespace basctl
getLibraryContainer( LibraryContainerType _eType ) const;
/// determines whether a given library is part of the shared installation
- bool isLibraryShared( const ::rtl::OUString& _rLibName, LibraryContainerType _eType );
+ bool isLibraryShared( const OUString& _rLibName, LibraryContainerType _eType );
/** returns the current frame of the document
@@ -252,30 +253,28 @@ namespace basctl
bool isDocumentModified() const;
bool saveDocument( const Reference< XStatusIndicator >& _rxStatusIndicator ) const;
- ::rtl::OUString
- getTitle() const;
- ::rtl::OUString
- getURL() const;
+ OUString getTitle() const;
+ OUString getURL() const;
bool allowMacros() const;
Reference< XNameContainer >
- getLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, bool _bLoadLibrary ) const
+ getLibrary( LibraryContainerType _eType, const OUString& _rLibName, bool _bLoadLibrary ) const
SAL_THROW((NoSuchElementException));
- bool hasLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const;
+ bool hasLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const;
Reference< XNameContainer >
- getOrCreateLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const;
+ getOrCreateLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const;
- void loadLibraryIfExists( LibraryContainerType _eType, const ::rtl::OUString& _rLibrary );
+ void loadLibraryIfExists( LibraryContainerType _eType, const OUString& _rLibrary );
- bool removeModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModuleName );
- bool hasModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName ) const;
- bool getModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rObjectName, Any& _out_rModuleOrDialog );
- bool renameModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rOldName, const ::rtl::OUString& _rNewName, const Reference< XNameContainer >& _rxExistingDialogModel );
- bool createModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, bool _bCreateMain, ::rtl::OUString& _out_rNewModuleCode ) const;
- bool insertModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rObjectName, const ::rtl::OUString& _rModName, const Any& _rElement ) const;
- bool updateModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, const ::rtl::OUString& _rModuleCode ) const;
- bool createDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const;
+ bool removeModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rModuleName );
+ bool hasModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rModName ) const;
+ bool getModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rObjectName, Any& _out_rModuleOrDialog );
+ bool renameModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rOldName, const OUString& _rNewName, const Reference< XNameContainer >& _rxExistingDialogModel );
+ bool createModule( const OUString& _rLibName, const OUString& _rModName, bool _bCreateMain, OUString& _out_rNewModuleCode ) const;
+ bool insertModuleOrDialog( LibraryContainerType _eType, const OUString& _rObjectName, const OUString& _rModName, const Any& _rElement ) const;
+ bool updateModule( const OUString& _rLibName, const OUString& _rModName, const OUString& _rModuleCode ) const;
+ bool createDialog( const OUString& _rLibName, const OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const;
protected:
// DocumentEventListener
@@ -447,7 +446,7 @@ namespace basctl
}
- Reference< XNameContainer > ScriptDocument::Impl::getLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, bool _bLoadLibrary ) const
+ Reference< XNameContainer > ScriptDocument::Impl::getLibrary( LibraryContainerType _eType, const OUString& _rLibName, bool _bLoadLibrary ) const
SAL_THROW((NoSuchElementException))
{
OSL_ENSURE( isValid(), "ScriptDocument::Impl::getLibrary: invalid state!" );
@@ -482,7 +481,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::hasLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const
+ bool ScriptDocument::Impl::hasLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const
{
bool bHas = false;
try
@@ -498,7 +497,7 @@ namespace basctl
}
- Reference< XNameContainer > ScriptDocument::Impl::getOrCreateLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const
+ Reference< XNameContainer > ScriptDocument::Impl::getOrCreateLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const
{
Reference< XNameContainer > xLibrary;
try
@@ -520,7 +519,7 @@ namespace basctl
}
- void ScriptDocument::Impl::loadLibraryIfExists( LibraryContainerType _eType, const ::rtl::OUString& _rLibrary )
+ void ScriptDocument::Impl::loadLibraryIfExists( LibraryContainerType _eType, const OUString& _rLibrary )
{
try
{
@@ -535,7 +534,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::removeModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModuleName )
+ bool ScriptDocument::Impl::removeModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rModuleName )
{
OSL_ENSURE( isValid(), "ScriptDocument::Impl::removeModuleOrDialog: invalid!" );
if ( isValid() )
@@ -558,7 +557,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::hasModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName ) const
+ bool ScriptDocument::Impl::hasModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rModName ) const
{
OSL_ENSURE( isValid(), "ScriptDocument::Impl::hasModuleOrDialog: invalid!" );
if ( !isValid() )
@@ -578,7 +577,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::getModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rObjectName, Any& _out_rModuleOrDialog )
+ bool ScriptDocument::Impl::getModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rObjectName, Any& _out_rModuleOrDialog )
{
OSL_ENSURE( isValid(), "ScriptDocument::Impl::getModuleOrDialog: invalid!" );
if ( !isValid() )
@@ -602,8 +601,8 @@ namespace basctl
}
- bool ScriptDocument::Impl::renameModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName,
- const ::rtl::OUString& _rOldName, const ::rtl::OUString& _rNewName, const Reference< XNameContainer >& _rxExistingDialogModel )
+ bool ScriptDocument::Impl::renameModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName,
+ const OUString& _rOldName, const OUString& _rNewName, const Reference< XNameContainer >& _rxExistingDialogModel )
{
OSL_ENSURE( isValid(), "ScriptDocument::Impl::renameModuleOrDialog: invalid!" );
if ( !isValid() )
@@ -675,9 +674,9 @@ namespace basctl
}
- bool ScriptDocument::Impl::createModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, bool _bCreateMain, ::rtl::OUString& _out_rNewModuleCode ) const
+ bool ScriptDocument::Impl::createModule( const OUString& _rLibName, const OUString& _rModName, bool _bCreateMain, OUString& _out_rNewModuleCode ) const
{
- _out_rNewModuleCode = ::rtl::OUString();
+ _out_rNewModuleCode = OUString();
try
{
Reference< XNameContainer > xLib( getLibrary( E_SCRIPTS, _rLibName, true ) );
@@ -685,9 +684,9 @@ namespace basctl
return false;
// create new module
- _out_rNewModuleCode = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "REM ***** BASIC *****\n\n" ) );
+ _out_rNewModuleCode = "REM ***** BASIC *****\n\n" ;
if ( _bCreateMain )
- _out_rNewModuleCode += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Sub Main\n\nEnd Sub\n" ) );
+ _out_rNewModuleCode += "Sub Main\n\nEnd Sub\n" ;
// insert module into library
xLib->insertByName( _rModName, makeAny( _out_rNewModuleCode ) );
@@ -702,7 +701,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::insertModuleOrDialog( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rObjectName, const Any& _rElement ) const
+ bool ScriptDocument::Impl::insertModuleOrDialog( LibraryContainerType _eType, const OUString& _rLibName, const OUString& _rObjectName, const Any& _rElement ) const
{
try
{
@@ -721,7 +720,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::updateModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, const ::rtl::OUString& _rModuleCode ) const
+ bool ScriptDocument::Impl::updateModule( const OUString& _rLibName, const OUString& _rModName, const OUString& _rModuleCode ) const
{
try
{
@@ -739,7 +738,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::createDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const
+ bool ScriptDocument::Impl::createDialog( const OUString& _rLibName, const OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const
{
try
{
@@ -823,21 +822,21 @@ namespace basctl
if ( _rxStatusIndicator.is() )
{
aArgs.realloc(1);
- aArgs[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "StatusIndicator" ) );
+ aArgs[0].Name = "StatusIndicator" ;
aArgs[0].Value <<= _rxStatusIndicator;
}
try
{
URL aURL;
- aURL.Complete = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:Save" ) );
+ aURL.Complete = ".uno:Save" ;
aURL.Main = aURL.Complete;
- aURL.Protocol = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ".uno:" ) );
- aURL.Path = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Save" ) );
+ aURL.Protocol = ".uno:" ;
+ aURL.Path = "Save" ;
Reference< XDispatchProvider > xDispProv( xFrame, UNO_QUERY_THROW );
Reference< XDispatch > xDispatch(
- xDispProv->queryDispatch( aURL, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "_self" ) ), FrameSearchFlag::AUTO ),
+ xDispProv->queryDispatch( aURL, "_self", FrameSearchFlag::AUTO ),
UNO_SET_THROW );
xDispatch->dispatch( aURL, aArgs );
@@ -852,11 +851,11 @@ namespace basctl
}
- ::rtl::OUString ScriptDocument::Impl::getTitle() const
+ OUString ScriptDocument::Impl::getTitle() const
{
OSL_PRECOND( isValid() && isDocument(), "ScriptDocument::Impl::getTitle: for documents only!" );
- ::rtl::OUString sTitle;
+ OUString sTitle;
if ( isValid() && isDocument() )
{
sTitle = ::comphelper::DocumentInfo::getDocumentTitle( m_xDocument );
@@ -865,11 +864,11 @@ namespace basctl
}
- ::rtl::OUString ScriptDocument::Impl::getURL() const
+ OUString ScriptDocument::Impl::getURL() const
{
OSL_PRECOND( isValid() && isDocument(), "ScriptDocument::Impl::getURL: for documents only!" );
- ::rtl::OUString sURL;
+ OUString sURL;
if ( isValid() && isDocument() )
{
try
@@ -926,7 +925,7 @@ namespace basctl
}
- bool ScriptDocument::Impl::isLibraryShared( const ::rtl::OUString& _rLibName, LibraryContainerType _eType )
+ bool ScriptDocument::Impl::isLibraryShared( const OUString& _rLibName, LibraryContainerType _eType )
{
bool bIsShared = false;
try
@@ -935,36 +934,28 @@ namespace basctl
if ( !xLibContainer->hasByName( _rLibName ) || !xLibContainer->isLibraryLink( _rLibName ) )
return false;
- ::rtl::OUString aFileURL;
- Reference< XMultiServiceFactory > xMSF( ::comphelper::getProcessServiceFactory() );
- Reference< XUriReferenceFactory > xUriFac;
- if ( xMSF.is() )
- {
- xUriFac.set(
- xMSF->createInstance( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.uri.UriReferenceFactory" ) ) ),
- UNO_QUERY_THROW );
- }
+ OUString aFileURL;
+ Reference< XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ Reference< XUriReferenceFactory > xUriFac = UriReferenceFactory::create(xContext);
- ::rtl::OUString aLinkURL( xLibContainer->getLibraryLinkURL( _rLibName ) );
+ OUString aLinkURL( xLibContainer->getLibraryLinkURL( _rLibName ) );
Reference< XUriReference > xUriRef( xUriFac->parse( aLinkURL ), UNO_QUERY_THROW );
- ::rtl::OUString aScheme = xUriRef->getScheme();
+ OUString aScheme = xUriRef->getScheme();
if ( aScheme.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("file")) )
{
aFileURL = aLinkURL;
}
else if ( aScheme.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("vnd.sun.star.pkg")) )
{
- ::rtl::OUString aAuthority = xUriRef->getAuthority();
- if ( aAuthority.matchIgnoreAsciiCaseAsciiL( RTL_CONSTASCII_STRINGPARAM( "vnd.sun.star.expand:" ) ) )
+ OUString aAuthority = xUriRef->getAuthority();
+ if ( aAuthority.matchIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("vnd.sun.star.expand:")) )
{
- ::rtl::OUString aDecodedURL( aAuthority.copy( sizeof ( "vnd.sun.star.expand:" ) - 1 ) );
+ OUString aDecodedURL( aAuthority.copy( sizeof ( "vnd.sun.star.expand:" ) - 1 ) );
aDecodedURL = ::rtl::Uri::decode( aDecodedURL, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8 );
- Reference< XComponentContext > xContext(
- comphelper::getComponentContext( xMSF ) );
Reference< XMacroExpander > xMacroExpander(
xContext->getValueByName(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/singletons/com.sun.star.util.theMacroExpander" )) ),
+ "/singletons/com.sun.star.util.theMacroExpander" ),
UNO_QUERY_THROW );
aFileURL = xMacroExpander->expandMacros( aDecodedURL );
}
@@ -976,11 +967,11 @@ namespace basctl
::osl::FileStatus aFileStatus( osl_FileStatus_Mask_FileURL );
OSL_VERIFY( ::osl::DirectoryItem::get( aFileURL, aFileItem ) == ::osl::FileBase::E_None );
OSL_VERIFY( aFileItem.getFileStatus( aFileStatus ) == ::osl::FileBase::E_None );
- ::rtl::OUString aCanonicalFileURL( aFileStatus.getFileURL() );
+ OUString aCanonicalFileURL( aFileStatus.getFileURL() );
- ::rtl::OUString aSearchURL1( RTL_CONSTASCII_USTRINGPARAM( "share/basic" ) );
- ::rtl::OUString aSearchURL2( RTL_CONSTASCII_USTRINGPARAM( "share/uno_packages" ) );
- ::rtl::OUString aSearchURL3( RTL_CONSTASCII_USTRINGPARAM( "share/extensions" ) );
+ OUString aSearchURL1( "share/basic" );
+ OUString aSearchURL2( "share/uno_packages" );
+ OUString aSearchURL3( "share/extensions" );
if( aCanonicalFileURL.indexOf( aSearchURL1 ) >= 0 ||
aCanonicalFileURL.indexOf( aSearchURL2 ) >= 0 ||
aCanonicalFileURL.indexOf( aSearchURL3 ) >= 0 )
@@ -1120,7 +1111,7 @@ namespace basctl
}
- ScriptDocument ScriptDocument::getDocumentWithURLOrCaption( const ::rtl::OUString& _rUrlOrCaption )
+ ScriptDocument ScriptDocument::getDocumentWithURLOrCaption( const OUString& _rUrlOrCaption )
{
ScriptDocument aDocument( getApplicationScriptDocument() );
if ( _rUrlOrCaption.isEmpty() )
@@ -1241,34 +1232,34 @@ namespace basctl
}
- Reference< XNameContainer > ScriptDocument::getLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, bool _bLoadLibrary ) const
+ Reference< XNameContainer > ScriptDocument::getLibrary( LibraryContainerType _eType, const OUString& _rLibName, bool _bLoadLibrary ) const
SAL_THROW((NoSuchElementException))
{
return m_pImpl->getLibrary( _eType, _rLibName, _bLoadLibrary );
}
- bool ScriptDocument::hasLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const
+ bool ScriptDocument::hasLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const
{
return m_pImpl->hasLibrary( _eType, _rLibName );
}
- Reference< XNameContainer > ScriptDocument::getOrCreateLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const
+ Reference< XNameContainer > ScriptDocument::getOrCreateLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const
{
return m_pImpl->getOrCreateLibrary( _eType, _rLibName );
}
- void ScriptDocument::loadLibraryIfExists( LibraryContainerType _eType, const ::rtl::OUString& _rLibrary )
+ void ScriptDocument::loadLibraryIfExists( LibraryContainerType _eType, const OUString& _rLibrary )
{
m_pImpl->loadLibraryIfExists( _eType, _rLibrary );
}
- Sequence< ::rtl::OUString > ScriptDocument::getObjectNames( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const
+ Sequence< OUString > ScriptDocument::getObjectNames( LibraryContainerType _eType, const OUString& _rLibName ) const
{
- Sequence< ::rtl::OUString > aModuleNames;
+ Sequence< OUString > aModuleNames;
try
{
@@ -1291,25 +1282,23 @@ namespace basctl
}
- ::rtl::OUString ScriptDocument::createObjectName( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const
+ OUString ScriptDocument::createObjectName( LibraryContainerType _eType, const OUString& _rLibName ) const
{
- ::rtl::OUString aObjectName;
+ OUString aObjectName;
- ::rtl::OUString aBaseName = _eType == E_SCRIPTS
- ? ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Module" ) )
- : ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Dialog" ) );
+ OUString aBaseName = _eType == E_SCRIPTS ? OUString("Module") : OUString("Dialog");
- Sequence< ::rtl::OUString > aUsedNames( getObjectNames( _eType, _rLibName ) );
- ::std::set< ::rtl::OUString > aUsedNamesCheck;
+ Sequence< OUString > aUsedNames( getObjectNames( _eType, _rLibName ) );
+ ::std::set< OUString > aUsedNamesCheck;
::std::copy( aUsedNames.getConstArray(), aUsedNames.getConstArray() + aUsedNames.getLength(),
- ::std::insert_iterator< ::std::set< ::rtl::OUString > >( aUsedNamesCheck, aUsedNamesCheck.begin() ) );
+ ::std::insert_iterator< ::std::set< OUString > >( aUsedNamesCheck, aUsedNamesCheck.begin() ) );
bool bValid = false;
sal_Int32 i = 1;
while ( !bValid )
{
aObjectName = aBaseName;
- aObjectName += ::rtl::OUString::valueOf( i );
+ aObjectName += OUString::valueOf( i );
if ( aUsedNamesCheck.find( aObjectName ) == aUsedNamesCheck.end() )
bValid = true;
@@ -1321,7 +1310,7 @@ namespace basctl
}
- Sequence< ::rtl::OUString > ScriptDocument::getLibraryNames() const
+ Sequence< OUString > ScriptDocument::getLibraryNames() const
{
return GetMergedLibraryNames( getLibraryContainer( E_SCRIPTS ), getLibraryContainer( E_DIALOGS ) );
}
@@ -1364,19 +1353,19 @@ namespace basctl
}
- bool ScriptDocument::removeModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModuleName ) const
+ bool ScriptDocument::removeModule( const OUString& _rLibName, const OUString& _rModuleName ) const
{
return m_pImpl->removeModuleOrDialog( E_SCRIPTS, _rLibName, _rModuleName );
}
- bool ScriptDocument::hasModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModuleName ) const
+ bool ScriptDocument::hasModule( const OUString& _rLibName, const OUString& _rModuleName ) const
{
return m_pImpl->hasModuleOrDialog( E_SCRIPTS, _rLibName, _rModuleName );
}
- bool ScriptDocument::getModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, ::rtl::OUString& _out_rModuleSource ) const
+ bool ScriptDocument::getModule( const OUString& _rLibName, const OUString& _rModName, OUString& _out_rModuleSource ) const
{
Any aCode;
if ( !m_pImpl->getModuleOrDialog( E_SCRIPTS, _rLibName, _rModName, aCode ) )
@@ -1386,13 +1375,13 @@ namespace basctl
}
- bool ScriptDocument::renameModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rOldName, const ::rtl::OUString& _rNewName ) const
+ bool ScriptDocument::renameModule( const OUString& _rLibName, const OUString& _rOldName, const OUString& _rNewName ) const
{
return m_pImpl->renameModuleOrDialog( E_SCRIPTS, _rLibName, _rOldName, _rNewName, NULL );
}
- bool ScriptDocument::createModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, bool _bCreateMain, ::rtl::OUString& _out_rNewModuleCode ) const
+ bool ScriptDocument::createModule( const OUString& _rLibName, const OUString& _rModName, bool _bCreateMain, OUString& _out_rNewModuleCode ) const
{
if ( !m_pImpl->createModule( _rLibName, _rModName, _bCreateMain, _out_rNewModuleCode ) )
return false;
@@ -1403,31 +1392,31 @@ namespace basctl
}
- bool ScriptDocument::insertModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, const ::rtl::OUString& _rModuleCode ) const
+ bool ScriptDocument::insertModule( const OUString& _rLibName, const OUString& _rModName, const OUString& _rModuleCode ) const
{
return m_pImpl->insertModuleOrDialog( E_SCRIPTS, _rLibName, _rModName, makeAny( _rModuleCode ) );
}
- bool ScriptDocument::updateModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, const ::rtl::OUString& _rModuleCode ) const
+ bool ScriptDocument::updateModule( const OUString& _rLibName, const OUString& _rModName, const OUString& _rModuleCode ) const
{
return m_pImpl->updateModule( _rLibName, _rModName, _rModuleCode );
}
- bool ScriptDocument::removeDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName ) const
+ bool ScriptDocument::removeDialog( const OUString& _rLibName, const OUString& _rDialogName ) const
{
return m_pImpl->removeModuleOrDialog( E_DIALOGS, _rLibName, _rDialogName );
}
- bool ScriptDocument::hasDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName ) const
+ bool ScriptDocument::hasDialog( const OUString& _rLibName, const OUString& _rDialogName ) const
{
return m_pImpl->hasModuleOrDialog( E_DIALOGS, _rLibName, _rDialogName );
}
- bool ScriptDocument::getDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const
+ bool ScriptDocument::getDialog( const OUString& _rLibName, const OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const
{
Any aCode;
if ( !m_pImpl->getModuleOrDialog( E_DIALOGS, _rLibName, _rDialogName, aCode ) )
@@ -1437,13 +1426,13 @@ namespace basctl
}
- bool ScriptDocument::renameDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rOldName, const ::rtl::OUString& _rNewName, const Reference< XNameContainer >& _rxExistingDialogModel ) const
+ bool ScriptDocument::renameDialog( const OUString& _rLibName, const OUString& _rOldName, const OUString& _rNewName, const Reference< XNameContainer >& _rxExistingDialogModel ) const
{
return m_pImpl->renameModuleOrDialog( E_DIALOGS, _rLibName, _rOldName, _rNewName, _rxExistingDialogModel );
}
- bool ScriptDocument::createDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const
+ bool ScriptDocument::createDialog( const OUString& _rLibName, const OUString& _rDialogName, Reference< XInputStreamProvider >& _out_rDialogProvider ) const
{
if ( !m_pImpl->createDialog( _rLibName, _rDialogName, _out_rDialogProvider ) )
return false;
@@ -1453,7 +1442,7 @@ namespace basctl
}
- bool ScriptDocument::insertDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName, const Reference< XInputStreamProvider >& _rxDialogProvider ) const
+ bool ScriptDocument::insertDialog( const OUString& _rLibName, const OUString& _rDialogName, const Reference< XInputStreamProvider >& _rxDialogProvider ) const
{
return m_pImpl->insertModuleOrDialog( E_DIALOGS, _rLibName, _rDialogName, makeAny( _rxDialogProvider ) );
}
@@ -1477,7 +1466,7 @@ namespace basctl
}
- LibraryLocation ScriptDocument::getLibraryLocation( const ::rtl::OUString& _rLibName ) const
+ LibraryLocation ScriptDocument::getLibraryLocation( const OUString& _rLibName ) const
{
LibraryLocation eLocation = LIBRARY_LOCATION_UNKNOWN;
if ( !_rLibName.isEmpty() )
@@ -1505,9 +1494,9 @@ namespace basctl
}
- ::rtl::OUString ScriptDocument::getTitle( LibraryLocation _eLocation, LibraryType _eType ) const
+ OUString ScriptDocument::getTitle( LibraryLocation _eLocation, LibraryType _eType ) const
{
- ::rtl::OUString aTitle;
+ OUString aTitle;
switch ( _eLocation )
{
@@ -1546,13 +1535,13 @@ namespace basctl
}
- ::rtl::OUString ScriptDocument::getTitle() const
+ OUString ScriptDocument::getTitle() const
{
return m_pImpl->getTitle();
}
- ::rtl::OUString ScriptDocument::getURL() const
+ OUString ScriptDocument::getURL() const
{
return m_pImpl->getURL();
}
diff --git a/basctl/source/basicide/tbxctl.cxx b/basctl/source/basicide/tbxctl.cxx
index 11d8068829c2..1396e22bbc99 100644
--- a/basctl/source/basicide/tbxctl.cxx
+++ b/basctl/source/basicide/tbxctl.cxx
@@ -36,7 +36,7 @@ using namespace ::com::sun::star::uno;
namespace
{
- rtl::OUString aSubToolBarResName( RTL_CONSTASCII_USTRINGPARAM( "private:resource/toolbar/insertcontrolsbar" ) );
+ OUString aSubToolBarResName( "private:resource/toolbar/insertcontrolsbar" );
}
SFX_IMPL_TOOLBOX_CONTROL( TbxControls, SfxAllEnumItem )
@@ -107,8 +107,8 @@ void TbxControls::StateChanged( sal_uInt16 nSID, SfxItemState eState,
}
if( nTemp )
{
- rtl::OUString aSlotURL( RTL_CONSTASCII_USTRINGPARAM( "slot:" ));
- aSlotURL += rtl::OUString::valueOf( sal_Int32( nTemp ));
+ OUString aSlotURL( "slot:" );
+ aSlotURL += OUString::valueOf( sal_Int32( nTemp ));
Image aImage = GetImage( m_xFrame,
aSlotURL,
hasBigImages()
diff --git a/basctl/source/basicide/unomodel.cxx b/basctl/source/basicide/unomodel.cxx
index 6825aa228466..0ee8f3ade7a0 100644
--- a/basctl/source/basicide/unomodel.cxx
+++ b/basctl/source/basicide/unomodel.cxx
@@ -31,7 +31,6 @@
namespace basctl
{
-using ::rtl::OUString;
using namespace ::cppu;
using namespace ::std;
using namespace ::com::sun::star;
diff --git a/basctl/source/dlged/dlged.cxx b/basctl/source/dlged/dlged.cxx
index d4b8c5f12b85..d56814fcd7d9 100644
--- a/basctl/source/dlged/dlged.cxx
+++ b/basctl/source/dlged/dlged.cxx
@@ -53,11 +53,10 @@ using namespace ::com::sun::star;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::io;
-using ::rtl::OUString;
-static ::rtl::OUString aResourceResolverPropName( RTL_CONSTASCII_USTRINGPARAM( "ResourceResolver" ));
-static ::rtl::OUString aDecorationPropName( RTL_CONSTASCII_USTRINGPARAM( "Decoration" ));
-static ::rtl::OUString aTitlePropName( RTL_CONSTASCII_USTRINGPARAM( "Title" ));
+static OUString aResourceResolverPropName( "ResourceResolver" );
+static OUString aDecorationPropName( "Decoration" );
+static OUString aTitlePropName( "Title" );
//============================================================================
@@ -90,7 +89,7 @@ void DlgEditor::ShowDialog()
uno::Reference< lang::XMultiServiceFactory > xMSF = getProcessServiceFactory();
// create a dialog
- uno::Reference< awt::XControl > xDlg( xMSF->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDialog" ) ) ), uno::UNO_QUERY );
+ uno::Reference< awt::XControl > xDlg( xMSF->createInstance( "com.sun.star.awt.UnoControlDialog" ), uno::UNO_QUERY );
// clone the dialog model
uno::Reference< util::XCloneable > xC( m_xUnoControlDialogModel, uno::UNO_QUERY );
@@ -123,7 +122,7 @@ void DlgEditor::ShowDialog()
if( !bDecoration )
{
xNewDlgModPropSet->setPropertyValue( aDecorationPropName, makeAny( true ) );
- xNewDlgModPropSet->setPropertyValue( aTitlePropName, makeAny( ::rtl::OUString() ) );
+ xNewDlgModPropSet->setPropertyValue( aTitlePropName, makeAny( OUString() ) );
}
}
catch(const UnknownPropertyException& )
@@ -134,7 +133,7 @@ void DlgEditor::ShowDialog()
xDlg->setModel( xDlgMod );
// create a peer
- uno::Reference< awt::XToolkit> xToolkit( xMSF->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.ExtToolkit" ) ) ), uno::UNO_QUERY );
+ uno::Reference< awt::XToolkit> xToolkit( xMSF->createInstance( "com.sun.star.awt.ExtToolkit" ), uno::UNO_QUERY );
xDlg->createPeer( xToolkit, rWindow.GetComponentInterface() );
uno::Reference< awt::XDialog > xD( xDlg, uno::UNO_QUERY );
@@ -206,18 +205,18 @@ DlgEditor::DlgEditor (
SdrLayerAdmin& rAdmin = pDlgEdModel->GetLayerAdmin();
rAdmin.NewLayer( rAdmin.GetControlLayerName() );
- rAdmin.NewLayer( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HiddenLayer")) );
+ rAdmin.NewLayer( OUString( "HiddenLayer" ) );
pDlgEdModel->InsertPage(pDlgEdPage);
// set clipboard data flavors
- m_ClipboardDataFlavors[0].MimeType = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "application/vnd.sun.xml.dialog" ));
- m_ClipboardDataFlavors[0].HumanPresentableName = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Dialog 6.0" ));
+ m_ClipboardDataFlavors[0].MimeType = "application/vnd.sun.xml.dialog" ;
+ m_ClipboardDataFlavors[0].HumanPresentableName = "Dialog 6.0" ;
m_ClipboardDataFlavors[0].DataType = ::getCppuType( (const Sequence< sal_Int8 >*) 0 );
m_ClipboardDataFlavorsResource[0] = m_ClipboardDataFlavors[0];
- m_ClipboardDataFlavorsResource[1].MimeType = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "application/vnd.sun.xml.dialogwithresource" ));
- m_ClipboardDataFlavorsResource[1].HumanPresentableName = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Dialog 8.0" ));
+ m_ClipboardDataFlavorsResource[1].MimeType = "application/vnd.sun.xml.dialogwithresource" ;
+ m_ClipboardDataFlavorsResource[1].HumanPresentableName = "Dialog 8.0" ;
m_ClipboardDataFlavorsResource[1].DataType = ::getCppuType( (const Sequence< sal_Int8 >*) 0 );
aPaintTimer.SetTimeout( 1 );
@@ -230,7 +229,7 @@ DlgEditor::DlgEditor (
pDlgEdPage->SetSize( rWindow.PixelToLogic( Size(DLGED_PAGE_WIDTH_MIN, DLGED_PAGE_HEIGHT_MIN) ) );
pDlgEdView->ShowSdrPage(pDlgEdView->GetModel()->GetPage(0));
- pDlgEdView->SetLayerVisible( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("HiddenLayer")), false );
+ pDlgEdView->SetLayerVisible( OUString( "HiddenLayer" ), false );
pDlgEdView->SetMoveSnapOnlyTopLeft(true);
pDlgEdView->SetWorkArea( Rectangle( Point( 0, 0 ), pDlgEdPage->GetSize() ) );
@@ -371,8 +370,8 @@ void DlgEditor::SetDialog( uno::Reference< container::XNameContainer > xUnoContr
if ( xNameAcc.is() )
{
// get sequence of control names
- Sequence< ::rtl::OUString > aNames = xNameAcc->getElementNames();
- const ::rtl::OUString* pNames = aNames.getConstArray();
+ Sequence< OUString > aNames = xNameAcc->getElementNames();
+ const OUString* pNames = aNames.getConstArray();
sal_Int32 nCtrls = aNames.getLength();
// create a map of tab indices and control names, sorted by tab index
@@ -380,7 +379,7 @@ void DlgEditor::SetDialog( uno::Reference< container::XNameContainer > xUnoContr
for ( sal_Int32 i = 0; i < nCtrls; ++i )
{
// get name
- ::rtl::OUString aName( pNames[i] );
+ OUString aName( pNames[i] );
// get tab index
sal_Int16 nTabIndex = -1;
@@ -437,7 +436,7 @@ Reference< util::XNumberFormatsSupplier > const & DlgEditor::GetNumberFormatsSup
{
Reference< lang::XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
Reference< util::XNumberFormatsSupplier > xSupplier( xMSF->createInstance(
- ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.util.NumberFormatsSupplier") ) ), UNO_QUERY );
+ "com.sun.star.util.NumberFormatsSupplier" ), UNO_QUERY );
::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
if ( !m_xSupplier.is() )
@@ -716,7 +715,7 @@ void DlgEditor::Copy()
if (pDlgEdObj && !dynamic_cast<DlgEdForm*>(pDlgEdObj))
{
- ::rtl::OUString aName;
+ OUString aName;
Reference< beans::XPropertySet > xMarkPSet(pDlgEdObj->GetUnoControlModel(), uno::UNO_QUERY);
if (xMarkPSet.is())
{
@@ -874,9 +873,8 @@ void DlgEditor::Paste()
{
// create clipboard dialog model from xml
Reference< lang::XMultiServiceFactory > xMSF = getProcessServiceFactory();
- Reference< container::XNameContainer > xClipDialogModel( xMSF->createInstance
- ( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDialogModel" ) ) ),
- uno::UNO_QUERY );
+ Reference< container::XNameContainer > xClipDialogModel( xMSF->createInstance(
+ "com.sun.star.awt.UnoControlDialogModel" ), uno::UNO_QUERY );
bool bSourceIsLocalized = false;
Sequence< sal_Int8 > DialogModelBytes;
@@ -936,7 +934,7 @@ void DlgEditor::Paste()
{
Reference< lang::XMultiServiceFactory > xSMgr = getProcessServiceFactory();
xStringResourcePersistence = Reference< resource::XStringResourcePersistence >( xSMgr->createInstance
- ( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.resource.StringResource" )) ), UNO_QUERY );
+ ( "com.sun.star.resource.StringResource" ), UNO_QUERY );
if( xStringResourcePersistence.is() )
xStringResourcePersistence->importBinary( aResData );
}
@@ -956,7 +954,7 @@ void DlgEditor::Paste()
pCtrlObj->SetUnoControlModel( xCtrlModel ); // set control model
// set new name
- ::rtl::OUString aOUniqueName( pCtrlObj->GetUniqueName() );
+ OUString aOUniqueName( pCtrlObj->GetUniqueName() );
Reference< beans::XPropertySet > xPSet( xCtrlModel , UNO_QUERY );
Any aUniqueName;
aUniqueName <<= aOUniqueName;
@@ -1037,7 +1035,7 @@ void DlgEditor::Delete()
if ( pDlgEdObj && !dynamic_cast<DlgEdForm*>(pDlgEdObj) )
{
// get name from property
- ::rtl::OUString aName;
+ OUString aName;
uno::Reference< beans::XPropertySet > xPSet(pDlgEdObj->GetUnoControlModel(), uno::UNO_QUERY);
if (xPSet.is())
{
@@ -1127,7 +1125,7 @@ namespace Print
long const nBorder = 300;
}
-void lcl_PrintHeader( Printer* pPrinter, const ::rtl::OUString& rTitle ) // not working yet
+void lcl_PrintHeader( Printer* pPrinter, const OUString& rTitle ) // not working yet
{
pPrinter->Push();
@@ -1171,14 +1169,14 @@ sal_Int32 DlgEditor::countPages( Printer* )
return 1;
}
-void DlgEditor::printPage( sal_Int32 nPage, Printer* pPrinter, const ::rtl::OUString& rTitle )
+void DlgEditor::printPage( sal_Int32 nPage, Printer* pPrinter, const OUString& rTitle )
{
if( nPage == 0 )
Print( pPrinter, rTitle );
}
-void DlgEditor::Print( Printer* pPrinter, const ::rtl::OUString& rTitle ) // not working yet
+void DlgEditor::Print( Printer* pPrinter, const OUString& rTitle ) // not working yet
{
{
MapMode aOldMap( pPrinter->GetMapMode());
diff --git a/basctl/source/dlged/dlgedclip.cxx b/basctl/source/dlged/dlgedclip.cxx
index 54735168e340..54cd68b9e00b 100644
--- a/basctl/source/dlged/dlgedclip.cxx
+++ b/basctl/source/dlged/dlgedclip.cxx
@@ -58,7 +58,7 @@ sal_Bool DlgEdTransferableImpl::compareDataFlavors( const DataFlavor& lFlavor, c
// compare mime content types
Reference< lang::XMultiServiceFactory > xMSF = getProcessServiceFactory();
Reference< datatransfer::XMimeContentTypeFactory >
- xMCntTypeFactory( xMSF->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.datatransfer.MimeContentTypeFactory" ) ) ), UNO_QUERY );
+ xMCntTypeFactory( xMSF->createInstance( "com.sun.star.datatransfer.MimeContentTypeFactory" ), UNO_QUERY );
if ( xMCntTypeFactory.is( ) )
{
@@ -66,8 +66,8 @@ sal_Bool DlgEdTransferableImpl::compareDataFlavors( const DataFlavor& lFlavor, c
Reference< datatransfer::XMimeContentType > xLType = xMCntTypeFactory->createMimeContentType( lFlavor.MimeType );
Reference< datatransfer::XMimeContentType > xRType = xMCntTypeFactory->createMimeContentType( rFlavor.MimeType );
- ::rtl::OUString aLFullMediaType = xLType->getFullMediaType();
- ::rtl::OUString aRFullMediaType = xRType->getFullMediaType();
+ OUString aLFullMediaType = xLType->getFullMediaType();
+ OUString aRFullMediaType = xRType->getFullMediaType();
bRet = aLFullMediaType.equalsIgnoreAsciiCase( aRFullMediaType );
}
diff --git a/basctl/source/dlged/dlgedfac.cxx b/basctl/source/dlged/dlgedfac.cxx
index 781d96b54236..9c117ebb3da0 100644
--- a/basctl/source/dlged/dlgedfac.cxx
+++ b/basctl/source/dlged/dlgedfac.cxx
@@ -51,7 +51,7 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
if( bNeedsInit )
{
uno::Reference< lang::XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
- uno::Reference< container::XNameContainer > xC( xMSF->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDialogModel" ) ) ), uno::UNO_QUERY );
+ uno::Reference< container::XNameContainer > xC( xMSF->createInstance( "com.sun.star.awt.UnoControlDialogModel" ), uno::UNO_QUERY );
if( xC.is() )
{
uno::Reference< lang::XMultiServiceFactory > xModFact( xC, uno::UNO_QUERY );
@@ -67,33 +67,33 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
switch( pObjFactory->nIdentifier )
{
case OBJ_DLG_PUSHBUTTON:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlButtonModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlButtonModel", xDialogSFact );
break;
case OBJ_DLG_FORMRADIO:
case OBJ_DLG_RADIOBUTTON:
if ( pObjFactory->nIdentifier == OBJ_DLG_RADIOBUTTON )
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlRadioButtonModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlRadioButtonModel", xDialogSFact );
else
{
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.component.RadioButton" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.form.component.RadioButton", xDialogSFact );
static_cast< DlgEdObj* >( pObjFactory->pNewObj )->MakeDataAware( mxModel );
}
break;
case OBJ_DLG_FORMCHECK:
case OBJ_DLG_CHECKBOX:
if ( pObjFactory->nIdentifier == OBJ_DLG_CHECKBOX )
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlCheckBoxModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlCheckBoxModel", xDialogSFact );
else
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.component.CheckBox" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.form.component.CheckBox", xDialogSFact );
static_cast< DlgEdObj* >( pObjFactory->pNewObj )->MakeDataAware( mxModel );
break;
case OBJ_DLG_FORMLIST:
case OBJ_DLG_LISTBOX:
if ( pObjFactory->nIdentifier == OBJ_DLG_LISTBOX )
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlListBoxModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlListBoxModel", xDialogSFact );
else
{
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.component.ListBox" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.form.component.ListBox", xDialogSFact );
static_cast< DlgEdObj* >( pObjFactory->pNewObj )->MakeDataAware( mxModel );
}
break;
@@ -102,10 +102,10 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
{
DlgEdObj* pNew = NULL;
if ( pObjFactory->nIdentifier == OBJ_DLG_COMBOBOX )
- pNew = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlComboBoxModel" )) , xDialogSFact );
+ pNew = new DlgEdObj( "com.sun.star.awt.UnoControlComboBoxModel", xDialogSFact );
else
{
- pNew = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.component.ComboBox" )) , xDialogSFact );
+ pNew = new DlgEdObj( "com.sun.star.form.component.ComboBox", xDialogSFact );
static_cast< DlgEdObj* >( pNew )->MakeDataAware( mxModel );
}
pObjFactory->pNewObj = pNew;
@@ -123,27 +123,27 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
}
} break;
case OBJ_DLG_GROUPBOX:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlGroupBoxModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlGroupBoxModel", xDialogSFact );
break;
case OBJ_DLG_EDIT:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlEditModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlEditModel", xDialogSFact );
break;
case OBJ_DLG_FIXEDTEXT:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFixedTextModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlFixedTextModel", xDialogSFact );
break;
case OBJ_DLG_IMAGECONTROL:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlImageControlModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlImageControlModel", xDialogSFact );
break;
case OBJ_DLG_PROGRESSBAR:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlProgressBarModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlProgressBarModel", xDialogSFact );
break;
case OBJ_DLG_FORMHSCROLL:
case OBJ_DLG_HSCROLLBAR:
if ( pObjFactory->nIdentifier == OBJ_DLG_HSCROLLBAR )
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlScrollBarModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlScrollBarModel", xDialogSFact );
else
{
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.component.ScrollBar" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.form.component.ScrollBar", xDialogSFact );
static_cast< DlgEdObj* >( pObjFactory->pNewObj )->MakeDataAware( mxModel );
}
break;
@@ -152,10 +152,10 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
{
DlgEdObj* pNew = NULL;
if ( pObjFactory->nIdentifier == OBJ_DLG_VSCROLLBAR )
- pNew = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlScrollBarModel" )) , xDialogSFact );
+ pNew = new DlgEdObj( "com.sun.star.awt.UnoControlScrollBarModel", xDialogSFact );
else
{
- pNew = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.form.component.ScrollBar" )) , xDialogSFact );
+ pNew = new DlgEdObj( "com.sun.star.form.component.ScrollBar", xDialogSFact );
static_cast< DlgEdObj* >( pNew )->MakeDataAware( mxModel );
}
pObjFactory->pNewObj = pNew;
@@ -175,11 +175,11 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
}
} break;
case OBJ_DLG_HFIXEDLINE:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFixedLineModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlFixedLineModel", xDialogSFact );
break;
case OBJ_DLG_VFIXEDLINE:
{
- DlgEdObj* pNew = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFixedLineModel" )) , xDialogSFact );
+ DlgEdObj* pNew = new DlgEdObj( "com.sun.star.awt.UnoControlFixedLineModel", xDialogSFact );
pObjFactory->pNewObj = pNew;
// set vertical orientation
try
@@ -197,38 +197,38 @@ IMPL_LINK( DlgEdFactory, MakeObject, SdrObjFactory *, pObjFactory )
}
} break;
case OBJ_DLG_DATEFIELD:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDateFieldModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlDateFieldModel", xDialogSFact );
break;
case OBJ_DLG_TIMEFIELD:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlTimeFieldModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlTimeFieldModel", xDialogSFact );
break;
case OBJ_DLG_NUMERICFIELD:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlNumericFieldModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlNumericFieldModel", xDialogSFact );
break;
case OBJ_DLG_CURRENCYFIELD:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlCurrencyFieldModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlCurrencyFieldModel", xDialogSFact );
break;
case OBJ_DLG_FORMATTEDFIELD:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFormattedFieldModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlFormattedFieldModel", xDialogSFact );
break;
case OBJ_DLG_PATTERNFIELD:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlPatternFieldModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlPatternFieldModel", xDialogSFact );
break;
case OBJ_DLG_FILECONTROL:
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFileControlModel" )) , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlFileControlModel", xDialogSFact );
break;
case OBJ_DLG_FORMSPIN:
case OBJ_DLG_SPINBUTTON:
if ( pObjFactory->nIdentifier == OBJ_DLG_SPINBUTTON )
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString::createFromAscii("com.sun.star.awt.UnoControlSpinButtonModel") , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.awt.UnoControlSpinButtonModel", xDialogSFact );
else
{
- pObjFactory->pNewObj = new DlgEdObj( ::rtl::OUString::createFromAscii("com.sun.star.form.component.SpinButton") , xDialogSFact );
+ pObjFactory->pNewObj = new DlgEdObj( "com.sun.star.form.component.SpinButton", xDialogSFact );
static_cast< DlgEdObj* >( pObjFactory->pNewObj )->MakeDataAware( mxModel );
}
break;
case OBJ_DLG_TREECONTROL:
- DlgEdObj* pNew = new DlgEdObj( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.tree.TreeControlModel" )) , xDialogSFact );
+ DlgEdObj* pNew = new DlgEdObj( "com.sun.star.awt.tree.TreeControlModel", xDialogSFact );
pObjFactory->pNewObj = pNew;
break;
}
diff --git a/basctl/source/dlged/dlgedobj.cxx b/basctl/source/dlged/dlgedobj.cxx
index fa93236ecf56..ba07117a26d2 100644
--- a/basctl/source/dlged/dlgedobj.cxx
+++ b/basctl/source/dlged/dlgedobj.cxx
@@ -49,7 +49,6 @@ using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::container;
using namespace ::com::sun::star::script;
-using ::rtl::OUString;
TYPEINIT1(DlgEdObj, SdrUnoObj);
DBG_NAME(DlgEdObj);
@@ -74,7 +73,7 @@ DlgEdObj::DlgEdObj()
//----------------------------------------------------------------------------
-DlgEdObj::DlgEdObj(const ::rtl::OUString& rModelName,
+DlgEdObj::DlgEdObj(const OUString& rModelName,
const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rxSFac)
:SdrUnoObj(rModelName, rxSFac, false)
,bIsListening(false)
@@ -488,11 +487,11 @@ void DlgEdObj::PositionAndSizeChange( const beans::PropertyChangeEvent& evt )
void SAL_CALL DlgEdObj::NameChange( const ::com::sun::star::beans::PropertyChangeEvent& evt ) throw( ::com::sun::star::uno::RuntimeException)
{
// get old name
- ::rtl::OUString aOldName;
+ OUString aOldName;
evt.OldValue >>= aOldName;
// get new name
- ::rtl::OUString aNewName;
+ OUString aNewName;
evt.NewValue >>= aNewName;
if ( !aNewName.equals(aOldName) )
@@ -553,7 +552,7 @@ void DlgEdObj::UpdateStep()
sal_Int32 nStep = GetStep();
SdrLayerAdmin& rLayerAdmin = GetModel()->GetLayerAdmin();
- SdrLayerID nHiddenLayerId = rLayerAdmin.GetLayerID( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "HiddenLayer" ) ), false );
+ SdrLayerID nHiddenLayerId = rLayerAdmin.GetLayerID( OUString( "HiddenLayer" ), false );
SdrLayerID nControlLayerId = rLayerAdmin.GetLayerID( rLayerAdmin.GetControlLayerName(), false );
if( nCurStep )
@@ -592,8 +591,8 @@ void DlgEdObj::TabIndexChange( const beans::PropertyChangeEvent& evt ) throw (Ru
if ( xNameAcc.is() )
{
// get sequence of control names
- Sequence< ::rtl::OUString > aNames = xNameAcc->getElementNames();
- const ::rtl::OUString* pNames = aNames.getConstArray();
+ Sequence< OUString > aNames = xNameAcc->getElementNames();
+ const OUString* pNames = aNames.getConstArray();
sal_Int32 nCtrls = aNames.getLength();
sal_Int16 i;
@@ -602,7 +601,7 @@ void DlgEdObj::TabIndexChange( const beans::PropertyChangeEvent& evt ) throw (Ru
for ( i = 0; i < nCtrls; ++i )
{
// get control name
- ::rtl::OUString aName( pNames[i] );
+ OUString aName( pNames[i] );
// get tab index
sal_Int16 nTabIndex = -1;
@@ -619,7 +618,7 @@ void DlgEdObj::TabIndexChange( const beans::PropertyChangeEvent& evt ) throw (Ru
}
// create a helper list of control names, sorted by tab index
- ::std::vector< ::rtl::OUString > aNameList( aIndexToNameMap.size() );
+ ::std::vector< OUString > aNameList( aIndexToNameMap.size() );
::std::transform(
aIndexToNameMap.begin(), aIndexToNameMap.end(),
aNameList.begin(),
@@ -637,7 +636,7 @@ void DlgEdObj::TabIndexChange( const beans::PropertyChangeEvent& evt ) throw (Ru
nNewTabIndex = sal::static_int_cast<sal_Int16>( nCtrls - 1 );
// reorder helper list
- ::rtl::OUString aCtrlName = aNameList[nOldTabIndex];
+ OUString aCtrlName = aNameList[nOldTabIndex];
aNameList.erase( aNameList.begin() + nOldTabIndex );
aNameList.insert( aNameList.begin() + nNewTabIndex , aCtrlName );
@@ -679,17 +678,17 @@ sal_Bool DlgEdObj::supportsService( const sal_Char* _pServiceName ) const
Reference< lang::XServiceInfo > xServiceInfo( GetUnoControlModel() , UNO_QUERY );
// TODO: cache xServiceInfo as member?
if ( xServiceInfo.is() )
- bSupports = xServiceInfo->supportsService( ::rtl::OUString::createFromAscii( _pServiceName ) );
+ bSupports = xServiceInfo->supportsService( OUString::createFromAscii( _pServiceName ) );
return bSupports;
}
//----------------------------------------------------------------------------
-::rtl::OUString DlgEdObj::GetDefaultName() const
+OUString DlgEdObj::GetDefaultName() const
{
sal_uInt16 nResId = 0;
- ::rtl::OUString aDefaultName;
+ OUString aDefaultName;
if ( supportsService( "com.sun.star.awt.UnoControlDialogModel" ) )
{
nResId = RID_STR_CLASS_DIALOG;
@@ -793,19 +792,19 @@ sal_Bool DlgEdObj::supportsService( const sal_Char* _pServiceName ) const
//----------------------------------------------------------------------------
-::rtl::OUString DlgEdObj::GetUniqueName() const
+OUString DlgEdObj::GetUniqueName() const
{
- ::rtl::OUString aUniqueName;
+ OUString aUniqueName;
uno::Reference< container::XNameAccess > xNameAcc((GetDlgEdForm()->GetUnoControlModel()), uno::UNO_QUERY);
if ( xNameAcc.is() )
{
sal_Int32 n = 0;
- ::rtl::OUString aDefaultName = GetDefaultName();
+ OUString aDefaultName = GetDefaultName();
do
{
- aUniqueName = aDefaultName + ::rtl::OUString::valueOf(++n);
+ aUniqueName = aDefaultName + OUString::valueOf(++n);
} while (xNameAcc->hasByName(aUniqueName));
}
@@ -927,7 +926,7 @@ void DlgEdObj::clonedFrom(const DlgEdObj* _pSource)
if ( xPSet.is() )
{
// set new name
- ::rtl::OUString aOUniqueName( GetUniqueName() );
+ OUString aOUniqueName( GetUniqueName() );
Any aUniqueName;
aUniqueName <<= aOUniqueName;
xPSet->setPropertyValue( DLGED_PROP_NAME, aUniqueName );
@@ -1046,7 +1045,7 @@ void DlgEdObj::SetDefaults()
if ( xPSet.is() )
{
// get unique name
- ::rtl::OUString aOUniqueName( GetUniqueName() );
+ OUString aOUniqueName( GetUniqueName() );
// set name property
Any aUniqueName;
@@ -1133,7 +1132,7 @@ void DlgEdObj::StartListening()
m_xPropertyChangeListener = new DlgEdPropListenerImpl(*this);
// register listener to properties
- xControlModel->addPropertyChangeListener( ::rtl::OUString() , m_xPropertyChangeListener );
+ xControlModel->addPropertyChangeListener( OUString() , m_xPropertyChangeListener );
}
// XContainerListener
@@ -1170,7 +1169,7 @@ void DlgEdObj::EndListening(bool bRemoveListener)
if ( m_xPropertyChangeListener.is() && xControlModel.is() )
{
// remove listener
- xControlModel->removePropertyChangeListener( ::rtl::OUString() , m_xPropertyChangeListener );
+ xControlModel->removePropertyChangeListener( OUString() , m_xPropertyChangeListener );
}
m_xPropertyChangeListener.clear();
@@ -1529,8 +1528,8 @@ void DlgEdForm::UpdateTabIndices()
if ( xNameAcc.is() )
{
// get sequence of control names
- Sequence< ::rtl::OUString > aNames = xNameAcc->getElementNames();
- const ::rtl::OUString* pNames = aNames.getConstArray();
+ Sequence< OUString > aNames = xNameAcc->getElementNames();
+ const OUString* pNames = aNames.getConstArray();
sal_Int32 nCtrls = aNames.getLength();
// create a map of tab indices and control names, sorted by tab index
@@ -1538,7 +1537,7 @@ void DlgEdForm::UpdateTabIndices()
for ( sal_Int16 i = 0; i < nCtrls; ++i )
{
// get name
- ::rtl::OUString aName( pNames[i] );
+ OUString aName( pNames[i] );
// get tab index
sal_Int16 nTabIndex = -1;
@@ -1627,7 +1626,7 @@ void DlgEdForm::UpdateGroups()
for ( sal_Int32 nGroup = 0; nGroup < nGroupCount; ++nGroup )
{
// get a list of control models that belong to this group
- ::rtl::OUString aName;
+ OUString aName;
Sequence< Reference< awt::XControlModel > > aSeqModels;
xTabModel->getGroup( nGroup, aSeqModels, aName );
const Reference< awt::XControlModel >* pModels = aSeqModels.getConstArray();
@@ -1797,12 +1796,12 @@ bool DlgEdObj::MakeDataAware( const Reference< frame::XModel >& xModel )
{
if ( xBindable.is() )
{
- Reference< form::binding::XValueBinding > xBinding( xFac->createInstance( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.table.CellValueBinding" ) ) ), UNO_QUERY );
+ Reference< form::binding::XValueBinding > xBinding( xFac->createInstance( "com.sun.star.table.CellValueBinding" ), UNO_QUERY );
xBindable->setValueBinding( xBinding );
}
if ( xListEntrySink.is() )
{
- Reference< form::binding::XListEntrySource > xSource( xFac->createInstance( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.table.CellRangeListSource" ) ) ), UNO_QUERY );
+ Reference< form::binding::XListEntrySource > xSource( xFac->createInstance( "com.sun.star.table.CellRangeListSource" ), UNO_QUERY );
xListEntrySink->setListEntrySource( xSource );
}
if ( xListEntrySink.is() || xBindable.is() )
diff --git a/basctl/source/dlged/managelang.cxx b/basctl/source/dlged/managelang.cxx
index aff7467057ff..61b41eb21ad7 100644
--- a/basctl/source/dlged/managelang.cxx
+++ b/basctl/source/dlged/managelang.cxx
@@ -56,7 +56,7 @@ bool localesAreEqual( const Locale& rLocaleLeft, const Locale& rLocaleRight )
}
namespace {
- long getLongestWordWidth( const ::rtl::OUString& rText, const Window& rWin )
+ long getLongestWordWidth( const OUString& rText, const Window& rWin )
{
long nWidth = 0;
Reference< XBreakIterator > xBreakIter( vcl::unohelper::CreateBreakIterator() );
@@ -68,7 +68,7 @@ namespace {
while ( aBoundary.startPos != aBoundary.endPos )
{
nStartPos = aBoundary.endPos;
- ::rtl::OUString sWord(rText.copy(aBoundary.startPos, aBoundary.endPos - aBoundary.startPos));
+ OUString sWord(rText.copy(aBoundary.startPos, aBoundary.endPos - aBoundary.startPos));
long nTemp = rWin.GetCtrlTextWidth( sWord );
if ( nTemp > nWidth )
nWidth = nTemp;
@@ -112,9 +112,9 @@ void ManageLanguageDialog::Init()
{
// get current IDE
Shell* pShell = GetShell();
- ::rtl::OUString sLibName = pShell->GetCurLibName();
+ OUString sLibName = pShell->GetCurLibName();
// set dialog title with library name
- ::rtl::OUString sText = GetText();
+ OUString sText = GetText();
sText = sText.replaceAll("$1", sLibName);
SetText( sText );
// set handler
@@ -129,7 +129,7 @@ void ManageLanguageDialog::Init()
void ManageLanguageDialog::CalcInfoSize()
{
- ::rtl::OUString sInfoStr = m_aInfoFT.GetText();
+ OUString sInfoStr = m_aInfoFT.GetText();
long nInfoWidth = m_aInfoFT.GetSizePixel().Width();
long nLongWord = getLongestWordWidth( sInfoStr, m_aInfoFT );
long nTxtWidth = m_aInfoFT.GetCtrlTextWidth( sInfoStr ) + nLongWord;
@@ -171,13 +171,13 @@ void ManageLanguageDialog::FillLanguageBox()
{
bool bIsDefault = localesAreEqual( aDefaultLocale, pLocale[i] );
LanguageType eLangType = SvxLocaleToLanguage( pLocale[i] );
- ::rtl::OUStringBuffer sLanguageBuf(aLangTable.GetString( eLangType ));
+ OUStringBuffer sLanguageBuf(aLangTable.GetString( eLangType ));
if ( bIsDefault )
{
sLanguageBuf.append(' ');
sLanguageBuf.append(m_sDefLangStr);
}
- ::rtl::OUString sLanguage(sLanguageBuf.makeStringAndClear());
+ OUString sLanguage(sLanguageBuf.makeStringAndClear());
sal_uInt16 nPos = m_aLanguageLB.InsertEntry( sLanguage );
m_aLanguageLB.SetEntryData( nPos, new LanguageEntry( sLanguage, pLocale[i], bIsDefault ) );
}
@@ -346,7 +346,7 @@ void SetDefaultLanguageDialog::FillLanguageBox()
void SetDefaultLanguageDialog::CalcInfoSize()
{
- ::rtl::OUString sInfoStr = m_aInfoFT.GetText();
+ OUString sInfoStr = m_aInfoFT.GetText();
long nInfoWidth = m_aInfoFT.GetSizePixel().Width();
long nLongWord = getLongestWordWidth( sInfoStr, m_aInfoFT );
long nTxtWidth = m_aInfoFT.GetCtrlTextWidth( sInfoStr ) + nLongWord;
diff --git a/basctl/source/dlged/propbrw.cxx b/basctl/source/dlged/propbrw.cxx
index 986a69b8baae..a5f19ac76f4c 100644
--- a/basctl/source/dlged/propbrw.cxx
+++ b/basctl/source/dlged/propbrw.cxx
@@ -99,11 +99,11 @@ PropBrw::PropBrw (DialogWindowLayout& rLayout_):
try
{
// create a frame wrapper for myself
- m_xMeAsFrame = Reference< XFrame >(m_xORB->createInstance(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.frame.Frame" ))), UNO_QUERY);
+ m_xMeAsFrame = Reference< XFrame >(m_xORB->createInstance( "com.sun.star.frame.Frame" ), UNO_QUERY);
if (m_xMeAsFrame.is())
{
m_xMeAsFrame->initialize( VCLUnoHelper::GetInterface ( this ) );
- m_xMeAsFrame->setName(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "form property browser" ))); // change name!
+ m_xMeAsFrame->setName( "form property browser" ); // change name!
}
}
catch (const Exception&)
@@ -133,15 +133,15 @@ void PropBrw::ImplReCreateController()
// a ComponentContext for the
::cppu::ContextEntry_Init aHandlerContextInfo[] =
{
- ::cppu::ContextEntry_Init( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DialogParentWindow" ) ), makeAny( VCLUnoHelper::GetInterface ( this ) ) ),
- ::cppu::ContextEntry_Init( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ContextDocument" ) ), makeAny( m_xContextDocument ) )
+ ::cppu::ContextEntry_Init( "DialogParentWindow", makeAny( VCLUnoHelper::GetInterface ( this ) ) ),
+ ::cppu::ContextEntry_Init( "ContextDocument", makeAny( m_xContextDocument ) )
};
Reference< XComponentContext > xInspectorContext(
::cppu::createComponentContext( aHandlerContextInfo, SAL_N_ELEMENTS( aHandlerContextInfo ), xOwnContext ) );
// create a property browser controller
Reference< XMultiComponentFactory > xFactory( xInspectorContext->getServiceManager(), UNO_QUERY_THROW );
- static const ::rtl::OUString s_sControllerServiceName( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.PropertyBrowserController" ));
+ static const OUString s_sControllerServiceName( "com.sun.star.awt.PropertyBrowserController" );
m_xBrowserController = Reference< XPropertySet >(
xFactory->createInstanceWithContext( s_sControllerServiceName, xInspectorContext ), UNO_QUERY
);
@@ -294,7 +294,7 @@ void PropBrw::implSetNewObjectSequence
{
xObjectInspector->inspect( _rObjectSeq );
- ::rtl::OUString aText = IDE_RESSTR(RID_STR_BRWTITLE_PROPERTIES);
+ OUString aText = IDE_RESSTR(RID_STR_BRWTITLE_PROPERTIES);
aText += IDE_RESSTR(RID_STR_BRWTITLE_MULTISELECT);
SetText( aText );
}
@@ -305,8 +305,7 @@ void PropBrw::implSetNewObject( const Reference< XPropertySet >& _rxObject )
{
if ( m_xBrowserController.is() )
{
- m_xBrowserController->setPropertyValue(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IntrospectedObject" )),
+ m_xBrowserController->setPropertyValue( "IntrospectedObject",
makeAny( _rxObject )
);
@@ -316,9 +315,9 @@ void PropBrw::implSetNewObject( const Reference< XPropertySet >& _rxObject )
}
-::rtl::OUString PropBrw::GetHeadlineName( const Reference< XPropertySet >& _rxObject )
+OUString PropBrw::GetHeadlineName( const Reference< XPropertySet >& _rxObject )
{
- ::rtl::OUString aName;
+ OUString aName;
Reference< lang::XServiceInfo > xServiceInfo( _rxObject, UNO_QUERY );
if (xServiceInfo.is()) // single selection
@@ -326,87 +325,87 @@ void PropBrw::implSetNewObject( const Reference< XPropertySet >& _rxObject )
sal_uInt16 nResId = 0;
aName = IDE_RESSTR(RID_STR_BRWTITLE_PROPERTIES);
- if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDialogModel" ) ) ) )
+ if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlDialogModel" ) )
{
nResId = RID_STR_CLASS_DIALOG;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlButtonModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlButtonModel" ) )
{
nResId = RID_STR_CLASS_BUTTON;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlRadioButtonModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlRadioButtonModel" ) )
{
nResId = RID_STR_CLASS_RADIOBUTTON;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlCheckBoxModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlCheckBoxModel" ) )
{
nResId = RID_STR_CLASS_CHECKBOX;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlListBoxModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlListBoxModel" ) )
{
nResId = RID_STR_CLASS_LISTBOX;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlComboBoxModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlComboBoxModel" ) )
{
nResId = RID_STR_CLASS_COMBOBOX;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlGroupBoxModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlGroupBoxModel" ) )
{
nResId = RID_STR_CLASS_GROUPBOX;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlEditModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlEditModel" ) )
{
nResId = RID_STR_CLASS_EDIT;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFixedTextModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlFixedTextModel" ) )
{
nResId = RID_STR_CLASS_FIXEDTEXT;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlImageControlModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlImageControlModel" ) )
{
nResId = RID_STR_CLASS_IMAGECONTROL;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlProgressBarModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlProgressBarModel" ) )
{
nResId = RID_STR_CLASS_PROGRESSBAR;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlScrollBarModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlScrollBarModel" ) )
{
nResId = RID_STR_CLASS_SCROLLBAR;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFixedLineModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlFixedLineModel" ) )
{
nResId = RID_STR_CLASS_FIXEDLINE;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDateFieldModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlDateFieldModel" ) )
{
nResId = RID_STR_CLASS_DATEFIELD;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlTimeFieldModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlTimeFieldModel" ) )
{
nResId = RID_STR_CLASS_TIMEFIELD;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlNumericFieldModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlNumericFieldModel" ) )
{
nResId = RID_STR_CLASS_NUMERICFIELD;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlCurrencyFieldModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlCurrencyFieldModel" ) )
{
nResId = RID_STR_CLASS_CURRENCYFIELD;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFormattedFieldModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlFormattedFieldModel" ) )
{
nResId = RID_STR_CLASS_FORMATTEDFIELD;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlPatternFieldModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlPatternFieldModel" ) )
{
nResId = RID_STR_CLASS_PATTERNFIELD;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlFileControlModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.UnoControlFileControlModel" ) )
{
nResId = RID_STR_CLASS_FILECONTROL;
}
- else if ( xServiceInfo->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.tree.TreeControlModel" ) ) ) )
+ else if ( xServiceInfo->supportsService( "com.sun.star.awt.tree.TreeControlModel" ) )
{
nResId = RID_STR_CLASS_TREECONTROL;
}
diff --git a/basctl/source/inc/basobj.hxx b/basctl/source/inc/basobj.hxx
index 16481f71082c..99bd6b099046 100644
--- a/basctl/source/inc/basobj.hxx
+++ b/basctl/source/inc/basobj.hxx
@@ -39,28 +39,28 @@ namespace basctl
// help methods for the general use:
- SbMethod* CreateMacro( SbModule* pModule, const String& rMacroName );
+ SbMethod* CreateMacro( SbModule* pModule, const String& rMacroName );
void RunMethod( SbMethod* pMethod );
- StarBASIC* FindBasic( const SbxVariable* pVar );
+ StarBASIC* FindBasic( const SbxVariable* pVar );
void StopBasic();
- long HandleBasicError( StarBASIC* pBasic );
+ long HandleBasicError( StarBASIC* pBasic );
void BasicStopped( bool* pbAppWindowDisabled = 0, bool* pbDispatcherLocked = 0, sal_uInt16* pnWaitCount = 0,
SfxUInt16Item** ppSWActionCount = 0, SfxUInt16Item** ppSWLockViewCount = 0 );
bool IsValidSbxName( const String& rName );
- BasicManager* FindBasicManager( StarBASIC* pLib );
+ BasicManager* FindBasicManager( StarBASIC* pLib );
- SfxBindings* GetBindingsPtr();
+ SfxBindings* GetBindingsPtr();
- SfxDispatcher* GetDispatcher ();
+ SfxDispatcher* GetDispatcher ();
void InvalidateDebuggerSlots();
// libraries
- ::com::sun::star::uno::Sequence< ::rtl::OUString > GetMergedLibraryNames(
+ ::com::sun::star::uno::Sequence< OUString > GetMergedLibraryNames(
const ::com::sun::star::uno::Reference< ::com::sun::star::script::XLibraryContainer >& xModLibContainer,
const ::com::sun::star::uno::Reference< ::com::sun::star::script::XLibraryContainer >& xDlgLibContainer );
@@ -68,21 +68,22 @@ namespace basctl
Will show an error message when renaming fails because the new name is already used.
*/
- bool RenameModule(
+ bool RenameModule(
Window* pErrorParent, const ScriptDocument& rDocument,
- const ::rtl::OUString& rLibName, const ::rtl::OUString& rOldName, const ::rtl::OUString& rNewName );
+ const OUString& rLibName, const OUString& rOldName, const OUString& rNewName );
// new methods for macros
- ::rtl::OUString ChooseMacro( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxLimitToDocument,
- bool bChooseOnly, const ::rtl::OUString& rMacroDesc );
+ OUString ChooseMacro(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxLimitToDocument,
+ bool bChooseOnly, const OUString& rMacroDesc );
- ::com::sun::star::uno::Sequence< ::rtl::OUString > GetMethodNames(
- const ScriptDocument& rDocument, const ::rtl::OUString& rLibName, const ::rtl::OUString& rModName )
+ ::com::sun::star::uno::Sequence< OUString > GetMethodNames(
+ const ScriptDocument& rDocument, const OUString& rLibName, const OUString& rModName )
throw( ::com::sun::star::container::NoSuchElementException );
- bool HasMethod(
- const ScriptDocument& rDocument, const ::rtl::OUString& rLibName, const ::rtl::OUString& rModName, const ::rtl::OUString& rMethName );
+ bool HasMethod(
+ const ScriptDocument& rDocument, const OUString& rLibName, const OUString& rModName, const OUString& rMethName );
// new methods for dialogs
@@ -90,14 +91,13 @@ namespace basctl
Will show an error message when renaming fails because the new name is already used.
*/
- bool RenameDialog(
- Window* pErrorParent, const ScriptDocument& rDocument, const ::rtl::OUString& rLibName, const ::rtl::OUString& rOldName, const ::rtl::OUString& rNewName )
+ bool RenameDialog(
+ Window* pErrorParent, const ScriptDocument& rDocument, const OUString& rLibName, const OUString& rOldName, const OUString& rNewName )
throw( ::com::sun::star::container::ElementExistException, ::com::sun::star::container::NoSuchElementException );
- bool RemoveDialog(
- const ScriptDocument& rDocument, const ::rtl::OUString& rLibName, const ::rtl::OUString& rDlgName );
+ bool RemoveDialog( const ScriptDocument& rDocument, const OUString& rLibName, const OUString& rDlgName );
- void MarkDocumentModified( const ScriptDocument& rDocument );
+ void MarkDocumentModified( const ScriptDocument& rDocument );
} // namespace basctl
diff --git a/basctl/source/inc/dlgeddef.hxx b/basctl/source/inc/dlgeddef.hxx
index 16fb33e4dca7..ec06d6cd3995 100644
--- a/basctl/source/inc/dlgeddef.hxx
+++ b/basctl/source/inc/dlgeddef.hxx
@@ -68,21 +68,21 @@ enum
};
// control properties
-#define DLGED_PROP_BACKGROUNDCOLOR rtl::OUString("BackgroundColor")
-#define DLGED_PROP_DROPDOWN rtl::OUString("Dropdown")
-#define DLGED_PROP_FORMATSSUPPLIER rtl::OUString("FormatsSupplier")
-#define DLGED_PROP_HEIGHT rtl::OUString("Height")
-#define DLGED_PROP_LABEL rtl::OUString("Label")
-#define DLGED_PROP_NAME rtl::OUString("Name")
-#define DLGED_PROP_ORIENTATION rtl::OUString("Orientation")
-#define DLGED_PROP_POSITIONX rtl::OUString("PositionX")
-#define DLGED_PROP_POSITIONY rtl::OUString("PositionY")
-#define DLGED_PROP_STEP rtl::OUString("Step")
-#define DLGED_PROP_TABINDEX rtl::OUString("TabIndex")
-#define DLGED_PROP_TEXTCOLOR rtl::OUString("TextColor")
-#define DLGED_PROP_TEXTLINECOLOR rtl::OUString("TextLineColor")
-#define DLGED_PROP_WIDTH rtl::OUString("Width")
-#define DLGED_PROP_DECORATION rtl::OUString("Decoration")
+#define DLGED_PROP_BACKGROUNDCOLOR "BackgroundColor"
+#define DLGED_PROP_DROPDOWN "Dropdown"
+#define DLGED_PROP_FORMATSSUPPLIER "FormatsSupplier"
+#define DLGED_PROP_HEIGHT "Height"
+#define DLGED_PROP_LABEL "Label"
+#define DLGED_PROP_NAME "Name"
+#define DLGED_PROP_ORIENTATION "Orientation"
+#define DLGED_PROP_POSITIONX "PositionX"
+#define DLGED_PROP_POSITIONY "PositionY"
+#define DLGED_PROP_STEP "Step"
+#define DLGED_PROP_TABINDEX "TabIndex"
+#define DLGED_PROP_TEXTCOLOR "TextColor"
+#define DLGED_PROP_TEXTLINECOLOR "TextLineColor"
+#define DLGED_PROP_WIDTH "Width"
+#define DLGED_PROP_DECORATION "Decoration"
} // namespace basctl
diff --git a/basctl/source/inc/localizationmgr.hxx b/basctl/source/inc/localizationmgr.hxx
index e3da88b37134..de471a3678dd 100644
--- a/basctl/source/inc/localizationmgr.hxx
+++ b/basctl/source/inc/localizationmgr.hxx
@@ -38,7 +38,7 @@ class LocalizationMgr
Shell* m_pShell;
ScriptDocument m_aDocument;
- ::rtl::OUString m_aLibName;
+ OUString m_aLibName;
::com::sun::star::lang::Locale m_aLocaleBeforeBasicStart;
@@ -53,7 +53,7 @@ class LocalizationMgr
COPY_RESOURCES
};
static sal_Int32 implHandleControlResourceProperties( ::com::sun::star::uno::Any aControlAny,
- const ::rtl::OUString& aDialogName, const ::rtl::OUString& aCtrlName,
+ const OUString& aDialogName, const OUString& aCtrlName,
::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceManager >
xStringResourceManager, ::com::sun::star::uno::Reference< ::com::sun::star::resource::
XStringResourceResolver > xSourceStringResolver, HandleResourceMode eMode );
@@ -69,7 +69,7 @@ class LocalizationMgr
void implEnableDisableResourceForAllLibraryDialogs( HandleResourceMode eMode );
public:
- LocalizationMgr(Shell*, ScriptDocument const&, rtl::OUString const& aLibName,
+ LocalizationMgr(Shell*, ScriptDocument const&, OUString const& aLibName,
const ::com::sun::star::uno::Reference
< ::com::sun::star::resource::XStringResourceManager >& xStringResourceManager );
::com::sun::star::uno::Reference
@@ -97,21 +97,21 @@ public:
void handleBasicStopped( void );
static void setControlResourceIDsForNewEditorObject( DlgEditor* pEditor,
- ::com::sun::star::uno::Any aControlAny, const ::rtl::OUString& aCtrlName );
+ ::com::sun::star::uno::Any aControlAny, const OUString& aCtrlName );
static void renameControlResourceIDsForEditorObject( DlgEditor* pEditor,
- ::com::sun::star::uno::Any aControlAny, const ::rtl::OUString& aNewCtrlName );
+ ::com::sun::star::uno::Any aControlAny, const OUString& aNewCtrlName );
static void deleteControlResourceIDsForDeletedEditorObject( DlgEditor* pEditor,
- ::com::sun::star::uno::Any aControlAny, const ::rtl::OUString& aCtrlName );
+ ::com::sun::star::uno::Any aControlAny, const OUString& aCtrlName );
- static void setStringResourceAtDialog( const ScriptDocument& rDocument, const ::rtl::OUString& aLibName, const ::rtl::OUString& aDlgName,
+ static void setStringResourceAtDialog( const ScriptDocument& rDocument, const OUString& aLibName, const OUString& aDlgName,
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > xDialogModel );
- static void renameStringResourceIDs( const ScriptDocument& rDocument, const ::rtl::OUString& aLibName, const ::rtl::OUString& aDlgName,
+ static void renameStringResourceIDs( const ScriptDocument& rDocument, const OUString& aLibName, const OUString& aDlgName,
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > xDialogModel );
- static void removeResourceForDialog( const ScriptDocument& rDocument, const ::rtl::OUString& aLibName, const ::rtl::OUString& aDlgName,
+ static void removeResourceForDialog( const ScriptDocument& rDocument, const OUString& aLibName, const OUString& aDlgName,
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > xDialogModel );
static ::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceManager >
@@ -128,13 +128,13 @@ public:
::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceManager > xStringResourceManager );
static void copyResourcesForPastedEditorObject( DlgEditor* pEditor,
- ::com::sun::star::uno::Any aControlAny, const ::rtl::OUString& aCtrlName,
+ ::com::sun::star::uno::Any aControlAny, const OUString& aCtrlName,
::com::sun::star::uno::Reference< ::com::sun::star::resource::
XStringResourceResolver > xSourceStringResolver );
static void copyResourceForDroppedDialog(
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > xDialogModel,
- const ::rtl::OUString& aDialogName,
+ const OUString& aDialogName,
::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceManager > xStringResourceManager,
::com::sun::star::uno::Reference< ::com::sun::star::resource::XStringResourceResolver > xSourceStringResolver );
diff --git a/basctl/source/inc/managelang.hxx b/basctl/source/inc/managelang.hxx
index e735d9a001db..0cd940be775f 100644
--- a/basctl/source/inc/managelang.hxx
+++ b/basctl/source/inc/managelang.hxx
@@ -34,11 +34,11 @@ class LocalizationMgr;
struct LanguageEntry
{
- ::rtl::OUString m_sLanguage;
+ OUString m_sLanguage;
::com::sun::star::lang::Locale m_aLocale;
bool m_bIsDefault;
- LanguageEntry( const ::rtl::OUString& _rLanguage,
+ LanguageEntry( const OUString& _rLanguage,
const ::com::sun::star::lang::Locale& _rLocale,
bool _bIsDefault ) :
m_sLanguage( _rLanguage ),
@@ -65,9 +65,9 @@ private:
boost::shared_ptr<LocalizationMgr> m_pLocalizationMgr;
- ::rtl::OUString m_sDefLangStr;
- ::rtl::OUString m_sDeleteStr;
- ::rtl::OUString m_sCreateLangStr;
+ OUString m_sDefLangStr;
+ OUString m_sDeleteStr;
+ OUString m_sCreateLangStr;
void Init();
void CalcInfoSize();
diff --git a/basctl/source/inc/propbrw.hxx b/basctl/source/inc/propbrw.hxx
index e8011ef646ef..ece39a92cc89 100644
--- a/basctl/source/inc/propbrw.hxx
+++ b/basctl/source/inc/propbrw.hxx
@@ -69,7 +69,7 @@ protected:
void implSetNewObject(
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& _rxObject);
- ::rtl::OUString GetHeadlineName(
+ OUString GetHeadlineName(
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& _rxObject);
public:
diff --git a/basctl/source/inc/sbxitem.hxx b/basctl/source/inc/sbxitem.hxx
index f3645dd3312b..1d4b224c2cf2 100644
--- a/basctl/source/inc/sbxitem.hxx
+++ b/basctl/source/inc/sbxitem.hxx
@@ -38,23 +38,23 @@ enum ItemType
class SbxItem : public SfxPoolItem
{
const ScriptDocument m_aDocument;
- const ::rtl::OUString m_aLibName;
- const ::rtl::OUString m_aName;
- const ::rtl::OUString m_aMethodName;
+ const OUString m_aLibName;
+ const OUString m_aName;
+ const OUString m_aMethodName;
ItemType m_eType;
public:
TYPEINFO();
- SbxItem(sal_uInt16 nWhich, const ScriptDocument& rDocument, const ::rtl::OUString& aLibName, const ::rtl::OUString& aName, ItemType);
- SbxItem(sal_uInt16 nWhich, const ScriptDocument& rDocument, const ::rtl::OUString& aLibName, const ::rtl::OUString& aName, const ::rtl::OUString& aMethodName, ItemType eType);
+ SbxItem(sal_uInt16 nWhich, const ScriptDocument& rDocument, const OUString& aLibName, const OUString& aName, ItemType);
+ SbxItem(sal_uInt16 nWhich, const ScriptDocument& rDocument, const OUString& aLibName, const OUString& aName, const OUString& aMethodName, ItemType eType);
virtual SfxPoolItem* Clone(SfxItemPool *pPool = 0) const;
virtual int operator==(const SfxPoolItem&) const;
ScriptDocument const& GetDocument () const { return m_aDocument; }
- rtl::OUString const& GetLibName () const { return m_aLibName; }
- rtl::OUString const& GetName () const { return m_aName; }
- rtl::OUString const& GetMethodName () const { return m_aMethodName; }
+ OUString const& GetLibName () const { return m_aLibName; }
+ OUString const& GetName () const { return m_aName; }
+ OUString const& GetMethodName () const { return m_aMethodName; }
ItemType GetType () const { return m_eType; }
};
diff --git a/basctl/source/inc/scriptdocument.hxx b/basctl/source/inc/scriptdocument.hxx
index 1fa08cc69c88..477dc6e7a9a6 100644
--- a/basctl/source/inc/scriptdocument.hxx
+++ b/basctl/source/inc/scriptdocument.hxx
@@ -136,7 +136,7 @@ namespace basctl
@see getApplicationScriptDocument
*/
static ScriptDocument
- getDocumentWithURLOrCaption( const ::rtl::OUString& _rUrlOrCaption );
+ getDocumentWithURLOrCaption( const OUString& _rUrlOrCaption );
/** operation mode for getAllScriptDocuments
*/
@@ -232,7 +232,7 @@ namespace basctl
/** determines whether there exists a library of the given type, with the given name
*/
- bool hasLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const;
+ bool hasLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const;
/** returns a script or dialog library given by name
@@ -247,7 +247,7 @@ namespace basctl
if there is no script library with the given name
*/
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >
- getLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName, bool _bLoadLibrary ) const
+ getLibrary( LibraryContainerType _eType, const OUString& _rLibName, bool _bLoadLibrary ) const
SAL_THROW((::com::sun::star::container::NoSuchElementException));
/** creates a script or dialog library in the document, or returns an existing one
@@ -256,24 +256,23 @@ namespace basctl
then this library will automatically be loaded, and then returned.
*/
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >
- getOrCreateLibrary( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const;
+ getOrCreateLibrary( LibraryContainerType _eType, const OUString& _rLibName ) const;
/** returns the names of the modules in a given script or dialog library of the document
*/
- ::com::sun::star::uno::Sequence< ::rtl::OUString >
- getObjectNames( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const;
+ ::com::sun::star::uno::Sequence< OUString >
+ getObjectNames( LibraryContainerType _eType, const OUString& _rLibName ) const;
/** retrieves a name for a newly to be created module or dialog
*/
- ::rtl::OUString
- createObjectName( LibraryContainerType _eType, const ::rtl::OUString& _rLibName ) const;
+ OUString createObjectName( LibraryContainerType _eType, const OUString& _rLibName ) const;
/** loads a script or dialog library given by name, if there is such a library
*/
- void loadLibraryIfExists( LibraryContainerType _eType, const ::rtl::OUString& _rLibrary );
+ void loadLibraryIfExists( LibraryContainerType _eType, const OUString& _rLibrary );
/// retrieves the (combined) names of all script and dialog libraries
- ::com::sun::star::uno::Sequence< ::rtl::OUString >
+ ::com::sun::star::uno::Sequence< OUString >
getLibraryNames() const;
/** removes a given script module from the document
@@ -282,7 +281,7 @@ namespace basctl
<TRUE/> if and only if the removal was successful. When <FALSE/> is returned,
this will reported as assertion in a non-product build.
*/
- bool removeModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModuleName ) const;
+ bool removeModule( const OUString& _rLibName, const OUString& _rModuleName ) const;
/** creates a module with the given name in the given library
@param _rLibName
@@ -296,7 +295,7 @@ namespace basctl
@return
<TRUE/> if and only if the creation was successful
*/
- bool createModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, bool _bCreateMain, ::rtl::OUString& _out_rNewModuleCode ) const;
+ bool createModule( const OUString& _rLibName, const OUString& _rModName, bool _bCreateMain, OUString& _out_rNewModuleCode ) const;
/** inserts a given piece as code as module
@param _rLibName
@@ -310,7 +309,7 @@ namespace basctl
@return
<TRUE/> if and only if the insertion was successful.
*/
- bool insertModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, const ::rtl::OUString& _rModuleCode ) const;
+ bool insertModule( const OUString& _rLibName, const OUString& _rModName, const OUString& _rModuleCode ) const;
/** updates a given module with new code
@param _rLibName
@@ -322,10 +321,10 @@ namespace basctl
@return
<TRUE/> if and only if the insertion was successful.
*/
- bool updateModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, const ::rtl::OUString& _rModuleCode ) const;
+ bool updateModule( const OUString& _rLibName, const OUString& _rModName, const OUString& _rModuleCode ) const;
/// determines whether a module with the given name exists in the given library
- bool hasModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName ) const;
+ bool hasModule( const OUString& _rLibName, const OUString& _rModName ) const;
/** retrieves a module's source
@param _rLibName
@@ -337,7 +336,7 @@ namespace basctl
@return
<TRUE/> if and only if the code could be successfully retrieved, <FALSE/> otherwise
*/
- bool getModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rModName, ::rtl::OUString& _rModuleSource ) const;
+ bool getModule( const OUString& _rLibName, const OUString& _rModName, OUString& _rModuleSource ) const;
/** renames a module
@param _rLibName
@@ -349,7 +348,7 @@ namespace basctl
@return
<TRUE/> if and only if renaming was successful.
*/
- bool renameModule( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rOldName, const ::rtl::OUString& _rNewName ) const;
+ bool renameModule( const OUString& _rLibName, const OUString& _rOldName, const OUString& _rNewName ) const;
/** removes a given dialog from the document
@@ -357,10 +356,10 @@ namespace basctl
<TRUE/> if and only if the removal was successful. When <FALSE/> is returned,
this will reported as assertion in a non-product build.
*/
- bool removeDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName ) const;
+ bool removeDialog( const OUString& _rLibName, const OUString& _rDialogName ) const;
/// determines whether a dialog with the given name exists in the given library
- bool hasDialog( const ::rtl::OUString& _rLibName, const ::rtl::OUString& _rDialogName ) const;
+ bool hasDialog( const OUString& _rLibName, const OUString& _rDialogName ) const;
/** retrieves a dialog
@param _rLibName
@@ -373,8 +372,8 @@ namespace basctl
<TRUE/> if and only if the dialog could be successfully retrieved, <FALSE/> otherwise
*/
bool getDialog(
- const ::rtl::OUString& _rLibName,
- const ::rtl::OUString& _rDialogName,
+ const OUString& _rLibName,
+ const OUString& _rDialogName,
::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStreamProvider >& _out_rDialogProvider
) const;
@@ -391,9 +390,9 @@ namespace basctl
<TRUE/> if and only if renaming was successful.
*/
bool renameDialog(
- const ::rtl::OUString& _rLibName,
- const ::rtl::OUString& _rOldName,
- const ::rtl::OUString& _rNewName,
+ const OUString& _rLibName,
+ const OUString& _rOldName,
+ const OUString& _rNewName,
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& _rxExistingDialogModel
) const;
@@ -408,8 +407,8 @@ namespace basctl
<TRUE/> if and only if the dialog could be successfully retrieved, <FALSE/> otherwise
*/
bool createDialog(
- const ::rtl::OUString& _rLibName,
- const ::rtl::OUString& _rDialogName,
+ const OUString& _rLibName,
+ const OUString& _rDialogName,
::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStreamProvider >& _out_rDialogProvider
) const;
@@ -427,8 +426,8 @@ namespace basctl
<TRUE/> if and only if the insertion was successful.
*/
bool insertDialog(
- const ::rtl::OUString& _rLibName,
- const ::rtl::OUString& _rDialogName,
+ const OUString& _rLibName,
+ const OUString& _rDialogName,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStreamProvider >& _rDialogProvider
) const;
@@ -472,25 +471,22 @@ namespace basctl
/// returns the location of a library given by name
LibraryLocation
- getLibraryLocation( const ::rtl::OUString& _rLibName ) const;
+ getLibraryLocation( const OUString& _rLibName ) const;
/// returns the title for the document
- ::rtl::OUString
- getTitle( LibraryLocation _eLocation, LibraryType _eType = LIBRARY_TYPE_ALL ) const;
+ OUString getTitle( LibraryLocation _eLocation, LibraryType _eType = LIBRARY_TYPE_ALL ) const;
/** returns the title of the document
to be used for valid documents only
*/
- ::rtl::OUString
- getTitle() const;
+ OUString getTitle() const;
/** returns the URL of the document
to be used for valid documents only
*/
- ::rtl::OUString
- getURL() const;
+ OUString getURL() const;
/** determines whether the document is currently the one-and-only application-wide active document
*/
diff --git a/basctl/uiconfig/basicide/menubar/menubar.xml b/basctl/uiconfig/basicide/menubar/menubar.xml
index aa5530f156da..886909d66af9 100644
--- a/basctl/uiconfig/basicide/menubar/menubar.xml
+++ b/basctl/uiconfig/basicide/menubar/menubar.xml
@@ -29,6 +29,9 @@
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menu menu:id=".uno:TemplateMenu">
<menu:menupopup>
<menu:menuitem menu:id=".uno:Organizer"/>
diff --git a/basctl/uiconfig/basicide/ui/basicmacrodialog.ui b/basctl/uiconfig/basicide/ui/basicmacrodialog.ui
new file mode 100644
index 000000000000..e5d5effb226e
--- /dev/null
+++ b/basctl/uiconfig/basicide/ui/basicmacrodialog.ui
@@ -0,0 +1,384 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkDialog" id="BasicMacroDialog">
+ <property name="can_focus">False</property>
+ <property name="border_width">5</property>
+ <property name="title" translatable="yes">%PRODUCTNAME Basic Macros</property>
+ <property name="type_hint">dialog</property>
+ <child internal-child="vbox">
+ <object class="GtkBox" id="dialog-vbox1">
+ <property name="can_focus">False</property>
+ <property name="spacing">2</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="dialog-action_area1">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="layout_style">start</property>
+ <child>
+ <object class="GtkButton" id="run">
+ <property name="label">Run</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="image_position">bottom</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="assign">
+ <property name="label">Assign...</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="edit">
+ <property name="label">Edit</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="delete">
+ <property name="label">gtk-delete</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="organize">
+ <property name="label">Organizer...</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="newlibrary">
+ <property name="label">New Library</property>
+ <property name="use_action_appearance">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="no_show_all">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">5</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="newmodule">
+ <property name="label">New Module</property>
+ <property name="use_action_appearance">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="no_show_all">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">6</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="close">
+ <property name="label">gtk-close</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">7</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="help">
+ <property name="label">gtk-help</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">8</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkGrid" id="grid1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="column_homogeneous">True</property>
+ <child>
+ <object class="GtkFrame" id="frame3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="svtlo:SvTreeListBox" id="macros">
+ <property name="use_action_appearance">False</property>
+ <property name="width_request">280</property>
+ <property name="height_request">300</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkBox" id="box3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkLabel" id="existingmacrosft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Existing macros in:</property>
+ <property name="track_visited_links">False</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="macronameft1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="track_visited_links">False</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="basctllo:TreeListBox" id="libraries">
+ <property name="use_action_appearance">False</property>
+ <property name="width_request">280</property>
+ <property name="height_request">300</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkBox" id="box1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkLabel" id="macrofromft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Macro from</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="macrotoft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Save macro in</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkEntry" id="macronameedit">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">●</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="libraryft1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Macro name</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="0">run</action-widget>
+ <action-widget response="0">assign</action-widget>
+ <action-widget response="0">edit</action-widget>
+ <action-widget response="0">delete</action-widget>
+ <action-widget response="0">organize</action-widget>
+ <action-widget response="0">newlibrary</action-widget>
+ <action-widget response="0">newmodule</action-widget>
+ <action-widget response="0">close</action-widget>
+ <action-widget response="0">help</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/basebmp/test/bmpdemo.cxx b/basebmp/test/bmpdemo.cxx
index 18f4cab399ac..a7f39fcce3a6 100644
--- a/basebmp/test/bmpdemo.cxx
+++ b/basebmp/test/bmpdemo.cxx
@@ -959,7 +959,7 @@ class TestWindow : public Dialog
public:
TestWindow() : Dialog( (Window *) NULL )
{
- SetText( rtl::OUString( "VIGRA test" ) );
+ SetText( OUString( "VIGRA test" ) );
SetSizePixel( Size( 1024, 1024 ) );
EnablePaint( true );
Show();
@@ -1059,16 +1059,15 @@ void TestWindow::Paint( const Rectangle& /*rRect*/ )
basebmp::Format::THIRTYTWO_BIT_TC_MASK ));
{
- ::rtl::OUString aSvg;
+ OUString aSvg;
+
basegfx::B2DPolyPolygon aPoly;
- basegfx::tools::importFromSvgD( aPoly,
- ::rtl::OUString( "m0 0 h7 v7 h-7 z" ) );
- basegfx::tools::importFromSvgD( aPoly,
- ::rtl::OUString( "m2 2 h3 v3 h-3 z" ) );
+ basegfx::tools::importFromSvgD( aPoly, OUString( "m0 0 h7 v7 h-7 z" ) );
+
+ basegfx::tools::importFromSvgD( aPoly, OUString( "m2 2 h3 v3 h-3 z" ) );
- pDevice->fillPolyPolygon(
- aPoly,
+ pDevice->fillPolyPolygon( aPoly,
basebmp::Color(0xFFFFFFFF),
basebmp::DrawMode_PAINT );
}
@@ -1084,7 +1083,7 @@ void TestWindow::Paint( const Rectangle& /*rRect*/ )
pMask->drawLine( aPt111, aPt222, aCol333, basebmp::DrawMode_PAINT );
- ::rtl::OUString aSvg( "m 0 0 h5 l5 5 v5 h-5 l-5-5 z" );
+ OUString aSvg( "m 0 0 h5 l5 5 v5 h-5 l-5-5 z" );
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly, aSvg );
pMask->clear(basebmp::Color(0xFFFFFFFF));
diff --git a/basebmp/test/bmpmasktest.cxx b/basebmp/test/bmpmasktest.cxx
index f81083f94320..500ba91667d4 100644
--- a/basebmp/test/bmpmasktest.cxx
+++ b/basebmp/test/bmpmasktest.cxx
@@ -109,7 +109,7 @@ public:
true,
Format::THIRTYTWO_BIT_TC_MASK );
- ::rtl::OUString aSvg( "m 0 0h5v10h5v-5h-10z" );
+ OUString aSvg( "m 0 0h5v10h5v-5h-10z" );
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly, aSvg );
@@ -124,7 +124,7 @@ public:
aColWhite,
DrawMode_PAINT );
- aSvg = ::rtl::OUString( "m 0 0 h6 v10 h-6z" );
+ aSvg = "m 0 0 h6 v10 h-6z" ;
aPoly.clear();
basegfx::tools::importFromSvgD( aPoly, aSvg );
diff --git a/basebmp/test/bmptest.cxx b/basebmp/test/bmptest.cxx
index e4b0931ff2c4..571e32e776d0 100644
--- a/basebmp/test/bmptest.cxx
+++ b/basebmp/test/bmptest.cxx
@@ -146,7 +146,7 @@ public:
true,
Format::THIRTYTWO_BIT_TC_MASK );
- ::rtl::OUString aSvg( RTL_CONSTASCII_USTRINGPARAM( "m 0 0h5v10h5v-5h-10z" ));
+ OUString aSvg( "m 0 0h5v10h5v-5h-10z" );
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly, aSvg );
diff --git a/basebmp/test/cliptest.cxx b/basebmp/test/cliptest.cxx
index ca13ef8da0c7..21f94aa5474c 100644
--- a/basebmp/test/cliptest.cxx
+++ b/basebmp/test/cliptest.cxx
@@ -158,7 +158,7 @@ private:
true,
Format::EIGHT_BIT_GREY ));
- ::rtl::OUString aSvg( RTL_CONSTASCII_USTRINGPARAM( "m 0 0h5v10h5v-5h-10z" ));
+ OUString aSvg( "m 0 0h5v10h5v-5h-10z" );
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly, aSvg );
@@ -198,7 +198,7 @@ public:
true,
Format::THIRTYTWO_BIT_TC_MASK );
- ::rtl::OUString aSvg( RTL_CONSTASCII_USTRINGPARAM( "m 0 0 h5 l5 5 v5 h-5 l-5-5 z" ));
+ OUString aSvg( "m 0 0 h5 l5 5 v5 h-5 l-5-5 z" );
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly, aSvg );
mpClipMask->clear(Color(0));
diff --git a/basebmp/test/filltest.cxx b/basebmp/test/filltest.cxx
index 5e7b02f6a801..a6e87e4cf5bc 100644
--- a/basebmp/test/filltest.cxx
+++ b/basebmp/test/filltest.cxx
@@ -146,7 +146,7 @@ private:
CPPUNIT_ASSERT_MESSAGE("bottom-middle pixel set",
rDevice->getPixel(aPt4) == aCol);
- ::rtl::OUString aSvg( RTL_CONSTASCII_USTRINGPARAM( "m 0 0l7 7h-1z" ));
+ OUString aSvg( "m 0 0l7 7h-1z" );
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly, aSvg );
diff --git a/basebmp/test/masktest.cxx b/basebmp/test/masktest.cxx
index 9dc5e61d72a3..052db904ea24 100644
--- a/basebmp/test/masktest.cxx
+++ b/basebmp/test/masktest.cxx
@@ -113,7 +113,7 @@ public:
true,
Format::EIGHT_BIT_GREY );
- ::rtl::OUString aSvg( RTL_CONSTASCII_USTRINGPARAM( "m 0 0h5v10h5v-5h-10z" ));
+ OUString aSvg( "m 0 0h5v10h5v-5h-10z" );
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly, aSvg );
diff --git a/basebmp/test/polytest.cxx b/basebmp/test/polytest.cxx
index a5c9b30960b8..cfc02b4c2ab6 100644
--- a/basebmp/test/polytest.cxx
+++ b/basebmp/test/polytest.cxx
@@ -54,7 +54,7 @@ private:
basegfx::tools::importFromSvgD(
aPoly,
- rtl::OUString( "M2 2 l7 7 z" ) );
+ OUString( "M2 2 l7 7 z" ) );
rDevice->fillPolyPolygon(
aPoly,
aCol,
@@ -68,7 +68,7 @@ private:
aPoly.clear();
basegfx::tools::importFromSvgD(
aPoly,
- rtl::OUString( "M7 2 l-6 6 z" ) );
+ OUString( "M7 2 l-6 6 z" ) );
rDevice->fillPolyPolygon(
aPoly,
aCol,
@@ -86,7 +86,7 @@ private:
basegfx::tools::importFromSvgD(
aPoly,
- rtl::OUString( "M2 2 h1 l7 7 h-1 z" ) );
+ OUString( "M2 2 h1 l7 7 h-1 z" ) );
rDevice->fillPolyPolygon(
aPoly,
aCol,
@@ -100,7 +100,7 @@ private:
aPoly.clear();
basegfx::tools::importFromSvgD(
aPoly,
- rtl::OUString( "M7 2 h-1 l-6 6 h1 z" ) );
+ OUString( "M7 2 h-1 l-6 6 h1 z" ) );
rDevice->fillPolyPolygon(
aPoly,
aCol,
@@ -114,7 +114,7 @@ private:
aPoly.clear();
basegfx::tools::importFromSvgD(
aPoly,
- rtl::OUString( "M0 0 l7 7 h-1 l-5-7 z" ) );
+ OUString( "M0 0 l7 7 h-1 l-5-7 z" ) );
rDevice->fillPolyPolygon(
aPoly,
aCol,
@@ -131,7 +131,7 @@ private:
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly,
- ::rtl::OUString( "M0 0 h7 v7 h-7 z M2 2 v3 h3 v-3 z" ) );
+ OUString( "M0 0 h7 v7 h-7 z M2 2 v3 h3 v-3 z" ) );
rDevice->fillPolyPolygon(
aPoly,
@@ -149,7 +149,7 @@ private:
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly,
- ::rtl::OUString( "M0 0 h7 v7 h-7 z M2 2 v3 h3 v-3 z" ) );
+ OUString( "M0 0 h7 v7 h-7 z M2 2 v3 h3 v-3 z" ) );
basegfx::B2DHomMatrix aMat;
aMat.translate(-3,-3);
aMat.rotate( 1.7 );
@@ -249,7 +249,7 @@ private:
// *all* of the four two-pixel lines in that polygon do *not*
// generate a single pixel, due to the rasterization effect.
basegfx::tools::importFromSvgD( aPoly,
- ::rtl::OUString( "M2 3 l1 -1 M4 2 l1 1 M2 8 l1 1 M5 8 l-1 1 M2 5 h4 M3 0 v10" ) );
+ OUString( "M2 3 l1 -1 M4 2 l1 1 M2 8 l1 1 M5 8 l-1 1 M2 5 h4 M3 0 v10" ) );
BitmapDeviceSharedPtr pClippedDevice=(
subsetBitmapDevice( rDevice,
basegfx::B2IBox(3,3,5,9) ));
@@ -272,7 +272,7 @@ private:
basegfx::B2DPolyPolygon aPoly;
basegfx::tools::importFromSvgD( aPoly,
- ::rtl::OUString( "M0 0 v2 l10 2 v-2 z"
+ OUString( "M0 0 v2 l10 2 v-2 z"
"M10 6 v-2 l-10 2 v2 z"
"M1 0 h1 v10 h-1 z"
"M4 0 h1 v10 h-1 z"
diff --git a/basegfx/Makefile b/basegfx/Makefile
index ccb1c85a04da..0997e628485b 100644
--- a/basegfx/Makefile
+++ b/basegfx/Makefile
@@ -1,4 +1,11 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
diff --git a/basegfx/inc/basegfx/basegfxdllapi.h b/basegfx/inc/basegfx/basegfxdllapi.h
index 18ad22b447a9..b71f0755d277 100644
--- a/basegfx/inc/basegfx/basegfxdllapi.h
+++ b/basegfx/inc/basegfx/basegfxdllapi.h
@@ -1,30 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
#ifndef INCLUDED_BASEGFXDLLAPI_H
#define INCLUDED_BASEGFXDLLAPI_H
diff --git a/basegfx/inc/basegfx/color/bcolor.hxx b/basegfx/inc/basegfx/color/bcolor.hxx
index b5179933ae25..9b91e212ec89 100644
--- a/basegfx/inc/basegfx/color/bcolor.hxx
+++ b/basegfx/inc/basegfx/color/bcolor.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_COLOR_BCOLOR_HXX
#define _BGFX_COLOR_BCOLOR_HXX
@@ -54,7 +45,7 @@ namespace basegfx
@see B3DTuple
*/
- class BASEGFX_DLLPUBLIC BColor : public B3DTuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED BColor : public B3DTuple
{
public:
/** Create a Color with red, green and blue components from [0.0 to 1.0]
@@ -157,9 +148,9 @@ namespace basegfx
// luminance
double luminance() const
{
- const double fRedWeight(77.0 / 256.0);
- const double fGreenWeight(151.0 / 256.0);
- const double fBlueWeight(28.0 / 256.0);
+ const double fRedWeight(77.0 / 256.0); // 0.30
+ const double fGreenWeight(151.0 / 256.0); // 0.59
+ const double fBlueWeight(28.0 / 256.0); // 0.11
return (mfX * fRedWeight + mfY * fGreenWeight + mfZ * fBlueWeight);
}
diff --git a/basegfx/inc/basegfx/color/bcolormodifier.hxx b/basegfx/inc/basegfx/color/bcolormodifier.hxx
index 3d1453e564ee..4b6f04efc8e9 100644
--- a/basegfx/inc/basegfx/color/bcolormodifier.hxx
+++ b/basegfx/inc/basegfx/color/bcolormodifier.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_COLOR_BCOLORMODIFIER_HXX
#define _BGFX_COLOR_BCOLORMODIFIER_HXX
@@ -41,16 +32,18 @@ namespace basegfx
*/
enum BColorModifyMode
{
- BCOLORMODIFYMODE_REPLACE, // replace all color with local color
- BCOLORMODIFYMODE_INTERPOLATE, // interpolate color between given and local with local value
- BCOLORMODIFYMODE_GRAY, // convert color to gray
- BCOLORMODIFYMODE_BLACKANDWHITE // convert color to B&W, local value is treshhold
+ BCOLORMODIFYMODE_REPLACE, // replace all color with local color
+ BCOLORMODIFYMODE_INTERPOLATE, // interpolate color between given and local with local value
+ BCOLORMODIFYMODE_GRAY, // convert color to gray
+ BCOLORMODIFYMODE_BLACKANDWHITE, // convert color to B&W, local value is treshhold
+ BCOLORMODIFYMODE_INVERT, // invert color
+ BCOLORMODIFYMODE_LUMINANCE_TO_ALPHA // convert color to alpha value (used for Svg Mask)
};
/** Class to hold a color, value and mode for a color modification. Color modification is
done calling the getModifiedColor() method
*/
- class BASEGFX_DLLPUBLIC BColorModifier
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED BColorModifier
{
protected:
::basegfx::BColor maBColor;
diff --git a/basegfx/inc/basegfx/color/bcolortools.hxx b/basegfx/inc/basegfx/color/bcolortools.hxx
index 21da19e80ec1..42ac7aafb3cc 100644
--- a/basegfx/inc/basegfx/color/bcolortools.hxx
+++ b/basegfx/inc/basegfx/color/bcolortools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_COLOR_BCOLORTOOLS_HXX
#define _BGFX_COLOR_BCOLORTOOLS_HXX
diff --git a/basegfx/inc/basegfx/curve/b2dbeziertools.hxx b/basegfx/inc/basegfx/curve/b2dbeziertools.hxx
index a6eda0a2a759..f52f00a1912f 100644
--- a/basegfx/inc/basegfx/curve/b2dbeziertools.hxx
+++ b/basegfx/inc/basegfx/curve/b2dbeziertools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_CURVE_B2DBEZIERTOOLS_HXX
#define _BGFX_CURVE_B2DBEZIERTOOLS_HXX
diff --git a/basegfx/inc/basegfx/curve/b2dcubicbezier.hxx b/basegfx/inc/basegfx/curve/b2dcubicbezier.hxx
index 5931ce057dbe..003a1970bb0a 100644
--- a/basegfx/inc/basegfx/curve/b2dcubicbezier.hxx
+++ b/basegfx/inc/basegfx/curve/b2dcubicbezier.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_CURVE_B2DCUBICBEZIER_HXX
#define _BGFX_CURVE_B2DCUBICBEZIER_HXX
diff --git a/basegfx/inc/basegfx/matrix/b2dhommatrix.hxx b/basegfx/inc/basegfx/matrix/b2dhommatrix.hxx
index e296a3d1d0be..30204b91fad5 100644
--- a/basegfx/inc/basegfx/matrix/b2dhommatrix.hxx
+++ b/basegfx/inc/basegfx/matrix/b2dhommatrix.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_MATRIX_B2DHOMMATRIX_HXX
#define _BGFX_MATRIX_B2DHOMMATRIX_HXX
diff --git a/basegfx/inc/basegfx/matrix/b2dhommatrixtools.hxx b/basegfx/inc/basegfx/matrix/b2dhommatrixtools.hxx
index cf49df05ce85..1d45d19caa40 100644
--- a/basegfx/inc/basegfx/matrix/b2dhommatrixtools.hxx
+++ b/basegfx/inc/basegfx/matrix/b2dhommatrixtools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_MATRIX_B2DHOMMATRIXTOOLS_HXX
#define _BGFX_MATRIX_B2DHOMMATRIXTOOLS_HXX
@@ -56,6 +47,8 @@ namespace basegfx
multiplications
*/
BASEGFX_DLLPUBLIC B2DHomMatrix createScaleB2DHomMatrix(double fScaleX, double fScaleY);
+ BASEGFX_DLLPUBLIC B2DHomMatrix createShearXB2DHomMatrix(double fShearX);
+ BASEGFX_DLLPUBLIC B2DHomMatrix createShearYB2DHomMatrix(double fShearY);
BASEGFX_DLLPUBLIC B2DHomMatrix createRotateB2DHomMatrix(double fRadiant);
BASEGFX_DLLPUBLIC B2DHomMatrix createTranslateB2DHomMatrix(double fTranslateX, double fTranslateY);
@@ -153,7 +146,7 @@ namespace basegfx
double mfShearX;
public:
- B2DHomMatrixBufferedDecompose(const B2DHomMatrix& rB2DHomMatrix)
+ B2DHomMatrixBufferedDecompose(const B2DHomMatrix& rB2DHomMatrix = B2DHomMatrix())
: maScale(),
maTranslate(),
mfRotate(0.0),
@@ -205,7 +198,7 @@ namespace basegfx
}
public:
- B2DHomMatrixBufferedOnDemandDecompose(const B2DHomMatrix& rB2DHomMatrix)
+ B2DHomMatrixBufferedOnDemandDecompose(const B2DHomMatrix& rB2DHomMatrix = B2DHomMatrix())
: maB2DHomMatrix(rB2DHomMatrix),
maScale(),
maTranslate(),
diff --git a/basegfx/inc/basegfx/matrix/b3dhommatrix.hxx b/basegfx/inc/basegfx/matrix/b3dhommatrix.hxx
index 35b506f4022a..037d400d674f 100644
--- a/basegfx/inc/basegfx/matrix/b3dhommatrix.hxx
+++ b/basegfx/inc/basegfx/matrix/b3dhommatrix.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_MATRIX_B3DHOMMATRIX_HXX
#define _BGFX_MATRIX_B3DHOMMATRIX_HXX
@@ -81,6 +72,7 @@ namespace basegfx
// Shearing-Matrices
void shearXY(double fSx, double fSy);
+ void shearXZ(double fSx, double fSz);
// Projection matrices, used for converting between eye and
// clip coordinates
diff --git a/basegfx/inc/basegfx/numeric/ftools.hxx b/basegfx/inc/basegfx/numeric/ftools.hxx
index 59b9d737613d..70dcabe1a190 100644
--- a/basegfx/inc/basegfx/numeric/ftools.hxx
+++ b/basegfx/inc/basegfx/numeric/ftools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_NUMERIC_FTOOLS_HXX
#define _BGFX_NUMERIC_FTOOLS_HXX
diff --git a/basegfx/inc/basegfx/pixel/bpixel.hxx b/basegfx/inc/basegfx/pixel/bpixel.hxx
index 594263cbde1e..a2c59101fa78 100644
--- a/basegfx/inc/basegfx/pixel/bpixel.hxx
+++ b/basegfx/inc/basegfx/pixel/bpixel.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_PIXEL_BPIXEL_HXX
#define _BGFX_PIXEL_BPIXEL_HXX
diff --git a/basegfx/inc/basegfx/point/b2dpoint.hxx b/basegfx/inc/basegfx/point/b2dpoint.hxx
index 9c8056abe7d9..ef73c8ab46c9 100644
--- a/basegfx/inc/basegfx/point/b2dpoint.hxx
+++ b/basegfx/inc/basegfx/point/b2dpoint.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POINT_B2DPOINT_HXX
#define _BGFX_POINT_B2DPOINT_HXX
@@ -48,7 +39,7 @@ namespace basegfx
@see B2DTuple
*/
- class B2DPoint : public ::basegfx::B2DTuple
+ class SAL_WARN_UNUSED B2DPoint : public ::basegfx::B2DTuple
{
public:
/** Create a 2D Point
diff --git a/basegfx/inc/basegfx/point/b2ipoint.hxx b/basegfx/inc/basegfx/point/b2ipoint.hxx
index c356e1c5855b..33b225a2a36d 100644
--- a/basegfx/inc/basegfx/point/b2ipoint.hxx
+++ b/basegfx/inc/basegfx/point/b2ipoint.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POINT_B2IPOINT_HXX
#define _BGFX_POINT_B2IPOINT_HXX
@@ -45,7 +36,7 @@ namespace basegfx
@see B2ITuple
*/
- class BASEGFX_DLLPUBLIC B2IPoint : public ::basegfx::B2ITuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B2IPoint : public ::basegfx::B2ITuple
{
public:
/** Create a 2D Point
diff --git a/basegfx/inc/basegfx/point/b3dpoint.hxx b/basegfx/inc/basegfx/point/b3dpoint.hxx
index 569bf2d7dab0..391bc128b9fb 100644
--- a/basegfx/inc/basegfx/point/b3dpoint.hxx
+++ b/basegfx/inc/basegfx/point/b3dpoint.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POINT_B3DPOINT_HXX
#define _BGFX_POINT_B3DPOINT_HXX
@@ -45,7 +36,7 @@ namespace basegfx
@see B3DTuple
*/
- class BASEGFX_DLLPUBLIC B3DPoint : public ::basegfx::B3DTuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B3DPoint : public ::basegfx::B3DTuple
{
public:
/** Create a 3D Point
diff --git a/basegfx/inc/basegfx/point/b3ipoint.hxx b/basegfx/inc/basegfx/point/b3ipoint.hxx
index f773994728fe..e80514c13de2 100644
--- a/basegfx/inc/basegfx/point/b3ipoint.hxx
+++ b/basegfx/inc/basegfx/point/b3ipoint.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POINT_B3IPOINT_HXX
#define _BGFX_POINT_B3IPOINT_HXX
@@ -45,7 +36,7 @@ namespace basegfx
@see B3ITuple
*/
- class BASEGFX_DLLPUBLIC B3IPoint : public ::basegfx::B3ITuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B3IPoint : public ::basegfx::B3ITuple
{
public:
/** Create a 3D Point
diff --git a/basegfx/inc/basegfx/polygon/b2dlinegeometry.hxx b/basegfx/inc/basegfx/polygon/b2dlinegeometry.hxx
index b49dbef1d2e8..934158f88a2f 100644
--- a/basegfx/inc/basegfx/polygon/b2dlinegeometry.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dlinegeometry.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B2DLINEGEOMETRY_HXX
#define _BGFX_POLYGON_B2DLINEGEOMETRY_HXX
@@ -33,6 +24,7 @@
#include <basegfx/numeric/ftools.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
+#include <com/sun/star/drawing/LineCap.hpp>
#include <basegfx/basegfxdllapi.h>
//////////////////////////////////////////////////////////////////////////////
@@ -107,6 +99,9 @@ namespace basegfx
The LineJoin if the edges meeting in a point do not have a C1
or C2 continuity
+ @param eCap
+ The kind of cap, which is added to the line.
+
@param fMaxAllowedAngle
Allows to hand over the maximum allowed angle between an edge and
it's control vectors. The smaller, the more subdivisions will be
@@ -134,6 +129,7 @@ namespace basegfx
const B2DPolygon& rCandidate,
double fHalfLineWidth,
B2DLineJoin eJoin = B2DLINEJOIN_ROUND,
+ com::sun::star::drawing::LineCap eCap = com::sun::star::drawing::LineCap_BUTT,
double fMaxAllowedAngle = (12.5 * F_PI180),
double fMaxPartOfEdge = 0.4,
double fMiterMinimumAngle = (15.0 * F_PI180));
diff --git a/basegfx/inc/basegfx/polygon/b2dpolygon.hxx b/basegfx/inc/basegfx/polygon/b2dpolygon.hxx
index 3443d7253615..7c854fdc8a0e 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolygon.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolygon.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B2DPOLYGON_HXX
#define _BGFX_POLYGON_B2DPOLYGON_HXX
@@ -226,6 +217,10 @@ namespace basegfx
/// apply transformation given in matrix form
void transform(const basegfx::B2DHomMatrix& rMatrix);
};
+
+ // typedef for a vector of B2DPolygons
+ typedef ::std::vector< B2DPolygon > B2DPolygonVector;
+
} // end of namespace basegfx
//////////////////////////////////////////////////////////////////////////////
diff --git a/basegfx/inc/basegfx/polygon/b2dpolygonclipper.hxx b/basegfx/inc/basegfx/polygon/b2dpolygonclipper.hxx
index 2556b34553c7..197958e45a00 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolygonclipper.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolygonclipper.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYPOLYGON_B2DPOLYGONCLIPPER_HXX
#define _BGFX_POLYPOLYGON_B2DPOLYGONCLIPPER_HXX
diff --git a/basegfx/inc/basegfx/polygon/b2dpolygoncutandtouch.hxx b/basegfx/inc/basegfx/polygon/b2dpolygoncutandtouch.hxx
index 1d5c0ffce5af..05f8e0e0cb3a 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolygoncutandtouch.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolygoncutandtouch.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_CUTANDTOUCH_HXX
#define _BGFX_POLYGON_CUTANDTOUCH_HXX
diff --git a/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx b/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx
index 0c106cb15e1d..dce479847d65 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolygontools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B2DPOLYGONTOOLS_HXX
#define _BGFX_POLYGON_B2DPOLYGONTOOLS_HXX
@@ -245,6 +236,9 @@ namespace basegfx
*/
BASEGFX_DLLPUBLIC B2DPolygon createPolygonFromCircle( const B2DPoint& rCenter, double fRadius );
+ /// create half circle centered on (0,0) from [0 .. F_PI]
+ B2DPolygon createHalfUnitCircle();
+
/** create a polygon which describes the unit circle and close it
@param nStartQuadrant
diff --git a/basegfx/inc/basegfx/polygon/b2dpolygontriangulator.hxx b/basegfx/inc/basegfx/polygon/b2dpolygontriangulator.hxx
index 2bcf674059d6..f6e4f020f94f 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolygontriangulator.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolygontriangulator.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B2DPOLYGONTRIANGULATOR_HXX
#define _BGFX_POLYGON_B2DPOLYGONTRIANGULATOR_HXX
diff --git a/basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx b/basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx
index 931f83bcb158..c22fc9888588 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolypolygon.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B2DPOLYPOLYGON_HXX
#define _BGFX_POLYGON_B2DPOLYPOLYGON_HXX
@@ -134,6 +125,10 @@ namespace basegfx
B2DPolygon* begin();
B2DPolygon* end();
};
+
+ // typedef for a vector of B2DPolyPolygons
+ typedef ::std::vector< B2DPolyPolygon > B2DPolyPolygonVector;
+
} // end of namespace basegfx
#endif /* _BGFX_POLYGON_B2DPOLYPOLYGON_HXX */
diff --git a/basegfx/inc/basegfx/polygon/b2dpolypolygoncutter.hxx b/basegfx/inc/basegfx/polygon/b2dpolypolygoncutter.hxx
index 7bf821cb6640..dcd4841f82bc 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolypolygoncutter.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolypolygoncutter.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B2DPOLYPOLYGONCUTTER_HXX
#define _BGFX_POLYGON_B2DPOLYPOLYGONCUTTER_HXX
@@ -47,6 +38,11 @@ namespace basegfx
// contained sub-polygons in a preparing step and to explicitly correct their orientations.
BASEGFX_DLLPUBLIC B2DPolyPolygon solveCrossovers(const B2DPolyPolygon& rCandidate);
+ // Version for single polygons. This is for solving self-intersections. Result will be free of
+ // crossovers. When result contains multiple polygons, it may be necessary to rearrange their
+ // orientations since holes may have been created (use correctOrientations eventually).
+ BASEGFX_DLLPUBLIC B2DPolyPolygon solveCrossovers(const B2DPolygon& rCandidate);
+
// Neutral polygons will be stripped. Neutral polygons are ones who's orientation is
// neutral, so normally they have no volume -> just closed paths. A polygon with the same
// positive and negative oriented volume is also neutral, so this may not be wanted. It is
@@ -66,6 +62,13 @@ namespace basegfx
// can be combined for logical polygon operations or polygon clipping.
BASEGFX_DLLPUBLIC B2DPolyPolygon stripDispensablePolygons(const B2DPolyPolygon& rCandidate, bool bKeepAboveZero = false);
+ // geometrically convert PolyPolygons which are proposed to use nonzero fill rule
+ // to a representation where evenodd paint will give the same result. To do this
+ // all intersections and self-intersections get solved (the polygons will be rearranged
+ // if needed). Then all polygons which are inside another one with the same orientation
+ // get deleted
+ BASEGFX_DLLPUBLIC B2DPolyPolygon createNonzeroConform(const B2DPolyPolygon& rCandidate);
+
// For convenience: The four basic operations OR, XOR, AND and DIFF for
// two PolyPolygons. These are combinations of the above methods. To not be forced
// to do evtl. already done preparations twice, You have to do the operations Yourself.
@@ -105,7 +108,7 @@ namespace basegfx
@return A single PolyPolygon containing the Or-merged result
*/
- BASEGFX_DLLPUBLIC B2DPolyPolygon mergeToSinglePolyPolygon(const std::vector< basegfx::B2DPolyPolygon >& rInput);
+ BASEGFX_DLLPUBLIC B2DPolyPolygon mergeToSinglePolyPolygon(const B2DPolyPolygonVector& rInput);
} // end of namespace tools
} // end of namespace basegfx
diff --git a/basegfx/inc/basegfx/polygon/b2dpolypolygontools.hxx b/basegfx/inc/basegfx/polygon/b2dpolypolygontools.hxx
index bacc97d216a7..67fa17f0c433 100644
--- a/basegfx/inc/basegfx/polygon/b2dpolypolygontools.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dpolypolygontools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYPOLYGON_B2DPOLYGONTOOLS_HXX
#define _BGFX_POLYPOLYGON_B2DPOLYGONTOOLS_HXX
diff --git a/basegfx/inc/basegfx/polygon/b2dtrapezoid.hxx b/basegfx/inc/basegfx/polygon/b2dtrapezoid.hxx
index ac4c69cc08f5..43ee9fb37f6c 100644
--- a/basegfx/inc/basegfx/polygon/b2dtrapezoid.hxx
+++ b/basegfx/inc/basegfx/polygon/b2dtrapezoid.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B2DTRAPEZOID_HXX
#define _BGFX_POLYGON_B2DTRAPEZOID_HXX
diff --git a/basegfx/inc/basegfx/polygon/b3dpolygon.hxx b/basegfx/inc/basegfx/polygon/b3dpolygon.hxx
index 2aae89b64f58..7199eea9684c 100644
--- a/basegfx/inc/basegfx/polygon/b3dpolygon.hxx
+++ b/basegfx/inc/basegfx/polygon/b3dpolygon.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B3DPOLYGON_HXX
#define _BGFX_POLYGON_B3DPOLYGON_HXX
diff --git a/basegfx/inc/basegfx/polygon/b3dpolygontools.hxx b/basegfx/inc/basegfx/polygon/b3dpolygontools.hxx
index 8ebead8b1da0..9ed32b42fb90 100644
--- a/basegfx/inc/basegfx/polygon/b3dpolygontools.hxx
+++ b/basegfx/inc/basegfx/polygon/b3dpolygontools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B3DPOLYGONTOOLS_HXX
#define _BGFX_POLYGON_B3DPOLYGONTOOLS_HXX
diff --git a/basegfx/inc/basegfx/polygon/b3dpolypolygon.hxx b/basegfx/inc/basegfx/polygon/b3dpolypolygon.hxx
index fab75a1a860f..d67da6ad690b 100644
--- a/basegfx/inc/basegfx/polygon/b3dpolypolygon.hxx
+++ b/basegfx/inc/basegfx/polygon/b3dpolypolygon.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYGON_B3DPOLYPOLYGON_HXX
#define _BGFX_POLYGON_B3DPOLYPOLYGON_HXX
diff --git a/basegfx/inc/basegfx/polygon/b3dpolypolygontools.hxx b/basegfx/inc/basegfx/polygon/b3dpolypolygontools.hxx
index 4c3c0b053322..a50167f9b4de 100644
--- a/basegfx/inc/basegfx/polygon/b3dpolypolygontools.hxx
+++ b/basegfx/inc/basegfx/polygon/b3dpolypolygontools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_POLYPOLYGON_B3DPOLYGONTOOLS_HXX
#define _BGFX_POLYPOLYGON_B3DPOLYGONTOOLS_HXX
diff --git a/basegfx/inc/basegfx/range/b1drange.hxx b/basegfx/inc/basegfx/range/b1drange.hxx
index 97e0cb9f0a20..ffe704a1b845 100644
--- a/basegfx/inc/basegfx/range/b1drange.hxx
+++ b/basegfx/inc/basegfx/range/b1drange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B1DRANGE_HXX
#define _BGFX_RANGE_B1DRANGE_HXX
diff --git a/basegfx/inc/basegfx/range/b1ibox.hxx b/basegfx/inc/basegfx/range/b1ibox.hxx
index 5bfe9f7170c4..7c81e37c1288 100644
--- a/basegfx/inc/basegfx/range/b1ibox.hxx
+++ b/basegfx/inc/basegfx/range/b1ibox.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B1IBOX_HXX
#define _BGFX_RANGE_B1IBOX_HXX
diff --git a/basegfx/inc/basegfx/range/b1irange.hxx b/basegfx/inc/basegfx/range/b1irange.hxx
index 6d0333521ceb..0ba5878fb0c8 100644
--- a/basegfx/inc/basegfx/range/b1irange.hxx
+++ b/basegfx/inc/basegfx/range/b1irange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B1IRANGE_HXX
#define _BGFX_RANGE_B1IRANGE_HXX
diff --git a/basegfx/inc/basegfx/range/b2dpolyrange.hxx b/basegfx/inc/basegfx/range/b2dpolyrange.hxx
index 205085354111..b910062d11a3 100644
--- a/basegfx/inc/basegfx/range/b2dpolyrange.hxx
+++ b/basegfx/inc/basegfx/range/b2dpolyrange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B2DPOLYRANGE_HXX
#define _BGFX_RANGE_B2DPOLYRANGE_HXX
diff --git a/basegfx/inc/basegfx/range/b2drange.hxx b/basegfx/inc/basegfx/range/b2drange.hxx
index b8a51aeb8800..1f3884c1c9ce 100644
--- a/basegfx/inc/basegfx/range/b2drange.hxx
+++ b/basegfx/inc/basegfx/range/b2drange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B2DRANGE_HXX
#define _BGFX_RANGE_B2DRANGE_HXX
diff --git a/basegfx/inc/basegfx/range/b2drangeclipper.hxx b/basegfx/inc/basegfx/range/b2drangeclipper.hxx
index 5f96ef307c60..99bc8763369d 100644
--- a/basegfx/inc/basegfx/range/b2drangeclipper.hxx
+++ b/basegfx/inc/basegfx/range/b2drangeclipper.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B2DRANGECLIPPER_HXX
#define _BGFX_RANGE_B2DRANGECLIPPER_HXX
diff --git a/basegfx/inc/basegfx/range/b2ibox.hxx b/basegfx/inc/basegfx/range/b2ibox.hxx
index 7c2f9ee1fd91..7c182a4ab327 100644
--- a/basegfx/inc/basegfx/range/b2ibox.hxx
+++ b/basegfx/inc/basegfx/range/b2ibox.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B2IBOX_HXX
#define _BGFX_RANGE_B2IBOX_HXX
diff --git a/basegfx/inc/basegfx/range/b2irange.hxx b/basegfx/inc/basegfx/range/b2irange.hxx
index 6f1f84a315b9..60f9fc79fa67 100644
--- a/basegfx/inc/basegfx/range/b2irange.hxx
+++ b/basegfx/inc/basegfx/range/b2irange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B2IRANGE_HXX
#define _BGFX_RANGE_B2IRANGE_HXX
diff --git a/basegfx/inc/basegfx/range/b3drange.hxx b/basegfx/inc/basegfx/range/b3drange.hxx
index 8f1caf0febaf..7b17f04e4964 100644
--- a/basegfx/inc/basegfx/range/b3drange.hxx
+++ b/basegfx/inc/basegfx/range/b3drange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B3DRANGE_HXX
#define _BGFX_RANGE_B3DRANGE_HXX
diff --git a/basegfx/inc/basegfx/range/b3irange.hxx b/basegfx/inc/basegfx/range/b3irange.hxx
index 8cc2925f3dfe..558c2abb4d62 100644
--- a/basegfx/inc/basegfx/range/b3irange.hxx
+++ b/basegfx/inc/basegfx/range/b3irange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_B3IRANGE_HXX
#define _BGFX_RANGE_B3IRANGE_HXX
diff --git a/basegfx/inc/basegfx/range/basicbox.hxx b/basegfx/inc/basegfx/range/basicbox.hxx
index 4b000b582f3c..bab84c17f89a 100644
--- a/basegfx/inc/basegfx/range/basicbox.hxx
+++ b/basegfx/inc/basegfx/range/basicbox.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_BASICBOX_HXX
#define _BGFX_RANGE_BASICBOX_HXX
diff --git a/basegfx/inc/basegfx/range/basicrange.hxx b/basegfx/inc/basegfx/range/basicrange.hxx
index d9fded6b46e7..51b5593ae61d 100644
--- a/basegfx/inc/basegfx/range/basicrange.hxx
+++ b/basegfx/inc/basegfx/range/basicrange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RANGE_BASICRANGE_HXX
#define _BGFX_RANGE_BASICRANGE_HXX
diff --git a/basegfx/inc/basegfx/raster/bpixelraster.hxx b/basegfx/inc/basegfx/raster/bpixelraster.hxx
index d8d71c83bdae..60a5d5ab5e3a 100644
--- a/basegfx/inc/basegfx/raster/bpixelraster.hxx
+++ b/basegfx/inc/basegfx/raster/bpixelraster.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RASTER_BPIXELRASTER_HXX
#define _BGFX_RASTER_BPIXELRASTER_HXX
diff --git a/basegfx/inc/basegfx/raster/bzpixelraster.hxx b/basegfx/inc/basegfx/raster/bzpixelraster.hxx
index a3e1db61d087..ddd4f1e56cb0 100644
--- a/basegfx/inc/basegfx/raster/bzpixelraster.hxx
+++ b/basegfx/inc/basegfx/raster/bzpixelraster.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RASTER_BZPIXELRASTER_HXX
#define _BGFX_RASTER_BZPIXELRASTER_HXX
diff --git a/basegfx/inc/basegfx/raster/rasterconvert3d.hxx b/basegfx/inc/basegfx/raster/rasterconvert3d.hxx
index 6f1cb2048fbc..1bfbe20b1cf0 100644
--- a/basegfx/inc/basegfx/raster/rasterconvert3d.hxx
+++ b/basegfx/inc/basegfx/raster/rasterconvert3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_RASTER_RASTERCONVERT3D_HXX
#define _BGFX_RASTER_RASTERCONVERT3D_HXX
diff --git a/basegfx/inc/basegfx/tools/b2dclipstate.hxx b/basegfx/inc/basegfx/tools/b2dclipstate.hxx
index 30ab4bdc5fce..f1d750ae636b 100644
--- a/basegfx/inc/basegfx/tools/b2dclipstate.hxx
+++ b/basegfx/inc/basegfx/tools/b2dclipstate.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TOOLS_CLIPSTATE_HXX
#define _BGFX_TOOLS_CLIPSTATE_HXX
diff --git a/basegfx/inc/basegfx/tools/canvastools.hxx b/basegfx/inc/basegfx/tools/canvastools.hxx
index 40f45e02a722..819a62e47b28 100644
--- a/basegfx/inc/basegfx/tools/canvastools.hxx
+++ b/basegfx/inc/basegfx/tools/canvastools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TOOLS_CANVASTOOLS_HXX
#define _BGFX_TOOLS_CANVASTOOLS_HXX
diff --git a/basegfx/inc/basegfx/tools/gradienttools.hxx b/basegfx/inc/basegfx/tools/gradienttools.hxx
index bebf79e743b5..aa7479d2c369 100644
--- a/basegfx/inc/basegfx/tools/gradienttools.hxx
+++ b/basegfx/inc/basegfx/tools/gradienttools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TOOLS_GRADIENTTOOLS_HXX
#define _BGFX_TOOLS_GRADIENTTOOLS_HXX
diff --git a/basegfx/inc/basegfx/tools/keystoplerp.hxx b/basegfx/inc/basegfx/tools/keystoplerp.hxx
index b0791c588151..8d6d41af63d9 100644
--- a/basegfx/inc/basegfx/tools/keystoplerp.hxx
+++ b/basegfx/inc/basegfx/tools/keystoplerp.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TOOLS_KEYSTOPLERP_HXX
#define _BGFX_TOOLS_KEYSTOPLERP_HXX
diff --git a/basegfx/inc/basegfx/tools/rectcliptools.hxx b/basegfx/inc/basegfx/tools/rectcliptools.hxx
index c9b36eb3e46d..3d5f77e18e0e 100644
--- a/basegfx/inc/basegfx/tools/rectcliptools.hxx
+++ b/basegfx/inc/basegfx/tools/rectcliptools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TOOLS_RECTCLIPTOOLS_HXX
#define _BGFX_TOOLS_RECTCLIPTOOLS_HXX
diff --git a/basegfx/inc/basegfx/tools/tools.hxx b/basegfx/inc/basegfx/tools/tools.hxx
index f4ff85d48a05..c1fa0940ae35 100644
--- a/basegfx/inc/basegfx/tools/tools.hxx
+++ b/basegfx/inc/basegfx/tools/tools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TOOLS_TOOLS_HXX
#define _BGFX_TOOLS_TOOLS_HXX
diff --git a/basegfx/inc/basegfx/tools/unopolypolygon.hxx b/basegfx/inc/basegfx/tools/unopolypolygon.hxx
index 9f419837c02c..71ddc64323a5 100644
--- a/basegfx/inc/basegfx/tools/unopolypolygon.hxx
+++ b/basegfx/inc/basegfx/tools/unopolypolygon.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_BASEGFX_UNOPOLYPOLYGON_HXX
#define INCLUDED_BASEGFX_UNOPOLYPOLYGON_HXX
diff --git a/basegfx/inc/basegfx/tuple/b2dtuple.hxx b/basegfx/inc/basegfx/tuple/b2dtuple.hxx
index 19ec58d106a7..380ba8adf493 100644
--- a/basegfx/inc/basegfx/tuple/b2dtuple.hxx
+++ b/basegfx/inc/basegfx/tuple/b2dtuple.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TUPLE_B2DTUPLE_HXX
#define _BGFX_TUPLE_B2DTUPLE_HXX
@@ -46,7 +37,7 @@ namespace basegfx
@derive Use this class to implement Points or Vectors
which are based on two double values
*/
- class B2DTuple
+ class SAL_WARN_UNUSED B2DTuple
{
protected:
double mfX;
diff --git a/basegfx/inc/basegfx/tuple/b2i64tuple.hxx b/basegfx/inc/basegfx/tuple/b2i64tuple.hxx
index 7af092b04601..debb4cabe578 100644
--- a/basegfx/inc/basegfx/tuple/b2i64tuple.hxx
+++ b/basegfx/inc/basegfx/tuple/b2i64tuple.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TUPLE_B2I64TUPLE_HXX
#define _BGFX_TUPLE_B2I64TUPLE_HXX
@@ -44,7 +35,7 @@ namespace basegfx
@derive Use this class to implement Points or Vectors
which are based on two sal_Int64 values
*/
- class BASEGFX_DLLPUBLIC B2I64Tuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B2I64Tuple
{
protected:
sal_Int64 mnX;
diff --git a/basegfx/inc/basegfx/tuple/b2ituple.hxx b/basegfx/inc/basegfx/tuple/b2ituple.hxx
index 12459e0d5765..41203a0c58c4 100644
--- a/basegfx/inc/basegfx/tuple/b2ituple.hxx
+++ b/basegfx/inc/basegfx/tuple/b2ituple.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TUPLE_B2ITUPLE_HXX
#define _BGFX_TUPLE_B2ITUPLE_HXX
@@ -42,7 +33,7 @@ namespace basegfx
@derive Use this class to implement Points or Vectors
which are based on two sal_Int32 values
*/
- class BASEGFX_DLLPUBLIC B2ITuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B2ITuple
{
protected:
sal_Int32 mnX;
diff --git a/basegfx/inc/basegfx/tuple/b3dtuple.hxx b/basegfx/inc/basegfx/tuple/b3dtuple.hxx
index 0ed99431da2f..1eb4dd38de09 100644
--- a/basegfx/inc/basegfx/tuple/b3dtuple.hxx
+++ b/basegfx/inc/basegfx/tuple/b3dtuple.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TUPLE_B3DTUPLE_HXX
#define _BGFX_TUPLE_B3DTUPLE_HXX
@@ -46,7 +37,7 @@ namespace basegfx
@derive Use this class to implement Points or Vectors
which are based on three double values
*/
- class BASEGFX_DLLPUBLIC B3DTuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B3DTuple
{
protected:
double mfX;
diff --git a/basegfx/inc/basegfx/tuple/b3i64tuple.hxx b/basegfx/inc/basegfx/tuple/b3i64tuple.hxx
index 9e8fa7f3fbd7..bcc1acaee6b1 100644
--- a/basegfx/inc/basegfx/tuple/b3i64tuple.hxx
+++ b/basegfx/inc/basegfx/tuple/b3i64tuple.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TUPLE_B3I64TUPLE_HXX
#define _BGFX_TUPLE_B3I64TUPLE_HXX
@@ -44,7 +35,7 @@ namespace basegfx
@derive Use this class to implement Points or Vectors
which are based on three sal_Int64 values
*/
- class BASEGFX_DLLPUBLIC B3I64Tuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B3I64Tuple
{
protected:
sal_Int64 mnX;
diff --git a/basegfx/inc/basegfx/tuple/b3ituple.hxx b/basegfx/inc/basegfx/tuple/b3ituple.hxx
index da3dc231dfc6..49fb24634ed4 100644
--- a/basegfx/inc/basegfx/tuple/b3ituple.hxx
+++ b/basegfx/inc/basegfx/tuple/b3ituple.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_TUPLE_B3ITUPLE_HXX
#define _BGFX_TUPLE_B3ITUPLE_HXX
@@ -43,7 +34,7 @@ namespace basegfx
@derive Use this class to implement Points or Vectors
which are based on three sal_Int32 values
*/
- class BASEGFX_DLLPUBLIC B3ITuple
+ class BASEGFX_DLLPUBLIC SAL_WARN_UNUSED B3ITuple
{
protected:
sal_Int32 mnX;
diff --git a/basegfx/inc/basegfx/vector/b2dvector.hxx b/basegfx/inc/basegfx/vector/b2dvector.hxx
index 4c003ebf18c4..99489eb7169c 100644
--- a/basegfx/inc/basegfx/vector/b2dvector.hxx
+++ b/basegfx/inc/basegfx/vector/b2dvector.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_VECTOR_B2DVECTOR_HXX
#define _BGFX_VECTOR_B2DVECTOR_HXX
diff --git a/basegfx/inc/basegfx/vector/b2ivector.hxx b/basegfx/inc/basegfx/vector/b2ivector.hxx
index e1df2b49750d..63ce2ae28fba 100644
--- a/basegfx/inc/basegfx/vector/b2ivector.hxx
+++ b/basegfx/inc/basegfx/vector/b2ivector.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_VECTOR_B2IVECTOR_HXX
#define _BGFX_VECTOR_B2IVECTOR_HXX
diff --git a/basegfx/inc/basegfx/vector/b3dvector.hxx b/basegfx/inc/basegfx/vector/b3dvector.hxx
index aff3571cb7be..99f23bc7b6d3 100644
--- a/basegfx/inc/basegfx/vector/b3dvector.hxx
+++ b/basegfx/inc/basegfx/vector/b3dvector.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_VECTOR_B3DVECTOR_HXX
#define _BGFX_VECTOR_B3DVECTOR_HXX
diff --git a/basegfx/inc/basegfx/vector/b3ivector.hxx b/basegfx/inc/basegfx/vector/b3ivector.hxx
index 42760d6dd90d..8248ade15cb0 100644
--- a/basegfx/inc/basegfx/vector/b3ivector.hxx
+++ b/basegfx/inc/basegfx/vector/b3ivector.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BGFX_VECTOR_B3IVECTOR_HXX
#define _BGFX_VECTOR_B3IVECTOR_HXX
diff --git a/basegfx/source/color/bcolormodifier.cxx b/basegfx/source/color/bcolormodifier.cxx
index 8e0b52acf165..a53715b62304 100644
--- a/basegfx/source/color/bcolormodifier.cxx
+++ b/basegfx/source/color/bcolormodifier.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/color/bcolormodifier.hxx>
@@ -58,6 +49,15 @@ namespace basegfx
return ::basegfx::BColor(1.0, 1.0, 1.0);
}
}
+ case BCOLORMODIFYMODE_INVERT :
+ {
+ return ::basegfx::BColor(1.0 - aSourceColor.getRed(), 1.0 - aSourceColor.getGreen(), 1.0 - aSourceColor.getBlue());
+ }
+ case BCOLORMODIFYMODE_LUMINANCE_TO_ALPHA:
+ {
+ const double fAlpha(1.0 - ((aSourceColor.getRed() * 0.2125) + (aSourceColor.getGreen() * 0.7154) + (aSourceColor.getBlue() * 0.0721)));
+ return ::basegfx::BColor(fAlpha, fAlpha, fAlpha);
+ }
default : // BCOLORMODIFYMODE_REPLACE
{
return maBColor;
diff --git a/basegfx/source/color/bcolortools.cxx b/basegfx/source/color/bcolortools.cxx
index beaf0009cc94..838a10d1a116 100644
--- a/basegfx/source/color/bcolortools.cxx
+++ b/basegfx/source/color/bcolortools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/numeric/ftools.hxx>
#include <basegfx/color/bcolor.hxx>
diff --git a/basegfx/source/curve/b2dbeziertools.cxx b/basegfx/source/curve/b2dbeziertools.cxx
index 86840fa12ac1..153b3c702cf3 100644
--- a/basegfx/source/curve/b2dbeziertools.cxx
+++ b/basegfx/source/curve/b2dbeziertools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/curve/b2dbeziertools.hxx>
#include <basegfx/curve/b2dcubicbezier.hxx>
diff --git a/basegfx/source/curve/b2dcubicbezier.cxx b/basegfx/source/curve/b2dcubicbezier.cxx
index adf958051ce7..8ab5e2d7dca0 100644
--- a/basegfx/source/curve/b2dcubicbezier.cxx
+++ b/basegfx/source/curve/b2dcubicbezier.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/curve/b2dcubicbezier.hxx>
#include <basegfx/vector/b2dvector.hxx>
diff --git a/basegfx/source/matrix/b2dhommatrix.cxx b/basegfx/source/matrix/b2dhommatrix.cxx
index 8538d2263657..2d89e41356a5 100644
--- a/basegfx/source/matrix/b2dhommatrix.cxx
+++ b/basegfx/source/matrix/b2dhommatrix.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/diagnose.h>
#include <rtl/instance.hxx>
diff --git a/basegfx/source/matrix/b2dhommatrixtools.cxx b/basegfx/source/matrix/b2dhommatrixtools.cxx
index 9fec0aed71f1..5666064d7933 100644
--- a/basegfx/source/matrix/b2dhommatrixtools.cxx
+++ b/basegfx/source/matrix/b2dhommatrixtools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <rtl/ustring.hxx>
@@ -96,6 +87,30 @@ namespace basegfx
return aRetval;
}
+ B2DHomMatrix createShearXB2DHomMatrix(double fShearX)
+ {
+ B2DHomMatrix aRetval;
+
+ if(!fTools::equalZero(fShearX))
+ {
+ aRetval.set(0, 1, fShearX);
+ }
+
+ return aRetval;
+ }
+
+ B2DHomMatrix createShearYB2DHomMatrix(double fShearY)
+ {
+ B2DHomMatrix aRetval;
+
+ if(!fTools::equalZero(fShearY))
+ {
+ aRetval.set(1, 0, fShearY);
+ }
+
+ return aRetval;
+ }
+
B2DHomMatrix createRotateB2DHomMatrix(double fRadiant)
{
B2DHomMatrix aRetval;
diff --git a/basegfx/source/matrix/b3dhommatrix.cxx b/basegfx/source/matrix/b3dhommatrix.cxx
index 31fd232ab29f..5a57b74bddf7 100644
--- a/basegfx/source/matrix/b3dhommatrix.cxx
+++ b/basegfx/source/matrix/b3dhommatrix.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/instance.hxx>
#include <basegfx/matrix/b3dhommatrix.hxx>
@@ -256,6 +247,19 @@ namespace basegfx
}
}
+ void B3DHomMatrix::shearXZ(double fSx, double fSz)
+ {
+ // #i76239# do not test againt 1.0, but against 0.0. We are talking about a value not on the diagonal (!)
+ if(!fTools::equalZero(fSx) || !fTools::equalZero(fSz))
+ {
+ Impl3DHomMatrix aShearXZMat;
+
+ aShearXZMat.set(0, 1, fSx);
+ aShearXZMat.set(2, 1, fSz);
+
+ mpImpl->doMulMatrix(aShearXZMat);
+ }
+ }
void B3DHomMatrix::frustum(double fLeft, double fRight, double fBottom, double fTop, double fNear, double fFar)
{
const double fZero(0.0);
diff --git a/basegfx/source/polygon/b2dlinegeometry.cxx b/basegfx/source/polygon/b2dlinegeometry.cxx
index 97372327a853..329b48653d98 100644
--- a/basegfx/source/polygon/b2dlinegeometry.cxx
+++ b/basegfx/source/polygon/b2dlinegeometry.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <cstdio>
#include <osl/diagnose.h>
@@ -37,6 +28,8 @@
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/curve/b2dcubicbezier.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
+#include <com/sun/star/drawing/LineCap.hpp>
+#include <basegfx/polygon/b2dpolypolygoncutter.hxx>
//////////////////////////////////////////////////////////////////////////////
@@ -341,7 +334,13 @@ namespace basegfx
}
}
- B2DPolygon createAreaGeometryForEdge(const B2DCubicBezier& rEdge, double fHalfLineWidth)
+ B2DPolygon createAreaGeometryForEdge(
+ const B2DCubicBezier& rEdge,
+ double fHalfLineWidth,
+ bool bStartRound,
+ bool bEndRound,
+ bool bStartSquare,
+ bool bEndSquare)
{
// create polygon for edge
// Unfortunately, while it would be geometrically correct to not add
@@ -354,31 +353,87 @@ namespace basegfx
const B2DVector aPureEdgeVector(rEdge.getEndPoint() - rEdge.getStartPoint());
const double fEdgeLength(aPureEdgeVector.getLength());
const bool bIsEdgeLengthZero(fTools::equalZero(fEdgeLength));
- const B2DVector aTangentA(rEdge.getTangent(0.0));
- const B2DVector aTangentB(rEdge.getTangent(1.0));
+ B2DVector aTangentA(rEdge.getTangent(0.0)); aTangentA.normalize();
+ B2DVector aTangentB(rEdge.getTangent(1.0)); aTangentB.normalize();
+ const B2DVector aNormalizedPerpendicularA(getPerpendicular(aTangentA));
+ const B2DVector aNormalizedPerpendicularB(getPerpendicular(aTangentB));
+
+ // create upper displacement vectors and check if they cut
+ const B2DVector aPerpendStartA(aNormalizedPerpendicularA * -fHalfLineWidth);
+ const B2DVector aPerpendEndA(aNormalizedPerpendicularB * -fHalfLineWidth);
+ double fCutA(0.0);
+ const tools::CutFlagValue aCutA(tools::findCut(
+ rEdge.getStartPoint(), aPerpendStartA,
+ rEdge.getEndPoint(), aPerpendEndA,
+ CUTFLAG_ALL, &fCutA));
+ const bool bCutA(CUTFLAG_NONE != aCutA);
+
+ // create lower displacement vectors and check if they cut
+ const B2DVector aPerpendStartB(aNormalizedPerpendicularA * fHalfLineWidth);
+ const B2DVector aPerpendEndB(aNormalizedPerpendicularB * fHalfLineWidth);
+ double fCutB(0.0);
+ const tools::CutFlagValue aCutB(tools::findCut(
+ rEdge.getEndPoint(), aPerpendEndB,
+ rEdge.getStartPoint(), aPerpendStartB,
+ CUTFLAG_ALL, &fCutB));
+ const bool bCutB(CUTFLAG_NONE != aCutB);
+
+ // check if cut happens
+ const bool bCut(bCutA || bCutB);
+ B2DPoint aCutPoint;
+
+ // create left edge
+ if(bStartRound || bStartSquare)
+ {
+ if(bStartRound)
+ {
+ basegfx::B2DPolygon aStartPolygon(tools::createHalfUnitCircle());
+
+ aStartPolygon.transform(
+ tools::createScaleShearXRotateTranslateB2DHomMatrix(
+ fHalfLineWidth, fHalfLineWidth,
+ 0.0,
+ atan2(aTangentA.getY(), aTangentA.getX()) + F_PI2,
+ rEdge.getStartPoint().getX(), rEdge.getStartPoint().getY()));
+ aBezierPolygon.append(aStartPolygon);
+ }
+ else // bStartSquare
+ {
+ const basegfx::B2DPoint aStart(rEdge.getStartPoint() - (aTangentA * fHalfLineWidth));
+
+ if(bCutB)
+ {
+ aBezierPolygon.append(rEdge.getStartPoint() + aPerpendStartB);
+ }
+
+ aBezierPolygon.append(aStart + aPerpendStartB);
+ aBezierPolygon.append(aStart + aPerpendStartA);
+
+ if(bCutA)
+ {
+ aBezierPolygon.append(rEdge.getStartPoint() + aPerpendStartA);
+ }
+ }
+ }
+ else
+ {
+ // append original in-between point
+ aBezierPolygon.append(rEdge.getStartPoint());
+ }
// create upper edge.
{
- // create displacement vectors and check if they cut
- const B2DVector aPerpendStart(getNormalizedPerpendicular(aTangentA) * -fHalfLineWidth);
- const B2DVector aPerpendEnd(getNormalizedPerpendicular(aTangentB) * -fHalfLineWidth);
- double fCut(0.0);
- const tools::CutFlagValue aCut(tools::findCut(
- rEdge.getStartPoint(), aPerpendStart,
- rEdge.getEndPoint(), aPerpendEnd,
- CUTFLAG_ALL, &fCut));
-
- if(CUTFLAG_NONE != aCut)
+ if(bCutA)
{
// calculate cut point and add
- const B2DPoint aCutPoint(rEdge.getStartPoint() + (aPerpendStart * fCut));
+ aCutPoint = rEdge.getStartPoint() + (aPerpendStartA * fCutA);
aBezierPolygon.append(aCutPoint);
}
else
{
// create scaled bezier segment
- const B2DPoint aStart(rEdge.getStartPoint() + aPerpendStart);
- const B2DPoint aEnd(rEdge.getEndPoint() + aPerpendEnd);
+ const B2DPoint aStart(rEdge.getStartPoint() + aPerpendStartA);
+ const B2DPoint aEnd(rEdge.getEndPoint() + aPerpendEndA);
const B2DVector aEdge(aEnd - aStart);
const double fLength(aEdge.getLength());
const double fScale(bIsEdgeLengthZero ? 1.0 : fLength / fEdgeLength);
@@ -390,31 +445,58 @@ namespace basegfx
}
}
- // append original in-between point
- aBezierPolygon.append(rEdge.getEndPoint());
+ // create right edge
+ if(bEndRound || bEndSquare)
+ {
+ if(bEndRound)
+ {
+ basegfx::B2DPolygon aEndPolygon(tools::createHalfUnitCircle());
+
+ aEndPolygon.transform(
+ tools::createScaleShearXRotateTranslateB2DHomMatrix(
+ fHalfLineWidth, fHalfLineWidth,
+ 0.0,
+ atan2(aTangentB.getY(), aTangentB.getX()) - F_PI2,
+ rEdge.getEndPoint().getX(), rEdge.getEndPoint().getY()));
+ aBezierPolygon.append(aEndPolygon);
+ }
+ else // bEndSquare
+ {
+ const basegfx::B2DPoint aEnd(rEdge.getEndPoint() + (aTangentB * fHalfLineWidth));
+
+ if(bCutA)
+ {
+ aBezierPolygon.append(rEdge.getEndPoint() + aPerpendEndA);
+ }
+
+ aBezierPolygon.append(aEnd + aPerpendEndA);
+ aBezierPolygon.append(aEnd + aPerpendEndB);
+
+ if(bCutB)
+ {
+ aBezierPolygon.append(rEdge.getEndPoint() + aPerpendEndB);
+ }
+ }
+ }
+ else
+ {
+ // append original in-between point
+ aBezierPolygon.append(rEdge.getEndPoint());
+ }
// create lower edge.
{
- // create displacement vectors and check if they cut
- const B2DVector aPerpendStart(getNormalizedPerpendicular(aTangentA) * fHalfLineWidth);
- const B2DVector aPerpendEnd(getNormalizedPerpendicular(aTangentB) * fHalfLineWidth);
- double fCut(0.0);
- const tools::CutFlagValue aCut(tools::findCut(
- rEdge.getEndPoint(), aPerpendEnd,
- rEdge.getStartPoint(), aPerpendStart,
- CUTFLAG_ALL, &fCut));
-
- if(CUTFLAG_NONE != aCut)
+ if(bCutB)
{
// calculate cut point and add
- const B2DPoint aCutPoint(rEdge.getEndPoint() + (aPerpendEnd * fCut));
+ aCutPoint = rEdge.getEndPoint() + (aPerpendEndB * fCutB);
aBezierPolygon.append(aCutPoint);
}
else
{
// create scaled bezier segment
- const B2DPoint aStart(rEdge.getEndPoint() + aPerpendEnd);
- const B2DPoint aEnd(rEdge.getStartPoint() + aPerpendStart);
+ const B2DPoint aStart(rEdge.getEndPoint() + aPerpendEndB);
+ const B2DPoint aEnd(rEdge.getStartPoint() + aPerpendStartB);
const B2DVector aEdge(aEnd - aStart);
const double fLength(aEdge.getLength());
const double fScale(bIsEdgeLengthZero ? 1.0 : fLength / fEdgeLength);
@@ -426,38 +508,165 @@ namespace basegfx
}
}
- // append original in-between point
- aBezierPolygon.append(rEdge.getStartPoint());
-
- // close and return
+ // close
aBezierPolygon.setClosed(true);
+
+ if(bStartRound || bEndRound)
+ {
+ // double points possible when round caps are used at start or end
+ aBezierPolygon.removeDoublePoints();
+ }
+
+ if(bCut && ((bStartRound || bStartSquare) && (bEndRound || bEndSquare)))
+ {
+ // When cut exists and both ends are extended with caps, a self-intersecting polygon
+ // is created; one cut point is known, but there is a 2nd one in the caps geometry.
+ // Solve by using tooling.
+ // Remark: This nearly never happens due to curve preparations to extreme points
+ // and maximum angle turning, but I constructed a test case and checkd that it is
+ // working propery.
+ const B2DPolyPolygon aTemp(tools::solveCrossovers(aBezierPolygon));
+ const sal_uInt32 nTempCount(aTemp.count());
+
+ if(nTempCount)
+ {
+ if(nTempCount > 1)
+ {
+ // as expected, multiple polygons (with same orientation). Remove
+ // the one which contains aCutPoint, or better take the one without
+ for (sal_uInt32 a(0); a < nTempCount; a++)
+ {
+ aBezierPolygon = aTemp.getB2DPolygon(a);
+
+ const sal_uInt32 nCandCount(aBezierPolygon.count());
+
+ for(sal_uInt32 b(0); b < nCandCount; b++)
+ {
+ if(aCutPoint.equal(aBezierPolygon.getB2DPoint(b)))
+ {
+ aBezierPolygon.clear();
+ break;
+ }
+ }
+
+ if(aBezierPolygon.count())
+ {
+ break;
+ }
+ }
+
+ OSL_ENSURE(aBezierPolygon.count(), "Error in line geometry creation, could not solve self-intersection (!)");
+ }
+ else
+ {
+ // none found, use result
+ aBezierPolygon = aTemp.getB2DPolygon(0);
+ }
+ }
+ else
+ {
+ OSL_ENSURE(false, "Error in line geometry creation, could not solve self-intersection (!)");
+ }
+ }
+
+ // return
return aBezierPolygon;
}
else
{
- // #i101491# emulate rEdge.getTangent call which applies a factor of 0.3 to the
- // full-length edge vector to have numerically exactly the same results as in the
- // createAreaGeometryForJoin implementation
- const B2DVector aEdgeTangent((rEdge.getEndPoint() - rEdge.getStartPoint()) * 0.3);
- const B2DVector aPerpendEdgeVector(getNormalizedPerpendicular(aEdgeTangent) * fHalfLineWidth);
+ // Get start and end point, create tangent and set to needed length
+ B2DVector aTangent(rEdge.getEndPoint() - rEdge.getStartPoint());
+ aTangent.setLength(fHalfLineWidth);
+
+ // prepare return value
B2DPolygon aEdgePolygon;
- // create upper edge
- aEdgePolygon.append(rEdge.getStartPoint() - aPerpendEdgeVector);
- aEdgePolygon.append(rEdge.getEndPoint() - aPerpendEdgeVector);
+ // buffered angle
+ double fAngle(0.0);
+ bool bAngle(false);
+
+ // buffered perpendicular
+ B2DVector aPerpend;
+ bool bPerpend(false);
+
+ // create left vertical
+ if(bStartRound)
+ {
+ aEdgePolygon = tools::createHalfUnitCircle();
+ fAngle = atan2(aTangent.getY(), aTangent.getX());
+ bAngle = true;
+ aEdgePolygon.transform(
+ tools::createScaleShearXRotateTranslateB2DHomMatrix(
+ fHalfLineWidth, fHalfLineWidth,
+ 0.0,
+ fAngle + F_PI2,
+ rEdge.getStartPoint().getX(), rEdge.getStartPoint().getY()));
+ }
+ else
+ {
+ aPerpend.setX(-aTangent.getY());
+ aPerpend.setY(aTangent.getX());
+ bPerpend = true;
+
+ if(bStartSquare)
+ {
+ const basegfx::B2DPoint aStart(rEdge.getStartPoint() - aTangent);
+
+ aEdgePolygon.append(aStart + aPerpend);
+ aEdgePolygon.append(aStart - aPerpend);
+ }
+ else
+ {
+ aEdgePolygon.append(rEdge.getStartPoint() + aPerpend);
+ aEdgePolygon.append(rEdge.getStartPoint()); // keep the in-between point for numerical reasons
+ aEdgePolygon.append(rEdge.getStartPoint() - aPerpend);
+ }
+ }
+
+ // create right vertical
+ if(bEndRound)
+ {
+ basegfx::B2DPolygon aEndPolygon(tools::createHalfUnitCircle());
- // append original in-between point
- aEdgePolygon.append(rEdge.getEndPoint());
+ if(!bAngle)
+ {
+ fAngle = atan2(aTangent.getY(), aTangent.getX());
+ }
- // create lower edge
- aEdgePolygon.append(rEdge.getEndPoint() + aPerpendEdgeVector);
- aEdgePolygon.append(rEdge.getStartPoint() + aPerpendEdgeVector);
+ aEndPolygon.transform(
+ tools::createScaleShearXRotateTranslateB2DHomMatrix(
+ fHalfLineWidth, fHalfLineWidth,
+ 0.0,
+ fAngle - F_PI2,
+ rEdge.getEndPoint().getX(), rEdge.getEndPoint().getY()));
+ aEdgePolygon.append(aEndPolygon);
+ }
+ else
+ {
+ if(!bPerpend)
+ {
+ aPerpend.setX(-aTangent.getY());
+ aPerpend.setY(aTangent.getX());
+ }
- // append original in-between point
- aEdgePolygon.append(rEdge.getStartPoint());
+ if(bEndSquare)
+ {
+ const basegfx::B2DPoint aEnd(rEdge.getEndPoint() + aTangent);
+
+ aEdgePolygon.append(aEnd - aPerpend);
+ aEdgePolygon.append(aEnd + aPerpend);
+ }
+ else
+ {
+ aEdgePolygon.append(rEdge.getEndPoint() - aPerpend);
+ aEdgePolygon.append(rEdge.getEndPoint()); // keep the in-between point for numerical reasons
+ aEdgePolygon.append(rEdge.getEndPoint() + aPerpend);
+ }
+ }
// close and return
aEdgePolygon.setClosed(true);
+
return aEdgePolygon;
}
}
@@ -577,6 +786,7 @@ namespace basegfx
const B2DPolygon& rCandidate,
double fHalfLineWidth,
B2DLineJoin eJoin,
+ com::sun::star::drawing::LineCap eCap,
double fMaxAllowedAngle,
double fMaxPartOfEdge,
double fMiterMinimumAngle)
@@ -621,6 +831,7 @@ namespace basegfx
B2DPolyPolygon aRetval;
const bool bIsClosed(aCandidate.isClosed());
const sal_uInt32 nEdgeCount(bIsClosed ? nPointCount : nPointCount - 1);
+ const bool bLineCap(!bIsClosed && com::sun::star::drawing::LineCap_BUTT != eCap);
if(nEdgeCount)
{
@@ -652,16 +863,16 @@ namespace basegfx
// check and create linejoin
if(bEventuallyCreateLineJoin && (bIsClosed || 0 != a))
{
- const B2DVector aTangentPrev(aPrev.getTangent(1.0));
- const B2DVector aTangentEdge(aEdge.getTangent(0.0));
+ B2DVector aTangentPrev(aPrev.getTangent(1.0)); aTangentPrev.normalize();
+ B2DVector aTangentEdge(aEdge.getTangent(0.0)); aTangentEdge.normalize();
B2VectorOrientation aOrientation(getOrientation(aTangentPrev, aTangentEdge));
if(ORIENTATION_NEUTRAL == aOrientation)
{
- // they are parallell or empty; if they are both not zero and point
- // in opposite direction, a half-circle is needed
- if(!aTangentPrev.equalZero() && !aTangentEdge.equalZero())
- {
+ // they are parallell or empty; if they are both not zero and point
+ // in opposite direction, a half-circle is needed
+ if(!aTangentPrev.equalZero() && !aTangentEdge.equalZero())
+ {
const double fAngle(fabs(aTangentPrev.angle(aTangentEdge)));
if(fTools::equal(fAngle, F_PI))
@@ -675,38 +886,76 @@ namespace basegfx
if(ORIENTATION_POSITIVE == aOrientation)
{
- const B2DVector aPerpendPrev(getNormalizedPerpendicular(aTangentPrev) * -fHalfLineWidth);
- const B2DVector aPerpendEdge(getNormalizedPerpendicular(aTangentEdge) * -fHalfLineWidth);
-
- aRetval.append(createAreaGeometryForJoin(
- aTangentPrev, aTangentEdge,
- aPerpendPrev, aPerpendEdge,
- aEdge.getStartPoint(), fHalfLineWidth,
- eJoin, fMiterMinimumAngle));
+ const B2DVector aPerpendPrev(getPerpendicular(aTangentPrev) * -fHalfLineWidth);
+ const B2DVector aPerpendEdge(getPerpendicular(aTangentEdge) * -fHalfLineWidth);
+
+ aRetval.append(
+ createAreaGeometryForJoin(
+ aTangentPrev,
+ aTangentEdge,
+ aPerpendPrev,
+ aPerpendEdge,
+ aEdge.getStartPoint(),
+ fHalfLineWidth,
+ eJoin,
+ fMiterMinimumAngle));
}
else if(ORIENTATION_NEGATIVE == aOrientation)
{
- const B2DVector aPerpendPrev(getNormalizedPerpendicular(aTangentPrev) * fHalfLineWidth);
- const B2DVector aPerpendEdge(getNormalizedPerpendicular(aTangentEdge) * fHalfLineWidth);
-
- aRetval.append(createAreaGeometryForJoin(
- aTangentEdge, aTangentPrev,
- aPerpendEdge, aPerpendPrev,
- aEdge.getStartPoint(), fHalfLineWidth,
- eJoin, fMiterMinimumAngle));
+ const B2DVector aPerpendPrev(getPerpendicular(aTangentPrev) * fHalfLineWidth);
+ const B2DVector aPerpendEdge(getPerpendicular(aTangentEdge) * fHalfLineWidth);
+
+ aRetval.append(
+ createAreaGeometryForJoin(
+ aTangentEdge,
+ aTangentPrev,
+ aPerpendEdge,
+ aPerpendPrev,
+ aEdge.getStartPoint(),
+ fHalfLineWidth,
+ eJoin,
+ fMiterMinimumAngle));
}
}
// create geometry for edge
- aRetval.append(createAreaGeometryForEdge(aEdge, fHalfLineWidth));
+ const bool bLast(a + 1 == nEdgeCount);
- // prepare next step
- if(bEventuallyCreateLineJoin)
+ if(bLineCap)
+ {
+ const bool bFirst(!a);
+
+ aRetval.append(
+ createAreaGeometryForEdge(
+ aEdge,
+ fHalfLineWidth,
+ bFirst && com::sun::star::drawing::LineCap_ROUND == eCap,
+ bLast && com::sun::star::drawing::LineCap_ROUND == eCap,
+ bFirst && com::sun::star::drawing::LineCap_SQUARE == eCap,
+ bLast && com::sun::star::drawing::LineCap_SQUARE == eCap));
+ }
+ else
{
- aPrev = aEdge;
+ aRetval.append(
+ createAreaGeometryForEdge(
+ aEdge,
+ fHalfLineWidth,
+ false,
+ false,
+ false,
+ false));
}
- aEdge.setStartPoint(aEdge.getEndPoint());
+ // prepare next step
+ if(!bLast)
+ {
+ if(bEventuallyCreateLineJoin)
+ {
+ aPrev = aEdge;
+ }
+
+ aEdge.setStartPoint(aEdge.getEndPoint());
+ }
}
}
diff --git a/basegfx/source/polygon/b2dpolygon.cxx b/basegfx/source/polygon/b2dpolygon.cxx
index 1dcaf9a3fa80..6b661f9d42ad 100644
--- a/basegfx/source/polygon/b2dpolygon.cxx
+++ b/basegfx/source/polygon/b2dpolygon.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/diagnose.h>
#include <basegfx/polygon/b2dpolygon.hxx>
@@ -255,7 +246,7 @@ class ControlVectorPair2D
basegfx::B2DVector maNextVector;
public:
- ControlVectorPair2D() {}
+ explicit ControlVectorPair2D() {}
const basegfx::B2DVector& getPrevVector() const
{
diff --git a/basegfx/source/polygon/b2dpolygonclipper.cxx b/basegfx/source/polygon/b2dpolygonclipper.cxx
index 7aded18f9879..ba09e76c910d 100644
--- a/basegfx/source/polygon/b2dpolygonclipper.cxx
+++ b/basegfx/source/polygon/b2dpolygonclipper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b2dpolygonclipper.hxx>
#include <osl/diagnose.h>
diff --git a/basegfx/source/polygon/b2dpolygoncutandtouch.cxx b/basegfx/source/polygon/b2dpolygoncutandtouch.cxx
index 58f6b92be5af..3919a75bcac1 100644
--- a/basegfx/source/polygon/b2dpolygoncutandtouch.cxx
+++ b/basegfx/source/polygon/b2dpolygoncutandtouch.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b2dpolygoncutandtouch.hxx>
#include <osl/diagnose.h>
diff --git a/basegfx/source/polygon/b2dpolygontools.cxx b/basegfx/source/polygon/b2dpolygontools.cxx
index ab4b84874c9d..926ff90b5aad 100644
--- a/basegfx/source/polygon/b2dpolygontools.cxx
+++ b/basegfx/source/polygon/b2dpolygontools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/numeric/ftools.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
@@ -1778,6 +1769,33 @@ namespace basegfx
return aUnitCircle;
}
+ B2DPolygon createHalfUnitCircle()
+ {
+ static B2DPolygon aUnitHalfCircle;
+
+ if(!aUnitHalfCircle.count())
+ {
+ const double fKappa((M_SQRT2 - 1.0) * 4.0 / 3.0);
+ const double fScaledKappa(fKappa * (1.0 / STEPSPERQUARTER));
+ const B2DHomMatrix aRotateMatrix(createRotateB2DHomMatrix(F_PI2 / STEPSPERQUARTER));
+ B2DPoint aPoint(1.0, 0.0);
+ B2DPoint aForward(1.0, fScaledKappa);
+ B2DPoint aBackward(1.0, -fScaledKappa);
+
+ aUnitHalfCircle.append(aPoint);
+
+ for(sal_uInt32 a(0); a < STEPSPERQUARTER * 2; a++)
+ {
+ aPoint *= aRotateMatrix;
+ aBackward *= aRotateMatrix;
+ aUnitHalfCircle.appendBezierSegment(aForward, aBackward, aPoint);
+ aForward *= aRotateMatrix;
+ }
+ }
+
+ return aUnitHalfCircle;
+ }
+
B2DPolygon createPolygonFromUnitCircle(sal_uInt32 nStartQuadrant)
{
switch(nStartQuadrant % 4)
diff --git a/basegfx/source/polygon/b2dpolygontriangulator.cxx b/basegfx/source/polygon/b2dpolygontriangulator.cxx
index a149f5da6210..811ee607bb9c 100644
--- a/basegfx/source/polygon/b2dpolygontriangulator.cxx
+++ b/basegfx/source/polygon/b2dpolygontriangulator.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b2dpolygontriangulator.hxx>
#include <osl/diagnose.h>
diff --git a/basegfx/source/polygon/b2dpolypolygon.cxx b/basegfx/source/polygon/b2dpolypolygon.cxx
index da5842084bea..a8eb1bcdbfe0 100644
--- a/basegfx/source/polygon/b2dpolypolygon.cxx
+++ b/basegfx/source/polygon/b2dpolypolygon.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b2dpolypolygon.hxx>
#include <osl/diagnose.h>
@@ -41,9 +32,7 @@
class ImplB2DPolyPolygon
{
- typedef ::std::vector< basegfx::B2DPolygon > PolygonVector;
-
- PolygonVector maPolygons;
+ basegfx::B2DPolygonVector maPolygons;
public:
ImplB2DPolyPolygon() : maPolygons()
@@ -83,7 +72,7 @@ public:
if(nCount)
{
// add nCount copies of rPolygon
- PolygonVector::iterator aIndex(maPolygons.begin());
+ basegfx::B2DPolygonVector::iterator aIndex(maPolygons.begin());
if( nIndex )
aIndex += nIndex;
maPolygons.insert(aIndex, nCount, rPolygon);
@@ -92,8 +81,8 @@ public:
void insert(sal_uInt32 nIndex, const basegfx::B2DPolyPolygon& rPolyPolygon)
{
- // add all polygons from rPolyPolygon
- PolygonVector::iterator aIndex(maPolygons.begin());
+ // add nCount polygons from rPolyPolygon
+ basegfx::B2DPolygonVector::iterator aIndex(maPolygons.begin());
if( nIndex )
aIndex += nIndex;
maPolygons.insert(aIndex, rPolyPolygon.begin(), rPolyPolygon.end());
@@ -104,9 +93,9 @@ public:
if(nCount)
{
// remove polygon data
- PolygonVector::iterator aStart(maPolygons.begin());
+ basegfx::B2DPolygonVector::iterator aStart(maPolygons.begin());
aStart += nIndex;
- const PolygonVector::iterator aEnd(aStart + nCount);
+ const basegfx::B2DPolygonVector::iterator aEnd(aStart + nCount);
maPolygons.erase(aStart, aEnd);
}
diff --git a/basegfx/source/polygon/b2dpolypolygoncutter.cxx b/basegfx/source/polygon/b2dpolypolygoncutter.cxx
index 2a7361a7eb28..f30d9228c226 100644
--- a/basegfx/source/polygon/b2dpolypolygoncutter.cxx
+++ b/basegfx/source/polygon/b2dpolypolygoncutter.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/diagnose.h>
#include <basegfx/numeric/ftools.hxx>
@@ -657,6 +648,14 @@ namespace basegfx
//////////////////////////////////////////////////////////////////////////////
+ B2DPolyPolygon solveCrossovers(const B2DPolygon& rCandidate)
+ {
+ solver aSolver(rCandidate);
+ return aSolver.getB2DPolyPolygon();
+ }
+
+ //////////////////////////////////////////////////////////////////////////////
+
B2DPolyPolygon stripNeutralPolygons(const B2DPolyPolygon& rCandidate)
{
B2DPolyPolygon aRetval;
@@ -676,6 +675,94 @@ namespace basegfx
//////////////////////////////////////////////////////////////////////////////
+ B2DPolyPolygon createNonzeroConform(const B2DPolyPolygon& rCandidate)
+ {
+ B2DPolyPolygon aCandidate;
+
+ // remove all self-intersections and intersections
+ if(rCandidate.count() == 1)
+ {
+ aCandidate = basegfx::tools::solveCrossovers(rCandidate.getB2DPolygon(0));
+ }
+ else
+ {
+ aCandidate = basegfx::tools::solveCrossovers(rCandidate);
+ }
+
+ // cleanup evtl. neutral polygons
+ aCandidate = basegfx::tools::stripNeutralPolygons(aCandidate);
+
+ // remove all polygons which have the same orientation as the polygon they are directly contained in
+ const sal_uInt32 nCount(aCandidate.count());
+
+ if(nCount > 1)
+ {
+ sal_uInt32 a, b;
+ ::std::vector< StripHelper > aHelpers;
+ aHelpers.resize(nCount);
+
+ for(a = 0; a < nCount; a++)
+ {
+ const B2DPolygon aCand(aCandidate.getB2DPolygon(a));
+ StripHelper* pNewHelper = &(aHelpers[a]);
+ pNewHelper->maRange = tools::getRange(aCand);
+ pNewHelper->meOrinetation = tools::getOrientation(aCand);
+
+ // initialize with own orientation
+ pNewHelper->mnDepth = (ORIENTATION_NEGATIVE == pNewHelper->meOrinetation ? -1 : 1);
+ }
+
+ for(a = 0; a < nCount - 1; a++)
+ {
+ const B2DPolygon aCandA(aCandidate.getB2DPolygon(a));
+ StripHelper& rHelperA = aHelpers[a];
+
+ for(b = a + 1; b < nCount; b++)
+ {
+ const B2DPolygon aCandB(aCandidate.getB2DPolygon(b));
+ StripHelper& rHelperB = aHelpers[b];
+ const bool bAInB(rHelperB.maRange.isInside(rHelperA.maRange) && tools::isInside(aCandB, aCandA, true));
+
+ if(bAInB)
+ {
+ // A is inside B, add orientation of B to A
+ rHelperA.mnDepth += (ORIENTATION_NEGATIVE == rHelperB.meOrinetation ? -1 : 1);
+ }
+
+ const bool bBInA(rHelperA.maRange.isInside(rHelperB.maRange) && tools::isInside(aCandA, aCandB, true));
+
+ if(bBInA)
+ {
+ // B is inside A, add orientation of A to B
+ rHelperB.mnDepth += (ORIENTATION_NEGATIVE == rHelperA.meOrinetation ? -1 : 1);
+ }
+ }
+ }
+
+ const B2DPolyPolygon aSource(aCandidate);
+ aCandidate.clear();
+
+ for(a = 0L; a < nCount; a++)
+ {
+ const StripHelper& rHelper = aHelpers[a];
+ // for contained unequal oriented polygons sum will be 0
+ // for contained equal it will be >=2 or <=-2
+ // for free polygons (not contained) it will be 1 or -1
+ // -> accept all which are >=-1 && <= 1
+ bool bAcceptEntry(rHelper.mnDepth >= -1 && rHelper.mnDepth <= 1);
+
+ if(bAcceptEntry)
+ {
+ aCandidate.append(aSource.getB2DPolygon(a));
+ }
+ }
+ }
+
+ return aCandidate;
+ }
+
+ //////////////////////////////////////////////////////////////////////////////
+
B2DPolyPolygon stripDispensablePolygons(const B2DPolyPolygon& rCandidate, bool bKeepAboveZero)
{
const sal_uInt32 nCount(rCandidate.count());
@@ -897,15 +984,15 @@ namespace basegfx
}
}
- B2DPolyPolygon mergeToSinglePolyPolygon(const std::vector< basegfx::B2DPolyPolygon >& rInput)
+ B2DPolyPolygon mergeToSinglePolyPolygon(const B2DPolyPolygonVector& rInput)
{
- std::vector< basegfx::B2DPolyPolygon > aInput(rInput);
+ B2DPolyPolygonVector aInput(rInput);
// first step: prepareForPolygonOperation and simple merge of non-overlapping
// PolyPolygons for speedup; this is possible for the wanted OR-operation
if(!aInput.empty())
{
- std::vector< basegfx::B2DPolyPolygon > aResult;
+ B2DPolyPolygonVector aResult;
aResult.reserve(aInput.size());
for(sal_uInt32 a(0); a < aInput.size(); a++)
@@ -947,7 +1034,7 @@ namespace basegfx
// second step: melt pairwise to a single PolyPolygon
while(aInput.size() > 1)
{
- std::vector< basegfx::B2DPolyPolygon > aResult;
+ B2DPolyPolygonVector aResult;
aResult.reserve((aInput.size() / 2) + 1);
for(sal_uInt32 a(0); a < aInput.size(); a += 2)
diff --git a/basegfx/source/polygon/b2dpolypolygontools.cxx b/basegfx/source/polygon/b2dpolypolygontools.cxx
index d786a4241dbd..8a5337bfe4b1 100644
--- a/basegfx/source/polygon/b2dpolypolygontools.cxx
+++ b/basegfx/source/polygon/b2dpolypolygontools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b2dpolypolygontools.hxx>
#include <osl/diagnose.h>
diff --git a/basegfx/source/polygon/b2dsvgpolypolygon.cxx b/basegfx/source/polygon/b2dsvgpolypolygon.cxx
index 0c9e3bfcc3e8..b73154308082 100644
--- a/basegfx/source/polygon/b2dsvgpolypolygon.cxx
+++ b/basegfx/source/polygon/b2dsvgpolypolygon.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b2dpolygontools.hxx>
#include <basegfx/polygon/b2dpolypolygontools.hxx>
@@ -41,9 +32,9 @@ namespace basegfx
{
namespace
{
- void lcl_skipSpaces(sal_Int32& io_rPos,
- const ::rtl::OUString& rStr,
- const sal_Int32 nLen)
+ void lcl_skipSpaces(sal_Int32& io_rPos,
+ const OUString& rStr,
+ const sal_Int32 nLen)
{
while( io_rPos < nLen &&
sal_Unicode(' ') == rStr[io_rPos] )
@@ -52,9 +43,9 @@ namespace basegfx
}
}
- void lcl_skipSpacesAndCommas(sal_Int32& io_rPos,
- const ::rtl::OUString& rStr,
- const sal_Int32 nLen)
+ void lcl_skipSpacesAndCommas(sal_Int32& io_rPos,
+ const OUString& rStr,
+ const sal_Int32 nLen)
{
while(io_rPos < nLen
&& (sal_Unicode(' ') == rStr[io_rPos] || sal_Unicode(',') == rStr[io_rPos]))
@@ -73,18 +64,18 @@ namespace basegfx
return bPredicate;
}
- inline bool lcl_isOnNumberChar(const ::rtl::OUString& rStr, const sal_Int32 nPos, bool bSignAllowed = true)
+ inline bool lcl_isOnNumberChar(const OUString& rStr, const sal_Int32 nPos, bool bSignAllowed = true)
{
return lcl_isOnNumberChar(rStr[nPos],
bSignAllowed);
}
- bool lcl_getDoubleChar(double& o_fRetval,
- sal_Int32& io_rPos,
- const ::rtl::OUString& rStr)
+ bool lcl_getDoubleChar(double& o_fRetval,
+ sal_Int32& io_rPos,
+ const OUString& rStr)
{
sal_Unicode aChar( rStr[io_rPos] );
- ::rtl::OUStringBuffer sNumberString;
+ OUStringBuffer sNumberString;
bool separator_seen=false;
if(sal_Unicode('+') == aChar || sal_Unicode('-') == aChar)
@@ -133,10 +124,10 @@ namespace basegfx
return false;
}
- bool lcl_importDoubleAndSpaces( double& o_fRetval,
- sal_Int32& io_rPos,
- const ::rtl::OUString& rStr,
- const sal_Int32 nLen )
+ bool lcl_importDoubleAndSpaces( double& o_fRetval,
+ sal_Int32& io_rPos,
+ const OUString& rStr,
+ const sal_Int32 nLen )
{
if( !lcl_getDoubleChar(o_fRetval, io_rPos, rStr) )
return false;
@@ -146,10 +137,10 @@ namespace basegfx
return true;
}
- bool lcl_importFlagAndSpaces(sal_Int32& o_nRetval,
- sal_Int32& io_rPos,
- const ::rtl::OUString& rStr,
- const sal_Int32 nLen)
+ bool lcl_importFlagAndSpaces(sal_Int32& o_nRetval,
+ sal_Int32& io_rPos,
+ const OUString& rStr,
+ const sal_Int32 nLen)
{
sal_Unicode aChar( rStr[io_rPos] );
@@ -171,14 +162,14 @@ namespace basegfx
return true;
}
- void lcl_putNumberChar( ::rtl::OUStringBuffer& rStr,
- double fValue )
+ void lcl_putNumberChar( OUStringBuffer& rStr,
+ double fValue )
{
rStr.append( fValue );
}
- void lcl_putNumberCharWithSpace( ::rtl::OUStringBuffer& rStr,
- double fValue,
+ void lcl_putNumberCharWithSpace( OUStringBuffer& rStr,
+ double fValue,
double fOldValue,
bool bUseRelativeCoordinates )
{
@@ -206,7 +197,7 @@ namespace basegfx
}
}
- bool importFromSvgD(B2DPolyPolygon& o_rPolyPolygon, const ::rtl::OUString& rSvgDStatement, bool bWrongPositionAfterZ)
+ bool importFromSvgD(B2DPolyPolygon& o_rPolyPolygon, const OUString& rSvgDStatement, bool bWrongPositionAfterZ)
{
o_rPolyPolygon.clear();
const sal_Int32 nLen(rSvgDStatement.getLength());
@@ -789,7 +780,7 @@ namespace basegfx
}
bool importFromSvgPoints( B2DPolygon& o_rPoly,
- const ::rtl::OUString& rSvgPointsAttribute )
+ const OUString& rSvgPointsAttribute )
{
o_rPoly.clear();
const sal_Int32 nLen(rSvgPointsAttribute.getLength());
@@ -814,13 +805,13 @@ namespace basegfx
return true;
}
- ::rtl::OUString exportToSvgD(
+ OUString exportToSvgD(
const B2DPolyPolygon& rPolyPolygon,
bool bUseRelativeCoordinates,
bool bDetectQuadraticBeziers)
{
const sal_uInt32 nCount(rPolyPolygon.count());
- ::rtl::OUStringBuffer aResult;
+ OUStringBuffer aResult;
B2DPoint aCurrentSVGPosition(0.0, 0.0); // SVG assumes (0,0) as the initial current point
for(sal_uInt32 i(0); i < nCount; i++)
diff --git a/basegfx/source/polygon/b2dtrapezoid.cxx b/basegfx/source/polygon/b2dtrapezoid.cxx
index ecd26ccfb6ce..2392a7ad7eea 100644
--- a/basegfx/source/polygon/b2dtrapezoid.cxx
+++ b/basegfx/source/polygon/b2dtrapezoid.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b2dtrapezoid.hxx>
#include <basegfx/range/b1drange.hxx>
diff --git a/basegfx/source/polygon/b3dpolygon.cxx b/basegfx/source/polygon/b3dpolygon.cxx
index f61debfbe880..390fa77f0f7f 100644
--- a/basegfx/source/polygon/b3dpolygon.cxx
+++ b/basegfx/source/polygon/b3dpolygon.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/diagnose.h>
#include <basegfx/polygon/b3dpolygon.hxx>
diff --git a/basegfx/source/polygon/b3dpolygontools.cxx b/basegfx/source/polygon/b3dpolygontools.cxx
index e5893e169f95..fb2def2dc376 100644
--- a/basegfx/source/polygon/b3dpolygontools.cxx
+++ b/basegfx/source/polygon/b3dpolygontools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/diagnose.h>
#include <basegfx/polygon/b3dpolygontools.hxx>
@@ -152,56 +143,59 @@ namespace basegfx
const B3DPoint aNextPoint(rCandidate.getB3DPoint(nNextIndex));
const double fEdgeLength(B3DVector(aNextPoint - aCurrentPoint).getLength());
- while(fTools::less(fDotDashMovingLength, fEdgeLength))
+ if(!fTools::equalZero(fEdgeLength))
{
- // new split is inside edge, create and append snippet [fLastDotDashMovingLength, fDotDashMovingLength]
- const bool bHandleLine(bIsLine && pLineTarget);
- const bool bHandleGap(!bIsLine && pGapTarget);
-
- if(bHandleLine || bHandleGap)
+ while(fTools::less(fDotDashMovingLength, fEdgeLength))
{
- if(!aSnippet.count())
+ // new split is inside edge, create and append snippet [fLastDotDashMovingLength, fDotDashMovingLength]
+ const bool bHandleLine(bIsLine && pLineTarget);
+ const bool bHandleGap(!bIsLine && pGapTarget);
+
+ if(bHandleLine || bHandleGap)
{
- aSnippet.append(interpolate(aCurrentPoint, aNextPoint, fLastDotDashMovingLength / fEdgeLength));
- }
+ if(!aSnippet.count())
+ {
+ aSnippet.append(interpolate(aCurrentPoint, aNextPoint, fLastDotDashMovingLength / fEdgeLength));
+ }
- aSnippet.append(interpolate(aCurrentPoint, aNextPoint, fDotDashMovingLength / fEdgeLength));
+ aSnippet.append(interpolate(aCurrentPoint, aNextPoint, fDotDashMovingLength / fEdgeLength));
- if(bHandleLine)
- {
- pLineTarget->append(aSnippet);
- }
- else
- {
- pGapTarget->append(aSnippet);
+ if(bHandleLine)
+ {
+ pLineTarget->append(aSnippet);
+ }
+ else
+ {
+ pGapTarget->append(aSnippet);
+ }
+
+ aSnippet.clear();
}
- aSnippet.clear();
+ // prepare next DotDashArray step and flip line/gap flag
+ fLastDotDashMovingLength = fDotDashMovingLength;
+ fDotDashMovingLength += rDotDashArray[(++nDotDashIndex) % nDotDashCount];
+ bIsLine = !bIsLine;
}
- // prepare next DotDashArray step and flip line/gap flag
- fLastDotDashMovingLength = fDotDashMovingLength;
- fDotDashMovingLength += rDotDashArray[(++nDotDashIndex) % nDotDashCount];
- bIsLine = !bIsLine;
- }
-
- // append snippet [fLastDotDashMovingLength, fEdgeLength]
- const bool bHandleLine(bIsLine && pLineTarget);
- const bool bHandleGap(!bIsLine && pGapTarget);
+ // append snippet [fLastDotDashMovingLength, fEdgeLength]
+ const bool bHandleLine(bIsLine && pLineTarget);
+ const bool bHandleGap(!bIsLine && pGapTarget);
- if(bHandleLine || bHandleGap)
- {
- if(!aSnippet.count())
+ if(bHandleLine || bHandleGap)
{
- aSnippet.append(interpolate(aCurrentPoint, aNextPoint, fLastDotDashMovingLength / fEdgeLength));
+ if(!aSnippet.count())
+ {
+ aSnippet.append(interpolate(aCurrentPoint, aNextPoint, fLastDotDashMovingLength / fEdgeLength));
+ }
+
+ aSnippet.append(aNextPoint);
}
- aSnippet.append(aNextPoint);
+ // prepare move to next edge
+ fDotDashMovingLength -= fEdgeLength;
}
- // prepare move to next edge
- fDotDashMovingLength -= fEdgeLength;
-
// prepare next edge step (end point gets new start point)
aCurrentPoint = aNextPoint;
}
diff --git a/basegfx/source/polygon/b3dpolypolygon.cxx b/basegfx/source/polygon/b3dpolypolygon.cxx
index 762400ef19a5..3fc6d7b13a37 100644
--- a/basegfx/source/polygon/b3dpolypolygon.cxx
+++ b/basegfx/source/polygon/b3dpolypolygon.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/diagnose.h>
#include <basegfx/polygon/b3dpolypolygon.hxx>
diff --git a/basegfx/source/polygon/b3dpolypolygontools.cxx b/basegfx/source/polygon/b3dpolypolygontools.cxx
index 394c093c5e5f..660d43288ae2 100644
--- a/basegfx/source/polygon/b3dpolypolygontools.cxx
+++ b/basegfx/source/polygon/b3dpolypolygontools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/polygon/b3dpolypolygontools.hxx>
#include <basegfx/range/b3drange.hxx>
@@ -37,6 +28,11 @@
#include <osl/mutex.hxx>
//////////////////////////////////////////////////////////////////////////////
+// predefines
+#define nMinSegments sal_uInt32(1)
+#define nMaxSegments sal_uInt32(512)
+
+//////////////////////////////////////////////////////////////////////////////
namespace basegfx
{
@@ -235,20 +231,16 @@ namespace basegfx
nHorSeg = fround(fabs(fHorStop - fHorStart) / (F_2PI / 24.0));
}
- if(!nHorSeg)
- {
- nHorSeg = 1L;
- }
+ // min/max limitations
+ nHorSeg = ::std::min(nMaxSegments, ::std::max(nMinSegments, nHorSeg));
if(!nVerSeg)
{
nVerSeg = fround(fabs(fVerStop - fVerStart) / (F_2PI / 24.0));
}
- if(!nVerSeg)
- {
- nVerSeg = 1L;
- }
+ // min/max limitations
+ nVerSeg = ::std::min(nMaxSegments, ::std::max(nMinSegments, nVerSeg));
// create constants
const double fVerDiffPerStep((fVerStop - fVerStart) / (double)nVerSeg);
@@ -338,20 +330,16 @@ namespace basegfx
nHorSeg = fround(fabs(fHorStop - fHorStart) / (F_2PI / 24.0));
}
- if(!nHorSeg)
- {
- nHorSeg = 1L;
- }
+ // min/max limitations
+ nHorSeg = ::std::min(nMaxSegments, ::std::max(nMinSegments, nHorSeg));
if(!nVerSeg)
{
nVerSeg = fround(fabs(fVerStop - fVerStart) / (F_2PI / 24.0));
}
- if(!nVerSeg)
- {
- nVerSeg = 1L;
- }
+ // min/max limitations
+ nVerSeg = ::std::min(nMaxSegments, ::std::max(nMinSegments, nVerSeg));
// vertical loop
for(sal_uInt32 a(0L); a < nVerSeg; a++)
diff --git a/basegfx/source/range/b1drange.cxx b/basegfx/source/range/b1drange.cxx
index 0d6bd142e405..e01ecb9b000e 100644
--- a/basegfx/source/range/b1drange.cxx
+++ b/basegfx/source/range/b1drange.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/range/b1drange.hxx>
#include <basegfx/range/b1irange.hxx>
@@ -34,6 +25,4 @@ namespace basegfx
{
} // end of namespace basegfx
-// eof
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basegfx/source/range/b2dpolyrange.cxx b/basegfx/source/range/b2dpolyrange.cxx
index 0cd3abde3f22..90a24d876b12 100644
--- a/basegfx/source/range/b2dpolyrange.cxx
+++ b/basegfx/source/range/b2dpolyrange.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/range/b2dpolyrange.hxx>
diff --git a/basegfx/source/range/b2drangeclipper.cxx b/basegfx/source/range/b2drangeclipper.cxx
index 273b4ab70b92..77dc5c030aa5 100644
--- a/basegfx/source/range/b2drangeclipper.cxx
+++ b/basegfx/source/range/b2drangeclipper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/math.hxx>
diff --git a/basegfx/source/range/b2xrange.cxx b/basegfx/source/range/b2xrange.cxx
index ef3f2b5cf0d5..ec40c2538bb5 100644
--- a/basegfx/source/range/b2xrange.cxx
+++ b/basegfx/source/range/b2xrange.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/range/b2drange.hxx>
#include <basegfx/range/b2irange.hxx>
diff --git a/basegfx/source/range/b3drange.cxx b/basegfx/source/range/b3drange.cxx
index 892fd99015a6..b07fcb5771f6 100644
--- a/basegfx/source/range/b3drange.cxx
+++ b/basegfx/source/range/b3drange.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/range/b3drange.hxx>
#include <basegfx/range/b3irange.hxx>
diff --git a/basegfx/source/raster/rasterconvert3d.cxx b/basegfx/source/raster/rasterconvert3d.cxx
index c4fe29ae35cb..c2c92361f9cf 100644
--- a/basegfx/source/raster/rasterconvert3d.cxx
+++ b/basegfx/source/raster/rasterconvert3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/raster/rasterconvert3d.hxx>
#include <basegfx/polygon/b3dpolygon.hxx>
diff --git a/basegfx/source/tools/b2dclipstate.cxx b/basegfx/source/tools/b2dclipstate.cxx
index 9a46e2f5c17c..bf77c2536aaa 100644
--- a/basegfx/source/tools/b2dclipstate.cxx
+++ b/basegfx/source/tools/b2dclipstate.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tools/b2dclipstate.hxx>
diff --git a/basegfx/source/tools/canvastools.cxx b/basegfx/source/tools/canvastools.cxx
index d5fed18abca7..efcf16c148d0 100644
--- a/basegfx/source/tools/canvastools.cxx
+++ b/basegfx/source/tools/canvastools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/geometry/RealSize2D.hpp>
#include <com/sun/star/geometry/RealPoint2D.hpp>
@@ -329,7 +320,7 @@ namespace basegfx
if( !xLinePoly.is() )
{
throw lang::IllegalArgumentException(
- ::rtl::OUString(
+ OUString(
"basegfx::unotools::b2DPolyPolygonFromXPolyPolygon2D(): Invalid input"
"poly-polygon, cannot retrieve vertex data"),
uno::Reference< uno::XInterface >(),
diff --git a/basegfx/source/tools/gradienttools.cxx b/basegfx/source/tools/gradienttools.cxx
index a56d334654a8..f2e65774ba02 100644
--- a/basegfx/source/tools/gradienttools.cxx
+++ b/basegfx/source/tools/gradienttools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tools/gradienttools.hxx>
#include <basegfx/point/b2dpoint.hxx>
diff --git a/basegfx/source/tools/keystoplerp.cxx b/basegfx/source/tools/keystoplerp.cxx
index 4b874766709b..ee432a895898 100644
--- a/basegfx/source/tools/keystoplerp.cxx
+++ b/basegfx/source/tools/keystoplerp.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "basegfx/tools/keystoplerp.hxx"
#include <com/sun/star/uno/Sequence.hxx>
diff --git a/basegfx/source/tools/unopolypolygon.cxx b/basegfx/source/tools/unopolypolygon.cxx
index d209be7309c4..aa93b41428ff 100644
--- a/basegfx/source/tools/unopolypolygon.cxx
+++ b/basegfx/source/tools/unopolypolygon.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/geometry/AffineMatrix2D.hpp>
#include <com/sun/star/rendering/RenderState.hpp>
@@ -113,10 +104,8 @@ namespace unotools
// found - contract violation.
if( !xLinePoly.is() )
throw lang::IllegalArgumentException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "UnoPolyPolygon::addPolyPolygon(): Invalid input "
- "poly-polygon, cannot retrieve vertex data")),
+ "UnoPolyPolygon::addPolyPolygon(): Invalid input "
+ "poly-polygon, cannot retrieve vertex data",
static_cast<cppu::OWeakObject*>(this), 1);
aSrcPoly = unotools::polyPolygonFromPoint2DSequenceSequence(
@@ -447,20 +436,20 @@ namespace unotools
#define IMPLEMENTATION_NAME "gfx::internal::UnoPolyPolygon"
#define SERVICE_NAME "com.sun.star.rendering.PolyPolygon2D"
- ::rtl::OUString SAL_CALL UnoPolyPolygon::getImplementationName() throw( uno::RuntimeException )
+ OUString SAL_CALL UnoPolyPolygon::getImplementationName() throw( uno::RuntimeException )
{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( IMPLEMENTATION_NAME ) );
+ return OUString( IMPLEMENTATION_NAME );
}
- sal_Bool SAL_CALL UnoPolyPolygon::supportsService( const ::rtl::OUString& ServiceName ) throw( uno::RuntimeException )
+ sal_Bool SAL_CALL UnoPolyPolygon::supportsService( const OUString& ServiceName ) throw( uno::RuntimeException )
{
return ServiceName == SERVICE_NAME;
}
- uno::Sequence< ::rtl::OUString > SAL_CALL UnoPolyPolygon::getSupportedServiceNames() throw( uno::RuntimeException )
+ uno::Sequence< OUString > SAL_CALL UnoPolyPolygon::getSupportedServiceNames() throw( uno::RuntimeException )
{
- uno::Sequence< ::rtl::OUString > aRet(1);
- aRet[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( SERVICE_NAME ) );
+ uno::Sequence< OUString > aRet(1);
+ aRet[0] = SERVICE_NAME ;
return aRet;
}
diff --git a/basegfx/source/tools/unotools.cxx b/basegfx/source/tools/unotools.cxx
index 6febfd3d527e..fda5f0ad8d3b 100644
--- a/basegfx/source/tools/unotools.cxx
+++ b/basegfx/source/tools/unotools.cxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * Portions Copright 2011 Thorsten Behrens <tbehrens@novell.com>
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/drawing/PolyPolygonBezierCoords.hpp>
#include <com/sun/star/drawing/PointSequence.hpp>
diff --git a/basegfx/source/tuple/b2dtuple.cxx b/basegfx/source/tuple/b2dtuple.cxx
index 04fd5510bd6a..14be75840ed9 100644
--- a/basegfx/source/tuple/b2dtuple.cxx
+++ b/basegfx/source/tuple/b2dtuple.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tuple/b2dtuple.hxx>
#include <basegfx/numeric/ftools.hxx>
diff --git a/basegfx/source/tuple/b2i64tuple.cxx b/basegfx/source/tuple/b2i64tuple.cxx
index 9b97c4ba98e5..ef37869e63d9 100644
--- a/basegfx/source/tuple/b2i64tuple.cxx
+++ b/basegfx/source/tuple/b2i64tuple.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tuple/b2i64tuple.hxx>
#include <rtl/instance.hxx>
@@ -35,6 +26,4 @@ namespace basegfx
{
} // end of namespace basegfx
-// eof
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basegfx/source/tuple/b2ituple.cxx b/basegfx/source/tuple/b2ituple.cxx
index 37c537aeb450..786699b05d23 100644
--- a/basegfx/source/tuple/b2ituple.cxx
+++ b/basegfx/source/tuple/b2ituple.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tuple/b2ituple.hxx>
#include <basegfx/tuple/b2dtuple.hxx>
diff --git a/basegfx/source/tuple/b3dtuple.cxx b/basegfx/source/tuple/b3dtuple.cxx
index 73117814f9c2..4fd31fc9e17d 100644
--- a/basegfx/source/tuple/b3dtuple.cxx
+++ b/basegfx/source/tuple/b3dtuple.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tuple/b3dtuple.hxx>
#include <rtl/instance.hxx>
diff --git a/basegfx/source/tuple/b3i64tuple.cxx b/basegfx/source/tuple/b3i64tuple.cxx
index 0ee8cdffa8ec..8bb7c082ddcd 100644
--- a/basegfx/source/tuple/b3i64tuple.cxx
+++ b/basegfx/source/tuple/b3i64tuple.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tuple/b3i64tuple.hxx>
#include <rtl/instance.hxx>
diff --git a/basegfx/source/tuple/b3ituple.cxx b/basegfx/source/tuple/b3ituple.cxx
index aff58e8b653e..f0409215791d 100644
--- a/basegfx/source/tuple/b3ituple.cxx
+++ b/basegfx/source/tuple/b3ituple.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/tuple/b3ituple.hxx>
#include <rtl/instance.hxx>
@@ -35,6 +26,4 @@ namespace basegfx
{
} // end of namespace basegfx
-// eof
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basegfx/source/vector/b2dvector.cxx b/basegfx/source/vector/b2dvector.cxx
index 19539b755e21..5628bbe4f056 100644
--- a/basegfx/source/vector/b2dvector.cxx
+++ b/basegfx/source/vector/b2dvector.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/vector/b2dvector.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
diff --git a/basegfx/source/vector/b2ivector.cxx b/basegfx/source/vector/b2ivector.cxx
index cfd6eeaa0ed9..ff3cade11946 100644
--- a/basegfx/source/vector/b2ivector.cxx
+++ b/basegfx/source/vector/b2ivector.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/vector/b2ivector.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
diff --git a/basegfx/source/vector/b3dvector.cxx b/basegfx/source/vector/b3dvector.cxx
index 335057052cac..c8d879418af6 100644
--- a/basegfx/source/vector/b3dvector.cxx
+++ b/basegfx/source/vector/b3dvector.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/vector/b3dvector.hxx>
#include <basegfx/matrix/b3dhommatrix.hxx>
diff --git a/basegfx/source/workbench/gauss.hxx b/basegfx/source/workbench/gauss.hxx
index f9f24f81da5c..6cd63ce30691 100644
--- a/basegfx/source/workbench/gauss.hxx
+++ b/basegfx/source/workbench/gauss.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
/** This method eliminates elements below main diagonal in the given
matrix by gaussian elimination.
diff --git a/basegfx/test/basegfx1d.cxx b/basegfx/test/basegfx1d.cxx
index 62a56152cb0e..6e09ce421023 100644
--- a/basegfx/test/basegfx1d.cxx
+++ b/basegfx/test/basegfx1d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/types.h>
diff --git a/basegfx/test/basegfx2d.cxx b/basegfx/test/basegfx2d.cxx
index 2cb7aba75fc6..aea6c35f3760 100644
--- a/basegfx/test/basegfx2d.cxx
+++ b/basegfx/test/basegfx2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "cppunit/TestAssert.h"
#include "cppunit/TestFixture.h"
diff --git a/basegfx/test/basegfx3d.cxx b/basegfx/test/basegfx3d.cxx
index 682a5314f12f..a6faf6a4e92d 100644
--- a/basegfx/test/basegfx3d.cxx
+++ b/basegfx/test/basegfx3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/types.h>
#include "cppunit/TestAssert.h"
diff --git a/basegfx/test/basegfxtools.cxx b/basegfx/test/basegfxtools.cxx
index 64718241575b..19b8317e3a43 100644
--- a/basegfx/test/basegfxtools.cxx
+++ b/basegfx/test/basegfxtools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/types.h>
#include "cppunit/TestAssert.h"
diff --git a/basegfx/test/boxclipper.cxx b/basegfx/test/boxclipper.cxx
index ecf9ec0caa3d..fb084e85a03c 100644
--- a/basegfx/test/boxclipper.cxx
+++ b/basegfx/test/boxclipper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/types.h>
#include "cppunit/TestAssert.h"
diff --git a/basegfx/test/clipstate.cxx b/basegfx/test/clipstate.cxx
index 4f3253e00eb7..54346835c1b5 100644
--- a/basegfx/test/clipstate.cxx
+++ b/basegfx/test/clipstate.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/types.h>
#include "cppunit/TestAssert.h"
diff --git a/basegfx/test/genericclipper.cxx b/basegfx/test/genericclipper.cxx
index 3ff4afe7a8d9..6b62ff5d94de 100644
--- a/basegfx/test/genericclipper.cxx
+++ b/basegfx/test/genericclipper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/types.h>
#include "cppunit/TestAssert.h"
@@ -115,7 +106,7 @@ public:
void validateOr()
{
- const char* pValid="m0 0h100v150h-75v-50h-5v50h-20v-50-10zm75 100v-50h-50v50z";
+ const char* pValid="m0 0h100v150h-75v-50h-5v50h-20v-50-10zm75 100v-50h-50v50z";
validate("validateOr", pValid, &tools::solvePolygonOperationOr);
}
diff --git a/basic/CppunitTest_basic_coverage.mk b/basic/CppunitTest_basic_coverage.mk
new file mode 100644
index 000000000000..e1189e5eb790
--- /dev/null
+++ b/basic/CppunitTest_basic_coverage.mk
@@ -0,0 +1,60 @@
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_CppunitTest_CppunitTest,basic_coverage))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,basic_coverage, \
+ basic/qa/cppunit/basic_coverage \
+))
+
+#$(eval $(call gb_CppunitTest_use_library_objects,basic_coverage,sb))
+
+# add a list of all needed libraries here
+$(eval $(call gb_CppunitTest_use_libraries,basic_coverage, \
+ comphelper \
+ cppu \
+ cppuhelper \
+ sal \
+ salhelper \
+ sb \
+ sot \
+ svl \
+ svt \
+ test \
+ tl \
+ unotest \
+ utl \
+ vcl \
+ xmlscript \
+ $(gb_UWINAPI) \
+))
+
+ifeq ($(GUI),WNT)
+$(eval $(call gb_CppunitTest_use_system_win32_libs,basic_coverage, \
+ oleaut32 \
+))
+endif
+
+$(eval $(call gb_CppunitTest_set_include,basic_coverage,\
+ -I$(SRCDIR)/basic/source/inc \
+ -I$(SRCDIR)/basic/inc \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_CppunitTest_use_api,basic_coverage,\
+ offapi \
+ udkapi \
+))
+
+$(eval $(call gb_CppunitTest_use_ure,basic_coverage))
+
+$(eval $(call gb_CppunitTest_use_components,basic_coverage,\
+ configmgr/source/configmgr \
+ i18npool/util/i18npool \
+))
+$(eval $(call gb_CppunitTest_use_configuration,basic_coverage))
diff --git a/basic/Module_basic.mk b/basic/Module_basic.mk
index e60e83e7e655..a4ff822ef897 100644
--- a/basic/Module_basic.mk
+++ b/basic/Module_basic.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_Module_add_check_targets,basic,\
CppunitTest_basic_scanner \
CppunitTest_basic_enable \
CppunitTest_basic_nested_struct \
+ CppunitTest_basic_coverage \
))
endif
diff --git a/basic/inc/basic/basmgr.hxx b/basic/inc/basic/basmgr.hxx
index 69ddb8e056a3..9c731369d1be 100644
--- a/basic/inc/basic/basmgr.hxx
+++ b/basic/inc/basic/basmgr.hxx
@@ -19,7 +19,6 @@
#ifndef _BASMGR_HXX
#define _BASMGR_HXX
-#include <tools/string.hxx>
#include <svl/brdcst.hxx>
#include <basic/sbstar.hxx>
#include <com/sun/star/script/XStorageBasedLibraryContainer.hpp>
@@ -49,19 +48,19 @@ class BASIC_DLLPUBLIC BasicError
private:
sal_uIntPtr nErrorId;
sal_uInt16 nReason;
- String aErrStr;
+ OUString aErrStr;
public:
BasicError( const BasicError& rErr );
- BasicError( sal_uIntPtr nId, sal_uInt16 nR, const String& rErrStr );
+ BasicError( sal_uIntPtr nId, sal_uInt16 nR, const OUString& rErrStr );
- sal_uIntPtr GetErrorId() const { return nErrorId; }
+ sal_uIntPtr GetErrorId() const { return nErrorId; }
sal_uInt16 GetReason() const { return nReason; }
- String GetErrorStr() { return aErrStr; }
+ OUString GetErrorStr() { return aErrStr; }
void SetErrorId( sal_uIntPtr n ) { nErrorId = n; }
void SetReason( sal_uInt16 n ) { nReason = n; }
- void SetErrorStr( const String& rStr) { aErrStr = rStr; }
+ void SetErrorStr( const OUString& rStr) { aErrStr = rStr; }
};
class BasicLibs;
@@ -74,10 +73,10 @@ namespace basic { class BasicManagerCleaner; }
class BASIC_DLLPUBLIC OldBasicPassword
{
public:
- virtual void setLibraryPassword( const String& rLibraryName, const String& rPassword ) = 0;
- virtual String getLibraryPassword( const String& rLibraryName ) = 0;
- virtual void clearLibraryPassword( const String& rLibraryName ) = 0;
- virtual sal_Bool hasLibraryPassword( const String& rLibraryName ) = 0;
+ virtual void setLibraryPassword( const OUString& rLibraryName, const OUString& rPassword ) = 0;
+ virtual OUString getLibraryPassword( const OUString& rLibraryName ) = 0;
+ virtual void clearLibraryPassword( const OUString& rLibraryName ) = 0;
+ virtual sal_Bool hasLibraryPassword( const OUString& rLibraryName ) = 0;
protected:
~OldBasicPassword() {}
@@ -122,8 +121,8 @@ private:
BasicLibs* pLibs;
std::vector<BasicError> aErrors;
- String aName;
- String maStorageName;
+ OUString aName;
+ OUString maStorageName;
bool mbDocMgr;
BasicManagerImpl* mpImpl;
@@ -131,23 +130,23 @@ private:
BASIC_DLLPRIVATE void Init();
protected:
- sal_Bool ImpLoadLibrary( BasicLibInfo* pLibInfo ) const;
- sal_Bool ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurStorage, sal_Bool bInfosOnly = sal_False );
+ sal_Bool ImpLoadLibrary( BasicLibInfo* pLibInfo ) const;
+ sal_Bool ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurStorage, sal_Bool bInfosOnly = sal_False );
void ImpCreateStdLib( StarBASIC* pParentFromStdLib );
- void ImpMgrNotLoaded( const String& rStorageName );
+ void ImpMgrNotLoaded( const OUString& rStorageName );
BasicLibInfo* CreateLibInfo();
- void LoadBasicManager( SotStorage& rStorage, const String& rBaseURL, sal_Bool bLoadBasics = sal_True );
+ void LoadBasicManager( SotStorage& rStorage, const OUString& rBaseURL, sal_Bool bLoadBasics = sal_True );
void LoadOldBasicManager( SotStorage& rStorage );
- sal_Bool ImplLoadBasic( SvStream& rStrm, StarBASICRef& rOldBasic ) const;
- sal_Bool ImplEncryptStream( SvStream& rStream ) const;
+ sal_Bool ImplLoadBasic( SvStream& rStrm, StarBASICRef& rOldBasic ) const;
+ sal_Bool ImplEncryptStream( SvStream& rStream ) const;
BasicLibInfo* FindLibInfo( StarBASIC* pBasic ) const;
void CheckModules( StarBASIC* pBasic, sal_Bool bReference ) const;
~BasicManager();
public:
TYPEINFO();
- BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBASIC* pParentFromStdLib = NULL, String* pLibPath = NULL, bool bDocMgr = false );
- BasicManager( StarBASIC* pStdLib, String* pLibPath = NULL, bool bDocMgr = false );
+ BasicManager( SotStorage& rStorage, const OUString& rBaseURL, StarBASIC* pParentFromStdLib = NULL, OUString* pLibPath = NULL, bool bDocMgr = false );
+ BasicManager( StarBASIC* pStdLib, OUString* pLibPath = NULL, bool bDocMgr = false );
/** deletes the given BasicManager instance
@@ -158,18 +157,18 @@ public:
*/
static void LegacyDeleteBasicManager( BasicManager*& _rpManager );
- void SetStorageName( const String& rName ) { maStorageName = rName; }
- String GetStorageName() const { return maStorageName; }
- void SetName( const String& rName ) { aName = rName; }
- String GetName() const { return aName; }
+ void SetStorageName( const OUString& rName ) { maStorageName = rName; }
+ OUString GetStorageName() const { return maStorageName; }
+ void SetName( const OUString& rName ) { aName = rName; }
+ OUString GetName() const { return aName; }
- sal_uInt16 GetLibCount() const;
+ sal_uInt16 GetLibCount() const;
StarBASIC* GetLib( sal_uInt16 nLib ) const;
- StarBASIC* GetLib( const String& rName ) const;
- sal_uInt16 GetLibId( const String& rName ) const;
+ StarBASIC* GetLib( const OUString& rName ) const;
+ sal_uInt16 GetLibId( const OUString& rName ) const;
- String GetLibName( sal_uInt16 nLib );
+ OUString GetLibName( sal_uInt16 nLib );
/** announces the library containers which belong to this BasicManager
@@ -183,11 +182,11 @@ public:
const ::com::sun::star::uno::Reference< com::sun::star::script::XPersistentLibraryContainer >&
GetScriptLibraryContainer() const;
- sal_Bool LoadLib( sal_uInt16 nLib );
- sal_Bool RemoveLib( sal_uInt16 nLib, sal_Bool bDelBasicFromStorage );
+ sal_Bool LoadLib( sal_uInt16 nLib );
+ sal_Bool RemoveLib( sal_uInt16 nLib, sal_Bool bDelBasicFromStorage );
// Modify-Flag will be reset only during save.
- sal_Bool IsBasicModified() const;
+ sal_Bool IsBasicModified() const;
std::vector<BasicError>& GetErrors();
@@ -207,31 +206,31 @@ public:
takes the names of modules whose size exceeds the legacy limit
*/
bool LegacyPsswdBinaryLimitExceeded( ::com::sun::star::uno::Sequence< rtl::OUString >& _out_rModuleNames );
- bool HasExeCode( const String& );
+ bool HasExeCode( const OUString& );
/// determines whether the Basic Manager has a given macro, given by fully qualified name
- bool HasMacro( String const& i_fullyQualifiedName ) const;
+ bool HasMacro( OUString const& i_fullyQualifiedName ) const;
/// executes a given macro
- ErrCode ExecuteMacro( String const& i_fullyQualifiedName, SbxArray* i_arguments, SbxValue* i_retValue );
+ ErrCode ExecuteMacro( OUString const& i_fullyQualifiedName, SbxArray* i_arguments, SbxValue* i_retValue );
/// executes a given macro
- ErrCode ExecuteMacro( String const& i_fullyQualifiedName, String const& i_commaSeparatedArgs, SbxValue* i_retValue );
+ ErrCode ExecuteMacro( OUString const& i_fullyQualifiedName, OUString const& i_commaSeparatedArgs, SbxValue* i_retValue );
private:
BASIC_DLLPRIVATE sal_Bool IsReference( sal_uInt16 nLib );
- BASIC_DLLPRIVATE sal_Bool SetLibName( sal_uInt16 nLib, const String& rName );
+ BASIC_DLLPRIVATE sal_Bool SetLibName( sal_uInt16 nLib, const OUString& rName );
BASIC_DLLPRIVATE StarBASIC* GetStdLib() const;
- BASIC_DLLPRIVATE StarBASIC* AddLib( SotStorage& rStorage, const String& rLibName, sal_Bool bReference );
+ BASIC_DLLPRIVATE StarBASIC* AddLib( SotStorage& rStorage, const OUString& rLibName, sal_Bool bReference );
BASIC_DLLPRIVATE sal_Bool RemoveLib( sal_uInt16 nLib );
- BASIC_DLLPRIVATE sal_Bool HasLib( const String& rName ) const;
+ BASIC_DLLPRIVATE sal_Bool HasLib( const OUString& rName ) const;
- BASIC_DLLPRIVATE StarBASIC* CreateLibForLibContainer( const String& rLibName,
+ BASIC_DLLPRIVATE StarBASIC* CreateLibForLibContainer( const OUString& rLibName,
const com::sun::star::uno::Reference< com::sun::star::script::XLibraryContainer >&
xScriptCont );
// For XML import/export:
- BASIC_DLLPRIVATE StarBASIC* CreateLib( const String& rLibName );
- BASIC_DLLPRIVATE StarBASIC* CreateLib( const String& rLibName, const String& Password,
- const String& LinkTargetURL );
+ BASIC_DLLPRIVATE StarBASIC* CreateLib( const OUString& rLibName );
+ BASIC_DLLPRIVATE StarBASIC* CreateLib( const OUString& rLibName, const OUString& Password,
+ const OUString& LinkTargetURL );
};
#endif //_BASMGR_HXX
diff --git a/basic/inc/basic/modsizeexceeded.hxx b/basic/inc/basic/modsizeexceeded.hxx
index 83176f0a62ee..e736348e14a6 100644
--- a/basic/inc/basic/modsizeexceeded.hxx
+++ b/basic/inc/basic/modsizeexceeded.hxx
@@ -43,7 +43,7 @@ class BASIC_DLLPUBLIC ModuleSizeExceeded : public ::cppu::WeakImplHelper1< ::com
// member
private:
- rtl::OUString m_sMods;
+ OUString m_sMods;
com::sun::star::uno::Any m_aRequest;
com::sun::star::uno::Sequence< com::sun::star::uno::Reference< com::sun::star::task::XInteractionContinuation > > m_lContinuations;
com::sun::star::uno::Reference< com::sun::star::task::XInteractionContinuation > m_xAbort;
diff --git a/basic/inc/basic/sbdef.hxx b/basic/inc/basic/sbdef.hxx
index 1d3409f802b6..2bc29cbb08c3 100644
--- a/basic/inc/basic/sbdef.hxx
+++ b/basic/inc/basic/sbdef.hxx
@@ -26,13 +26,13 @@
// Returns type name for Basic type, array flag is ignored
// implementation: basic/source/runtime/methods.cxx
-BASIC_DLLPUBLIC ::rtl::OUString getBasicTypeName( SbxDataType eType );
+BASIC_DLLPUBLIC OUString getBasicTypeName( SbxDataType eType );
// Returns type name for Basic objects, especially
// important for SbUnoObj instances
// implementation: basic/source/classes/sbunoobj.cxx
class SbxObject;
-BASIC_DLLPUBLIC ::rtl::OUString getBasicObjectTypeName( SbxObject* pObj );
+BASIC_DLLPUBLIC OUString getBasicObjectTypeName( SbxObject* pObj );
// Allows Basic IDE to set watch mode to suppress errors
// implementation: basic/source/runtime/runtime.cxx
@@ -52,8 +52,8 @@ BASIC_DLLPUBLIC void setBasicWatchMode( bool bOn );
#define SBXID_JSCRIPTMOD 0x6a62 // jm: JavaScript Module
#define SBXID_JSCRIPTMETH 0x6a64 // jm: JavaScript Module
-#define SBX_HINT_BASICSTART SFX_HINT_USER04
-#define SBX_HINT_BASICSTOP SFX_HINT_USER05
+#define SBX_HINT_BASICSTART SFX_HINT_USER04
+#define SBX_HINT_BASICSTOP SFX_HINT_USER05
enum PropertyMode
{
diff --git a/basic/inc/basic/sbmeth.hxx b/basic/inc/basic/sbmeth.hxx
index 6963c0db288f..9d4afbc37a24 100644
--- a/basic/inc/basic/sbmeth.hxx
+++ b/basic/inc/basic/sbmeth.hxx
@@ -37,14 +37,14 @@ class BASIC_DLLPUBLIC SbMethod : public SbxMethod
friend class SbJScriptMethod;
friend class SbIfaceMapperMethod;
- SbxVariable* mCaller; // caller
- SbModule* pMod;
+ SbxVariable* mCaller; // caller
+ SbModule* pMod;
sal_uInt16 nDebugFlags;
sal_uInt16 nLine1, nLine2;
sal_uInt32 nStart;
sal_Bool bInvalid;
- SbxArrayRef refStatics;
- BASIC_DLLPRIVATE SbMethod( const String&, SbxDataType, SbModule* );
+ SbxArrayRef refStatics;
+ BASIC_DLLPRIVATE SbMethod( const OUString&, SbxDataType, SbModule* );
BASIC_DLLPRIVATE SbMethod( const SbMethod& );
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
virtual sal_Bool StoreData( SvStream& ) const;
@@ -54,17 +54,17 @@ public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASICMETHOD,2);
TYPEINFO();
virtual SbxInfo* GetInfo();
- SbxArray* GetStatics();
- void ClearStatics();
- SbModule* GetModule() { return pMod; }
- sal_uInt32 GetId() const { return nStart; }
- sal_uInt16 GetDebugFlags() { return nDebugFlags; }
- void SetDebugFlags( sal_uInt16 n ) { nDebugFlags = n; }
- void GetLineRange( sal_uInt16&, sal_uInt16& );
+ SbxArray* GetStatics();
+ void ClearStatics();
+ SbModule* GetModule() { return pMod; }
+ sal_uInt32 GetId() const { return nStart; }
+ sal_uInt16 GetDebugFlags() { return nDebugFlags; }
+ void SetDebugFlags( sal_uInt16 n ) { nDebugFlags = n; }
+ void GetLineRange( sal_uInt16&, sal_uInt16& );
// Interface to execute a method from the applications
virtual ErrCode Call( SbxValue* pRet = NULL, SbxVariable* pCaller = NULL );
- virtual void Broadcast( sal_uIntPtr nHintId );
+ virtual void Broadcast( sal_uIntPtr nHintId );
};
SV_DECL_IMPL_REF(SbMethod)
@@ -77,7 +77,7 @@ class BASIC_DLLPUBLIC SbIfaceMapperMethod : public SbMethod
public:
TYPEINFO();
- SbIfaceMapperMethod( const String& rName, SbMethod* pImplMeth )
+ SbIfaceMapperMethod( const OUString& rName, SbMethod* pImplMeth )
: SbMethod( rName, pImplMeth->GetType(), NULL )
, mxImplMeth( pImplMeth )
{}
diff --git a/basic/inc/basic/sbmod.hxx b/basic/inc/basic/sbmod.hxx
index 464ebf2ca227..1ff5b11c9b8b 100644
--- a/basic/inc/basic/sbmod.hxx
+++ b/basic/inc/basic/sbmod.hxx
@@ -51,14 +51,14 @@ class BASIC_DLLPUBLIC SbModule : public SbxObject, private ::boost::noncopyable
friend class StarBASIC;
friend class SbClassModuleObject;
- std::vector< String > mModuleVariableNames;
+ std::vector< OUString > mModuleVariableNames;
BASIC_DLLPRIVATE void implClearIfVarDependsOnDeletedBasic( SbxVariable* pVar, StarBASIC* pDeletedBasic );
protected:
com::sun::star::uno::Reference< com::sun::star::script::XInvocation > mxWrapper;
- ::rtl::OUString aOUSource;
- String aComment;
+ OUString aOUSource;
+ OUString aComment;
SbiImage* pImage; // the Image
SbiBreakpoints* pBreaks; // Breakpoints
SbClassData* pClassData;
@@ -69,20 +69,20 @@ protected:
static void implProcessModuleRunInit( ModuleInitDependencyMap& rMap, ClassModuleRunInitItem& rItem );
void StartDefinitions();
- SbMethod* GetMethod( const String&, SbxDataType );
- SbProperty* GetProperty( const String&, SbxDataType );
- SbProcedureProperty* GetProcedureProperty( const String&, SbxDataType );
- SbIfaceMapperMethod* GetIfaceMapperMethod( const String&, SbMethod* );
+ SbMethod* GetMethod( const OUString&, SbxDataType );
+ SbProperty* GetProperty( const OUString&, SbxDataType );
+ SbProcedureProperty* GetProcedureProperty( const OUString&, SbxDataType );
+ SbIfaceMapperMethod* GetIfaceMapperMethod( const OUString&, SbMethod* );
void EndDefinitions( sal_Bool=sal_False );
- sal_uInt16 Run( SbMethod* );
+ sal_uInt16 Run( SbMethod* );
void RunInit();
void ClearPrivateVars();
void ClearVarsDependingOnDeletedBasic( StarBASIC* pDeletedBasic );
void GlobalRunInit( bool bBasicStart ); // for all modules
void GlobalRunDeInit( void );
- const sal_uInt8* FindNextStmnt( const sal_uInt8*, sal_uInt16&, sal_uInt16& ) const;
- const sal_uInt8* FindNextStmnt( const sal_uInt8*, sal_uInt16&, sal_uInt16&,
- sal_Bool bFollowJumps, const SbiImage* pImg=NULL ) const;
+ const sal_uInt8* FindNextStmnt( const sal_uInt8*, sal_uInt16&, sal_uInt16& ) const;
+ const sal_uInt8* FindNextStmnt( const sal_uInt8*, sal_uInt16&, sal_uInt16&,
+ sal_Bool bFollowJumps, const SbiImage* pImg=NULL ) const;
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
virtual sal_Bool StoreData( SvStream& ) const;
virtual sal_Bool LoadCompleted();
@@ -93,48 +93,48 @@ protected:
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASICMOD,2);
TYPEINFO();
- SbModule( const String&, sal_Bool bCompat = sal_False );
+ SbModule( const OUString&, sal_Bool bCompat = sal_False );
virtual void SetParent( SbxObject* );
virtual void Clear();
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
- virtual const String& GetSource() const;
- const ::rtl::OUString& GetSource32() const;
- const String& GetComment() const { return aComment; }
- virtual void SetSource( const String& r );
- void SetSource32( const ::rtl::OUString& r );
+ virtual const OUString& GetSource() const;
+ const OUString& GetSource32() const;
+ const OUString& GetComment() const { return aComment; }
+ virtual void SetSource( const OUString& r );
+ void SetSource32( const OUString& r );
- virtual sal_Bool Compile();
- virtual sal_Bool IsCompiled() const;
- const SbxObject* FindType( String aTypeName ) const;
+ virtual sal_Bool Compile();
+ virtual sal_Bool IsCompiled() const;
+ const SbxObject* FindType( OUString aTypeName ) const;
- virtual sal_Bool IsBreakable( sal_uInt16 nLine ) const;
- virtual size_t GetBPCount() const;
- virtual sal_uInt16 GetBP( size_t n ) const;
- virtual sal_Bool IsBP( sal_uInt16 nLine ) const;
- virtual sal_Bool SetBP( sal_uInt16 nLine );
- virtual sal_Bool ClearBP( sal_uInt16 nLine );
- virtual void ClearAllBP();
+ virtual sal_Bool IsBreakable( sal_uInt16 nLine ) const;
+ virtual size_t GetBPCount() const;
+ virtual sal_uInt16 GetBP( size_t n ) const;
+ virtual sal_Bool IsBP( sal_uInt16 nLine ) const;
+ virtual sal_Bool SetBP( sal_uInt16 nLine );
+ virtual sal_Bool ClearBP( sal_uInt16 nLine );
+ virtual void ClearAllBP();
// Lines of Subs
virtual SbMethod* GetFunctionForLine( sal_uInt16 );
// Store only image, no source (needed for new password protection)
- sal_Bool StoreBinaryData( SvStream& );
- sal_Bool StoreBinaryData( SvStream&, sal_uInt16 nVer );
+ sal_Bool StoreBinaryData( SvStream& );
+ sal_Bool StoreBinaryData( SvStream&, sal_uInt16 nVer );
sal_Bool LoadBinaryData( SvStream&, sal_uInt16 nVer );
sal_Bool LoadBinaryData( SvStream& );
sal_Bool ExceedsLegacyModuleSize();
- void fixUpMethodStart( bool bCvtToLegacy, SbiImage* pImg = NULL ) const;
- bool HasExeCode();
- bool IsVBACompat() const;
- void SetVBACompat( bool bCompat );
+ void fixUpMethodStart( bool bCvtToLegacy, SbiImage* pImg = NULL ) const;
+ bool HasExeCode();
+ bool IsVBACompat() const;
+ void SetVBACompat( bool bCompat );
sal_Int32 GetModuleType() { return mnType; }
- void SetModuleType( sal_Int32 nType ) { mnType = nType; }
- bool isProxyModule() { return bIsProxyModule; }
- void AddVarName( const String& aName );
- void RemoveVars();
+ void SetModuleType( sal_Int32 nType ) { mnType = nType; }
+ bool isProxyModule() { return bIsProxyModule; }
+ void AddVarName( const OUString& aName );
+ void RemoveVars();
::com::sun::star::uno::Reference< ::com::sun::star::script::XInvocation > GetUnoModule();
bool createCOMWrapperForIface( ::com::sun::star::uno::Any& o_rRetAny, SbClassModuleObject* pProxyClassModuleObject );
};
@@ -153,7 +153,7 @@ public:
~SbClassModuleObject();
// Overridden to support NameAccess etc.
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
virtual void SFX_NOTIFY( SfxBroadcaster&, const TypeId&, const SfxHint& rHint, const TypeId& );
diff --git a/basic/inc/basic/sbobjmod.hxx b/basic/inc/basic/sbobjmod.hxx
index b3ff31f64d7a..768a273b26c8 100644
--- a/basic/inc/basic/sbobjmod.hxx
+++ b/basic/inc/basic/sbobjmod.hxx
@@ -40,8 +40,8 @@ protected:
public:
TYPEINFO();
- SbObjModule( const String& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVbaCompatible );
- virtual SbxVariable* Find( const rtl::OUString& rName, SbxClassType t );
+ SbObjModule( const OUString& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVbaCompatible );
+ virtual SbxVariable* Find( const OUString& rName, SbxClassType t );
virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
const SfxHint& rHint, const TypeId& rHintType );
@@ -59,21 +59,21 @@ class BASIC_DLLPUBLIC SbUserFormModule : public SbObjModule
::rtl::Reference< FormObjEventListenerImpl > m_DialogListener;
css::uno::Reference<css::awt::XDialog> m_xDialog;
css::uno::Reference<css::frame::XModel> m_xModel;
- String sFormName;
+ OUString sFormName;
bool mbInit;
//protected:
virtual void InitObject();
public:
TYPEINFO();
- SbUserFormModule( const String& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVBACompat );
+ SbUserFormModule( const OUString& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVBACompat );
virtual ~SbUserFormModule();
- virtual SbxVariable* Find( const rtl::OUString& rName, SbxClassType t );
+ virtual SbxVariable* Find( const OUString& rName, SbxClassType t );
void ResetApiObj( bool bTriggerTerminateEvent = true );
void Unload();
void Load();
- void triggerMethod( const String& );
- void triggerMethod( const String&, css::uno::Sequence< css::uno::Any >& );
+ void triggerMethod( const OUString& );
+ void triggerMethod( const OUString&, css::uno::Sequence< css::uno::Any >& );
void triggerActivateEvent();
void triggerDeactivateEvent();
void triggerInitializeEvent();
@@ -94,11 +94,11 @@ class BASIC_DLLPUBLIC SbUserFormModuleInstance : public SbUserFormModule
SbUserFormModule* m_pParentModule;
public:
- SbUserFormModuleInstance( SbUserFormModule* pParentModule, const rtl::OUString& rName,
+ SbUserFormModuleInstance( SbUserFormModule* pParentModule, const OUString& rName,
const com::sun::star::script::ModuleInfo& mInfo, bool bIsVBACompat );
- virtual sal_Bool IsClass( const rtl::OUString& ) const;
- virtual SbxVariable* Find( const rtl::OUString& rName, SbxClassType t );
+ virtual sal_Bool IsClass( const OUString& ) const;
+ virtual SbxVariable* Find( const OUString& rName, SbxClassType t );
};
#endif
diff --git a/basic/inc/basic/sbprop.hxx b/basic/inc/basic/sbprop.hxx
index 3e66f7e4c855..463fd5d41c73 100644
--- a/basic/inc/basic/sbprop.hxx
+++ b/basic/inc/basic/sbprop.hxx
@@ -33,7 +33,7 @@ class BASIC_DLLPUBLIC SbProperty : public SbxProperty
friend class SbProcedureProperty;
SbModule* pMod;
sal_Bool bInvalid;
- BASIC_DLLPRIVATE SbProperty( const String&, SbxDataType, SbModule* );
+ BASIC_DLLPRIVATE SbProperty( const OUString&, SbxDataType, SbModule* );
virtual ~SbProperty();
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_BASICPROP,1);
@@ -50,7 +50,7 @@ class BASIC_DLLPUBLIC SbProcedureProperty : public SbxProperty
virtual ~SbProcedureProperty();
public:
- SbProcedureProperty( const String& r, SbxDataType t )
+ SbProcedureProperty( const OUString& r, SbxDataType t )
: SbxProperty( r, t ) // , pMod( p )
, mbSet( false )
{}
diff --git a/basic/inc/basic/sbstar.hxx b/basic/inc/basic/sbstar.hxx
index cffd4ad70645..c84b62494169 100644
--- a/basic/inc/basic/sbstar.hxx
+++ b/basic/inc/basic/sbstar.hxx
@@ -69,17 +69,16 @@ class BASIC_DLLPUBLIC StarBASIC : public SbxObject
BASIC_DLLPRIVATE void implClearDependingVarsOnDelete( StarBASIC* pDeletedBasic );
protected:
- sal_Bool CError( SbError, const ::rtl::OUString&, xub_StrLen, xub_StrLen, xub_StrLen );
+ sal_Bool CError( SbError, const OUString&, sal_Int32, sal_Int32, sal_Int32 );
private:
- BASIC_DLLPRIVATE sal_Bool RTError( SbError, xub_StrLen, xub_StrLen, xub_StrLen );
- BASIC_DLLPRIVATE sal_Bool RTError( SbError, const String& rMsg, xub_StrLen, xub_StrLen, xub_StrLen );
- BASIC_DLLPRIVATE sal_uInt16 BreakPoint( xub_StrLen nLine, xub_StrLen nCol1, xub_StrLen nCol2 );
- BASIC_DLLPRIVATE sal_uInt16 StepPoint( xub_StrLen nLine, xub_StrLen nCol1, xub_StrLen nCol2 );
+ BASIC_DLLPRIVATE sal_Bool RTError( SbError, sal_Int32, sal_Int32, sal_Int32 );
+ BASIC_DLLPRIVATE sal_Bool RTError( SbError, const OUString& rMsg, sal_Int32, sal_Int32, sal_Int32 );
+ BASIC_DLLPRIVATE sal_uInt16 BreakPoint( sal_Int32 nLine, sal_Int32 nCol1, sal_Int32 nCol2 );
+ BASIC_DLLPRIVATE sal_uInt16 StepPoint( sal_Int32 nLine, sal_Int32 nCol1, sal_Int32 nCol2 );
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
virtual sal_Bool StoreData( SvStream& ) const;
protected:
-
virtual sal_Bool ErrorHdl();
virtual sal_uInt16 BreakHdl();
virtual ~StarBASIC();
@@ -107,45 +106,45 @@ public:
void SetLibInfo( BasicLibInfo* p ) { pLibInfo = p; }
// Compiler-Interface
- SbModule* MakeModule( const String& rName, const String& rSrc );
- SbModule* MakeModule32( const String& rName, const ::rtl::OUString& rSrc );
- SbModule* MakeModule32( const String& rName, const com::sun::star::script::ModuleInfo& mInfo, const ::rtl::OUString& rSrc );
- sal_Bool Compile( SbModule* );
+ SbModule* MakeModule( const OUString& rName, const OUString& rSrc );
+ SbModule* MakeModule32( const OUString& rName, const OUString& rSrc );
+ SbModule* MakeModule32( const OUString& rName, const com::sun::star::script::ModuleInfo& mInfo, const OUString& rSrc );
+ sal_Bool Compile( SbModule* );
static void Stop();
static void Error( SbError );
- static void Error( SbError, const String& rMsg );
+ static void Error( SbError, const OUString& rMsg );
static void FatalError( SbError );
- static void FatalError( SbError, const String& rMsg );
+ static void FatalError( SbError, const OUString& rMsg );
static bool IsRunning();
static SbError GetErrBasic();
// #66536 make additional message accessible by RTL function Error
- static String GetErrorMsg();
- static xub_StrLen GetErl();
+ static OUString GetErrorMsg();
+ static sal_Int32 GetErl();
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
- virtual sal_Bool Call( const String&, SbxArray* = NULL );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
+ virtual sal_Bool Call( const OUString&, SbxArray* = NULL );
SbxArray* GetModules() { return pModules; }
SbxObject* GetRtl() { return pRtl; }
- SbModule* FindModule( const String& );
+ SbModule* FindModule( const OUString& );
// Run init code of all modules (including the inserted Doc-Basics)
void InitAllModules( StarBASIC* pBasicNotToInit = NULL );
void DeInitAllModules( void );
void ClearAllModuleVars( void );
// Calls for error and break handler
- static sal_uInt16 GetLine();
- static sal_uInt16 GetCol1();
- static sal_uInt16 GetCol2();
+ static sal_uInt16 GetLine();
+ static sal_uInt16 GetCol1();
+ static sal_uInt16 GetCol2();
static void SetErrorData( SbError nCode, sal_uInt16 nLine,
sal_uInt16 nCol1, sal_uInt16 nCol2 );
// Specific to error handler
- static void MakeErrorText( SbError, const ::rtl::OUString& aMsg );
- static const String& GetErrorText();
+ static void MakeErrorText( SbError, const OUString& aMsg );
+ static const OUString& GetErrorText();
static SbError GetErrorCode();
static bool IsCompilerError();
- static sal_uInt16 GetVBErrorCode( SbError nError );
+ static sal_uInt16 GetVBErrorCode( SbError nError );
static SbError GetSfxFromVBError( sal_uInt16 nError );
bool IsBreak() const { return bBreak; }
@@ -160,7 +159,7 @@ public:
SbxArrayRef getUnoListeners( void );
- static SbxBase* FindSBXInCurrentScope( const String& rName );
+ static SbxBase* FindSBXInCurrentScope( const OUString& rName );
static SbMethod* GetActiveMethod( sal_uInt16 nLevel = 0 );
static SbModule* GetActiveModule();
void SetVBAEnabled( bool bEnabled );
@@ -168,7 +167,7 @@ public:
SbxObjectRef getRTL( void ) { return pRtl; }
bool IsDocBasic() { return bDocBasic; }
- SbxVariable* VBAFind( const rtl::OUString& rName, SbxClassType t );
+ SbxVariable* VBAFind( const OUString& rName, SbxClassType t );
bool GetUNOConstant( const sal_Char* _pAsciiName, ::com::sun::star::uno::Any& aOut );
void QuitAndExitApplication();
bool IsQuitApplication() { return bQuit; };
diff --git a/basic/inc/basic/sbstdobj.hxx b/basic/inc/basic/sbstdobj.hxx
index cd0436416efa..75a5a6ecb452 100644
--- a/basic/inc/basic/sbstdobj.hxx
+++ b/basic/inc/basic/sbstdobj.hxx
@@ -33,7 +33,7 @@ class BASIC_DLLPUBLIC SbStdFactory : public SbxFactory
public:
SbStdFactory();
- virtual SbxObject* CreateObject( const rtl::OUString& rClassName );
+ virtual SbxObject* CreateObject( const OUString& rClassName );
};
//--------------------
@@ -56,7 +56,7 @@ public:
TYPEINFO();
SbStdPicture();
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
Graphic GetGraphic() const { return aGraphic; }
void SetGraphic( const Graphic& rGrf ) { aGraphic = rGrf; }
@@ -73,7 +73,7 @@ protected:
sal_Bool bStrikeThrough;
sal_Bool bUnderline;
sal_uInt16 nSize;
- String aName;
+ OUString aName;
~SbStdFont();
virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
@@ -90,20 +90,20 @@ public:
TYPEINFO();
SbStdFont();
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
-
- void SetBold( sal_Bool bB ) { bBold = bB; }
- sal_Bool IsBold() const { return bBold; }
- void SetItalic( sal_Bool bI ) { bItalic = bI; }
- sal_Bool IsItalic() const { return bItalic; }
- void SetStrikeThrough( sal_Bool bS ) { bStrikeThrough = bS; }
- sal_Bool IsStrikeThrough() const { return bStrikeThrough; }
- void SetUnderline( sal_Bool bU ) { bUnderline = bU; }
- sal_Bool IsUnderline() const { return bUnderline; }
- void SetSize( sal_uInt16 nS ) { nSize = nS; }
- sal_uInt16 GetSize() const { return nSize; }
- void SetFontName( const String& rName ) { aName = rName; }
- String GetFontName() const { return aName; }
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
+
+ void SetBold( sal_Bool bB ) { bBold = bB; }
+ sal_Bool IsBold() const { return bBold; }
+ void SetItalic( sal_Bool bI ) { bItalic = bI; }
+ sal_Bool IsItalic() const { return bItalic; }
+ void SetStrikeThrough( sal_Bool bS ) { bStrikeThrough = bS; }
+ sal_Bool IsStrikeThrough() const { return bStrikeThrough; }
+ void SetUnderline( sal_Bool bU ) { bUnderline = bU; }
+ sal_Bool IsUnderline() const { return bUnderline; }
+ void SetSize( sal_uInt16 nS ) { nSize = nS; }
+ sal_uInt16 GetSize() const { return nSize; }
+ void SetFontName( const OUString& rName ) { aName = rName; }
+ OUString GetFontName() const { return aName; }
};
//----------------------
@@ -128,7 +128,7 @@ public:
TYPEINFO();
SbStdClipboard();
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
};
#endif
diff --git a/basic/inc/basic/sbuno.hxx b/basic/inc/basic/sbuno.hxx
index 9c3099169bfc..55d487a48b75 100644
--- a/basic/inc/basic/sbuno.hxx
+++ b/basic/inc/basic/sbuno.hxx
@@ -27,7 +27,7 @@ namespace com { namespace sun { namespace star { namespace uno { class Any; }}}}
// Returns a SbxObject that wrapps an Uno Interface
// Implementation in basic/source/classes/sbunoobj.cxx
-BASIC_DLLPUBLIC SbxObjectRef GetSbUnoObject( const ::rtl::OUString& aName, const com::sun::star::uno::Any& aUnoObj_ );
+BASIC_DLLPUBLIC SbxObjectRef GetSbUnoObject( const OUString& aName, const com::sun::star::uno::Any& aUnoObj_ );
// Force creation of all properties for debugging
BASIC_DLLPUBLIC void createAllObjectProperties( SbxObject* pObj );
diff --git a/basic/inc/basic/sbx.hxx b/basic/inc/basic/sbx.hxx
index 30dac56c42d1..d5fba159e510 100644
--- a/basic/inc/basic/sbx.hxx
+++ b/basic/inc/basic/sbx.hxx
@@ -33,7 +33,6 @@
#include <boost/ptr_container/ptr_vector.hpp>
-class String;
class SvStream;
class SbxBase;
class SbxVariable;
@@ -49,13 +48,13 @@ class SfxBroadcaster;
// Parameter information
struct SbxParamInfo
{
- const String aName; // Name of the parameter
- SbxBaseRef aTypeRef; // Object, if object type
- SbxDataType eType; // Data type
- sal_uInt16 nFlags; // Flag-Bits
- sal_uInt32 nUserData; // IDs etc.
- SbxParamInfo( const String& s, SbxDataType t, sal_uInt16 n, SbxBase* b = NULL )
- : aName( s ), aTypeRef( b ), eType( t ), nFlags( n ), nUserData( 0 ) {}
+ const OUString aName; // Name of the parameter
+ SbxBaseRef aTypeRef; // Object, if object type
+ SbxDataType eType; // Data type
+ sal_uInt16 nFlags; // Flag-Bits
+ sal_uInt32 nUserData; // IDs etc.
+ SbxParamInfo( const OUString& s, SbxDataType t, sal_uInt16 n, SbxBase* b = NULL )
+ : aName( s ), aTypeRef( b ), eType( t ), nFlags( n ), nUserData( 0 ) {}
~SbxParamInfo() {}
};
@@ -66,9 +65,9 @@ class BASIC_DLLPUBLIC SbxInfo : public SvRefBase
friend class SbxVariable;
friend class SbMethod;
- String aComment;
- String aHelpFile;
- sal_uInt32 nHelpId;
+ OUString aComment;
+ OUString aHelpFile;
+ sal_uInt32 nHelpId;
SbxParams aParams;
protected:
@@ -77,16 +76,16 @@ protected:
virtual ~SbxInfo();
public:
SbxInfo();
- SbxInfo( const String&, sal_uInt32 );
+ SbxInfo( const OUString&, sal_uInt32 );
- void AddParam( const rtl::OUString&, SbxDataType, sal_uInt16=SBX_READ );
+ void AddParam( const OUString&, SbxDataType, sal_uInt16=SBX_READ );
const SbxParamInfo* GetParam( sal_uInt16 n ) const; // index starts with 1!
- const String& GetComment() const { return aComment; }
- const String& GetHelpFile() const { return aHelpFile; }
- sal_uInt32 GetHelpId() const { return nHelpId; }
+ const OUString& GetComment() const { return aComment; }
+ const OUString& GetHelpFile() const { return aHelpFile; }
+ sal_uInt32 GetHelpId() const { return nHelpId; }
- void SetComment( const String& r ) { aComment = r; }
- void SetHelpFile( const String& r ) { aHelpFile = r; }
+ void SetComment( const OUString& r ) { aComment = r; }
+ void SetHelpFile( const OUString& r ) { aHelpFile = r; }
void SetHelpId( sal_uInt32 nId ) { nHelpId = nId; }
};
@@ -142,28 +141,28 @@ public:
SbxArray( const SbxArray& );
SbxArray& operator=( const SbxArray& );
virtual void Clear();
- sal_uInt16 Count() const;
- virtual SbxDataType GetType() const;
+ sal_uInt16 Count() const;
+ virtual SbxDataType GetType() const;
virtual SbxClassType GetClass() const;
- SbxVariableRef& GetRef( sal_uInt16 );
- SbxVariable* Get( sal_uInt16 );
- void Put( SbxVariable*, sal_uInt16 );
- void Insert( SbxVariable*, sal_uInt16 );
- void Remove( sal_uInt16 );
- void Remove( SbxVariable* );
- void Merge( SbxArray* );
- const String& GetAlias( sal_uInt16 );
- void PutAlias( const String&, sal_uInt16 );
- SbxVariable* FindUserData( sal_uInt32 nUserData );
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ SbxVariableRef& GetRef( sal_uInt16 );
+ SbxVariable* Get( sal_uInt16 );
+ void Put( SbxVariable*, sal_uInt16 );
+ void Insert( SbxVariable*, sal_uInt16 );
+ void Remove( sal_uInt16 );
+ void Remove( SbxVariable* );
+ void Merge( SbxArray* );
+ const OUString& GetAlias( sal_uInt16 );
+ void PutAlias( const OUString&, sal_uInt16 );
+ SbxVariable* FindUserData( sal_uInt32 nUserData );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
// Additional methods for 32-bit indices
- sal_uInt32 Count32() const;
- SbxVariableRef& GetRef32( sal_uInt32 );
- SbxVariable* Get32( sal_uInt32 );
- void Put32( SbxVariable*, sal_uInt32 );
- void Insert32( SbxVariable*, sal_uInt32 );
- void Remove32( sal_uInt32 );
+ sal_uInt32 Count32() const;
+ SbxVariableRef& GetRef32( sal_uInt32 );
+ SbxVariable* Get32( sal_uInt32 );
+ void Put32( SbxVariable*, sal_uInt32 );
+ void Insert32( SbxVariable*, sal_uInt32 );
+ void Remove32( sal_uInt32 );
};
// SbxDimArray is an array that can dimensioned using BASIC conventions.
@@ -209,8 +208,8 @@ public:
void AddDim32( sal_Int32, sal_Int32 );
void unoAddDim32( sal_Int32, sal_Int32 );
sal_Bool GetDim32( sal_Int32, sal_Int32&, sal_Int32& ) const;
- bool hasFixedSize() { return mbHasFixedSize; };
- void setHasFixedSize( bool bHasFixedSize ) {mbHasFixedSize = bHasFixedSize; };
+ bool hasFixedSize() { return mbHasFixedSize; };
+ void setHasFixedSize( bool bHasFixedSize ) {mbHasFixedSize = bHasFixedSize; };
};
class BASIC_DLLPUBLIC SbxCollection : public SbxObject
@@ -229,19 +228,19 @@ protected:
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_COLLECTION,1);
TYPEINFO();
- SbxCollection( const String& rClassname );
+ SbxCollection( const OUString& rClassname );
SbxCollection( const SbxCollection& );
SbxCollection& operator=( const SbxCollection& );
virtual SbxVariable* FindUserData( sal_uInt32 nUserData );
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
virtual void Clear();
};
class BASIC_DLLPUBLIC SbxStdCollection : public SbxCollection
{
protected:
- String aElemClass;
- sal_Bool bAddRemoveOk;
+ OUString aElemClass;
+ sal_Bool bAddRemoveOk;
virtual ~SbxStdCollection();
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
virtual sal_Bool StoreData( SvStream& ) const;
@@ -250,12 +249,11 @@ protected:
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_FIXCOLLECTION,1);
TYPEINFO();
- SbxStdCollection
- ( const String& rClassname, const String& rElemClass, sal_Bool=sal_True );
+ SbxStdCollection( const OUString& rClassname, const OUString& rElemClass, sal_Bool=sal_True );
SbxStdCollection( const SbxStdCollection& );
SbxStdCollection& operator=( const SbxStdCollection& );
virtual void Insert( SbxVariable* );
- const String& GetElementClass() const { return aElemClass; }
+ const OUString& GetElementClass() const { return aElemClass; }
};
SV_IMPL_REF(SbxBase)
diff --git a/basic/inc/basic/sbxbase.hxx b/basic/inc/basic/sbxbase.hxx
index 37142a9c865f..7b088bedda1e 100644
--- a/basic/inc/basic/sbxbase.hxx
+++ b/basic/inc/basic/sbxbase.hxx
@@ -39,7 +39,7 @@ struct SbxAppData
SbxBasicFormater *pBasicFormater; // Pointer to Format()-Command helper class
LanguageType eBasicFormaterLangType;
- // It might be useful to store this class 'global' because some string reosurces are saved here
+ // It might be useful to store this class 'global' because some string reosurces are saved here
SbxAppData() : eSbxError( SbxERR_OK ), aFacs(), pBasicFormater( NULL ) {}
~SbxAppData();
diff --git a/basic/inc/basic/sbxcore.hxx b/basic/inc/basic/sbxcore.hxx
index e1ff9be77923..5d45d4bbc9c5 100644
--- a/basic/inc/basic/sbxcore.hxx
+++ b/basic/inc/basic/sbxcore.hxx
@@ -28,8 +28,6 @@
#include "basicdllapi.h"
class SvStream;
-class String;
-namespace rtl { class OUString; }
// The following Macro defines four (five) necessary methods within a
// SBX object. LoadPrivateData() and StorePrivateData() must be implemented.
@@ -68,10 +66,10 @@ protected:
SBX_DECL_PERSIST(0,0,0);
public:
TYPEINFO();
- inline void SetFlags( sal_uInt16 n );
+ inline void SetFlags( sal_uInt16 n );
inline sal_uInt16 GetFlags() const;
- inline void SetFlag( sal_uInt16 n );
- inline void ResetFlag( sal_uInt16 n );
+ inline void SetFlag( sal_uInt16 n );
+ inline void ResetFlag( sal_uInt16 n );
inline sal_Bool IsSet( sal_uInt16 n ) const;
inline sal_Bool IsReset( sal_uInt16 n ) const;
inline sal_Bool CanRead() const;
@@ -81,17 +79,17 @@ public:
inline sal_Bool IsHidden() const;
inline sal_Bool IsVisible() const;
- virtual sal_Bool IsFixed() const;
- virtual void SetModified( sal_Bool );
+ virtual sal_Bool IsFixed() const;
+ virtual void SetModified( sal_Bool );
- virtual SbxDataType GetType() const;
+ virtual SbxDataType GetType() const;
virtual SbxClassType GetClass() const;
virtual void Clear();
static SbxBase* Load( SvStream& );
- static void Skip( SvStream& );
- sal_Bool Store( SvStream& );
+ static void Skip( SvStream& );
+ sal_Bool Store( SvStream& );
virtual sal_Bool LoadCompleted();
virtual sal_Bool StoreCompleted();
diff --git a/basic/inc/basic/sbxform.hxx b/basic/inc/basic/sbxform.hxx
index 42ff9d63c9c4..589f3ec24fd0 100644
--- a/basic/inc/basic/sbxform.hxx
+++ b/basic/inc/basic/sbxform.hxx
@@ -75,7 +75,8 @@
*/
#define _with_sprintf // use a)
-#include <tools/string.hxx>
+#include <rtl/ustring.hxx>
+#include <rtl/ustrbuf.hxx>
#include "basicdllapi.h"
class BASIC_DLLPUBLIC SbxBasicFormater {
@@ -83,14 +84,14 @@ class BASIC_DLLPUBLIC SbxBasicFormater {
// Constructor takes signs for decimal point, thousand separation sign
// and necessary resource strings.
SbxBasicFormater( sal_Unicode _cDecPoint, sal_Unicode _cThousandSep,
- String _sOnStrg,
- String _sOffStrg,
- String _sYesStrg,
- String _sNoStrg,
- String _sTrueStrg,
- String _sFalseStrg,
- String _sCurrencyStrg,
- String _sCurrencyFormatStrg );
+ OUString _sOnStrg,
+ OUString _sOffStrg,
+ OUString _sYesStrg,
+ OUString _sNoStrg,
+ OUString _sTrueStrg,
+ OUString _sFalseStrg,
+ OUString _sCurrencyStrg,
+ OUString _sCurrencyFormatStrg );
/* Basic command: Format$( number,format-string )
@@ -101,68 +102,67 @@ class BASIC_DLLPUBLIC SbxBasicFormater {
Return value:
String containing the formatted output
*/
- String BasicFormat( double dNumber, String sFormatStrg );
- String BasicFormatNull( String sFormatStrg );
+ OUString BasicFormat( double dNumber, OUString sFormatStrg );
+ OUString BasicFormatNull( OUString sFormatStrg );
- static sal_Bool isBasicFormat( String sFormatStrg );
+ static sal_Bool isBasicFormat( OUString sFormatStrg );
private:
- BASIC_DLLPRIVATE inline void ShiftString( String& sStrg, sal_uInt16 nStartPos );
- BASIC_DLLPRIVATE inline void StrAppendChar( String& sStrg, sal_Unicode ch );
- BASIC_DLLPRIVATE void AppendDigit( String& sStrg, short nDigit );
- BASIC_DLLPRIVATE void LeftShiftDecimalPoint( String& sStrg );
- BASIC_DLLPRIVATE void StrRoundDigit( String& sStrg, short nPos, sal_Bool& bOverflow );
- BASIC_DLLPRIVATE void StrRoundDigit( String& sStrg, short nPos );
- BASIC_DLLPRIVATE void ParseBack( String& sStrg, const String& sFormatStrg,
- short nFormatPos );
+ BASIC_DLLPRIVATE inline void ShiftString( OUStringBuffer& sStrg, sal_uInt16 nStartPos );
+ BASIC_DLLPRIVATE void AppendDigit( OUStringBuffer& sStrg, short nDigit );
+ BASIC_DLLPRIVATE void LeftShiftDecimalPoint( OUStringBuffer& sStrg );
+ BASIC_DLLPRIVATE void StrRoundDigit( OUStringBuffer& sStrg, short nPos, sal_Bool& bOverflow );
+ BASIC_DLLPRIVATE void StrRoundDigit( OUStringBuffer& sStrg, short nPos );
+ BASIC_DLLPRIVATE void ParseBack( OUStringBuffer& sStrg, const OUString& sFormatStrg,
+ short nFormatPos );
#ifdef _with_sprintf
// Methods for string conversion with sprintf():
BASIC_DLLPRIVATE void InitScan( double _dNum );
BASIC_DLLPRIVATE void InitExp( double _dNewExp );
BASIC_DLLPRIVATE short GetDigitAtPosScan( short nPos, sal_Bool& bFoundFirstDigit );
BASIC_DLLPRIVATE short GetDigitAtPosExpScan( double dNewExponent, short nPos,
- sal_Bool& bFoundFirstDigit );
+ sal_Bool& bFoundFirstDigit );
BASIC_DLLPRIVATE short GetDigitAtPosExpScan( short nPos, sal_Bool& bFoundFirstDigit );
#else
// Methods for direct 'calculation' with log10() and pow():
BASIC_DLLPRIVATE short GetDigitAtPos( double dNumber, short nPos, double& dNextNumber,
- sal_Bool& bFoundFirstDigit );
+ sal_Bool& bFoundFirstDigit );
BASIC_DLLPRIVATE short RoundDigit( double dNumber );
#endif
- BASIC_DLLPRIVATE String GetPosFormatString( const String& sFormatStrg, sal_Bool & bFound );
- BASIC_DLLPRIVATE String GetNegFormatString( const String& sFormatStrg, sal_Bool & bFound );
- BASIC_DLLPRIVATE String Get0FormatString( const String& sFormatStrg, sal_Bool & bFound );
- BASIC_DLLPRIVATE String GetNullFormatString( const String& sFormatStrg, sal_Bool & bFound );
- BASIC_DLLPRIVATE short AnalyseFormatString( const String& sFormatStrg,
- short& nNoOfDigitsLeft, short& nNoOfDigitsRight,
- short& nNoOfOptionalDigitsLeft,
- short& nNoOfExponentDigits,
- short& nNoOfOptionalExponentDigits,
- sal_Bool& bPercent, sal_Bool& bCurrency, sal_Bool& bScientific,
- sal_Bool& bGenerateThousandSeparator,
- short& nMultipleThousandSeparators );
- BASIC_DLLPRIVATE void ScanFormatString( double dNumber, const String& sFormatStrg,
- String& sReturnStrg, sal_Bool bCreateSign );
+ BASIC_DLLPRIVATE OUString GetPosFormatString( const OUString& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE OUString GetNegFormatString( const OUString& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE OUString Get0FormatString( const OUString& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE OUString GetNullFormatString( const OUString& sFormatStrg, sal_Bool & bFound );
+ BASIC_DLLPRIVATE short AnalyseFormatString( const OUString& sFormatStrg,
+ short& nNoOfDigitsLeft, short& nNoOfDigitsRight,
+ short& nNoOfOptionalDigitsLeft,
+ short& nNoOfExponentDigits,
+ short& nNoOfOptionalExponentDigits,
+ sal_Bool& bPercent, sal_Bool& bCurrency, sal_Bool& bScientific,
+ sal_Bool& bGenerateThousandSeparator,
+ short& nMultipleThousandSeparators );
+ BASIC_DLLPRIVATE void ScanFormatString( double dNumber, const OUString& sFormatStrg,
+ OUString& sReturnStrg, sal_Bool bCreateSign );
//*** Data ***
sal_Unicode cDecPoint; // sign for the decimal point
sal_Unicode cThousandSep; // sign for thousand delimiter
// Text for output:
- String sOnStrg;
- String sOffStrg;
- String sYesStrg;
- String sNoStrg;
- String sTrueStrg;
- String sFalseStrg;
- String sCurrencyStrg;
- String sCurrencyFormatStrg;
+ OUString sOnStrg;
+ OUString sOffStrg;
+ OUString sYesStrg;
+ OUString sNoStrg;
+ OUString sTrueStrg;
+ OUString sFalseStrg;
+ OUString sCurrencyStrg;
+ OUString sCurrencyFormatStrg;
//*** temporary data for scan loop ***
//-----------------------------------------------
// String containing the number in scientific format
- String sSciNumStrg;
+ OUString sSciNumStrg;
// String containing the exponent of the number
- String sNumExpStrg;
+ OUString sNumExpStrg;
double dNum; // the number that is scanned
short nNumExp; // the exponent of the number
short nExpExp; // the number of digits in the exponent
diff --git a/basic/inc/basic/sbxmeth.hxx b/basic/inc/basic/sbxmeth.hxx
index 3bdde98d064a..227c00cbad88 100644
--- a/basic/inc/basic/sbxmeth.hxx
+++ b/basic/inc/basic/sbxmeth.hxx
@@ -28,7 +28,7 @@ class BASIC_DLLPUBLIC SbxMethod : public SbxVariable
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_METHOD,1);
TYPEINFO();
- SbxMethod( const String& r, SbxDataType t );
+ SbxMethod( const OUString& r, SbxDataType t );
SbxMethod( const SbxMethod& r );
~SbxMethod();
SbxMethod& operator=( const SbxMethod& r ) { SbxVariable::operator=( r ); return *this; }
diff --git a/basic/inc/basic/sbxobj.hxx b/basic/inc/basic/sbxobj.hxx
index 378ac20716ef..2dc4aa735513 100644
--- a/basic/inc/basic/sbxobj.hxx
+++ b/basic/inc/basic/sbxobj.hxx
@@ -35,8 +35,8 @@ protected:
SbxArrayRef pProps; // Properties
SbxArrayRef pObjs; // Objects
SbxProperty* pDfltProp; // Default-Property
- String aClassName; // Classname
- String aDfltPropName;
+ OUString aClassName; // Classname
+ OUString aDfltPropName;
virtual sal_Bool LoadData( SvStream&, sal_uInt16 );
virtual sal_Bool StoreData( SvStream& ) const;
virtual ~SbxObject();
@@ -45,41 +45,41 @@ protected:
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_OBJECT,1);
TYPEINFO();
- SbxObject( const String& rClassname );
+ SbxObject( const OUString& rClassname );
SbxObject( const SbxObject& );
SbxObject& operator=( const SbxObject& );
virtual SbxDataType GetType() const;
virtual SbxClassType GetClass() const;
virtual void Clear();
- virtual sal_Bool IsClass( const rtl::OUString& ) const;
- const String& GetClassName() const { return aClassName; }
- void SetClassName( const String &rNew ) { aClassName = rNew; }
+ virtual sal_Bool IsClass( const OUString& ) const;
+ const OUString& GetClassName() const { return aClassName; }
+ void SetClassName( const OUString &rNew ) { aClassName = rNew; }
// Default-Property
SbxProperty* GetDfltProperty();
- void SetDfltProperty( const String& r );
+ void SetDfltProperty( const OUString& r );
// Search for an element
virtual SbxVariable* FindUserData( sal_uInt32 nUserData );
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
- SbxVariable* FindQualified( const String&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
+ SbxVariable* FindQualified( const OUString&, SbxClassType );
// Quick-Call-Interface for Methods
- virtual sal_Bool Call( const String&, SbxArray* = NULL );
+ virtual sal_Bool Call( const OUString&, SbxArray* = NULL );
// Execution of DDE-Commands
- SbxVariable* Execute( const String& );
+ SbxVariable* Execute( const OUString& );
// Manage elements
virtual sal_Bool GetAll( SbxClassType ) { return sal_True; }
- SbxVariable* Make( const String&, SbxClassType, SbxDataType );
- virtual SbxObject* MakeObject( const String&, const String& );
+ SbxVariable* Make( const OUString&, SbxClassType, SbxDataType );
+ virtual SbxObject* MakeObject( const OUString&, const OUString& );
virtual void Insert( SbxVariable* );
// AB 23.4.1997, Optimization, Insertion without check for duplicate Entries and
// without Broadcasts, only used in SO2/auto.cxx
void QuickInsert( SbxVariable* );
- virtual void Remove( const String&, SbxClassType );
+ virtual void Remove( const OUString&, SbxClassType );
virtual void Remove( SbxVariable* );
// Macro-Recording
- virtual String GenerateSource( const String &rLinePrefix,
- const SbxObject *pRelativeTo );
+ virtual OUString GenerateSource( const OUString &rLinePrefix,
+ const SbxObject *pRelativeTo );
// Direct access on arrays
SbxArray* GetMethods() { return pMethods; }
SbxArray* GetProperties() { return pProps; }
diff --git a/basic/inc/basic/sbxprop.hxx b/basic/inc/basic/sbxprop.hxx
index 8b3bdb90d1f8..89d774d4967f 100644
--- a/basic/inc/basic/sbxprop.hxx
+++ b/basic/inc/basic/sbxprop.hxx
@@ -28,11 +28,11 @@ class BASIC_DLLPUBLIC SbxProperty : public SbxVariable
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_PROPERTY,1);
TYPEINFO();
- SbxProperty( const String& r, SbxDataType t );
+ SbxProperty( const OUString& r, SbxDataType t );
SbxProperty( const SbxProperty& r ) : SvRefBase( r ), SbxVariable( r ) {}
virtual ~SbxProperty();
SbxProperty& operator=( const SbxProperty& r )
- { SbxVariable::operator=( r ); return *this; }
+ { SbxVariable::operator=( r ); return *this; }
virtual SbxClassType GetClass() const;
};
diff --git a/basic/inc/basic/sbxvar.hxx b/basic/inc/basic/sbxvar.hxx
index 8bbd87b4871b..4d4a8b625bc3 100644
--- a/basic/inc/basic/sbxvar.hxx
+++ b/basic/inc/basic/sbxvar.hxx
@@ -21,7 +21,6 @@
#define SBXVAR_HXX
#include <rtl/ustring.hxx>
-#include <tools/string.hxx>
#include <com/sun/star/bridge/oleautomation/Decimal.hpp>
#include <basic/sbxcore.hxx>
#include "basicdllapi.h"
@@ -46,7 +45,7 @@ struct SbxValues
float nSingle;
double nDouble;
- rtl::OUString* pOUString;
+ OUString* pOUString;
SbxDecimal* pDecimal;
SbxBase* pObj;
@@ -81,7 +80,7 @@ struct SbxValues
SbxValues( unsigned int _nUInt ): nUInt( _nUInt ), eType(SbxUINT) {}
SbxValues( float _nSingle ): nSingle( _nSingle ), eType(SbxSINGLE) {}
SbxValues( double _nDouble ): nDouble( _nDouble ), eType(SbxDOUBLE) {}
- SbxValues( const ::rtl::OUString* _pString ): pOUString( (::rtl::OUString*)_pString ), eType(SbxSTRING) {}
+ SbxValues( const OUString* _pString ): pOUString( (OUString*)_pString ), eType(SbxSTRING) {}
SbxValues( SbxBase* _pObj ): pObj( _pObj ), eType(SbxOBJECT) {}
SbxValues( sal_Unicode* _pChar ): pChar( _pChar ), eType(SbxLPSTR) {}
SbxValues( void* _pData ): pData( _pData ), eType(SbxPOINTER) {}
@@ -95,8 +94,8 @@ class BASIC_DLLPUBLIC SbxValue : public SbxBase
BASIC_DLLPRIVATE SbxValue* TheRealValue() const;
protected:
SbxValues aData; // Data
- ::rtl::OUString aPic; // Picture-String
- String aToolString; // tool string copy
+ OUString aPic; // Picture-String
+ OUString aToolString; // tool string copy
virtual void Broadcast( sal_uIntPtr ); // Broadcast-Call
virtual ~SbxValue();
@@ -160,15 +159,14 @@ public:
double GetDouble() const;
double GetDate() const;
- sal_Bool GetBool() const;
- const String& GetString() const;
- const String& GetCoreString() const;
- rtl::OUString GetOUString() const;
+ sal_Bool GetBool() const;
+ const OUString& GetCoreString() const;
+ OUString GetOUString() const;
SbxBase* GetObject() const;
sal_uInt8 GetByte() const;
- sal_uInt16 GetUShort() const;
- sal_uInt32 GetULong() const;
+ sal_uInt16 GetUShort() const;
+ sal_uInt32 GetULong() const;
sal_Bool PutInteger( sal_Int16 );
sal_Bool PutLong( sal_Int32 );
@@ -177,10 +175,10 @@ public:
sal_Bool PutDate( double );
sal_Bool PutBool( sal_Bool );
sal_Bool PutErr( sal_uInt16 );
- sal_Bool PutStringExt( const ::rtl::OUString& ); // with extended analysis (International, "sal_True"/"sal_False")
+ sal_Bool PutStringExt( const OUString& ); // with extended analysis (International, "sal_True"/"sal_False")
sal_Bool PutInt64( sal_Int64 );
sal_Bool PutUInt64( sal_uInt64 );
- sal_Bool PutString( const ::rtl::OUString& );
+ sal_Bool PutString( const OUString& );
sal_Bool PutChar( sal_Unicode );
sal_Bool PutByte( sal_uInt8 );
sal_Bool PutUShort( sal_uInt16 );
@@ -194,15 +192,15 @@ public:
sal_Bool fillAutomationDecimal( com::sun::star::bridge::oleautomation::Decimal& rAutomationDec );
sal_Bool PutCurrency( const sal_Int64& );
// Interface for CDbl in Basic
- static SbxError ScanNumIntnl( const String& rSrc, double& nVal, bool bSingle = false );
+ static SbxError ScanNumIntnl( const OUString& rSrc, double& nVal, bool bSingle = false );
sal_Bool PutObject( SbxBase* );
virtual sal_Bool Convert( SbxDataType );
virtual sal_Bool Compute( SbxOperator, const SbxValue& );
virtual sal_Bool Compare( SbxOperator, const SbxValue& ) const;
- sal_Bool Scan( const String&, sal_uInt16* = NULL );
- void Format( String&, const String* = NULL ) const;
+ sal_Bool Scan( const OUString&, sal_uInt16* = NULL );
+ void Format( OUString&, const OUString* = NULL ) const;
// The following operators are definied for easier handling.
// TODO: Ensure error conditions (overflow, conversions)
@@ -291,9 +289,9 @@ class BASIC_DLLPUBLIC SbxVariable : public SbxValue
SbxVariableImpl* mpSbxVariableImpl; // Impl data
SfxBroadcaster* pCst; // Broadcaster, if needed
- String maName; // Name, if available
+ OUString maName; // Name, if available
SbxArrayRef mpPar; // Parameter-Array, if set
- sal_uInt16 nHash; // Hash-ID for search
+ sal_uInt16 nHash; // Hash-ID for search
BASIC_DLLPRIVATE SbxVariableImpl* getImpl( void );
@@ -314,8 +312,8 @@ public:
void Dump( SvStream&, sal_Bool bDumpAll=sal_False );
- virtual void SetName( const String& );
- virtual const String& GetName( SbxNameType = SbxNAME_NONE ) const;
+ virtual void SetName( const OUString& );
+ virtual const OUString& GetName( SbxNameType = SbxNAME_NONE ) const;
sal_uInt16 GetHashCode() const { return nHash; }
virtual void SetModified( sal_Bool );
@@ -342,13 +340,13 @@ public:
SbxObject* GetParent();
virtual void SetParent( SbxObject* );
- const String& GetDeclareClassName( void );
- void SetDeclareClassName( const String& );
+ const OUString& GetDeclareClassName( void );
+ void SetDeclareClassName( const OUString& );
void SetComListener( ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > xComListener,
- StarBASIC* pParentBasic );
+ StarBASIC* pParentBasic );
void ClearComListener( void );
- static sal_uInt16 MakeHashCode( const String& rName );
+ static sal_uInt16 MakeHashCode( const OUString& rName );
};
SV_DECL_REF(SbxVariable)
diff --git a/basic/qa/basic_coverage/string_left_01.vb b/basic/qa/basic_coverage/string_left_01.vb
new file mode 100644
index 000000000000..ef896bef1009
--- /dev/null
+++ b/basic/qa/basic_coverage/string_left_01.vb
@@ -0,0 +1,25 @@
+'
+' This file is part of the LibreOffice project.
+'
+' This Source Code Form is subject to the terms of the Mozilla Public
+' License, v. 2.0. If a copy of the MPL was not distributed with this
+' file, You can obtain one at http://mozilla.org/MPL/2.0/.
+'
+
+
+Function doUnitTest as Integer
+
+Dim s1 As String
+Dim s2 As String
+
+ s1 = "abc"
+
+ s2 = Left(s1, 2)
+
+ If s2 = "ab" Then
+ doUnitTest = 1
+ Else
+ doUnitTest = 0
+ End If
+
+End Function
diff --git a/basic/qa/basic_coverage/string_right_01.vb b/basic/qa/basic_coverage/string_right_01.vb
new file mode 100644
index 000000000000..65b16c6a8762
--- /dev/null
+++ b/basic/qa/basic_coverage/string_right_01.vb
@@ -0,0 +1,24 @@
+'
+' This file is part of the LibreOffice project.
+'
+' This Source Code Form is subject to the terms of the Mozilla Public
+' License, v. 2.0. If a copy of the MPL was not distributed with this
+' file, You can obtain one at http://mozilla.org/MPL/2.0/.
+'
+
+Function doUnitTest as Integer
+
+Dim s1 As String
+Dim s2 As String
+
+ s1 = "abc"
+
+ s2 = Right(s1, 2)
+
+ If s2 = "bc" Then
+ doUnitTest = 1
+ Else
+ doUnitTest = 0
+ End If
+
+End Function
diff --git a/basic/qa/cppunit/basic_coverage.cxx b/basic/qa/cppunit/basic_coverage.cxx
new file mode 100644
index 000000000000..d78a28f9efc9
--- /dev/null
+++ b/basic/qa/cppunit/basic_coverage.cxx
@@ -0,0 +1,200 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include "basictest.hxx"
+#include <osl/file.hxx>
+#include "basic/sbmod.hxx"
+#include "basic/sbmeth.hxx"
+
+
+namespace
+{
+
+class Coverage : public BasicTestBase
+{
+private:
+ bool m_bError;
+ int m_nb_tests;
+ int m_nb_tests_ok;
+ int m_nb_tests_ko;
+ int m_nb_tests_skipped;
+ OUString m_sCurrentTest;
+ void process_directory(OUString sDirName);
+ void process_file(OUString sFileName);
+ void run_test(OUString sFileName, OUString sCode);
+ void test_start(OUString /* sFileName */);
+ void test_failed(void);
+ void test_success(void);
+ void print_summary() {};
+
+ DECL_LINK( CoverageErrorHdl, StarBASIC * );
+
+public:
+ Coverage();
+ ~Coverage();
+
+ void Coverage_Iterator();
+
+ // Adds code needed to register the test suite
+ CPPUNIT_TEST_SUITE(Coverage);
+
+ // Declares the method as a test to call
+ CPPUNIT_TEST(Coverage_Iterator);
+
+ // End of test suite definition
+ CPPUNIT_TEST_SUITE_END();
+};
+
+IMPL_LINK( Coverage, CoverageErrorHdl, StarBASIC *, /*pBasic*/)
+{
+ fprintf(stderr,"%s:(%d:%d)\n",
+ rtl::OUStringToOString( m_sCurrentTest, RTL_TEXTENCODING_UTF8 ).getStr(),
+ StarBASIC::GetLine(), StarBASIC::GetCol1());
+ fprintf(stderr,"Basic error: %s\n", rtl::OUStringToOString( StarBASIC::GetErrorText(), RTL_TEXTENCODING_UTF8 ).getStr() );
+ m_bError = true;
+ return 0;
+}
+
+Coverage::Coverage()
+ : m_bError(false)
+ , m_nb_tests(0)
+ , m_nb_tests_ok(0)
+ , m_nb_tests_ko(0)
+ , m_nb_tests_skipped(0)
+{
+}
+
+Coverage::~Coverage()
+{
+ fprintf(stderr,"basic coverage Summary : skipped:%d pass:%d failed:%d\n", m_nb_tests_skipped, m_nb_tests_ok, m_nb_tests_ko );
+ if(m_nb_tests_ko)
+ {
+ CPPUNIT_FAIL("");
+ }
+}
+
+void Coverage::test_start(OUString sFileName)
+{
+ m_nb_tests += 1;
+ m_sCurrentTest = sFileName;
+}
+
+void Coverage::test_failed()
+{
+ m_nb_tests_ko += 1;
+ fprintf(stderr,"%s,FAIL\n", rtl::OUStringToOString( m_sCurrentTest, RTL_TEXTENCODING_UTF8 ).getStr() );
+
+}
+
+void Coverage::test_success()
+{
+ m_nb_tests_ok += 1;
+ fprintf(stderr,"%s,PASS\n", rtl::OUStringToOString( m_sCurrentTest, RTL_TEXTENCODING_UTF8 ).getStr() );
+}
+
+void Coverage::run_test(OUString /*sFileName*/, OUString sCode)
+{
+ bool result = false;
+ CPPUNIT_ASSERT_MESSAGE( "No resource manager", basicDLL().GetBasResMgr() != NULL );
+ StarBASICRef pBasic = new StarBASIC();
+ ResetError();
+ StarBASIC::SetGlobalErrorHdl( LINK( this, Coverage, CoverageErrorHdl ) );
+
+ SbModule* pMod = pBasic->MakeModule( rtl::OUString( "TestModule" ), sCode );
+ pMod->Compile();
+ if(!m_bError)
+ {
+ SbMethod* pMeth = static_cast<SbMethod*>(pMod->Find( rtl::OUString("doUnitTest"), SbxCLASS_METHOD ));
+ if(pMeth)
+ {
+ SbxVariableRef refTemp = pMeth;
+ // forces a broadcast
+ SbxVariableRef pNew = new SbxMethod( *((SbxMethod*)pMeth));
+ if(pNew->GetInteger() == 1 )
+ {
+ result = true;
+ }
+ }
+ }
+ if(result)
+ {
+ test_success();
+ }
+ else
+ {
+ test_failed();
+ }
+}
+
+void Coverage::process_file(OUString sFileName)
+{
+ osl::File aFile(sFileName);
+
+ test_start(sFileName);
+ if(osl::FileBase::E_None == aFile.open(osl_File_OpenFlag_Read))
+ {
+ sal_uInt64 size;
+ sal_uInt64 size_read;
+ if(osl::FileBase::E_None == aFile.getSize(size))
+ {
+ void* buffer = calloc(1, size+1);
+ CPPUNIT_ASSERT(buffer);
+ if(osl::FileBase::E_None == aFile.read( buffer, size, size_read))
+ {
+ if(size == size_read)
+ {
+ OUString sCode((sal_Char*)buffer, size, RTL_TEXTENCODING_UTF8);
+ run_test(sFileName, sCode);
+ return;
+ }
+ }
+ }
+ }
+ test_failed();
+}
+
+void Coverage::process_directory(OUString sDirName)
+{
+ osl::Directory aDir(sDirName);
+ osl::DirectoryItem aItem;
+ osl::FileStatus aFileStatus(osl_FileStatus_Mask_FileURL|osl_FileStatus_Mask_Type);
+
+ if(osl::FileBase::E_None == aDir.open())
+ {
+ while (aDir.getNextItem(aItem) == osl::FileBase::E_None)
+ {
+ aItem.getFileStatus(aFileStatus);
+ if(aFileStatus.isRegular())
+ {
+ process_file(aFileStatus.getFileURL());
+ }
+ }
+ }
+ else
+ {
+ }
+ fprintf(stderr,"end process directory\n");
+}
+
+void Coverage::Coverage_Iterator(void)
+{
+ OUString sDirName = getURLFromSrc("/basic/qa/basic_coverage/");
+
+ CPPUNIT_ASSERT(!sDirName.isEmpty());
+ process_directory(sDirName);
+}
+
+ CPPUNIT_TEST_SUITE_REGISTRATION(Coverage);
+
+}
+CPPUNIT_PLUGIN_IMPLEMENT();
+
+
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/basmgr/basicmanagerrepository.cxx b/basic/source/basmgr/basicmanagerrepository.cxx
index 1bfb2f281860..5f0078d67660 100644
--- a/basic/source/basmgr/basicmanagerrepository.cxx
+++ b/basic/source/basmgr/basicmanagerrepository.cxx
@@ -41,6 +41,7 @@
#include <unotools/eventlisteneradapter.hxx>
#include <rtl/instance.hxx>
+#include <rtl/strbuf.hxx>
#include <map>
@@ -284,12 +285,13 @@ namespace basic
// Determine Directory
SvtPathOptions aPathCFG;
- String aAppBasicDir( aPathCFG.GetBasicPath() );
- if ( !aAppBasicDir.Len() )
+ OUString aAppBasicDir( aPathCFG.GetBasicPath() );
+ if ( aAppBasicDir.isEmpty() )
+ {
aPathCFG.SetBasicPath(rtl::OUString("$(prog)"));
-
+ }
// soffice.new search only in user dir => first dir
- String aAppFirstBasicDir = aAppBasicDir.GetToken(1);
+ OUString aAppFirstBasicDir = aAppBasicDir.getToken(1, ';');
// Create basic and load it
// AppBasicDir is now a PATH
@@ -300,8 +302,8 @@ namespace basic
setApplicationBasicManager( pBasicManager );
// The first dir in the path as destination:
- String aFileName( aAppBasic.getName() );
- aAppBasic = INetURLObject( aAppBasicDir.GetToken(1) );
+ OUString aFileName( aAppBasic.getName() );
+ aAppBasic = INetURLObject( aAppBasicDir.getToken(1, ';') );
DBG_ASSERT(aAppBasic.GetProtocol() != INET_PROT_NOT_VALID,
rtl::OStringBuffer(RTL_CONSTASCII_STRINGPARAM("Invalid URL: \"")).
append(rtl::OUStringToOString(aAppBasicDir,
@@ -327,10 +329,8 @@ namespace basic
// StarDesktop
Reference< XMultiServiceFactory > xSMgr = ::comphelper::getProcessServiceFactory();
- pBasicManager->SetGlobalUNOConstant(
- "StarDesktop",
- makeAny( xSMgr->createInstance( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.frame.Desktop" ) ) ) )
- );
+ pBasicManager->SetGlobalUNOConstant( "StarDesktop",
+ makeAny( xSMgr->createInstance("com.sun.star.frame.Desktop")));
// (BasicLibraries and DialogLibraries have automatically been added in SetLibraryContainerInfo)
@@ -401,12 +401,16 @@ namespace basic
try
{
// ensure there's a standard library in the basic container
- ::rtl::OUString aStdLibName( RTL_CONSTASCII_USTRINGPARAM( "Standard" ) );
+ OUString aStdLibName( "Standard" );
if ( !_rxBasicLibraries->hasByName( aStdLibName ) )
+ {
_rxBasicLibraries->createLibrary( aStdLibName );
+ }
// as well as in the dialog container
if ( !_rxDialogLibraries->hasByName( aStdLibName ) )
+ {
_rxDialogLibraries->createLibrary( aStdLibName );
+ }
}
catch( const Exception& )
{
@@ -422,9 +426,10 @@ namespace basic
_out_rpBasicManager = 0;
Reference< XStorage > xStorage;
if ( !impl_getDocumentStorage_nothrow( _rxDocumentModel, xStorage ) )
+ {
// the document is not able to provide the storage it is based on.
return;
-
+ }
Reference< XPersistentLibraryContainer > xBasicLibs;
Reference< XPersistentLibraryContainer > xDialogLibs;
if ( !impl_getDocumentLibraryContainers_nothrow( _rxDocumentModel, xBasicLibs, xDialogLibs ) )
@@ -436,11 +441,11 @@ namespace basic
// load BASIC-manager
SfxErrorContext aErrContext( ERRCTX_SFX_LOADBASIC,
::comphelper::DocumentInfo::getDocumentTitle( _rxDocumentModel ) );
- String aAppBasicDir = SvtPathOptions().GetBasicPath();
+ OUString aAppBasicDir = SvtPathOptions().GetBasicPath();
// Storage and BaseURL are only needed by binary documents!
- SotStorageRef xDummyStor = new SotStorage( ::rtl::OUString() );
- _out_rpBasicManager = new BasicManager( *xDummyStor, String() /* TODO/LATER: xStorage */,
+ SotStorageRef xDummyStor = new SotStorage( OUString() );
+ _out_rpBasicManager = new BasicManager( *xDummyStor, OUString() /* TODO/LATER: xStorage */,
pAppBasic,
&aAppBasicDir, sal_True );
if ( !_out_rpBasicManager->GetErrors().empty() )
diff --git a/basic/source/basmgr/basmgr.cxx b/basic/source/basmgr/basmgr.cxx
index 3bd3a52438b2..14ffe0902826 100644
--- a/basic/source/basmgr/basmgr.cxx
+++ b/basic/source/basmgr/basmgr.cxx
@@ -143,17 +143,17 @@ typedef ::cppu::WeakImplHelper1< container::XContainerListener > ContainerListen
class BasMgrContainerListenerImpl: public ContainerListenerHelper
{
BasicManager* mpMgr;
- ::rtl::OUString maLibName; // empty -> no lib, but lib container
+ OUString maLibName; // empty -> no lib, but lib container
public:
- BasMgrContainerListenerImpl( BasicManager* pMgr, ::rtl::OUString aLibName )
+ BasMgrContainerListenerImpl( BasicManager* pMgr, OUString aLibName )
: mpMgr( pMgr )
, maLibName( aLibName ) {}
static void insertLibraryImpl( const uno::Reference< script::XLibraryContainer >& xScriptCont, BasicManager* pMgr,
- uno::Any aLibAny, ::rtl::OUString aLibName );
+ uno::Any aLibAny, OUString aLibName );
static void addLibraryModulesImpl( BasicManager* pMgr, uno::Reference< container::XNameAccess > xLibNameAccess,
- ::rtl::OUString aLibName );
+ OUString aLibName );
// XEventListener
@@ -175,7 +175,7 @@ public:
//============================================================================
void BasMgrContainerListenerImpl::insertLibraryImpl( const uno::Reference< script::XLibraryContainer >& xScriptCont,
- BasicManager* pMgr, uno::Any aLibAny, ::rtl::OUString aLibName )
+ BasicManager* pMgr, uno::Any aLibAny, OUString aLibName )
{
Reference< container::XNameAccess > xLibNameAccess;
aLibAny >>= xLibNameAccess;
@@ -208,21 +208,21 @@ void BasMgrContainerListenerImpl::insertLibraryImpl( const uno::Reference< scrip
void BasMgrContainerListenerImpl::addLibraryModulesImpl( BasicManager* pMgr,
- uno::Reference< container::XNameAccess > xLibNameAccess, ::rtl::OUString aLibName )
+ uno::Reference< container::XNameAccess > xLibNameAccess, OUString aLibName )
{
- uno::Sequence< ::rtl::OUString > aModuleNames = xLibNameAccess->getElementNames();
+ uno::Sequence< OUString > aModuleNames = xLibNameAccess->getElementNames();
sal_Int32 nModuleCount = aModuleNames.getLength();
StarBASIC* pLib = pMgr->GetLib( aLibName );
DBG_ASSERT( pLib, "BasMgrContainerListenerImpl::addLibraryModulesImpl: Unknown lib!");
if( pLib )
{
- const ::rtl::OUString* pNames = aModuleNames.getConstArray();
+ const OUString* pNames = aModuleNames.getConstArray();
for( sal_Int32 j = 0 ; j < nModuleCount ; j++ )
{
- ::rtl::OUString aModuleName = pNames[ j ];
+ OUString aModuleName = pNames[ j ];
uno::Any aElement = xLibNameAccess->getByName( aModuleName );
- ::rtl::OUString aMod;
+ OUString aMod;
aElement >>= aMod;
uno::Reference< vba::XVBAModuleInfo > xVBAModuleInfo( xLibNameAccess, uno::UNO_QUERY );
if ( xVBAModuleInfo.is() && xVBAModuleInfo->hasModuleInfo( aModuleName ) )
@@ -257,7 +257,7 @@ void SAL_CALL BasMgrContainerListenerImpl::elementInserted( const container::Con
throw( uno::RuntimeException )
{
sal_Bool bLibContainer = ( maLibName.getLength() == 0 );
- ::rtl::OUString aName;
+ OUString aName;
Event.Accessor >>= aName;
if( bLibContainer )
@@ -282,7 +282,7 @@ void SAL_CALL BasMgrContainerListenerImpl::elementInserted( const container::Con
SbModule* pMod = pLib->FindModule( aName );
if( !pMod )
{
- ::rtl::OUString aMod;
+ OUString aMod;
Event.Element >>= aMod;
uno::Reference< vba::XVBAModuleInfo > xVBAModuleInfo( Event.Source, uno::UNO_QUERY );
if ( xVBAModuleInfo.is() && xVBAModuleInfo->hasModuleInfo( aName ) )
@@ -303,7 +303,7 @@ void SAL_CALL BasMgrContainerListenerImpl::elementInserted( const container::Con
void SAL_CALL BasMgrContainerListenerImpl::elementReplaced( const container::ContainerEvent& Event )
throw( uno::RuntimeException )
{
- ::rtl::OUString aName;
+ OUString aName;
Event.Accessor >>= aName;
// Replace not possible for library container
@@ -316,7 +316,7 @@ void SAL_CALL BasMgrContainerListenerImpl::elementReplaced( const container::Con
if( pLib )
{
SbModule* pMod = pLib->FindModule( aName );
- ::rtl::OUString aMod;
+ OUString aMod;
Event.Element >>= aMod;
if( pMod )
@@ -333,7 +333,7 @@ void SAL_CALL BasMgrContainerListenerImpl::elementReplaced( const container::Con
void SAL_CALL BasMgrContainerListenerImpl::elementRemoved( const container::ContainerEvent& Event )
throw( uno::RuntimeException )
{
- ::rtl::OUString aName;
+ OUString aName;
Event.Accessor >>= aName;
sal_Bool bLibContainer = ( maLibName.getLength() == 0 );
@@ -358,7 +358,7 @@ void SAL_CALL BasMgrContainerListenerImpl::elementRemoved( const container::Cont
}
}
-BasicError::BasicError( sal_uIntPtr nId, sal_uInt16 nR, const String& rErrStr ) :
+BasicError::BasicError( sal_uIntPtr nId, sal_uInt16 nR, const OUString& rErrStr ) :
aErrStr( rErrStr )
{
nErrorId = nId;
@@ -379,10 +379,10 @@ class BasicLibInfo
{
private:
StarBASICRef xLib;
- String aLibName;
- String aStorageName; // String is sufficient, unique at runtime
- String aRelStorageName;
- String aPassword;
+ OUString aLibName;
+ OUString aStorageName; // string is sufficient, unique at runtime
+ OUString aRelStorageName;
+ OUString aPassword;
sal_Bool bDoLoad;
sal_Bool bReference;
@@ -397,13 +397,13 @@ public:
sal_Bool IsReference() const { return bReference; }
sal_Bool& IsReference() { return bReference; }
- sal_Bool IsExtern() const { return ! aStorageName.EqualsAscii(szImbedded); }
+ sal_Bool IsExtern() const { return ! aStorageName.equalsAscii(szImbedded); }
- void SetStorageName( const String& rName ) { aStorageName = rName; }
- const String& GetStorageName() const { return aStorageName; }
+ void SetStorageName( const OUString& rName ) { aStorageName = rName; }
+ const OUString& GetStorageName() const { return aStorageName; }
- void SetRelStorageName( const String& rN ) { aRelStorageName = rN; }
- const String& GetRelStorageName() const { return aRelStorageName; }
+ void SetRelStorageName( const OUString& rN ) { aRelStorageName = rN; }
+ const OUString& GetRelStorageName() const { return aRelStorageName; }
StarBASICRef GetLib() const
{
@@ -415,15 +415,15 @@ public:
StarBASICRef& GetLibRef() { return xLib; }
void SetLib( StarBASIC* pBasic ) { xLib = pBasic; }
- const String& GetLibName() const { return aLibName; }
- void SetLibName( const String& rName ) { aLibName = rName; }
+ const OUString& GetLibName() const { return aLibName; }
+ void SetLibName( const OUString& rName ) { aLibName = rName; }
// Only temporary for Load/Save
sal_Bool DoLoad() { return bDoLoad; }
- sal_Bool HasPassword() const { return aPassword.Len() != 0; }
- const String& GetPassword() const { return aPassword; }
- void SetPassword( const String& rNewPassword )
+ sal_Bool HasPassword() const { return !aPassword.isEmpty(); }
+ const OUString& GetPassword() const { return aPassword; }
+ void SetPassword( const OUString& rNewPassword )
{ aPassword = rNewPassword; }
sal_Bool IsPasswordVerified() const { return bPasswordVerified; }
void SetPasswordVerified() { bPasswordVerified = sal_True; }
@@ -447,7 +447,7 @@ private:
public:
~BasicLibs();
- String aBasicLibPath; // TODO: Should be member of manager, but currently not incompatible
+ OUString aBasicLibPath; // TODO: Should be member of manager, but currently not incompatible
BasicLibInfo* GetObject( size_t i );
BasicLibInfo* First();
BasicLibInfo* Next();
@@ -529,8 +529,8 @@ BasicLibInfo::BasicLibInfo()
bPasswordVerified = sal_False;
bDoLoad = sal_False;
mxScriptCont = NULL;
- aStorageName = rtl::OUString(szImbedded);
- aRelStorageName = rtl::OUString(szImbedded);
+ aStorageName = szImbedded;
+ aRelStorageName = szImbedded;
}
BasicLibInfo* BasicLibInfo::Create( SotStorageStream& rSStream )
@@ -554,15 +554,15 @@ BasicLibInfo* BasicLibInfo::Create( SotStorageStream& rSStream )
pInfo->bDoLoad = bDoLoad;
// The name of the lib...
- String aName = rSStream.ReadUniOrByteString(rSStream.GetStreamCharSet());
+ OUString aName = rSStream.ReadUniOrByteString(rSStream.GetStreamCharSet());
pInfo->SetLibName( aName );
// Absolute path...
- String aStorageName = rSStream.ReadUniOrByteString(rSStream.GetStreamCharSet());
+ OUString aStorageName = rSStream.ReadUniOrByteString(rSStream.GetStreamCharSet());
pInfo->SetStorageName( aStorageName );
// Relative path...
- String aRelStorageName = rSStream.ReadUniOrByteString(rSStream.GetStreamCharSet());
+ OUString aRelStorageName = rSStream.ReadUniOrByteString(rSStream.GetStreamCharSet());
pInfo->SetRelStorageName( aRelStorageName );
if ( nVer >= 2 )
@@ -577,21 +577,22 @@ BasicLibInfo* BasicLibInfo::Create( SotStorageStream& rSStream )
return pInfo;
}
-BasicManager::BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBASIC* pParentFromStdLib, String* pLibPath, bool bDocMgr ) : mbDocMgr( bDocMgr )
+BasicManager::BasicManager( SotStorage& rStorage, const OUString& rBaseURL, StarBASIC* pParentFromStdLib, OUString* pLibPath, bool bDocMgr ) : mbDocMgr( bDocMgr )
{
DBG_CTOR( BasicManager, 0 );
Init();
if( pLibPath )
+ {
pLibs->aBasicLibPath = *pLibPath;
-
- String aStorName( rStorage.GetName() );
+ }
+ OUString aStorName( rStorage.GetName() );
maStorageName = INetURLObject(aStorName, INET_PROT_FILE).GetMainURL( INetURLObject::NO_DECODE );
// If there is no Manager Stream, no further actions are necessary
- if ( rStorage.IsStream( String(RTL_CONSTASCII_USTRINGPARAM(szManagerStream)) ) )
+ if ( rStorage.IsStream( OUString(szManagerStream) ) )
{
LoadBasicManager( rStorage, rBaseURL );
// StdLib contains Parent:
@@ -606,8 +607,8 @@ BasicManager::BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBA
pStdLibInfo = CreateLibInfo();
pStdLibInfo->SetLib( pStdLib );
StarBASICRef xStdLib = pStdLibInfo->GetLib();
- xStdLib->SetName( rtl::OUString(szStdLibName) );
- pStdLibInfo->SetLibName( rtl::OUString(szStdLibName) );
+ xStdLib->SetName( OUString(szStdLibName) );
+ pStdLibInfo->SetLibName( OUString(szStdLibName) );
xStdLib->SetFlag( SBX_DONTSTORE | SBX_EXTSEARCH );
xStdLib->SetModified( sal_False );
}
@@ -630,13 +631,11 @@ BasicManager::BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBA
// #91626 Save all stream data to save it unmodified if basic isn't modified
// in an 6.0+ office. So also the old basic dialogs can be saved.
- SotStorageStreamRef xManagerStream = rStorage.OpenSotStream
- ( String(RTL_CONSTASCII_USTRINGPARAM(szManagerStream)), eStreamReadMode );
+ SotStorageStreamRef xManagerStream = rStorage.OpenSotStream( OUString(szManagerStream), eStreamReadMode );
mpImpl->mpManagerStream = new SvMemoryStream();
*static_cast<SvStream*>(&xManagerStream) >> *mpImpl->mpManagerStream;
- SotStorageRef xBasicStorage = rStorage.OpenSotStorage
- ( String(RTL_CONSTASCII_USTRINGPARAM(szBasicStorage)), eStorageReadMode, sal_False );
+ SotStorageRef xBasicStorage = rStorage.OpenSotStorage( OUString(szBasicStorage), eStorageReadMode, sal_False );
if( xBasicStorage.Is() && !xBasicStorage->GetError() )
{
sal_uInt16 nLibs = GetLibCount();
@@ -654,7 +653,7 @@ BasicManager::BasicManager( SotStorage& rStorage, const String& rBaseURL, StarBA
else
{
ImpCreateStdLib( pParentFromStdLib );
- if ( rStorage.IsStream( rtl::OUString(szOldManagerStream) ) )
+ if ( rStorage.IsStream( OUString(szOldManagerStream) ) )
LoadOldBasicManager( rStorage );
}
}
@@ -665,7 +664,7 @@ void copyToLibraryContainer( StarBASIC* pBasic, const LibraryContainerInfo& rInf
if ( !xScriptCont.is() )
return;
- String aLibName = pBasic->GetName();
+ OUString aLibName = pBasic->GetName();
if( !xScriptCont->hasByName( aLibName ) )
xScriptCont->createLibrary( aLibName );
@@ -681,10 +680,10 @@ void copyToLibraryContainer( StarBASIC* pBasic, const LibraryContainerInfo& rInf
SbModule* pModule = (SbModule*)pBasic->GetModules()->Get( nMod );
DBG_ASSERT( pModule, "Modul nicht erhalten!" );
- String aModName = pModule->GetName();
+ OUString aModName = pModule->GetName();
if( !xLib->hasByName( aModName ) )
{
- ::rtl::OUString aSource = pModule->GetSource32();
+ OUString aSource = pModule->GetSource32();
uno::Any aSourceAny;
aSourceAny <<= aSource;
xLib->insertByName( aModName, aSourceAny );
@@ -708,11 +707,11 @@ void BasicManager::SetLibraryContainerInfo( const LibraryContainerInfo& rInfo )
uno::Reference< script::XLibraryContainer > xScriptCont( mpImpl->maContainerInfo.mxScriptCont.get() );
StarBASIC* pStdLib = GetStdLib();
- String aLibName = pStdLib->GetName();
+ OUString aLibName = pStdLib->GetName();
if( xScriptCont.is() )
{
// Register listener for lib container
- ::rtl::OUString aEmptyLibName;
+ OUString aEmptyLibName;
uno::Reference< container::XContainerListener > xLibContainerListener
= static_cast< container::XContainerListener* >
( new BasMgrContainerListenerImpl( this, aEmptyLibName ) );
@@ -720,8 +719,8 @@ void BasicManager::SetLibraryContainerInfo( const LibraryContainerInfo& rInfo )
uno::Reference< container::XContainer> xLibContainer( xScriptCont, uno::UNO_QUERY );
xLibContainer->addContainerListener( xLibContainerListener );
- uno::Sequence< ::rtl::OUString > aScriptLibNames = xScriptCont->getElementNames();
- const ::rtl::OUString* pScriptLibName = aScriptLibNames.getConstArray();
+ uno::Sequence< OUString > aScriptLibNames = xScriptCont->getElementNames();
+ const OUString* pScriptLibName = aScriptLibNames.getConstArray();
sal_Int32 i, nNameCount = aScriptLibNames.getLength();
if( nNameCount )
@@ -774,27 +773,28 @@ void BasicManager::SetLibraryContainerInfo( const LibraryContainerInfo& rInfo )
SetGlobalUNOConstant( "DialogLibraries", makeAny( mpImpl->maContainerInfo.mxDialogCont ) );
}
-BasicManager::BasicManager( StarBASIC* pSLib, String* pLibPath, bool bDocMgr ) : mbDocMgr( bDocMgr )
+BasicManager::BasicManager( StarBASIC* pSLib, OUString* pLibPath, bool bDocMgr ) : mbDocMgr( bDocMgr )
{
DBG_CTOR( BasicManager, 0 );
Init();
DBG_ASSERT( pSLib, "BasicManager cannot be created with a NULL-Pointer!" );
if( pLibPath )
+ {
pLibs->aBasicLibPath = *pLibPath;
-
+ }
BasicLibInfo* pStdLibInfo = CreateLibInfo();
pStdLibInfo->SetLib( pSLib );
StarBASICRef xStdLib = pStdLibInfo->GetLib();
- xStdLib->SetName(rtl::OUString(szStdLibName));
- pStdLibInfo->SetLibName( rtl::OUString(szStdLibName) );
+ xStdLib->SetName(OUString(szStdLibName));
+ pStdLibInfo->SetLibName(OUString(szStdLibName) );
pSLib->SetFlag( SBX_DONTSTORE | SBX_EXTSEARCH );
// Save is only necessary if basic has changed
xStdLib->SetModified( sal_False );
}
-void BasicManager::ImpMgrNotLoaded( const String& rStorageName )
+void BasicManager::ImpMgrNotLoaded( const OUString& rStorageName )
{
// pErrInf is only destroyed if the error os processed by an
// ErrorHandler
@@ -805,8 +805,8 @@ void BasicManager::ImpMgrNotLoaded( const String& rStorageName )
BasicLibInfo* pStdLibInfo = CreateLibInfo();
pStdLibInfo->SetLib( new StarBASIC( NULL, mbDocMgr ) );
StarBASICRef xStdLib = pStdLibInfo->GetLib();
- xStdLib->SetName( rtl::OUString(szStdLibName) );
- pStdLibInfo->SetLibName( rtl::OUString(szStdLibName) );
+ xStdLib->SetName( OUString(szStdLibName) );
+ pStdLibInfo->SetLibName( OUString(szStdLibName) );
xStdLib->SetFlag( SBX_DONTSTORE | SBX_EXTSEARCH );
xStdLib->SetModified( sal_False );
}
@@ -817,20 +817,19 @@ void BasicManager::ImpCreateStdLib( StarBASIC* pParentFromStdLib )
BasicLibInfo* pStdLibInfo = CreateLibInfo();
StarBASIC* pStdLib = new StarBASIC( pParentFromStdLib, mbDocMgr );
pStdLibInfo->SetLib( pStdLib );
- pStdLib->SetName( rtl::OUString(szStdLibName) );
- pStdLibInfo->SetLibName( rtl::OUString(szStdLibName) );
+ pStdLib->SetName( OUString(szStdLibName) );
+ pStdLibInfo->SetLibName( OUString(szStdLibName) );
pStdLib->SetFlag( SBX_DONTSTORE | SBX_EXTSEARCH );
}
-void BasicManager::LoadBasicManager( SotStorage& rStorage, const String& rBaseURL, sal_Bool bLoadLibs )
+void BasicManager::LoadBasicManager( SotStorage& rStorage, const OUString& rBaseURL, sal_Bool bLoadLibs )
{
DBG_CHKTHIS( BasicManager, 0 );
- SotStorageStreamRef xManagerStream = rStorage.OpenSotStream
- ( String(RTL_CONSTASCII_USTRINGPARAM(szManagerStream)), eStreamReadMode );
+ SotStorageStreamRef xManagerStream = rStorage.OpenSotStream( OUString(szManagerStream), eStreamReadMode );
- String aStorName( rStorage.GetName() );
+ OUString aStorName( rStorage.GetName() );
// #i13114 removed, DBG_ASSERT( aStorName.Len(), "No Storage Name!" );
if ( !xManagerStream.Is() || xManagerStream->GetError() || ( xManagerStream->Seek( STREAM_SEEK_TO_END ) == 0 ) )
@@ -842,13 +841,15 @@ void BasicManager::LoadBasicManager( SotStorage& rStorage, const String& rBaseUR
maStorageName = INetURLObject(aStorName, INET_PROT_FILE).GetMainURL( INetURLObject::NO_DECODE );
// #i13114 removed, DBG_ASSERT(aStorageName.Len() != 0, "Bad storage name");
- String aRealStorageName = maStorageName; // for relative paths, can be modified through BaseURL
+ OUString aRealStorageName = maStorageName; // for relative paths, can be modified through BaseURL
- if ( rBaseURL.Len() )
+ if ( !rBaseURL.isEmpty() )
{
INetURLObject aObj( rBaseURL );
if ( aObj.GetProtocol() == INET_PROT_FILE )
+ {
aRealStorageName = aObj.PathToFileName();
+ }
}
xManagerStream->SetBufferSize( 1024 );
@@ -871,7 +872,7 @@ void BasicManager::LoadBasicManager( SotStorage& rStorage, const String& rBaseUR
// Correct absolute pathname if relative is existing.
// Always try relative first if there are two stands on disk
- if ( pInfo->GetRelStorageName().Len() && ( ! pInfo->GetRelStorageName().EqualsAscii(szImbedded) ) )
+ if ( !pInfo->GetRelStorageName().isEmpty() && ( ! pInfo->GetRelStorageName().equalsAscii(szImbedded) ) )
{
INetURLObject aObj( aRealStorageName, INET_PROT_FILE );
aObj.removeSegment();
@@ -880,12 +881,13 @@ void BasicManager::LoadBasicManager( SotStorage& rStorage, const String& rBaseUR
//*** TODO: Replace if still necessary
//*** TODO-End
- if ( pLibs->aBasicLibPath.Len() )
+ if ( ! pLibs->aBasicLibPath.isEmpty() )
{
// Search lib in path
- String aSearchFile = pInfo->GetRelStorageName();
+ OUString aSearchFile = pInfo->GetRelStorageName();
+ String aSearchFileOldFormat(aSearchFile);
SvtPathOptions aPathCFG;
- if( aPathCFG.SearchFile( aSearchFile, SvtPathOptions::PATH_BASIC ) )
+ if( aPathCFG.SearchFile( aSearchFileOldFormat, SvtPathOptions::PATH_BASIC ) )
{
pInfo->SetStorageName( aSearchFile );
}
@@ -896,7 +898,7 @@ void BasicManager::LoadBasicManager( SotStorage& rStorage, const String& rBaseUR
// Libs from external files should be loaded only when necessary.
// But references are loaded at once, otherwise some big customers get into trouble
if ( bLoadLibs && pInfo->DoLoad() &&
- ( ( !pInfo->IsExtern() ) || ( pInfo->IsReference() ) ) )
+ ( !pInfo->IsExtern() || pInfo->IsReference()))
{
ImpLoadLibrary( pInfo, &rStorage );
}
@@ -912,11 +914,10 @@ void BasicManager::LoadOldBasicManager( SotStorage& rStorage )
DBG_CHKTHIS( BasicManager, 0 );
- SotStorageStreamRef xManagerStream = rStorage.OpenSotStream
- ( rtl::OUString(szOldManagerStream), eStreamReadMode );
+ SotStorageStreamRef xManagerStream = rStorage.OpenSotStream( OUString(szOldManagerStream), eStreamReadMode );
- String aStorName( rStorage.GetName() );
- DBG_ASSERT( aStorName.Len(), "No Storage Name!" );
+ OUString aStorName( rStorage.GetName() );
+ DBG_ASSERT( aStorName.getLength(), "No Storage Name!" );
if ( !xManagerStream.Is() || xManagerStream->GetError() || ( xManagerStream->Seek( STREAM_SEEK_TO_END ) == 0 ) )
{
@@ -940,23 +941,23 @@ void BasicManager::LoadOldBasicManager( SotStorage& rStorage )
// and it proceeds ...
}
xManagerStream->Seek( nBasicEndOff+1 ); // +1: 0x00 as separator
- String aLibs = xManagerStream->ReadUniOrByteString(xManagerStream->GetStreamCharSet());
+ OUString aLibs = xManagerStream->ReadUniOrByteString(xManagerStream->GetStreamCharSet());
xManagerStream->SetBufferSize( 0 );
xManagerStream.Clear(); // Close stream
- if ( aLibs.Len() )
+ if ( !aLibs.isEmpty() )
{
- String aCurStorageName( aStorName );
+ OUString aCurStorageName( aStorName );
INetURLObject aCurStorage( aCurStorageName, INET_PROT_FILE );
sal_Int32 nLibs = comphelper::string::getTokenCount(aLibs, LIB_SEP);
for ( sal_Int32 nLib = 0; nLib < nLibs; nLib++ )
{
- String aLibInfo(comphelper::string::getToken(aLibs, nLib, LIB_SEP));
+ OUString aLibInfo(comphelper::string::getToken(aLibs, nLib, LIB_SEP));
// TODO: Remove == 2
DBG_ASSERT( ( comphelper::string::getTokenCount(aLibInfo, LIBINFO_SEP) == 2 ) || ( comphelper::string::getTokenCount(aLibInfo, LIBINFO_SEP) == 3 ), "Ungueltige Lib-Info!" );
- String aLibName( aLibInfo.GetToken( 0, LIBINFO_SEP ) );
- String aLibAbsStorageName( aLibInfo.GetToken( 1, LIBINFO_SEP ) );
- String aLibRelStorageName( aLibInfo.GetToken( 2, LIBINFO_SEP ) );
+ OUString aLibName( aLibInfo.getToken( 0, LIBINFO_SEP ) );
+ OUString aLibAbsStorageName( aLibInfo.getToken( 1, LIBINFO_SEP ) );
+ OUString aLibRelStorageName( aLibInfo.getToken( 2, LIBINFO_SEP ) );
INetURLObject aLibAbsStorage( aLibAbsStorageName, INET_PROT_FILE );
INetURLObject aLibRelStorage( aStorName );
@@ -966,8 +967,10 @@ void BasicManager::LoadOldBasicManager( SotStorage& rStorage )
DBG_ASSERT(!bWasAbsolute, "RelStorageName was absolute!" );
SotStorageRef xStorageRef;
- if ( ( aLibAbsStorage == aCurStorage ) || ( aLibRelStorageName.EqualsAscii(szImbedded) ) )
+ if ( ( aLibAbsStorage == aCurStorage ) || ( aLibRelStorageName.equalsAscii(szImbedded) ) )
+ {
xStorageRef = &rStorage;
+ }
else
{
xStorageRef = new SotStorage( sal_False, aLibAbsStorage.GetMainURL
@@ -977,7 +980,9 @@ void BasicManager::LoadOldBasicManager( SotStorage& rStorage )
GetMainURL( INetURLObject::NO_DECODE ), eStorageReadMode, sal_True );
}
if ( xStorageRef.Is() )
+ {
AddLib( *xStorageRef, aLibName, sal_False );
+ }
else
{
StringErrorInfo* pErrInf = new StringErrorInfo( ERRCODE_BASMGR_LIBLOAD, aStorName, ERRCODE_BUTTON_OK );
@@ -1007,7 +1012,7 @@ void BasicManager::LegacyDeleteBasicManager( BasicManager*& _rpManager )
}
-bool BasicManager::HasExeCode( const String& sLib )
+bool BasicManager::HasExeCode( const OUString& sLib )
{
StarBASIC* pLib = GetLib(sLib);
if ( pLib )
@@ -1048,15 +1053,16 @@ sal_Bool BasicManager::ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurS
DBG_ASSERT( pLibInfo, "LibInfo!?" );
- String aStorageName( pLibInfo->GetStorageName() );
- if ( !aStorageName.Len() || ( aStorageName.EqualsAscii(szImbedded) ) )
+ OUString aStorageName( pLibInfo->GetStorageName() );
+ if ( aStorageName.isEmpty() || ( aStorageName.equalsAscii(szImbedded) ) )
+ {
aStorageName = GetStorageName();
-
+ }
SotStorageRef xStorage;
// The current must not be opened again...
if ( pCurStorage )
{
- String aStorName( pCurStorage->GetName() );
+ OUString aStorName( pCurStorage->GetName() );
// #i13114 removed, DBG_ASSERT( aStorName.Len(), "No Storage Name!" );
INetURLObject aCurStorageEntry(aStorName, INET_PROT_FILE);
@@ -1066,14 +1072,16 @@ sal_Bool BasicManager::ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurS
// #i13114 removed, DBG_ASSERT(aCurStorageEntry.GetMainURL( INetURLObject::NO_DECODE ).Len() != 0, "Bad storage name");
if ( aCurStorageEntry == aStorageEntry )
+ {
xStorage = pCurStorage;
+ }
}
if ( !xStorage.Is() )
+ {
xStorage = new SotStorage( sal_False, aStorageName, eStorageReadMode );
-
- SotStorageRef xBasicStorage = xStorage->OpenSotStorage
- ( String(RTL_CONSTASCII_USTRINGPARAM(szBasicStorage)), eStorageReadMode, sal_False );
+ }
+ SotStorageRef xBasicStorage = xStorage->OpenSotStorage( OUString(szBasicStorage), eStorageReadMode, sal_False );
if ( !xBasicStorage.Is() || xBasicStorage->GetError() )
{
@@ -1097,7 +1105,9 @@ sal_Bool BasicManager::ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurS
if ( !bInfosOnly )
{
if ( !pLibInfo->GetLib().Is() )
+ {
pLibInfo->SetLib( new StarBASIC( GetStdLib(), mbDocMgr ) );
+ }
xBasicStream->SetBufferSize( 1024 );
xBasicStream->Seek( STREAM_SEEK_TO_BEGIN );
bLoaded = ImplLoadBasic( *xBasicStream, pLibInfo->GetLibRef() );
@@ -1130,11 +1140,11 @@ sal_Bool BasicManager::ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurS
*xBasicStream >> nPasswordMarker;
if ( ( nPasswordMarker == PASSWORD_MARKER ) && !xBasicStream->IsEof() )
{
- String aPassword = xBasicStream->ReadUniOrByteString(
+ OUString aPassword = xBasicStream->ReadUniOrByteString(
xBasicStream->GetStreamCharSet());
pLibInfo->SetPassword( aPassword );
}
- xBasicStream->SetCryptMaskKey(rtl::OString());
+ xBasicStream->SetCryptMaskKey(OString());
CheckModules( pLibInfo->GetLib(), pLibInfo->IsReference() );
}
return bLoaded;
@@ -1177,7 +1187,9 @@ sal_Bool BasicManager::ImplLoadBasic( SvStream& rStrm, StarBASICRef& rOldBasic )
{
pNew->SetParent( rOldBasic->GetParent() );
if( pNew->GetParent() )
+ {
pNew->GetParent()->Insert( pNew );
+ }
pNew->SetFlag( SBX_EXTSEARCH );
}
rOldBasic = pNew;
@@ -1190,15 +1202,18 @@ sal_Bool BasicManager::ImplLoadBasic( SvStream& rStrm, StarBASICRef& rOldBasic )
}
}
if ( bProtected )
- rStrm.SetCryptMaskKey(rtl::OString());
+ {
+ rStrm.SetCryptMaskKey(OString());
+ }
return bLoaded;
}
void BasicManager::CheckModules( StarBASIC* pLib, sal_Bool bReference ) const
{
if ( !pLib )
+ {
return;
-
+ }
sal_Bool bModified = pLib->IsModified();
for ( sal_uInt16 nMod = 0; nMod < pLib->GetModules()->Count(); nMod++ )
@@ -1206,7 +1221,9 @@ void BasicManager::CheckModules( StarBASIC* pLib, sal_Bool bReference ) const
SbModule* pModule = (SbModule*)pLib->GetModules()->Get( nMod );
DBG_ASSERT( pModule, "Modul nicht erhalten!" );
if ( !pModule->IsCompiled() && !StarBASIC::GetErrorCode() )
+ {
pLib->Compile( pModule );
+ }
}
// #67477, AB 8.12.99 On demand compile in referenced libs should not
@@ -1218,20 +1235,21 @@ void BasicManager::CheckModules( StarBASIC* pLib, sal_Bool bReference ) const
}
}
-StarBASIC* BasicManager::AddLib( SotStorage& rStorage, const String& rLibName, sal_Bool bReference )
+StarBASIC* BasicManager::AddLib( SotStorage& rStorage, const OUString& rLibName, sal_Bool bReference )
{
DBG_CHKTHIS( BasicManager, 0 );
- String aStorName( rStorage.GetName() );
- DBG_ASSERT( aStorName.Len(), "No Storage Name!" );
+ OUString aStorName( rStorage.GetName() );
+ DBG_ASSERT( !aStorName.isEmpty(), "No Storage Name!" );
- String aStorageName = INetURLObject(aStorName, INET_PROT_FILE).GetMainURL( INetURLObject::NO_DECODE );
- DBG_ASSERT(aStorageName.Len() != 0, "Bad storage name");
+ OUString aStorageName = INetURLObject(aStorName, INET_PROT_FILE).GetMainURL( INetURLObject::NO_DECODE );
+ DBG_ASSERT(!aStorageName.isEmpty(), "Bad storage name");
- String aNewLibName( rLibName );
+ OUString aNewLibName( rLibName );
while ( HasLib( aNewLibName ) )
- aNewLibName += '_';
-
+ {
+ aNewLibName += "_";
+ }
BasicLibInfo* pLibInfo = CreateLibInfo();
// Use original name otherwise ImpLoadLibrary failes...
pLibInfo->SetLibName( rLibName );
@@ -1245,18 +1263,19 @@ StarBASIC* BasicManager::AddLib( SotStorage& rStorage, const String& rLibName, s
if ( bLoaded )
{
if ( aNewLibName != rLibName )
+ {
SetLibName( nLibId, aNewLibName );
-
+ }
if ( bReference )
{
pLibInfo->GetLib()->SetModified( sal_False ); // Don't save in this case
- pLibInfo->SetRelStorageName( String() );
+ pLibInfo->SetRelStorageName( OUString() );
pLibInfo->IsReference() = sal_True;
}
else
{
pLibInfo->GetLib()->SetModified( sal_True ); // Must be saved after Add!
- pLibInfo->SetStorageName( rtl::OUString(szImbedded) ); // Save in BasicManager-Storage
+ pLibInfo->SetStorageName( OUString(szImbedded) ); // Save in BasicManager-Storage
}
}
else
@@ -1265,10 +1284,8 @@ StarBASIC* BasicManager::AddLib( SotStorage& rStorage, const String& rLibName, s
pLibInfo = 0;
}
- if( pLibInfo )
- return &*pLibInfo->GetLib() ;
- else
- return 0;
+ return pLibInfo ? &*pLibInfo->GetLib() : 0;
+
}
sal_Bool BasicManager::IsReference( sal_uInt16 nLib )
@@ -1278,8 +1295,9 @@ sal_Bool BasicManager::IsReference( sal_uInt16 nLib )
BasicLibInfo* pLibInfo = pLibs->GetObject( nLib );
DBG_ASSERT( pLibInfo, "Lib?!" );
if ( pLibInfo )
+ {
return pLibInfo->IsReference();
-
+ }
return sal_False;
}
@@ -1311,14 +1329,18 @@ sal_Bool BasicManager::RemoveLib( sal_uInt16 nLib, sal_Bool bDelBasicFromStorage
{
SotStorageRef xStorage;
if ( !pLibInfo->IsExtern() )
+ {
xStorage = new SotStorage( sal_False, GetStorageName() );
+ }
else
+ {
xStorage = new SotStorage( sal_False, pLibInfo->GetStorageName() );
+ }
- if ( xStorage->IsStorage( String(RTL_CONSTASCII_USTRINGPARAM(szBasicStorage)) ) )
+ if ( xStorage->IsStorage( OUString(szBasicStorage) ) )
{
SotStorageRef xBasicStorage = xStorage->OpenSotStorage
- ( String(RTL_CONSTASCII_USTRINGPARAM(szBasicStorage)), STREAM_STD_READWRITE, sal_False );
+ ( OUString(szBasicStorage), STREAM_STD_READWRITE, sal_False );
if ( !xBasicStorage.Is() || xBasicStorage->GetError() )
{
@@ -1337,7 +1359,7 @@ sal_Bool BasicManager::RemoveLib( sal_uInt16 nLib, sal_Bool bDelBasicFromStorage
if ( aInfoList.empty() )
{
xBasicStorage.Clear();
- xStorage->Remove( String(RTL_CONSTASCII_USTRINGPARAM(szBasicStorage)) );
+ xStorage->Remove( OUString(szBasicStorage) );
xStorage->Commit();
// If no further Streams or SubStorages available,
// delete the Storage, too.
@@ -1345,7 +1367,7 @@ sal_Bool BasicManager::RemoveLib( sal_uInt16 nLib, sal_Bool bDelBasicFromStorage
xStorage->FillInfoList( &aInfoList );
if ( aInfoList.empty() )
{
- String aName_( xStorage->GetName() );
+ OUString aName_( xStorage->GetName() );
xStorage.Clear();
//*** TODO: Replace if still necessary
//SfxContentHelper::Kill( aName );
@@ -1356,7 +1378,9 @@ sal_Bool BasicManager::RemoveLib( sal_uInt16 nLib, sal_Bool bDelBasicFromStorage
}
}
if ( pLibInfo->GetLib().Is() )
+ {
GetStdLib()->Remove( pLibInfo->GetLib() );
+ }
delete pLibs->Remove( pLibInfo );
return sal_True; // Remove was successful, del unimportant
}
@@ -1373,7 +1397,9 @@ StarBASIC* BasicManager::GetLib( sal_uInt16 nLib ) const
BasicLibInfo* pInf = pLibs->GetObject( nLib );
DBG_ASSERT( pInf, "Lib existiert nicht!" );
if ( pInf )
+ {
return pInf->GetLib();
+ }
return 0;
}
@@ -1384,52 +1410,55 @@ StarBASIC* BasicManager::GetStdLib() const
return pLib;
}
-StarBASIC* BasicManager::GetLib( const String& rName ) const
+StarBASIC* BasicManager::GetLib( const OUString& rName ) const
{
DBG_CHKTHIS( BasicManager, 0 );
BasicLibInfo* pInf = pLibs->First();
while ( pInf )
{
- if ( pInf->GetLibName().CompareIgnoreCaseToAscii( rName ) == COMPARE_EQUAL )// Check if available...
+ if ( pInf->GetLibName().equalsIgnoreAsciiCase( rName ))// Check if available...
+ {
return pInf->GetLib();
-
+ }
pInf = pLibs->Next();
}
return 0;
}
-sal_uInt16 BasicManager::GetLibId( const String& rName ) const
+sal_uInt16 BasicManager::GetLibId( const OUString& rName ) const
{
DBG_CHKTHIS( BasicManager, 0 );
BasicLibInfo* pInf = pLibs->First();
while ( pInf )
{
- if ( pInf->GetLibName().CompareIgnoreCaseToAscii( rName ) == COMPARE_EQUAL )
+ if ( pInf->GetLibName().equalsIgnoreAsciiCase( rName ))
+ {
return (sal_uInt16)pLibs->GetCurPos();
-
+ }
pInf = pLibs->Next();
}
return LIB_NOTFOUND;
}
-sal_Bool BasicManager::HasLib( const String& rName ) const
+sal_Bool BasicManager::HasLib( const OUString& rName ) const
{
DBG_CHKTHIS( BasicManager, 0 );
BasicLibInfo* pInf = pLibs->First();
while ( pInf )
{
- if ( pInf->GetLibName().CompareIgnoreCaseToAscii( rName ) == COMPARE_EQUAL )
+ if ( pInf->GetLibName().equalsIgnoreAsciiCase(rName))
+ {
return sal_True;
-
+ }
pInf = pLibs->Next();
}
return sal_False;
}
-sal_Bool BasicManager::SetLibName( sal_uInt16 nLib, const String& rName )
+sal_Bool BasicManager::SetLibName( sal_uInt16 nLib, const OUString& rName )
{
DBG_CHKTHIS( BasicManager, 0 );
@@ -1449,15 +1478,17 @@ sal_Bool BasicManager::SetLibName( sal_uInt16 nLib, const String& rName )
return sal_False;
}
-String BasicManager::GetLibName( sal_uInt16 nLib )
+OUString BasicManager::GetLibName( sal_uInt16 nLib )
{
DBG_CHKTHIS( BasicManager, 0 );
BasicLibInfo* pLibInfo = pLibs->GetObject( nLib );
DBG_ASSERT( pLibInfo, "Lib?!" );
if ( pLibInfo )
+ {
return pLibInfo->GetLibName();
- return String();
+ }
+ return OUString();
}
sal_Bool BasicManager::LoadLib( sal_uInt16 nLib )
@@ -1472,7 +1503,7 @@ sal_Bool BasicManager::LoadLib( sal_uInt16 nLib )
uno::Reference< script::XLibraryContainer > xLibContainer = pLibInfo->GetLibraryContainer();
if( xLibContainer.is() )
{
- String aLibName = pLibInfo->GetLibName();
+ OUString aLibName = pLibInfo->GetLibName();
xLibContainer->loadLibrary( aLibName );
bDone = xLibContainer->isLibraryLoaded( aLibName );;
}
@@ -1489,18 +1520,19 @@ sal_Bool BasicManager::LoadLib( sal_uInt16 nLib )
}
else
{
- StringErrorInfo* pErrInf = new StringErrorInfo( ERRCODE_BASMGR_LIBLOAD, rtl::OUString(), ERRCODE_BUTTON_OK );
- aErrors.push_back(BasicError(*pErrInf, BASERR_REASON_LIBNOTFOUND, rtl::OUString::valueOf(static_cast<sal_Int32>(nLib))));
+ StringErrorInfo* pErrInf = new StringErrorInfo( ERRCODE_BASMGR_LIBLOAD, OUString(), ERRCODE_BUTTON_OK );
+ aErrors.push_back(BasicError(*pErrInf, BASERR_REASON_LIBNOTFOUND, OUString::valueOf(static_cast<sal_Int32>(nLib))));
}
return bDone;
}
-StarBASIC* BasicManager::CreateLib( const String& rLibName )
+StarBASIC* BasicManager::CreateLib( const OUString& rLibName )
{
DBG_CHKTHIS( BasicManager, 0 );
if ( GetLib( rLibName ) )
+ {
return 0;
-
+ }
BasicLibInfo* pLibInfo = CreateLibInfo();
StarBASIC* pNew = new StarBASIC( GetStdLib(), mbDocMgr );
GetStdLib()->Insert( pNew );
@@ -1512,14 +1544,14 @@ StarBASIC* BasicManager::CreateLib( const String& rLibName )
}
// For XML import/export:
-StarBASIC* BasicManager::CreateLib
- ( const String& rLibName, const String& Password, const String& LinkTargetURL )
+StarBASIC* BasicManager::CreateLib( const OUString& rLibName, const OUString& Password,
+ const OUString& LinkTargetURL )
{
// Ask if lib exists because standard lib is always there
StarBASIC* pLib = GetLib( rLibName );
if( !pLib )
{
- if( LinkTargetURL.Len() != 0 )
+ if( !LinkTargetURL.isEmpty())
{
SotStorageRef xStorage = new SotStorage( sal_False, LinkTargetURL, STREAM_READ | STREAM_SHARE_DENYWRITE );
if( !xStorage->GetError() )
@@ -1532,7 +1564,7 @@ StarBASIC* BasicManager::CreateLib
else
{
pLib = CreateLib( rLibName );
- if( Password.Len() != 0 )
+ if( Password.isEmpty())
{
BasicLibInfo* pLibInfo = FindLibInfo( pLib );
pLibInfo ->SetPassword( Password );
@@ -1543,13 +1575,14 @@ StarBASIC* BasicManager::CreateLib
return pLib;
}
-StarBASIC* BasicManager::CreateLibForLibContainer( const String& rLibName,
+StarBASIC* BasicManager::CreateLibForLibContainer( const OUString& rLibName,
const uno::Reference< script::XLibraryContainer >& xScriptCont )
{
DBG_CHKTHIS( BasicManager, 0 );
if ( GetLib( rLibName ) )
+ {
return 0;
-
+ }
BasicLibInfo* pLibInfo = CreateLibInfo();
StarBASIC* pNew = new StarBASIC( GetStdLib(), mbDocMgr );
GetStdLib()->Insert( pNew );
@@ -1570,8 +1603,9 @@ BasicLibInfo* BasicManager::FindLibInfo( StarBASIC* pBasic ) const
while ( pInf )
{
if ( pInf->GetLib() == pBasic )
+ {
return pInf;
-
+ }
pInf = ((BasicManager*)this)->pLibs->Next();
}
return 0;
@@ -1586,8 +1620,9 @@ sal_Bool BasicManager::IsBasicModified() const
while ( pInf )
{
if ( pInf->GetLib().Is() && pInf->GetLib()->IsModified() )
+ {
return sal_True;
-
+ }
pInf = pLibs->Next();
}
return sal_False;
@@ -1617,7 +1652,7 @@ uno::Any BasicManager::SetGlobalUNOConstant( const sal_Char* _pAsciiName, const
if ( !pStandardLib )
return aOldValue;
- ::rtl::OUString sVarName( ::rtl::OUString::createFromAscii( _pAsciiName ) );
+ OUString sVarName( ::rtl::OUString::createFromAscii( _pAsciiName ) );
// obtain the old value
SbxVariable* pVariable = pStandardLib->Find( sVarName, SbxCLASS_OBJECT );
@@ -1631,16 +1666,16 @@ uno::Any BasicManager::SetGlobalUNOConstant( const sal_Char* _pAsciiName, const
return aOldValue;
}
-bool BasicManager::LegacyPsswdBinaryLimitExceeded( uno::Sequence< rtl::OUString >& _out_rModuleNames )
+bool BasicManager::LegacyPsswdBinaryLimitExceeded( uno::Sequence< OUString >& _out_rModuleNames )
{
try
{
uno::Reference< container::XNameAccess > xScripts( GetScriptLibraryContainer(), uno::UNO_QUERY_THROW );
uno::Reference< script::XLibraryContainerPassword > xPassword( GetScriptLibraryContainer(), uno::UNO_QUERY_THROW );
- uno::Sequence< ::rtl::OUString > aNames( xScripts->getElementNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pNamesEnd = aNames.getConstArray() + aNames.getLength();
+ uno::Sequence< OUString > aNames( xScripts->getElementNames() );
+ const OUString* pNames = aNames.getConstArray();
+ const OUString* pNamesEnd = aNames.getConstArray() + aNames.getLength();
for ( ; pNames != pNamesEnd; ++pNames )
{
if( !xPassword->isLibraryPasswordProtected( *pNames ) )
@@ -1651,14 +1686,14 @@ bool BasicManager::LegacyPsswdBinaryLimitExceeded( uno::Sequence< rtl::OUString
continue;
uno::Reference< container::XNameAccess > xScriptLibrary( xScripts->getByName( *pNames ), uno::UNO_QUERY_THROW );
- uno::Sequence< ::rtl::OUString > aElementNames( xScriptLibrary->getElementNames() );
+ uno::Sequence< OUString > aElementNames( xScriptLibrary->getElementNames() );
sal_Int32 nLen = aElementNames.getLength();
- uno::Sequence< ::rtl::OUString > aBigModules( nLen );
+ uno::Sequence< OUString > aBigModules( nLen );
sal_Int32 nBigModules = 0;
- const ::rtl::OUString* pElementNames = aElementNames.getConstArray();
- const ::rtl::OUString* pElementNamesEnd = aElementNames.getConstArray() + aElementNames.getLength();
+ const OUString* pElementNames = aElementNames.getConstArray();
+ const OUString* pElementNamesEnd = aElementNames.getConstArray() + aElementNames.getLength();
for ( ; pElementNames != pElementNamesEnd; ++pElementNames )
{
SbModule* pMod = pBasicLib->FindModule( *pElementNames );
@@ -1684,13 +1719,21 @@ bool BasicManager::LegacyPsswdBinaryLimitExceeded( uno::Sequence< rtl::OUString
namespace
{
- SbMethod* lcl_queryMacro( BasicManager* i_manager, String const& i_fullyQualifiedName )
+ SbMethod* lcl_queryMacro( BasicManager* i_manager, OUString const& i_fullyQualifiedName )
{
- sal_uInt16 nLast = 0;
- String sMacro = i_fullyQualifiedName;
- String sLibName = sMacro.GetToken( 0, '.', nLast );
- String sModule = sMacro.GetToken( 0, '.', nLast );
- sMacro.Erase( 0, nLast );
+ sal_Int32 nLast = 0;
+ const OUString sParse = i_fullyQualifiedName;
+ OUString sLibName = sParse.getToken( (sal_Int32)0, (sal_Unicode)'.', nLast );
+ OUString sModule = sParse.getToken( (sal_Int32)0, (sal_Unicode)'.', nLast );
+ OUString sMacro;
+ if(nLast >= 0)
+ {
+ sMacro = OUString(sParse.getStr() + nLast, sParse.getLength() - nLast );
+ }
+ else
+ {
+ sMacro = sParse;
+ }
utl::TransliterationWrapper& rTransliteration = SbGlobal::GetTransliteration();
sal_uInt16 nLibCount = i_manager->GetLibCount();
@@ -1715,7 +1758,9 @@ namespace
{
SbMethod* pMethod = (SbMethod*)pMod->Find( sMacro, SbxCLASS_METHOD );
if( pMethod )
+ {
return pMethod;
+ }
}
}
}
@@ -1725,12 +1770,12 @@ namespace
}
}
-bool BasicManager::HasMacro( String const& i_fullyQualifiedName ) const
+bool BasicManager::HasMacro( OUString const& i_fullyQualifiedName ) const
{
return ( NULL != lcl_queryMacro( const_cast< BasicManager* >( this ), i_fullyQualifiedName ) );
}
-ErrCode BasicManager::ExecuteMacro( String const& i_fullyQualifiedName, SbxArray* i_arguments, SbxValue* i_retValue )
+ErrCode BasicManager::ExecuteMacro( OUString const& i_fullyQualifiedName, SbxArray* i_arguments, SbxValue* i_retValue )
{
SbMethod* pMethod = lcl_queryMacro( this, i_fullyQualifiedName );
ErrCode nError = 0;
@@ -1745,50 +1790,56 @@ ErrCode BasicManager::ExecuteMacro( String const& i_fullyQualifiedName, SbxArray
return nError;
}
-ErrCode BasicManager::ExecuteMacro( String const& i_fullyQualifiedName, String const& i_commaSeparatedArgs, SbxValue* i_retValue )
+ErrCode BasicManager::ExecuteMacro( OUString const& i_fullyQualifiedName, OUString const& i_commaSeparatedArgs, SbxValue* i_retValue )
{
SbMethod* pMethod = lcl_queryMacro( this, i_fullyQualifiedName );
if ( !pMethod )
+ {
return ERRCODE_BASIC_PROC_UNDEFINED;
-
+ }
// arguments must be quoted
- String sQuotedArgs;
- String sArgs( i_commaSeparatedArgs );
- if ( sArgs.Len()<2 || sArgs.GetBuffer()[1] == '\"')
+ OUString sQuotedArgs;
+ OUStringBuffer sArgs( i_commaSeparatedArgs );
+ if ( sArgs.getLength()<2 || sArgs[1] == '\"')
+ {
// no args or already quoted args
- sQuotedArgs = sArgs;
+ sQuotedArgs = sArgs.makeStringAndClear();
+ }
else
{
// quote parameters
- sArgs.Erase( 0, 1 );
- sArgs.Erase( sArgs.Len()-1, 1 );
-
- sQuotedArgs = '(';
+ sArgs.remove( 0, 1 );
+ sArgs.remove( sArgs.getLength() - 1, 1 );
- sal_Int32 nCount = comphelper::string::getTokenCount(sArgs, ',');
- for (sal_Int32 n=0; n < nCount; ++n)
+ sQuotedArgs = "(";
+ OUString sArgs2 = sArgs.makeStringAndClear();
+ sal_Int32 nCount = comphelper::string::getTokenCount(sArgs2, ',');
+ for (sal_Int32 n = 0; n < nCount; ++n)
{
- sQuotedArgs += '\"';
- sQuotedArgs += comphelper::string::getToken(sArgs, n, ',');
- sQuotedArgs += '\"';
- if ( n<nCount-1 )
- sQuotedArgs += ',';
+ sQuotedArgs += "\"";
+ sQuotedArgs += comphelper::string::getToken(sArgs2, n, ',');
+ sQuotedArgs += "\"";
+ if ( n < nCount - 1 )
+ {
+ sQuotedArgs += ",";
+ }
}
- sQuotedArgs += ')';
+ sQuotedArgs += ")";
}
// add quoted arguments and do the call
- rtl::OUString sCall = rtl::OUStringBuffer().
- append('[').
- append(pMethod->GetName()).
- append(sQuotedArgs).
- append(']').
- makeStringAndClear();
+ OUString sCall;
+ sCall += "[";
+ sCall += pMethod->GetName();
+ sCall += sQuotedArgs;
+ sCall += "]";
SbxVariable* pRet = pMethod->GetParent()->Execute( sCall );
if ( pRet && ( pRet != pMethod ) )
+ {
*i_retValue = *pRet;
+ }
return SbxBase::GetError();
}
@@ -1796,20 +1847,20 @@ ErrCode BasicManager::ExecuteMacro( String const& i_fullyQualifiedName, String c
class ModuleInfo_Impl : public ModuleInfoHelper
{
- ::rtl::OUString maName;
- ::rtl::OUString maLanguage;
- ::rtl::OUString maSource;
+ OUString maName;
+ OUString maLanguage;
+ OUString maSource;
public:
- ModuleInfo_Impl( const ::rtl::OUString& aName, const ::rtl::OUString& aLanguage, const ::rtl::OUString& aSource )
+ ModuleInfo_Impl( const OUString& aName, const OUString& aLanguage, const OUString& aSource )
: maName( aName ), maLanguage( aLanguage), maSource( aSource ) {}
// Methods XStarBasicModuleInfo
- virtual ::rtl::OUString SAL_CALL getName() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getName() throw(uno::RuntimeException)
{ return maName; }
- virtual ::rtl::OUString SAL_CALL getLanguage() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getLanguage() throw(uno::RuntimeException)
{ return maLanguage; }
- virtual ::rtl::OUString SAL_CALL getSource() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getSource() throw(uno::RuntimeException)
{ return maSource; }
};
@@ -1818,15 +1869,15 @@ public:
class DialogInfo_Impl : public DialogInfoHelper
{
- ::rtl::OUString maName;
+ OUString maName;
uno::Sequence< sal_Int8 > mData;
public:
- DialogInfo_Impl( const ::rtl::OUString& aName, uno::Sequence< sal_Int8 > Data )
+ DialogInfo_Impl( const OUString& aName, uno::Sequence< sal_Int8 > Data )
: maName( aName ), mData( Data ) {}
// Methods XStarBasicDialogInfo
- virtual ::rtl::OUString SAL_CALL getName() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getName() throw(uno::RuntimeException)
{ return maName; }
virtual uno::Sequence< sal_Int8 > SAL_CALL getData() throw(uno::RuntimeException)
{ return mData; }
@@ -1837,22 +1888,22 @@ public:
class LibraryInfo_Impl : public LibraryInfoHelper
{
- ::rtl::OUString maName;
+ OUString maName;
uno::Reference< container::XNameContainer > mxModuleContainer;
uno::Reference< container::XNameContainer > mxDialogContainer;
- ::rtl::OUString maPassword;
- ::rtl::OUString maExternaleSourceURL;
- ::rtl::OUString maLinkTargetURL;
+ OUString maPassword;
+ OUString maExternaleSourceURL;
+ OUString maLinkTargetURL;
public:
LibraryInfo_Impl
(
- const ::rtl::OUString& aName,
+ const OUString& aName,
uno::Reference< container::XNameContainer > xModuleContainer,
uno::Reference< container::XNameContainer > xDialogContainer,
- const ::rtl::OUString& aPassword,
- const ::rtl::OUString& aExternaleSourceURL,
- const ::rtl::OUString& aLinkTargetURL
+ const OUString& aPassword,
+ const OUString& aExternaleSourceURL,
+ const OUString& aLinkTargetURL
)
: maName( aName )
, mxModuleContainer( xModuleContainer )
@@ -1863,17 +1914,17 @@ public:
{}
// Methods XStarBasicLibraryInfo
- virtual ::rtl::OUString SAL_CALL getName() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getName() throw(uno::RuntimeException)
{ return maName; }
virtual uno::Reference< container::XNameContainer > SAL_CALL getModuleContainer() throw(uno::RuntimeException)
{ return mxModuleContainer; }
virtual uno::Reference< container::XNameContainer > SAL_CALL getDialogContainer() throw(uno::RuntimeException)
{ return mxDialogContainer; }
- virtual ::rtl::OUString SAL_CALL getPassword() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getPassword() throw(uno::RuntimeException)
{ return maPassword; }
- virtual ::rtl::OUString SAL_CALL getExternalSourceURL() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getExternalSourceURL() throw(uno::RuntimeException)
{ return maExternaleSourceURL; }
- virtual ::rtl::OUString SAL_CALL getLinkTargetURL() throw(uno::RuntimeException)
+ virtual OUString SAL_CALL getLinkTargetURL() throw(uno::RuntimeException)
{ return maLinkTargetURL; }
};
@@ -1894,23 +1945,23 @@ public:
throw(uno::RuntimeException);
// Methods XNameAccess
- virtual uno::Any SAL_CALL getByName( const ::rtl::OUString& aName )
+ virtual uno::Any SAL_CALL getByName( const OUString& aName )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
- virtual uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames()
+ virtual uno::Sequence< OUString > SAL_CALL getElementNames()
throw(uno::RuntimeException);
- virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName )
+ virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
throw(uno::RuntimeException);
// Methods XNameReplace
- virtual void SAL_CALL replaceByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+ virtual void SAL_CALL replaceByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::NoSuchElementException,
lang::WrappedTargetException, uno::RuntimeException);
// Methods XNameContainer
- virtual void SAL_CALL insertByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+ virtual void SAL_CALL insertByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::ElementExistException,
lang::WrappedTargetException, uno::RuntimeException);
- virtual void SAL_CALL removeByName( const ::rtl::OUString& Name )
+ virtual void SAL_CALL removeByName( const OUString& Name )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
};
@@ -1930,7 +1981,7 @@ sal_Bool ModuleContainer_Impl::hasElements()
}
// Methods XNameAccess
-uno::Any ModuleContainer_Impl::getByName( const ::rtl::OUString& aName )
+uno::Any ModuleContainer_Impl::getByName( const OUString& aName )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
SbModule* pMod = mpLib ? mpLib->FindModule( aName ) : NULL;
@@ -1943,22 +1994,22 @@ uno::Any ModuleContainer_Impl::getByName( const ::rtl::OUString& aName )
return aRetAny;
}
-uno::Sequence< ::rtl::OUString > ModuleContainer_Impl::getElementNames()
+uno::Sequence< OUString > ModuleContainer_Impl::getElementNames()
throw(uno::RuntimeException)
{
SbxArray* pMods = mpLib ? mpLib->GetModules() : NULL;
sal_uInt16 nMods = pMods ? pMods->Count() : 0;
- uno::Sequence< ::rtl::OUString > aRetSeq( nMods );
- ::rtl::OUString* pRetSeq = aRetSeq.getArray();
+ uno::Sequence< OUString > aRetSeq( nMods );
+ OUString* pRetSeq = aRetSeq.getArray();
for( sal_uInt16 i = 0 ; i < nMods ; i++ )
{
SbxVariable* pMod = pMods->Get( i );
- pRetSeq[i] = ::rtl::OUString( pMod->GetName() );
+ pRetSeq[i] = OUString( pMod->GetName() );
}
return aRetSeq;
}
-sal_Bool ModuleContainer_Impl::hasByName( const ::rtl::OUString& aName )
+sal_Bool ModuleContainer_Impl::hasByName( const OUString& aName )
throw(uno::RuntimeException)
{
SbModule* pMod = mpLib ? mpLib->FindModule( aName ) : NULL;
@@ -1968,7 +2019,7 @@ sal_Bool ModuleContainer_Impl::hasByName( const ::rtl::OUString& aName )
// Methods XNameReplace
-void ModuleContainer_Impl::replaceByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+void ModuleContainer_Impl::replaceByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
removeByName( aName );
@@ -1977,24 +2028,28 @@ void ModuleContainer_Impl::replaceByName( const ::rtl::OUString& aName, const un
// Methods XNameContainer
-void ModuleContainer_Impl::insertByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+void ModuleContainer_Impl::insertByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::ElementExistException, lang::WrappedTargetException, uno::RuntimeException)
{
uno::Type aModuleType = ::getCppuType( (const uno::Reference< script::XStarBasicModuleInfo > *)0 );
uno::Type aAnyType = aElement.getValueType();
if( aModuleType != aAnyType )
+ {
throw lang::IllegalArgumentException();
+ }
uno::Reference< script::XStarBasicModuleInfo > xMod;
aElement >>= xMod;
mpLib->MakeModule32( aName, xMod->getSource() );
}
-void ModuleContainer_Impl::removeByName( const ::rtl::OUString& Name )
+void ModuleContainer_Impl::removeByName( const OUString& Name )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
SbModule* pMod = mpLib ? mpLib->FindModule( Name ) : NULL;
if( !pMod )
+ {
throw container::NoSuchElementException();
+ }
mpLib->Remove( pMod );
}
@@ -2041,21 +2096,21 @@ public:
throw(uno::RuntimeException);
// Methods XNameAccess
- virtual uno::Any SAL_CALL getByName( const ::rtl::OUString& aName )
+ virtual uno::Any SAL_CALL getByName( const OUString& aName )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
- virtual uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames()
+ virtual uno::Sequence< OUString > SAL_CALL getElementNames()
throw(uno::RuntimeException);
- virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName )
+ virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
throw(uno::RuntimeException);
// Methods XNameReplace
- virtual void SAL_CALL replaceByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+ virtual void SAL_CALL replaceByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
// Methods XNameContainer
- virtual void SAL_CALL insertByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+ virtual void SAL_CALL insertByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::ElementExistException, lang::WrappedTargetException, uno::RuntimeException);
- virtual void SAL_CALL removeByName( const ::rtl::OUString& Name )
+ virtual void SAL_CALL removeByName( const OUString& Name )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
};
@@ -2087,7 +2142,7 @@ sal_Bool DialogContainer_Impl::hasElements()
}
// Methods XNameAccess
-uno::Any DialogContainer_Impl::getByName( const ::rtl::OUString& aName )
+uno::Any DialogContainer_Impl::getByName( const OUString& aName )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
SbxVariable* pVar = mpLib->GetObjects()->Find( aName, SbxCLASS_DONTCARE );
@@ -2106,13 +2161,13 @@ uno::Any DialogContainer_Impl::getByName( const ::rtl::OUString& aName )
return aRetAny;
}
-uno::Sequence< ::rtl::OUString > DialogContainer_Impl::getElementNames()
+uno::Sequence< OUString > DialogContainer_Impl::getElementNames()
throw(uno::RuntimeException)
{
mpLib->GetAll( SbxCLASS_OBJECT );
sal_Int16 nCount = mpLib->GetObjects()->Count();
- uno::Sequence< ::rtl::OUString > aRetSeq( nCount );
- ::rtl::OUString* pRetSeq = aRetSeq.getArray();
+ uno::Sequence< OUString > aRetSeq( nCount );
+ OUString* pRetSeq = aRetSeq.getArray();
sal_Int32 nDialogCounter = 0;
for( sal_Int16 nObj = 0; nObj < nCount ; nObj++ )
@@ -2120,7 +2175,7 @@ uno::Sequence< ::rtl::OUString > DialogContainer_Impl::getElementNames()
SbxVariable* pVar = mpLib->GetObjects()->Get( nObj );
if ( pVar->ISA( SbxObject ) && ( ((SbxObject*)pVar)->GetSbxId() == SBXID_DIALOG ) )
{
- pRetSeq[ nDialogCounter ] = ::rtl::OUString( pVar->GetName() );
+ pRetSeq[ nDialogCounter ] = OUString( pVar->GetName() );
nDialogCounter++;
}
}
@@ -2128,7 +2183,7 @@ uno::Sequence< ::rtl::OUString > DialogContainer_Impl::getElementNames()
return aRetSeq;
}
-sal_Bool DialogContainer_Impl::hasByName( const ::rtl::OUString& aName )
+sal_Bool DialogContainer_Impl::hasByName( const OUString& aName )
throw(uno::RuntimeException)
{
sal_Bool bRet = sal_False;
@@ -2143,7 +2198,7 @@ sal_Bool DialogContainer_Impl::hasByName( const ::rtl::OUString& aName )
// Methods XNameReplace
-void DialogContainer_Impl::replaceByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+void DialogContainer_Impl::replaceByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
removeByName( aName );
@@ -2152,21 +2207,23 @@ void DialogContainer_Impl::replaceByName( const ::rtl::OUString& aName, const un
// Methods XNameContainer
-void DialogContainer_Impl::insertByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+void DialogContainer_Impl::insertByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::ElementExistException, lang::WrappedTargetException, uno::RuntimeException)
{
(void)aName;
uno::Type aModuleType = ::getCppuType( (const uno::Reference< script::XStarBasicDialogInfo > *)0 );
uno::Type aAnyType = aElement.getValueType();
if( aModuleType != aAnyType )
+ {
throw lang::IllegalArgumentException();
+ }
uno::Reference< script::XStarBasicDialogInfo > xMod;
aElement >>= xMod;
SbxObjectRef xDialog = implCreateDialog( xMod->getData() );
mpLib->Insert( xDialog );
}
-void DialogContainer_Impl::removeByName( const ::rtl::OUString& Name )
+void DialogContainer_Impl::removeByName( const OUString& Name )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
(void)Name;
@@ -2198,21 +2255,21 @@ public:
throw(uno::RuntimeException);
// Methods XNameAccess
- virtual uno::Any SAL_CALL getByName( const ::rtl::OUString& aName )
+ virtual uno::Any SAL_CALL getByName( const OUString& aName )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
- virtual uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames()
+ virtual uno::Sequence< OUString > SAL_CALL getElementNames()
throw(uno::RuntimeException);
- virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName )
+ virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
throw(uno::RuntimeException);
// Methods XNameReplace
- virtual void SAL_CALL replaceByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+ virtual void SAL_CALL replaceByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
// Methods XNameContainer
- virtual void SAL_CALL insertByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+ virtual void SAL_CALL insertByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::ElementExistException, lang::WrappedTargetException, uno::RuntimeException);
- virtual void SAL_CALL removeByName( const ::rtl::OUString& Name )
+ virtual void SAL_CALL removeByName( const OUString& Name )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException);
};
@@ -2234,7 +2291,7 @@ sal_Bool LibraryContainer_Impl::hasElements()
}
// Methods XNameAccess
-uno::Any LibraryContainer_Impl::getByName( const ::rtl::OUString& aName )
+uno::Any LibraryContainer_Impl::getByName( const OUString& aName )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
uno::Any aRetAny;
@@ -2250,16 +2307,19 @@ uno::Any LibraryContainer_Impl::getByName( const ::rtl::OUString& aName )
BasicLibInfo* pLibInfo = mpMgr->FindLibInfo( pLib );
- ::rtl::OUString aPassword = pLibInfo->GetPassword();
+ OUString aPassword = pLibInfo->GetPassword();
// TODO Only provide extern info!
- ::rtl::OUString aExternaleSourceURL;
- ::rtl::OUString aLinkTargetURL;
+ OUString aExternaleSourceURL;
+ OUString aLinkTargetURL;
if( pLibInfo->IsReference() )
+ {
aLinkTargetURL = pLibInfo->GetStorageName();
+ }
else if( pLibInfo->IsExtern() )
+ {
aExternaleSourceURL = pLibInfo->GetStorageName();
-
+ }
uno::Reference< script::XStarBasicLibraryInfo > xLibInfo = new LibraryInfo_Impl
(
aName,
@@ -2274,20 +2334,20 @@ uno::Any LibraryContainer_Impl::getByName( const ::rtl::OUString& aName )
return aRetAny;
}
-uno::Sequence< ::rtl::OUString > LibraryContainer_Impl::getElementNames()
+uno::Sequence< OUString > LibraryContainer_Impl::getElementNames()
throw(uno::RuntimeException)
{
sal_uInt16 nLibs = mpMgr->GetLibCount();
- uno::Sequence< ::rtl::OUString > aRetSeq( nLibs );
- ::rtl::OUString* pRetSeq = aRetSeq.getArray();
+ uno::Sequence< OUString > aRetSeq( nLibs );
+ OUString* pRetSeq = aRetSeq.getArray();
for( sal_uInt16 i = 0 ; i < nLibs ; i++ )
{
- pRetSeq[i] = ::rtl::OUString( mpMgr->GetLibName( i ) );
+ pRetSeq[i] = OUString( mpMgr->GetLibName( i ) );
}
return aRetSeq;
}
-sal_Bool LibraryContainer_Impl::hasByName( const ::rtl::OUString& aName )
+sal_Bool LibraryContainer_Impl::hasByName( const OUString& aName )
throw(uno::RuntimeException)
{
sal_Bool bRet = mpMgr->HasLib( aName );
@@ -2295,7 +2355,7 @@ sal_Bool LibraryContainer_Impl::hasByName( const ::rtl::OUString& aName )
}
// Methods XNameReplace
-void LibraryContainer_Impl::replaceByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+void LibraryContainer_Impl::replaceByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
removeByName( aName );
@@ -2303,7 +2363,7 @@ void LibraryContainer_Impl::replaceByName( const ::rtl::OUString& aName, const u
}
// Methods XNameContainer
-void LibraryContainer_Impl::insertByName( const ::rtl::OUString& aName, const uno::Any& aElement )
+void LibraryContainer_Impl::insertByName( const OUString& aName, const uno::Any& aElement )
throw(lang::IllegalArgumentException, container::ElementExistException, lang::WrappedTargetException, uno::RuntimeException)
{
(void)aName;
@@ -2311,12 +2371,14 @@ void LibraryContainer_Impl::insertByName( const ::rtl::OUString& aName, const un
// TODO: Insert a complete Library?!
}
-void LibraryContainer_Impl::removeByName( const ::rtl::OUString& Name )
+void LibraryContainer_Impl::removeByName( const OUString& Name )
throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
{
StarBASIC* pLib = mpMgr->GetLib( Name );
if( !pLib )
+ {
throw container::NoSuchElementException();
+ }
sal_uInt16 nLibId = mpMgr->GetLibId( Name );
mpMgr->RemoveLib( nLibId );
}
@@ -2339,13 +2401,13 @@ public:
// Methods
virtual uno::Reference< container::XNameContainer > SAL_CALL getLibraryContainer()
throw(uno::RuntimeException);
- virtual void SAL_CALL createLibrary( const ::rtl::OUString& LibName, const ::rtl::OUString& Password,
- const ::rtl::OUString& ExternalSourceURL, const ::rtl::OUString& LinkTargetURL )
+ virtual void SAL_CALL createLibrary( const OUString& LibName, const OUString& Password,
+ const OUString& ExternalSourceURL, const OUString& LinkTargetURL )
throw(container::ElementExistException, uno::RuntimeException);
- virtual void SAL_CALL addModule( const ::rtl::OUString& LibraryName, const ::rtl::OUString& ModuleName,
- const ::rtl::OUString& Language, const ::rtl::OUString& Source )
+ virtual void SAL_CALL addModule( const OUString& LibraryName, const OUString& ModuleName,
+ const OUString& Language, const OUString& Source )
throw(container::NoSuchElementException, uno::RuntimeException);
- virtual void SAL_CALL addDialog( const ::rtl::OUString& LibraryName, const ::rtl::OUString& DialogName,
+ virtual void SAL_CALL addDialog( const OUString& LibraryName, const OUString& DialogName,
const uno::Sequence< sal_Int8 >& Data )
throw(container::NoSuchElementException, uno::RuntimeException);
};
@@ -2360,10 +2422,10 @@ uno::Reference< container::XNameContainer > SAL_CALL StarBasicAccess_Impl::getLi
void SAL_CALL StarBasicAccess_Impl::createLibrary
(
- const ::rtl::OUString& LibName,
- const ::rtl::OUString& Password,
- const ::rtl::OUString& ExternalSourceURL,
- const ::rtl::OUString& LinkTargetURL
+ const OUString& LibName,
+ const OUString& Password,
+ const OUString& ExternalSourceURL,
+ const OUString& LinkTargetURL
)
throw(container::ElementExistException, uno::RuntimeException)
{
@@ -2377,10 +2439,10 @@ void SAL_CALL StarBasicAccess_Impl::createLibrary
void SAL_CALL StarBasicAccess_Impl::addModule
(
- const ::rtl::OUString& LibraryName,
- const ::rtl::OUString& ModuleName,
- const ::rtl::OUString& Language,
- const ::rtl::OUString& Source
+ const OUString& LibraryName,
+ const OUString& ModuleName,
+ const OUString& Language,
+ const OUString& Source
)
throw(container::NoSuchElementException, uno::RuntimeException)
{
@@ -2388,13 +2450,15 @@ void SAL_CALL StarBasicAccess_Impl::addModule
StarBASIC* pLib = mpMgr->GetLib( LibraryName );
DBG_ASSERT( pLib, "XML Import: Lib for module unknown");
if( pLib )
+ {
pLib->MakeModule32( ModuleName, Source );
+ }
}
void SAL_CALL StarBasicAccess_Impl::addDialog
(
- const ::rtl::OUString& LibraryName,
- const ::rtl::OUString& DialogName,
+ const OUString& LibraryName,
+ const OUString& DialogName,
const uno::Sequence< sal_Int8 >& Data
)
throw(container::NoSuchElementException, uno::RuntimeException)
diff --git a/basic/source/classes/errobject.cxx b/basic/source/classes/errobject.cxx
index e40809ef75fd..557295769fda 100644
--- a/basic/source/classes/errobject.cxx
+++ b/basic/source/classes/errobject.cxx
@@ -173,7 +173,7 @@ void ErrObject::setData( const uno::Any& Number, const uno::Any& Source, const u
}
// SbxErrObject
-SbxErrObject::SbxErrObject( const String& rName, const Any& rUnoObj )
+SbxErrObject::SbxErrObject( const OUString& rName, const Any& rUnoObj )
: SbUnoObject( rName, rUnoObj )
, m_pErrObject( NULL )
{
@@ -202,15 +202,17 @@ SbxErrObject::getUnoErrObject()
SbxVariableRef
SbxErrObject::getErrObject()
{
- static SbxVariableRef pGlobErr = new SbxErrObject( String( RTL_CONSTASCII_USTRINGPARAM("Err")), uno::makeAny( uno::Reference< vba::XErrObject >( new ErrObject() ) ) );
+ static SbxVariableRef pGlobErr = new SbxErrObject( OUString("Err"), uno::makeAny( uno::Reference< vba::XErrObject >( new ErrObject() ) ) );
return pGlobErr;
}
-void SbxErrObject::setNumberAndDescription( ::sal_Int32 _number, const ::rtl::OUString& _description )
+void SbxErrObject::setNumberAndDescription( ::sal_Int32 _number, const OUString& _description )
throw (uno::RuntimeException)
{
if( m_pErrObject != NULL )
+ {
m_pErrObject->setData( uno::makeAny( _number ), uno::Any(), uno::makeAny( _description ), uno::Any(), uno::Any() );
+ }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/classes/eventatt.cxx b/basic/source/classes/eventatt.cxx
index 79e2c3b707ee..173a3cee2ac1 100644
--- a/basic/source/classes/eventatt.cxx
+++ b/basic/source/classes/eventatt.cxx
@@ -98,13 +98,12 @@ void SFURL_firing_impl( const ScriptEvent& aScriptEvent, Any* pRet, const Refere
comphelper::getProcessComponentContext() );
Reference< provider::XScriptProviderFactory > xFactory(
xContext->getValueByName(
- ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.script.provider.theMasterScriptProviderFactory")) ),
- UNO_QUERY );
+ OUString("/singletons/com.sun.star.script.provider.theMasterScriptProviderFactory")), UNO_QUERY );
OSL_ENSURE( xFactory.is(), "SFURL_firing_impl: failed to get master script provider factory" );
if ( xFactory.is() )
{
Any aCtx;
- aCtx <<= ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("user"));
+ aCtx <<= OUString("user");
xScriptProvider.set( xFactory->createScriptProvider( aCtx ), UNO_QUERY );
}
}
@@ -201,13 +200,13 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any
if( aScriptEvent.ScriptType.compareToAscii( "StarBasic" ) == 0 )
{
// Full qualified name?
- String aMacro( aScriptEvent.ScriptCode );
- String aLibName;
- String aLocation;
+ OUString aMacro( aScriptEvent.ScriptCode );
+ OUString aLibName;
+ OUString aLocation;
if( comphelper::string::getTokenCount(aMacro, '.') == 3 )
{
- sal_uInt16 nLast = 0;
- ::rtl::OUString aFullLibName = aMacro.GetToken( 0, '.', nLast );
+ sal_Int32 nLast = 0;
+ ::rtl::OUString aFullLibName = aMacro.getToken( (sal_Int32)0, (sal_Unicode)'.', nLast );
sal_Int32 nIndex = aFullLibName.indexOf( (sal_Unicode)':' );
if (nIndex >= 0)
@@ -216,8 +215,8 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any
aLibName = aFullLibName.copy( nIndex + 1 );
}
- String aModul = aMacro.GetToken( 0, '.', nLast );
- aMacro.Erase( 0, nLast );
+ OUString aModul = aMacro.getToken( (sal_Int32)0, (sal_Unicode)'.', nLast );
+ aMacro = aMacro.copy( nLast );
}
SbxObject* p = maBasicRef;
@@ -234,8 +233,8 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any
}
else if( pParent )
{
- String aName = p->GetName();
- if( aName.EqualsAscii("Standard") )
+ OUString aName = p->GetName();
+ if( aName.equalsAscii("Standard") )
{
// Own basic is doc standard lib
xDocStandardBasic = (StarBASIC*)p;
@@ -249,13 +248,18 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any
bool bSearchLib = true;
StarBASICRef xLibSearchBasic;
- if( aLocation.EqualsAscii("application") )
+ if( aLocation.equalsAscii("application") )
+ {
xLibSearchBasic = xAppStandardBasic;
- else if( aLocation.EqualsAscii("document") )
+ }
+ else if( aLocation.equalsAscii("document") )
+ {
xLibSearchBasic = xDocStandardBasic;
+ }
else
+ {
bSearchLib = false;
-
+ }
SbxVariable* pMethVar = NULL;
// Be still tolerant and make default search if no search basic exists
if( bSearchLib && xLibSearchBasic.Is() )
@@ -276,7 +280,7 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any
}
if( pBasic )
{
- String aName = pBasic->GetName();
+ OUString aName = pBasic->GetName();
if( aName == aLibName )
{
// Search only in the lib, not automatically in application basic
@@ -292,15 +296,16 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any
// Default: Be tolerant and search everywhere
if( (!pMethVar || !pMethVar->ISA(SbMethod)) && maBasicRef.Is() )
+ {
pMethVar = maBasicRef->FindQualified( aMacro, SbxCLASS_DONTCARE );
-
+ }
SbMethod* pMeth = PTR_CAST(SbMethod,pMethVar);
if( !pMeth )
+ {
return;
-
+ }
// Setup parameters
SbxArrayRef xArray;
- String aTmp;
sal_Int32 nCnt = aScriptEvent.Arguments.getLength();
if( nCnt )
{
@@ -317,18 +322,21 @@ void BasicScriptListener_Impl::firing_impl( const ScriptEvent& aScriptEvent, Any
// Call method
SbxVariableRef xValue = pRet ? new SbxVariable : 0;
if( xArray.Is() )
+ {
pMeth->SetParameters( xArray );
+ }
pMeth->Call( xValue );
if( pRet )
+ {
*pRet = sbxToUnoValue( xValue );
+ }
pMeth->SetParameters( NULL );
}
- else // scripting framework script
- {
- //callBasic via scripting framework
- SFURL_firing_impl( aScriptEvent, pRet, m_xModel );
-
- }
+ else // scripting framework script
+ {
+ //callBasic via scripting framework
+ SFURL_firing_impl( aScriptEvent, pRet, m_xModel );
+ }
}
Any implFindDialogLibForDialog( const Any& rDlgAny, SbxObject* pBasic )
@@ -453,17 +461,18 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
}
// Create new uno dialog
- Reference< XNameContainer > xDialogModel( xMSF->createInstance
- ( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.UnoControlDialogModel" ) ) ),
- UNO_QUERY );
+ Reference< XNameContainer > xDialogModel( xMSF->createInstance(
+ ::rtl::OUString("com.sun.star.awt.UnoControlDialogModel")), UNO_QUERY );
if( !xDialogModel.is() )
+ {
return;
-
+ }
Reference< XInputStreamProvider > xISP;
aAnyISP >>= xISP;
if( !xISP.is() )
+ {
return;
-
+ }
Reference< XComponentContext > xContext(
comphelper::getComponentContext( xMSF ) );
@@ -477,15 +486,15 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
bool bDecoration = true;
try
{
- ::rtl::OUString aDecorationPropName(RTL_CONSTASCII_USTRINGPARAM("Decoration"));
+ OUString aDecorationPropName("Decoration");
Any aDecorationAny = xDlgModPropSet->getPropertyValue( aDecorationPropName );
aDecorationAny >>= bDecoration;
if( !bDecoration )
{
xDlgModPropSet->setPropertyValue( aDecorationPropName, makeAny( true ) );
- ::rtl::OUString aTitlePropName(RTL_CONSTASCII_USTRINGPARAM("Title"));
- xDlgModPropSet->setPropertyValue( aTitlePropName, makeAny( ::rtl::OUString() ) );
+ OUString aTitlePropName("Title");
+ xDlgModPropSet->setPropertyValue( aTitlePropName, makeAny( OUString() ) );
}
}
catch(const UnknownPropertyException& )
@@ -501,15 +510,15 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
// If we found the dialog then it belongs to the Search basic
if ( !pFoundBasic )
{
- Reference< frame::XDesktop > xDesktop( xMSF->createInstance
- ( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.frame.Desktop" ) ) ),
- UNO_QUERY );
+ Reference< frame::XDesktop > xDesktop( xMSF->createInstance(OUString("com.sun.star.frame.Desktop")), UNO_QUERY);
Reference< container::XEnumeration > xModels;
if ( xDesktop.is() )
{
Reference< container::XEnumerationAccess > xComponents( xDesktop->getComponents(), UNO_QUERY );
if ( xComponents.is() )
+ {
xModels.set( xComponents->createEnumeration(), UNO_QUERY );
+ }
if ( xModels.is() )
{
while ( xModels->hasMoreElements() )
@@ -519,7 +528,9 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
{
BasicManager* pMgr = basic::BasicManagerRepository::getDocumentBasicManager( xNextModel );
if ( pMgr )
+ {
aDlgLibAny = implFindDialogLibForDialogBasic( aAnyISP, pMgr->GetLib(0), pFoundBasic );
+ }
if ( aDlgLibAny.hasValue() )
{
bDocDialog = true;
@@ -532,14 +543,20 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
}
}
if ( pFoundBasic )
+ {
bDocDialog = pFoundBasic->IsDocBasic();
+ }
Reference< XScriptListener > xScriptListener = new BasicScriptListener_Impl( GetSbData()->pInst->GetBasic(), xModel );
Sequence< Any > aArgs( 4 );
if( bDocDialog )
+ {
aArgs[ 0 ] <<= xModel;
+ }
else
+ {
aArgs[ 0 ] <<= uno::Reference< uno::XInterface >();
+ }
aArgs[ 1 ] <<= xInput;
aArgs[ 2 ] = aDlgLibAny;
aArgs[ 3 ] <<= xScriptListener;
@@ -547,8 +564,8 @@ void RTL_Impl_CreateUnoDialog( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
Reference< XControl > xCntrl;
try
{
- Reference< XDialogProvider > xDlgProv( xMSF->createInstanceWithArguments( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.scripting.DialogProvider" ) ), aArgs ), UNO_QUERY );
- xCntrl.set( xDlgProv->createDialog( rtl::OUString() ), UNO_QUERY_THROW );
+ Reference< XDialogProvider > xDlgProv( xMSF->createInstanceWithArguments(OUString("com.sun.star.comp.scripting.DialogProvider" ), aArgs ), UNO_QUERY );
+ xCntrl.set( xDlgProv->createDialog(OUString() ), UNO_QUERY_THROW );
// Add dialog model to dispose vector
Reference< XComponent > xDlgComponent( xCntrl->getModel(), UNO_QUERY );
GetSbData()->pInst->getComponentVector().push_back( xDlgComponent );
diff --git a/basic/source/classes/global.cxx b/basic/source/classes/global.cxx
index 324a18a12aa7..2907b5cdb65f 100644
--- a/basic/source/classes/global.cxx
+++ b/basic/source/classes/global.cxx
@@ -42,7 +42,7 @@ namespace
public:
lclTransliterationWrapper()
: m_aTransliteration(
- comphelper::getProcessServiceFactory(),
+ comphelper::getProcessComponentContext(),
com::sun::star::i18n::TransliterationModules_IGNORE_CASE )
{
const LanguageType eOfficeLanguage = Application::GetSettings().GetLanguage();
diff --git a/basic/source/classes/image.cxx b/basic/source/classes/image.cxx
index 3c91470aacf9..cdc2239901c2 100644
--- a/basic/source/classes/image.cxx
+++ b/basic/source/classes/image.cxx
@@ -135,8 +135,9 @@ bool SbiImage::Load( SvStream& r, sal_uInt32& nVersion )
r >> nSign >> nLen >> nCount;
nNext += nLen + 8;
if( r.GetError() == SVSTREAM_OK )
- switch( nSign )
{
+ switch( nSign )
+ {
case B_NAME:
aName = r.ReadUniOrByteString(eCharSet);
break;
@@ -152,8 +153,7 @@ bool SbiImage::Load( SvStream& r, sal_uInt32& nVersion )
{
for( sal_uInt16 j = 0 ; j < nCount ; j++ )
{
- String aTmp = r.ReadUniOrByteString(eCharSet);
- aOUSource += aTmp;
+ aOUSource += r.ReadUniOrByteString(eCharSet);
}
break;
}
@@ -208,24 +208,30 @@ bool SbiImage::Load( SvStream& r, sal_uInt32& nVersion )
for( short j = 0; j < nStrings; j++ )
{
sal_uInt16 nOff2 = (sal_uInt16) pStringOff[ j ];
- String aStr( pByteStrings + nOff2, eCharSet );
- memcpy( pStrings + nOff2, aStr.GetBuffer(), (aStr.Len() + 1) * sizeof( sal_Unicode ) );
+ OUString aStr( pByteStrings + nOff2, strlen(pByteStrings + nOff2), eCharSet );
+ memcpy( pStrings + nOff2, aStr.getStr(), (aStr.getLength() + 1) * sizeof( sal_Unicode ) );
}
delete[] pByteStrings;
- } break;
+ }
+ break;
case B_MODEND:
goto done;
default:
break;
+ }
}
else
+ {
break;
+ }
r.Seek( nNext );
}
done:
r.Seek( nLast );
if( !SbiGood( r ) )
+ {
bError = true;
+ }
return !bError;
}
@@ -248,25 +254,29 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer )
eCharSet = GetSOStoreTextEncoding( eCharSet );
if ( bLegacy )
+ {
r << (sal_Int32) B_LEGACYVERSION;
+ }
else
+ {
r << (sal_Int32) B_CURVERSION;
+ }
r << (sal_Int32) eCharSet
- << (sal_Int32) nDimBase
- << (sal_Int16) nFlags
- << (sal_Int16) 0
- << (sal_Int32) 0
- << (sal_Int32) 0;
+ << (sal_Int32) nDimBase
+ << (sal_Int16) nFlags
+ << (sal_Int16) 0
+ << (sal_Int32) 0
+ << (sal_Int32) 0;
// Name?
- if( aName.Len() && SbiGood( r ) )
+ if( !aName.isEmpty() && SbiGood( r ) )
{
nPos = SbiOpenRecord( r, B_NAME, 1 );
r.WriteUniOrByteString( aName, eCharSet );
SbiCloseRecord( r, nPos );
}
// Comment?
- if( aComment.Len() && SbiGood( r ) )
+ if( !aComment.isEmpty() && SbiGood( r ) )
{
nPos = SbiOpenRecord( r, B_COMMENT, 1 );
r.WriteUniOrByteString( aComment, eCharSet );
@@ -276,13 +286,17 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer )
if( !aOUSource.isEmpty() && SbiGood( r ) )
{
nPos = SbiOpenRecord( r, B_SOURCE, 1 );
- String aTmp;
+ OUString aTmp;
sal_Int32 nLen = aOUSource.getLength();
const sal_Int32 nMaxUnitSize = STRING_MAXLEN - 1;
if( nLen > STRING_MAXLEN )
+ {
aTmp = aOUSource.copy( 0, nMaxUnitSize );
+ }
else
+ {
aTmp = aOUSource;
+ }
r.WriteUniOrByteString( aTmp, eCharSet );
SbiCloseRecord( r, nPos );
@@ -293,9 +307,8 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer )
nPos = SbiOpenRecord( r, B_EXTSOURCE, nUnitCount );
for( sal_uInt16 i = 0 ; i < nUnitCount ; i++ )
{
- sal_Int32 nCopyLen =
- (nRemainingLen > nMaxUnitSize) ? nMaxUnitSize : nRemainingLen;
- String aTmp2 = aOUSource.copy( (i+1) * nMaxUnitSize, nCopyLen );
+ sal_Int32 nCopyLen = (nRemainingLen > nMaxUnitSize) ? nMaxUnitSize : nRemainingLen;
+ OUString aTmp2 = aOUSource.copy( (i+1) * nMaxUnitSize, nCopyLen );
nRemainingLen -= nCopyLen;
r.WriteUniOrByteString( aTmp2, eCharSet );
}
@@ -313,10 +326,12 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer )
aNewToLegacy.convert();
pLegacyPCode = (char*)aNewToLegacy.GetBuffer();
nLegacyCodeSize = aNewToLegacy.GetSize();
- r.Write( pLegacyPCode, nLegacyCodeSize );
+ r.Write( pLegacyPCode, nLegacyCodeSize );
}
else
+ {
r.Write( pCode, nCodeSize );
+ }
SbiCloseRecord( r, nPos );
}
// String-Pool?
@@ -328,8 +343,9 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer )
short i;
for( i = 0; i < nStrings && SbiGood( r ); i++ )
+ {
r << (sal_uInt32) pStringOff[ i ];
-
+ }
// Then the String-Block
char* pByteStrings = new char[ nStringSize ];
for( i = 0; i < nStrings; i++ )
@@ -347,7 +363,9 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer )
// Set overall length
SbiCloseRecord( r, nStart );
if( !SbiGood( r ) )
+ {
bError = true;
+ }
return !bError;
}
@@ -372,27 +390,35 @@ void SbiImage::MakeStrings( short nSize )
memset( pStrings, 0, nStringSize * sizeof( sal_Unicode ) );
}
else
+ {
bError = true;
+ }
}
// Add a string to StringPool. The String buffer is dynamically
// growing in 1K-Steps
-void SbiImage::AddString( const String& r )
+void SbiImage::AddString( const OUString& r )
{
if( nStringIdx >= nStrings )
+ {
bError = true;
+ }
if( !bError )
{
- xub_StrLen len = r.Len() + 1;
+ sal_Int32 len = r.getLength() + 1;
sal_uInt32 needed = nStringOff + len;
if( needed > 0xFFFFFF00L )
+ {
bError = true; // out of mem!
+ }
else if( needed > nStringSize )
{
sal_uInt32 nNewLen = needed + 1024;
nNewLen &= 0xFFFFFC00; // trim to 1K border
if( nNewLen > 0xFFFFFF00L )
+ {
nNewLen = 0xFFFFFF00L;
+ }
sal_Unicode* p = NULL;
if( (p = new sal_Unicode[ nNewLen ]) != NULL )
{
@@ -402,16 +428,20 @@ void SbiImage::AddString( const String& r )
nStringSize = sal::static_int_cast< sal_uInt16 >(nNewLen);
}
else
+ {
bError = true;
+ }
}
if( !bError )
{
pStringOff[ nStringIdx++ ] = nStringOff;
- memcpy( pStrings + nStringOff, r.GetBuffer(), len * sizeof( sal_Unicode ) );
+ memcpy( pStrings + nStringOff, r.getStr(), len * sizeof( sal_Unicode ) );
nStringOff = nStringOff + len;
// Last String? The update the size of the buffer
if( nStringIdx >= nStrings )
+ {
nStringSize = nStringOff;
+ }
}
}
}
@@ -430,7 +460,9 @@ void SbiImage::AddCode( char* p, sal_uInt32 s )
void SbiImage::AddType(SbxObject* pObject)
{
if( !rTypes.Is() )
+ {
rTypes = new SbxArray;
+ }
SbxObject *pCopyObject = new SbxObject(*pObject);
rTypes->Insert (pCopyObject,rTypes->Count());
}
@@ -438,7 +470,9 @@ void SbiImage::AddType(SbxObject* pObject)
void SbiImage::AddEnum(SbxObject* pObject) // Register enum type
{
if( !rEnums.Is() )
+ {
rEnums = new SbxArray;
+ }
rEnums->Insert( pObject, rEnums->Count() );
}
@@ -450,7 +484,7 @@ void SbiImage::AddEnum(SbxObject* pObject) // Register enum type
**************************************************************************/
// Note: IDs start with 1
-String SbiImage::GetString( short nId ) const
+OUString SbiImage::GetString( short nId ) const
{
if( nId && nId <= nStrings )
{
@@ -465,18 +499,19 @@ String SbiImage::GetString( short nId ) const
if( nLen == 1 )
{
// Force length 1 and make char 0 afterwards
- String aNullCharStr( rtl::OUString(" ") );
- aNullCharStr.SetChar( 0, 0 );
+ OUString aNullCharStr( (sal_Unicode)0);
return aNullCharStr;
}
}
else
- return rtl::OUString(pStr);
+ {
+ return OUString(pStr);
+ }
}
- return rtl::OUString();
+ return OUString();
}
-const SbxObject* SbiImage::FindType (String aTypeName) const
+const SbxObject* SbiImage::FindType (OUString aTypeName) const
{
return rTypes.Is() ? (SbxObject*)rTypes->Find(aTypeName,SbxCLASS_OBJECT) : NULL;
}
diff --git a/basic/source/classes/sb.cxx b/basic/source/classes/sb.cxx
index 6ddb5311cb57..990651568e99 100644
--- a/basic/source/classes/sb.cxx
+++ b/basic/source/classes/sb.cxx
@@ -94,7 +94,7 @@ private:
DocBasicItem::DocBasicItem( StarBASIC& rDocBasic ) :
mrDocBasic( rDocBasic ),
- mxClassModules( new SbxObject( String() ) ),
+ mxClassModules( new SbxObject( OUString() ) ),
mbDocClosed( false ),
mbDisposed( false )
{
@@ -117,7 +117,9 @@ void DocBasicItem::startListening()
Reference< util::XCloseBroadcaster > xCloseBC( aThisComp, UNO_QUERY );
mbDisposed = !xCloseBC.is();
if( xCloseBC.is() )
+ {
try { xCloseBC->addCloseListener( this ); } catch(const uno::Exception& ) {}
+ }
}
void DocBasicItem::stopListening()
@@ -128,7 +130,9 @@ void DocBasicItem::stopListening()
mrDocBasic.GetUNOConstant( "ThisComponent", aThisComp );
Reference< util::XCloseBroadcaster > xCloseBC( aThisComp, UNO_QUERY );
if( xCloseBC.is() )
+ {
try { xCloseBC->removeCloseListener( this ); } catch(const uno::Exception& ) {}
+ }
}
void SAL_CALL DocBasicItem::queryClosing( const lang::EventObject& /*rSource*/, sal_Bool /*bGetsOwnership*/ ) throw (util::CloseVetoException, uno::RuntimeException)
@@ -179,7 +183,9 @@ void lclRemoveDocBasicItem( StarBASIC& rDocBasic )
}
DocBasicItemMap::iterator it_end = GaDocBasicItems::get().end();
for( it = GaDocBasicItems::get().begin(); it != it_end; ++it )
+ {
it->second->clearDependingVarsOnDelete( rDocBasic );
+ }
}
StarBASIC* lclGetDocBasicForModule( SbModule* pModule )
@@ -211,7 +217,7 @@ SbxObject* StarBASIC::getVBAGlobals( )
if ( GetUNOConstant("ThisComponent", aThisDoc) )
{
Reference< XMultiServiceFactory > xDocFac( aThisDoc, UNO_QUERY );
- if ( xDocFac.is() )
+ if ( xDocFac.is() )
{
try
{
@@ -223,7 +229,7 @@ SbxObject* StarBASIC::getVBAGlobals( )
}
}
}
- const String aVBAHook( RTL_CONSTASCII_USTRINGPARAM( "VBAGlobals" ) );
+ const OUString aVBAHook("VBAGlobals");
pVBAGlobals = (SbUnoObject*)Find( aVBAHook , SbxCLASS_DONTCARE );
}
return pVBAGlobals;
@@ -233,13 +239,17 @@ SbxObject* StarBASIC::getVBAGlobals( )
SbxVariable* StarBASIC::VBAFind( const rtl::OUString& rName, SbxClassType t )
{
if( rName == "ThisComponent" )
+ {
return NULL;
+ }
// rename to init globals
if ( getVBAGlobals( ) )
+ {
return pVBAGlobals->Find( rName, t );
+ }
return NULL;
-
}
+
// Create array for conversion SFX <-> VB error code
struct SFX_VB_ErrorItem
{
@@ -383,40 +393,46 @@ SbxBase* SbiFactory::Create( sal_uInt16 nSbxId, sal_uInt32 nCreator )
{
if( nCreator == SBXCR_SBX )
{
- String aEmpty;
+ OUString aEmpty;
switch( nSbxId )
{
- case SBXID_BASIC:
- return new StarBASIC( NULL );
- case SBXID_BASICMOD:
- return new SbModule( aEmpty );
- case SBXID_BASICPROP:
- return new SbProperty( aEmpty, SbxVARIANT, NULL );
- case SBXID_BASICMETHOD:
- return new SbMethod( aEmpty, SbxVARIANT, NULL );
- case SBXID_JSCRIPTMOD:
- return new SbJScriptModule( aEmpty );
- case SBXID_JSCRIPTMETH:
- return new SbJScriptMethod( aEmpty, SbxVARIANT, NULL );
+ case SBXID_BASIC:
+ return new StarBASIC( NULL );
+ case SBXID_BASICMOD:
+ return new SbModule( aEmpty );
+ case SBXID_BASICPROP:
+ return new SbProperty( aEmpty, SbxVARIANT, NULL );
+ case SBXID_BASICMETHOD:
+ return new SbMethod( aEmpty, SbxVARIANT, NULL );
+ case SBXID_JSCRIPTMOD:
+ return new SbJScriptModule( aEmpty );
+ case SBXID_JSCRIPTMETH:
+ return new SbJScriptMethod( aEmpty, SbxVARIANT, NULL );
}
}
return NULL;
}
-SbxObject* SbiFactory::CreateObject( const rtl::OUString& rClass )
+SbxObject* SbiFactory::CreateObject( const OUString& rClass )
{
if( rClass.equalsIgnoreAsciiCase( "StarBASIC" ) )
+ {
return new StarBASIC( NULL );
+ }
else if( rClass.equalsIgnoreAsciiCase( "StarBASICModule" ) )
- return new SbModule( rtl::OUString() );
+ {
+ return new SbModule( OUString() );
+ }
else if( rClass.equalsIgnoreAsciiCase( "Collection" ) )
- return new BasicCollection( rtl::OUString("Collection"));
+ {
+ return new BasicCollection( OUString("Collection"));
+ }
else if( rClass.equalsIgnoreAsciiCase( "FileSystemObject" ) )
{
try
{
Reference< XMultiServiceFactory > xFactory( comphelper::getProcessServiceFactory(), UNO_SET_THROW );
- ::rtl::OUString aServiceName( RTL_CONSTASCII_USTRINGPARAM( "ooo.vba.FileSystemObject" ) );
+ OUString aServiceName("ooo.vba.FileSystemObject");
Reference< XInterface > xInterface( xFactory->createInstance( aServiceName ), UNO_SET_THROW );
return new SbUnoObject( aServiceName, uno::makeAny( xInterface ) );
}
@@ -424,7 +440,6 @@ SbxObject* SbiFactory::CreateObject( const rtl::OUString& rClass )
{
}
}
-
return NULL;
}
@@ -434,7 +449,7 @@ class SbOLEFactory : public SbxFactory
{
public:
virtual SbxBase* Create( sal_uInt16 nSbxId, sal_uInt32 = SBXCR_SBX );
- virtual SbxObject* CreateObject( const rtl::OUString& );
+ virtual SbxObject* CreateObject( const OUString& );
};
SbxBase* SbOLEFactory::Create( sal_uInt16, sal_uInt32 )
@@ -443,9 +458,9 @@ SbxBase* SbOLEFactory::Create( sal_uInt16, sal_uInt32 )
return NULL;
}
-SbUnoObject* createOLEObject_Impl( const ::rtl::OUString& aType ); // sbunoobj.cxx
+SbUnoObject* createOLEObject_Impl( const OUString& aType ); // sbunoobj.cxx
-SbxObject* SbOLEFactory::CreateObject( const rtl::OUString& rClassName )
+SbxObject* SbOLEFactory::CreateObject( const OUString& rClassName )
{
SbxObject* pRet = createOLEObject_Impl( rClassName );
return pRet;
@@ -459,7 +474,7 @@ class SbFormFactory : public SbxFactory
{
public:
virtual SbxBase* Create( sal_uInt16 nSbxId, sal_uInt32 = SBXCR_SBX );
- virtual SbxObject* CreateObject( const rtl::OUString& );
+ virtual SbxObject* CreateObject( const OUString& );
};
SbxBase* SbFormFactory::Create( sal_uInt16, sal_uInt32 )
@@ -468,7 +483,7 @@ SbxBase* SbFormFactory::Create( sal_uInt16, sal_uInt32 )
return NULL;
}
-SbxObject* SbFormFactory::CreateObject( const rtl::OUString& rClassName )
+SbxObject* SbFormFactory::CreateObject( const OUString& rClassName )
{
if( SbModule* pMod = GetSbData()->pMod )
{
@@ -533,8 +548,9 @@ SbxObject* cloneTypeObjectImpl( const SbxObject& rTypeObj )
}
}
else
+ {
pDest->unoAddDim( 0, -1 ); // variant array
-
+ }
sal_uInt16 nSavFlags = pVar->GetFlags();
pNewProp->ResetFlag( SBX_FIXED );
// need to reset the FIXED flag
@@ -562,7 +578,7 @@ class SbTypeFactory : public SbxFactory
{
public:
virtual SbxBase* Create( sal_uInt16 nSbxId, sal_uInt32 = SBXCR_SBX );
- virtual SbxObject* CreateObject( const rtl::OUString& );
+ virtual SbxObject* CreateObject( const OUString& );
};
SbxBase* SbTypeFactory::Create( sal_uInt16, sal_uInt32 )
@@ -571,7 +587,7 @@ SbxBase* SbTypeFactory::Create( sal_uInt16, sal_uInt32 )
return NULL;
}
-SbxObject* SbTypeFactory::CreateObject( const rtl::OUString& rClassName )
+SbxObject* SbTypeFactory::CreateObject( const OUString& rClassName )
{
SbxObject* pRet = NULL;
SbModule* pMod = GetSbData()->pMod;
@@ -579,12 +595,14 @@ SbxObject* SbTypeFactory::CreateObject( const rtl::OUString& rClassName )
{
const SbxObject* pObj = pMod->FindType( rClassName );
if( pObj )
+ {
pRet = cloneTypeObjectImpl( *pObj );
+ }
}
return pRet;
}
-SbxObject* createUserTypeImpl( const String& rClassName )
+SbxObject* createUserTypeImpl( const OUString& rClassName )
{
SbxObject* pRetObj = GetSbData()->pTypeFac->CreateObject( rClassName );
return pRetObj;
@@ -653,8 +671,7 @@ SbClassModuleObject::SbClassModuleObject( SbModule* pClassModule )
}
// Search for own copy of ImplMethod
- String aImplMethodName = pImplMethod->GetName();
- SbxVariable* p = pMethods->Find( aImplMethodName, SbxCLASS_METHOD );
+ SbxVariable* p = pMethods->Find( pImplMethod->GetName(), SbxCLASS_METHOD );
SbMethod* pImplMethodCopy = p ? PTR_CAST(SbMethod,p) : NULL;
if( !pImplMethodCopy )
{
@@ -704,7 +721,7 @@ SbClassModuleObject::SbClassModuleObject( SbModule* pClassModule )
SbxObject* pObj = PTR_CAST(SbxObject,pObjBase);
if( pObj != NULL )
{
- String aObjClass = pObj->GetClassName();
+ OUString aObjClass = pObj->GetClassName();
SbClassModuleObject* pClassModuleObj = PTR_CAST(SbClassModuleObject,pObjBase);
if( pClassModuleObj != NULL )
@@ -715,9 +732,9 @@ SbClassModuleObject::SbClassModuleObject( SbModule* pClassModule )
pNewObj->SetParent( pLclClassModule->pParent );
pNewProp->PutObject( pNewObj );
}
- else if( aObjClass.EqualsIgnoreCaseAscii( "Collection" ) )
+ else if( aObjClass.equalsIgnoreAsciiCase( "Collection" ) )
{
- String aCollectionName( RTL_CONSTASCII_USTRINGPARAM("Collection") );
+ OUString aCollectionName("Collection");
BasicCollection* pNewCollection = new BasicCollection( aCollectionName );
pNewCollection->SetName( pProp->GetName() );
pNewCollection->SetParent( pClassModule->pParent );
@@ -758,7 +775,7 @@ void SbClassModuleObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType
handleProcedureProperties( rBC, rHint );
}
-SbxVariable* SbClassModuleObject::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbClassModuleObject::Find( const OUString& rName, SbxClassType t )
{
SbxVariable* pRes = SbxObject::Find( rName, t );
if( pRes )
@@ -778,12 +795,14 @@ SbxVariable* SbClassModuleObject::Find( const rtl::OUString& rName, SbxClassType
void SbClassModuleObject::triggerInitializeEvent( void )
{
if( mbInitializeEventDone )
+ {
return;
+ }
mbInitializeEventDone = true;
// Search method
- SbxVariable* pMeth = SbxObject::Find(rtl::OUString("Class_Initialize"), SbxCLASS_METHOD);
+ SbxVariable* pMeth = SbxObject::Find(OUString("Class_Initialize"), SbxCLASS_METHOD);
if( pMeth )
{
SbxValues aVals;
@@ -794,10 +813,11 @@ void SbClassModuleObject::triggerInitializeEvent( void )
void SbClassModuleObject::triggerTerminateEvent( void )
{
if( !mbInitializeEventDone || GetSbData()->bRunInit )
+ {
return;
-
+ }
// Search method
- SbxVariable* pMeth = SbxObject::Find( rtl::OUString("Class_Terminate"), SbxCLASS_METHOD );
+ SbxVariable* pMeth = SbxObject::Find(OUString("Class_Terminate"), SbxCLASS_METHOD );
if( pMeth )
{
SbxValues aVals;
@@ -819,7 +839,7 @@ void SbClassData::clear( void )
SbClassFactory::SbClassFactory( void )
{
- String aDummyName;
+ OUString aDummyName;
xClassModules = new SbxObject( aDummyName );
}
@@ -850,15 +870,20 @@ SbxBase* SbClassFactory::Create( sal_uInt16, sal_uInt32 )
return NULL;
}
-SbxObject* SbClassFactory::CreateObject( const rtl::OUString& rClassName )
+SbxObject* SbClassFactory::CreateObject( const OUString& rClassName )
{
SbxObjectRef xToUseClassModules = xClassModules;
if( SbModule* pMod = GetSbData()->pMod )
+ {
if( StarBASIC* pDocBasic = lclGetDocBasicForModule( pMod ) )
+ {
if( const DocBasicItem* pDocBasicItem = lclFindDocBasicItem( pDocBasic ) )
+ {
xToUseClassModules = pDocBasicItem->getClassModules();
-
+ }
+ }
+ }
SbxVariable* pVar = xToUseClassModules->Find( rClassName, SbxCLASS_OBJECT );
SbxObject* pRet = NULL;
if( pVar )
@@ -869,7 +894,7 @@ SbxObject* SbClassFactory::CreateObject( const rtl::OUString& rClassName )
return pRet;
}
-SbModule* SbClassFactory::FindClass( const String& rClassName )
+SbModule* SbClassFactory::FindClass( const OUString& rClassName )
{
SbxVariable* pVar = xClassModules->Find( rClassName, SbxCLASS_DONTCARE );
SbModule* pMod = pVar ? (SbModule*)pVar : NULL;
@@ -877,7 +902,7 @@ SbModule* SbClassFactory::FindClass( const String& rClassName )
}
StarBASIC::StarBASIC( StarBASIC* p, bool bIsDocBasic )
- : SbxObject( String( RTL_CONSTASCII_USTRINGPARAM("StarBASIC") ) ), bDocBasic( bIsDocBasic )
+ : SbxObject( OUString("StarBASIC") ), bDocBasic( bIsDocBasic )
{
SetParent( p );
pLibInfo = NULL;
@@ -900,14 +925,16 @@ StarBASIC::StarBASIC( StarBASIC* p, bool bIsDocBasic )
GetSbData()->pUnoFac = new SbUnoFactory;
AddFactory( GetSbData()->pUnoFac );
}
- pRtl = new SbiStdObject( String( RTL_CONSTASCII_USTRINGPARAM(RTLNAME) ), this );
+ pRtl = new SbiStdObject(OUString(RTLNAME), this );
// Search via StarBasic is always global
SetFlag( SBX_GBLSEARCH );
pVBAGlobals = NULL;
bQuit = false;
if( bDocBasic )
+ {
lclInsertDocBasicItem( *this );
+ }
}
// #51727 Override SetModified so that the modified state
@@ -958,7 +985,9 @@ StarBASIC::~StarBASIC()
SbxBase::ResetError();
if( eOld != SbxERR_OK )
+ {
SbxBase::SetError( eOld );
+ }
}
// #100326 Set Parent NULL in registered listeners
@@ -1007,7 +1036,9 @@ void StarBASIC::implClearDependingVarsOnDelete( StarBASIC* pDeletedBasic )
SbxVariable* pVar = pObjs->Get( nObj );
StarBASIC* pBasic = PTR_CAST(StarBASIC,pVar);
if( pBasic && pBasic != pDeletedBasic )
+ {
pBasic->implClearDependingVarsOnDelete( pDeletedBasic );
+ }
}
}
@@ -1018,40 +1049,40 @@ void StarBASIC::implClearDependingVarsOnDelete( StarBASIC* pDeletedBasic )
*
**************************************************************************/
-SbModule* StarBASIC::MakeModule( const String& rName, const String& rSrc )
+SbModule* StarBASIC::MakeModule( const OUString& rName, const OUString& rSrc )
{
return MakeModule32( rName, rSrc );
}
-SbModule* StarBASIC::MakeModule32( const String& rName, const ::rtl::OUString& rSrc )
+SbModule* StarBASIC::MakeModule32( const OUString& rName, const OUString& rSrc )
{
ModuleInfo mInfo;
mInfo.ModuleType = ModuleType::NORMAL;
return MakeModule32( rName, mInfo, rSrc );
}
-SbModule* StarBASIC::MakeModule32( const String& rName, const ModuleInfo& mInfo, const rtl::OUString& rSrc )
+SbModule* StarBASIC::MakeModule32( const OUString& rName, const ModuleInfo& mInfo, const OUString& rSrc )
{
OSL_TRACE("create module %s type mInfo %d", rtl::OUStringToOString( rName, RTL_TEXTENCODING_UTF8 ).getStr(), mInfo.ModuleType );
SbModule* p = NULL;
switch ( mInfo.ModuleType )
{
- case ModuleType::DOCUMENT:
- // In theory we should be able to create Object modules
- // in ordinary basic ( in vba mode thought these are create
- // by the application/basic and not by the user )
- p = new SbObjModule( rName, mInfo, isVBAEnabled() );
- break;
- case ModuleType::CLASS:
- p = new SbModule( rName, isVBAEnabled() );
- p->SetModuleType( ModuleType::CLASS );
+ case ModuleType::DOCUMENT:
+ // In theory we should be able to create Object modules
+ // in ordinary basic ( in vba mode thought these are create
+ // by the application/basic and not by the user )
+ p = new SbObjModule( rName, mInfo, isVBAEnabled() );
break;
- case ModuleType::FORM:
- p = new SbUserFormModule( rName, mInfo, isVBAEnabled() );
+ case ModuleType::CLASS:
+ p = new SbModule( rName, isVBAEnabled() );
+ p->SetModuleType( ModuleType::CLASS );
+ break;
+ case ModuleType::FORM:
+ p = new SbUserFormModule( rName, mInfo, isVBAEnabled() );
+ break;
+ default:
+ p = new SbModule( rName, isVBAEnabled() );
break;
- default:
- p = new SbModule( rName, isVBAEnabled() );
-
}
p->SetSource32( rSrc );
p->SetParent( this );
@@ -1073,7 +1104,9 @@ void StarBASIC::Insert( SbxVariable* pVar )
sal_Bool bWasModified = IsModified();
SbxObject::Insert( pVar );
if( !bWasModified && pVar->IsSet( SBX_DONTSTORE ) )
+ {
SetModified( sal_False );
+ }
}
}
@@ -1088,7 +1121,9 @@ void StarBASIC::Remove( SbxVariable* pVar )
EndListening( pVar->GetBroadcaster() );
}
else
+ {
SbxObject::Remove( pVar );
+ }
}
sal_Bool StarBASIC::Compile( SbModule* pMod )
@@ -1099,16 +1134,20 @@ sal_Bool StarBASIC::Compile( SbModule* pMod )
void StarBASIC::Clear()
{
while( pModules->Count() )
+ {
pModules->Remove( pModules->Count() - 1 );
+ }
}
-SbModule* StarBASIC::FindModule( const String& rName )
+SbModule* StarBASIC::FindModule( const OUString& rName )
{
for( sal_uInt16 i = 0; i < pModules->Count(); i++ )
{
SbModule* p = (SbModule*) pModules->Get( i );
- if( p->GetName().EqualsIgnoreCaseAscii( rName ) )
+ if( p->GetName().equalsIgnoreAsciiCase( rName ) )
+ {
return p;
+ }
}
return NULL;
}
@@ -1135,8 +1174,8 @@ struct ClassModuleRunInitItem
// Derive from unordered_map type instead of typedef
// to allow forward declaration in sbmod.hxx
class ModuleInitDependencyMap : public
- boost::unordered_map< ::rtl::OUString, ClassModuleRunInitItem,
- ::rtl::OUStringHash, ::std::equal_to< ::rtl::OUString > >
+ boost::unordered_map< OUString, ClassModuleRunInitItem,
+ ::rtl::OUStringHash, ::std::equal_to< OUString > >
{};
void SbModule::implProcessModuleRunInit( ModuleInitDependencyMap& rMap, ClassModuleRunInitItem& rItem )
@@ -1151,7 +1190,7 @@ void SbModule::implProcessModuleRunInit( ModuleInitDependencyMap& rMap, ClassMod
{
for( StringVector::iterator it = rReqTypes.begin() ; it != rReqTypes.end() ; ++it )
{
- String& rStr = *it;
+ OUString& rStr = *it;
// Is required type a class module?
ModuleInitDependencyMap::iterator itFind = rMap.find( rStr );
@@ -1166,7 +1205,9 @@ void SbModule::implProcessModuleRunInit( ModuleInitDependencyMap& rMap, ClassMod
}
if( !rParentItem.m_bRunInitDone )
+ {
implProcessModuleRunInit( rMap, rParentItem );
+ }
}
}
}
@@ -1187,7 +1228,9 @@ void StarBASIC::InitAllModules( StarBASIC* pBasicNotToInit )
{
SbModule* pModule = (SbModule*)pModules->Get( nMod );
if( !pModule->IsCompiled() )
+ {
pModule->Compile();
+ }
}
// compile modules first then RunInit ( otherwise there is
// can be order dependency, e.g. classmodule A has a member
@@ -1199,9 +1242,11 @@ void StarBASIC::InitAllModules( StarBASIC* pBasicNotToInit )
for ( sal_uInt16 nMod = 0; nMod < pModules->Count(); nMod++ )
{
SbModule* pModule = (SbModule*)pModules->Get( nMod );
- String aModuleName = pModule->GetName();
+ OUString aModuleName = pModule->GetName();
if( pModule->isProxyModule() )
+ {
aMIDMap[aModuleName] = ClassModuleRunInitItem( pModule );
+ }
}
ModuleInitDependencyMap::iterator it;
@@ -1216,7 +1261,9 @@ void StarBASIC::InitAllModules( StarBASIC* pBasicNotToInit )
{
SbModule* pModule = (SbModule*)pModules->Get( nMod );
if( !pModule->isProxyModule() )
+ {
pModule->RunInit();
+ }
}
// Check all objects if they are BASIC,
@@ -1226,7 +1273,9 @@ void StarBASIC::InitAllModules( StarBASIC* pBasicNotToInit )
SbxVariable* pVar = pObjs->Get( nObj );
StarBASIC* pBasic = PTR_CAST(StarBASIC,pVar);
if( pBasic && pBasic != pBasicNotToInit )
+ {
pBasic->InitAllModules();
+ }
}
}
@@ -1239,7 +1288,9 @@ void StarBASIC::DeInitAllModules( void )
{
SbModule* pModule = (SbModule*)pModules->Get( nMod );
if( pModule->pImage && !pModule->isProxyModule() && !pModule->ISA(SbObjModule) )
+ {
pModule->pImage->bInit = false;
+ }
}
for ( sal_uInt16 nObj = 0; nObj < pObjs->Count(); nObj++ )
@@ -1247,7 +1298,9 @@ void StarBASIC::DeInitAllModules( void )
SbxVariable* pVar = pObjs->Get( nObj );
StarBASIC* pBasic = PTR_CAST(StarBASIC,pVar);
if( pBasic )
+ {
pBasic->DeInitAllModules();
+ }
}
}
@@ -1257,7 +1310,7 @@ void StarBASIC::DeInitAllModules( void )
// method and a module with the given name is found the search continues
// for entrypoint "Main".
// If this fails again a conventional search over objects is performend.
-SbxVariable* StarBASIC::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* StarBASIC::Find( const OUString& rName, SbxClassType t )
{
SbxVariable* pRes = NULL;
SbModule* pNamed = NULL;
@@ -1268,55 +1321,71 @@ SbxVariable* StarBASIC::Find( const rtl::OUString& rName, SbxClassType t )
if( t == SbxCLASS_DONTCARE || t == SbxCLASS_OBJECT )
{
if( rName.equalsIgnoreAsciiCase( RTLNAME ) )
+ {
pRes = pRtl;
+ }
}
if( !pRes )
+ {
pRes = ((SbiStdObject*) (SbxObject*) pRtl)->Find( rName, t );
+ }
if( pRes )
+ {
pRes->SetFlag( SBX_EXTFOUND );
+ }
}
// Search module
if( !pRes )
- for( sal_uInt16 i = 0; i < pModules->Count(); i++ )
{
- SbModule* p = (SbModule*) pModules->Get( i );
- if( p->IsVisible() )
+ for( sal_uInt16 i = 0; i < pModules->Count(); i++ )
{
- // Remember modul fpr Main() call
- // or is the name equal?!?
- if( p->GetName().EqualsIgnoreCaseAscii( rName ) )
+ SbModule* p = (SbModule*) pModules->Get( i );
+ if( p->IsVisible() )
{
- if( t == SbxCLASS_OBJECT || t == SbxCLASS_DONTCARE )
+ // Remember modul fpr Main() call
+ // or is the name equal?!?
+ if( p->GetName().equalsIgnoreAsciiCase( rName ) )
+ {
+ if( t == SbxCLASS_OBJECT || t == SbxCLASS_DONTCARE )
+ {
+ pRes = p; break;
+ }
+ pNamed = p;
+ }
+ // Only variables qualified by the Module Name e.g. Sheet1.foo
+ // should work for Documant && Class type Modules
+ sal_Int32 nType = p->GetModuleType();
+ if ( nType == ModuleType::DOCUMENT || nType == ModuleType::FORM )
{
- pRes = p; break;
+ continue;
+ }
+ // otherwise check if the element is available
+ // unset GBLSEARCH-Flag (due to Rekursion)
+ sal_uInt16 nGblFlag = p->GetFlags() & SBX_GBLSEARCH;
+ p->ResetFlag( SBX_GBLSEARCH );
+ pRes = p->Find( rName, t );
+ p->SetFlag( nGblFlag );
+ if( pRes )
+ {
+ break;
}
- pNamed = p;
}
- // Only variables qualified by the Module Name e.g. Sheet1.foo
- // should work for Documant && Class type Modules
- sal_Int32 nType = p->GetModuleType();
- if ( nType == ModuleType::DOCUMENT || nType == ModuleType::FORM )
- continue;
- // otherwise check if the element is available
- // unset GBLSEARCH-Flag (due to Rekursion)
- sal_uInt16 nGblFlag = p->GetFlags() & SBX_GBLSEARCH;
- p->ResetFlag( SBX_GBLSEARCH );
- pRes = p->Find( rName, t );
- p->SetFlag( nGblFlag );
- if( pRes )
- break;
}
}
- rtl::OUString aMainStr("Main");
+ OUString aMainStr("Main");
if( !pRes && pNamed && ( t == SbxCLASS_METHOD || t == SbxCLASS_DONTCARE ) &&
- !pNamed->GetName().EqualsIgnoreCaseAscii( aMainStr ) )
- pRes = pNamed->Find( aMainStr, SbxCLASS_METHOD );
+ !pNamed->GetName().equalsIgnoreAsciiCase( aMainStr ) )
+ {
+ pRes = pNamed->Find( aMainStr, SbxCLASS_METHOD );
+ }
if( !pRes )
+ {
pRes = SbxObject::Find( rName, t );
+ }
return pRes;
}
-sal_Bool StarBASIC::Call( const String& rName, SbxArray* pParam )
+sal_Bool StarBASIC::Call( const OUString& rName, SbxArray* pParam )
{
sal_Bool bRes = SbxObject::Call( rName, pParam );
if( !bRes )
@@ -1324,18 +1393,24 @@ sal_Bool StarBASIC::Call( const String& rName, SbxArray* pParam )
SbxError eErr = SbxBase::GetError();
SbxBase::ResetError();
if( eErr != SbxERR_OK )
+ {
RTError( (SbError)eErr, 0, 0, 0 );
+ }
}
return bRes;
}
// Find method via name (e.g. query via BASIC IDE)
-SbxBase* StarBASIC::FindSBXInCurrentScope( const String& rName )
+SbxBase* StarBASIC::FindSBXInCurrentScope( const OUString& rName )
{
if( !GetSbData()->pInst )
+ {
return NULL;
+ }
if( !GetSbData()->pInst->pRun )
+ {
return NULL;
+ }
return GetSbData()->pInst->pRun->FindElementExtern( rName );
}
@@ -1369,43 +1444,58 @@ bool StarBASIC::IsRunning()
SbMethod* StarBASIC::GetActiveMethod( sal_uInt16 nLevel )
{
if( GetSbData()->pInst )
+ {
return GetSbData()->pInst->GetCaller( nLevel );
+ }
else
+ {
return NULL;
+ }
}
SbModule* StarBASIC::GetActiveModule()
{
if( GetSbData()->pInst && !IsCompilerError() )
+ {
return GetSbData()->pInst->GetActiveModule();
+ }
else
+ {
return GetSbData()->pCompMod;
+ }
}
-sal_uInt16 StarBASIC::BreakPoint( sal_uInt16 l, sal_uInt16 c1, sal_uInt16 c2 )
+sal_uInt16 StarBASIC::BreakPoint( sal_Int32 l, sal_Int32 c1, sal_Int32 c2 )
{
SetErrorData( 0, l, c1, c2 );
bBreak = true;
if( GetSbData()->aBreakHdl.IsSet() )
+ {
return (sal_uInt16) GetSbData()->aBreakHdl.Call( this );
+ }
else
+ {
return BreakHdl();
+ }
}
-sal_uInt16 StarBASIC::StepPoint( sal_uInt16 l, sal_uInt16 c1, sal_uInt16 c2 )
+sal_uInt16 StarBASIC::StepPoint( sal_Int32 l, sal_Int32 c1, sal_Int32 c2 )
{
SetErrorData( 0, l, c1, c2 );
bBreak = false;
if( GetSbData()->aBreakHdl.IsSet() )
+ {
return (sal_uInt16) GetSbData()->aBreakHdl.Call( this );
+ }
else
+ {
return BreakHdl();
+ }
}
sal_uInt16 StarBASIC::BreakHdl()
{
- return (sal_uInt16) ( aBreakHdl.IsSet()
- ? aBreakHdl.Call( this ) : SbDEBUG_CONTINUE );
+ return (sal_uInt16) ( aBreakHdl.IsSet() ? aBreakHdl.Call( this ) : SbDEBUG_CONTINUE );
}
// Calls for error handler and break handler
@@ -1415,7 +1505,7 @@ sal_uInt16 StarBASIC::GetCol2() { return GetSbData()->nCol2; }
// Specific to error handler
SbError StarBASIC::GetErrorCode() { return GetSbData()->nCode; }
-const String& StarBASIC::GetErrorText() { return GetSbData()->aErrMsg; }
+const OUString& StarBASIC::GetErrorText() { return GetSbData()->aErrMsg; }
bool StarBASIC::IsCompilerError() { return GetSbData()->bCompiler; }
// From 1996-03-29:
@@ -1434,20 +1524,20 @@ sal_uInt16 StarBASIC::GetVBErrorCode( SbError nError )
{
switch( nError )
{
- case SbERR_BASIC_ARRAY_FIX:
- return 10;
- case SbERR_BASIC_STRING_OVERFLOW:
- return 14;
- case SbERR_BASIC_EXPR_TOO_COMPLEX:
- return 16;
- case SbERR_BASIC_OPER_NOT_PERFORM:
- return 17;
- case SbERR_BASIC_TOO_MANY_DLL:
- return 47;
- case SbERR_BASIC_LOOP_NOT_INIT:
- return 92;
- default:
- nRet = 0;
+ case SbERR_BASIC_ARRAY_FIX:
+ return 10;
+ case SbERR_BASIC_STRING_OVERFLOW:
+ return 14;
+ case SbERR_BASIC_EXPR_TOO_COMPLEX:
+ return 16;
+ case SbERR_BASIC_OPER_NOT_PERFORM:
+ return 17;
+ case SbERR_BASIC_TOO_MANY_DLL:
+ return 47;
+ case SbERR_BASIC_LOOP_NOT_INIT:
+ return 92;
+ default:
+ nRet = 0;
}
}
@@ -1476,27 +1566,27 @@ SbError StarBASIC::GetSfxFromVBError( sal_uInt16 nError )
{
switch( nError )
{
- case 1:
- case 2:
- case 4:
- case 8:
- case 12:
- case 73:
- return 0L;
- case 10:
- return SbERR_BASIC_ARRAY_FIX;
- case 14:
- return SbERR_BASIC_STRING_OVERFLOW;
- case 16:
- return SbERR_BASIC_EXPR_TOO_COMPLEX;
- case 17:
- return SbERR_BASIC_OPER_NOT_PERFORM;
- case 47:
- return SbERR_BASIC_TOO_MANY_DLL;
- case 92:
- return SbERR_BASIC_LOOP_NOT_INIT;
- default:
- nRet = 0L;
+ case 1:
+ case 2:
+ case 4:
+ case 8:
+ case 12:
+ case 73:
+ return 0L;
+ case 10:
+ return SbERR_BASIC_ARRAY_FIX;
+ case 14:
+ return SbERR_BASIC_STRING_OVERFLOW;
+ case 16:
+ return SbERR_BASIC_EXPR_TOO_COMPLEX;
+ case 17:
+ return SbERR_BASIC_OPER_NOT_PERFORM;
+ case 47:
+ return SbERR_BASIC_TOO_MANY_DLL;
+ case 92:
+ return SbERR_BASIC_LOOP_NOT_INIT;
+ default:
+ nRet = 0L;
}
}
const SFX_VB_ErrorItem* pErrItem;
@@ -1510,8 +1600,9 @@ SbError StarBASIC::GetSfxFromVBError( sal_uInt16 nError )
break;
}
else if( pErrItem->nErrorVB > nError )
+ {
break; // couldn't found anymore
-
+ }
nIndex++;
}
while( pErrItem->nErrorVB != 0xFFFF ); // up to end mark
@@ -1519,8 +1610,8 @@ SbError StarBASIC::GetSfxFromVBError( sal_uInt16 nError )
}
// set Error- / Break-data
-void StarBASIC::SetErrorData
-( SbError nCode, sal_uInt16 nLine, sal_uInt16 nCol1, sal_uInt16 nCol2 )
+void StarBASIC::SetErrorData( SbError nCode, sal_uInt16 nLine,
+ sal_uInt16 nCol1, sal_uInt16 nCol2 )
{
SbiGlobals& aGlobals = *GetSbData();
aGlobals.nCode = nCode;
@@ -1540,13 +1631,13 @@ struct BasicStringList_Impl : private Resource
: Resource( rErrIdP ),aResId(nId, *rErrIdP.GetResMgr() ){}
~BasicStringList_Impl() { FreeResource(); }
- String GetString(){ return aResId.toString(); }
+ OUString GetString(){ return aResId.toString(); }
sal_Bool IsErrorTextAvailable( void )
{ return IsAvailableRes(aResId.SetRT(RSC_STRING)); }
};
//----------------------------------------------------------------
-void StarBASIC::MakeErrorText( SbError nId, const ::rtl::OUString& aMsg )
+void StarBASIC::MakeErrorText( SbError nId, const OUString& aMsg )
{
SolarMutexGuard aSolarGuard;
sal_uInt16 nOldID = GetVBErrorCode( nId );
@@ -1558,30 +1649,32 @@ void StarBASIC::MakeErrorText( SbError nId, const ::rtl::OUString& aMsg )
if( aMyStringList.IsErrorTextAvailable() )
{
// merge message with additional text
- String aMsg1 = aMyStringList.GetString();
+ OUStringBuffer aMsg1(aMyStringList.GetString());
// replace argument placeholder with %s
- String aSrgStr( RTL_CONSTASCII_USTRINGPARAM("$(ARG1)") );
- sal_uInt16 nResult = aMsg1.Search( aSrgStr );
+ OUString aSrgStr( "$(ARG1)" );
+ sal_Int32 nResult = aMyStringList.GetString().indexOf( aSrgStr );
- if( nResult != STRING_NOTFOUND )
+ if( nResult >= 0 )
{
- aMsg1.Erase( nResult, aSrgStr.Len() );
- aMsg1.Insert( aMsg, nResult );
+ aMsg1.remove(nResult, aSrgStr.getLength());
+ aMsg1.insert(nResult, aMsg);
}
- GetSbData()->aErrMsg = aMsg1;
+ GetSbData()->aErrMsg = aMsg1.makeStringAndClear();
}
else if( nOldID != 0 )
{
- rtl::OUStringBuffer aStdMsg;
+ OUStringBuffer aStdMsg;
aStdMsg.append("Fehler ").append(static_cast<sal_Int32>(nOldID)).append(": Kein Fehlertext verfuegbar!");
GetSbData()->aErrMsg = aStdMsg.makeStringAndClear();
}
else
- GetSbData()->aErrMsg = String::EmptyString();
+ {
+ GetSbData()->aErrMsg = "";
+ }
}
-sal_Bool StarBASIC::CError
- ( SbError code, const ::rtl::OUString& rMsg, sal_uInt16 l, sal_uInt16 c1, sal_uInt16 c2 )
+sal_Bool StarBASIC::CError( SbError code, const OUString& rMsg,
+ sal_Int32 l, sal_Int32 c1, sal_Int32 c2 )
{
SolarMutexGuard aSolarGuard;
@@ -1591,8 +1684,9 @@ sal_Bool StarBASIC::CError
// #109018 Check if running Basic is affected
StarBASIC* pStartedBasic = GetSbData()->pInst->GetBasic();
if( pStartedBasic != this )
+ {
return sal_False;
-
+ }
Stop();
}
@@ -1604,36 +1698,42 @@ sal_Bool StarBASIC::CError
// Implementation of the code for the string transport to SFX-Error
if( !rMsg.isEmpty() )
+ {
code = (sal_uIntPtr)*new StringErrorInfo( code, rMsg );
-
+ }
SetErrorData( code, l, c1, c2 );
GetSbData()->bCompiler = true;
sal_Bool bRet;
if( GetSbData()->aErrHdl.IsSet() )
+ {
bRet = (sal_Bool) GetSbData()->aErrHdl.Call( this );
+ }
else
+ {
bRet = ErrorHdl();
+ }
GetSbData()->bCompiler = false; // only true for error handler
return bRet;
}
-sal_Bool StarBASIC::RTError
- ( SbError code, sal_uInt16 l, sal_uInt16 c1, sal_uInt16 c2 )
+sal_Bool StarBASIC::RTError( SbError code, sal_Int32 l, sal_Int32 c1, sal_Int32 c2 )
{
- return RTError( code, String(), l, c1, c2 );
+ return RTError( code, OUString(), l, c1, c2 );
}
-sal_Bool StarBASIC::RTError( SbError code, const String& rMsg, sal_uInt16 l, sal_uInt16 c1, sal_uInt16 c2 )
+sal_Bool StarBASIC::RTError( SbError code, const OUString& rMsg, sal_Int32 l, sal_Int32 c1, sal_Int32 c2 )
{
SolarMutexGuard aSolarGuard;
SbError c = code;
if( (c & ERRCODE_CLASS_MASK) == ERRCODE_CLASS_COMPILER )
+ {
c = 0;
+ }
MakeErrorText( c, rMsg );
// Implementation of the code for the string transport to SFX-Error
- if( rMsg.Len() )
+ if( !rMsg.isEmpty() )
{
// very confusing, even though MakeErrorText sets up the error text
// seems that this is not used ( if rMsg already has content )
@@ -1641,68 +1741,92 @@ sal_Bool StarBASIC::RTError( SbError code, const String& rMsg, sal_uInt16 l, sal
// like vba ( adds an error number etc )
if ( SbiRuntime::isVBAEnabled() && ( code == SbERR_BASIC_COMPAT ) )
{
- rtl::OUStringBuffer aTmp;
+ OUStringBuffer aTmp;
aTmp.append('\'').append(SbxErrObject::getUnoErrObject()->getNumber())
- .append("\'\n").append(GetSbData()->aErrMsg.Len() ? GetSbData()->aErrMsg : rMsg);
+ .append("\'\n").append(!GetSbData()->aErrMsg.isEmpty() ? GetSbData()->aErrMsg : rMsg);
code = (sal_uIntPtr)*new StringErrorInfo( code, aTmp.makeStringAndClear() );
}
else
- code = (sal_uIntPtr)*new StringErrorInfo( code, String(rMsg) );
+ {
+ code = (sal_uIntPtr)*new StringErrorInfo( code, rMsg );
+ }
}
SetErrorData( code, l, c1, c2 );
if( GetSbData()->aErrHdl.IsSet() )
+ {
return (sal_Bool) GetSbData()->aErrHdl.Call( this );
+ }
else
+ {
return ErrorHdl();
+ }
}
void StarBASIC::Error( SbError n )
{
- Error( n, String() );
+ Error( n, OUString() );
}
-void StarBASIC::Error( SbError n, const String& rMsg )
+void StarBASIC::Error( SbError n, const OUString& rMsg )
{
if( GetSbData()->pInst )
+ {
GetSbData()->pInst->Error( n, rMsg );
+ }
}
void StarBASIC::FatalError( SbError n )
{
if( GetSbData()->pInst )
+ {
GetSbData()->pInst->FatalError( n );
+ }
}
-void StarBASIC::FatalError( SbError _errCode, const String& _details )
+void StarBASIC::FatalError( SbError _errCode, const OUString& _details )
{
if( GetSbData()->pInst )
+ {
GetSbData()->pInst->FatalError( _errCode, _details );
+ }
}
SbError StarBASIC::GetErrBasic()
{
if( GetSbData()->pInst )
+ {
return GetSbData()->pInst->GetErr();
+ }
else
+ {
return 0;
+ }
}
// make the additional message for the RTL function error accessible
-String StarBASIC::GetErrorMsg()
+OUString StarBASIC::GetErrorMsg()
{
if( GetSbData()->pInst )
+ {
return GetSbData()->pInst->GetErrorMsg();
+ }
else
- return String();
+ {
+ return OUString();
+ }
}
-sal_uInt16 StarBASIC::GetErl()
+sal_Int32 StarBASIC::GetErl()
{
if( GetSbData()->pInst )
+ {
return GetSbData()->pInst->GetErl();
+ }
else
+ {
return 0;
+ }
}
sal_Bool StarBASIC::ErrorHdl()
@@ -1729,7 +1853,9 @@ void StarBASIC::SetGlobalBreakHdl( const Link& rLink )
SbxArrayRef StarBASIC::getUnoListeners( void )
{
if( !xUnoListeners.Is() )
+ {
xUnoListeners = new SbxArray();
+ }
return xUnoListeners;
}
@@ -1743,8 +1869,9 @@ SbxArrayRef StarBASIC::getUnoListeners( void )
sal_Bool StarBASIC::LoadData( SvStream& r, sal_uInt16 nVer )
{
if( !SbxObject::LoadData( r, nVer ) )
+ {
return sal_False;
-
+ }
// #95459 Delete dialogs, otherwise endless recursion
// in SbxVarable::GetType() if dialogs are accessed
sal_uInt16 nObjCount = pObjs->Count();
@@ -1761,7 +1888,9 @@ sal_Bool StarBASIC::LoadData( SvStream& r, sal_uInt16 nVer )
{
SbxVariable* pVar = ppDeleteTab[nObj];
if( pVar )
+ {
pObjs->Remove( pVar );
+ }
}
delete[] ppDeleteTab;
@@ -1772,7 +1901,9 @@ sal_Bool StarBASIC::LoadData( SvStream& r, sal_uInt16 nVer )
{
SbModule* pMod = (SbModule*) SbxBase::Load( r );
if( !pMod )
+ {
return sal_False;
+ }
else if( pMod->ISA(SbJScriptModule) )
{
// assign Ref, so that pMod will be deleted
@@ -1785,12 +1916,16 @@ sal_Bool StarBASIC::LoadData( SvStream& r, sal_uInt16 nVer )
}
}
// HACK for SFX-Bullshit!
- SbxVariable* p = Find( String( RTL_CONSTASCII_USTRINGPARAM("FALSE") ), SbxCLASS_PROPERTY );
+ SbxVariable* p = Find( OUString("FALSE"), SbxCLASS_PROPERTY );
if( p )
+ {
Remove( p );
- p = Find( String( RTL_CONSTASCII_USTRINGPARAM("TRUE") ), SbxCLASS_PROPERTY );
+ }
+ p = Find( OUString("TRUE"), SbxCLASS_PROPERTY );
if( p )
+ {
Remove( p );
+ }
// End of the hacks!
// Search via StarBASIC is at all times global
DBG_ASSERT( IsSet( SBX_GBLSEARCH ), "Basic ohne GBLSEARCH geladen" );
@@ -1801,13 +1936,17 @@ sal_Bool StarBASIC::LoadData( SvStream& r, sal_uInt16 nVer )
sal_Bool StarBASIC::StoreData( SvStream& r ) const
{
if( !SbxObject::StoreData( r ) )
+ {
return sal_False;
+ }
r << (sal_uInt16) pModules->Count();
for( sal_uInt16 i = 0; i < pModules->Count(); i++ )
{
SbModule* p = (SbModule*) pModules->Get( i );
if( !p->Store( r ) )
+ {
return sal_False;
+ }
}
return sal_True;
}
@@ -1815,7 +1954,7 @@ sal_Bool StarBASIC::StoreData( SvStream& r ) const
bool StarBASIC::GetUNOConstant( const sal_Char* _pAsciiName, ::com::sun::star::uno::Any& aOut )
{
bool bRes = false;
- ::rtl::OUString sVarName( ::rtl::OUString::createFromAscii( _pAsciiName ) );
+ OUString sVarName( OUString::createFromAscii( _pAsciiName ) );
SbUnoObject* pGlobs = dynamic_cast<SbUnoObject*>( Find( sVarName, SbxCLASS_DONTCARE ) );
if ( pGlobs )
{
@@ -1829,12 +1968,13 @@ Reference< frame::XModel > StarBASIC::GetModelFromBasic( SbxObject* pBasic )
{
OSL_PRECOND( pBasic != NULL, "getModelFromBasic: illegal call!" );
if ( !pBasic )
+ {
return NULL;
-
+ }
// look for the ThisComponent variable, first in the parent (which
// might be the document's Basic), then in the parent's parent (which might be
// the application Basic)
- const ::rtl::OUString sThisComponent( RTL_CONSTASCII_USTRINGPARAM( "ThisComponent" ) );
+ const OUString sThisComponent( "ThisComponent");
SbxVariable* pThisComponent = NULL;
SbxObject* pLookup = pBasic->GetParent();
@@ -1857,16 +1997,18 @@ Reference< frame::XModel > StarBASIC::GetModelFromBasic( SbxObject* pBasic )
// it's no XModel. Okay, ThisComponent nowadays is allowed to be a controller.
Reference< frame::XController > xController( aThisComponentAny, UNO_QUERY );
if ( xController.is() )
+ {
xModel = xController->getModel();
+ }
}
-
if ( !xModel.is() )
+ {
return NULL;
-
+ }
#if OSL_DEBUG_LEVEL > 0
OSL_TRACE("Have model ThisComponent points to url %s",
- ::rtl::OUStringToOString( xModel->getURL(),
- RTL_TEXTENCODING_ASCII_US ).pData->buffer );
+ OUStringToOString( xModel->getURL(),
+ RTL_TEXTENCODING_ASCII_US ).pData->buffer );
#endif
return xModel;
@@ -1887,15 +2029,15 @@ static sal_uInt16 nCountHash = 0, nAddHash, nItemHash, nRemoveHash;
SbxInfoRef BasicCollection::xAddInfo = NULL;
SbxInfoRef BasicCollection::xItemInfo = NULL;
-BasicCollection::BasicCollection( const rtl::OUString& rClass )
+BasicCollection::BasicCollection( const OUString& rClass )
: SbxObject( rClass )
{
if( !nCountHash )
{
- nCountHash = MakeHashCode( rtl::OUString::createFromAscii( pCountStr ) );
- nAddHash = MakeHashCode( rtl::OUString::createFromAscii( pAddStr ) );
- nItemHash = MakeHashCode( rtl::OUString::createFromAscii( pItemStr ) );
- nRemoveHash = MakeHashCode( rtl::OUString::createFromAscii( pRemoveStr ) );
+ nCountHash = MakeHashCode( OUString::createFromAscii( pCountStr ) );
+ nAddHash = MakeHashCode( OUString::createFromAscii( pAddStr ) );
+ nItemHash = MakeHashCode( OUString::createFromAscii( pItemStr ) );
+ nRemoveHash = MakeHashCode( OUString::createFromAscii( pRemoveStr ) );
}
Initialize();
@@ -1917,31 +2059,31 @@ void BasicCollection::Initialize()
SetFlag( SBX_FIXED );
ResetFlag( SBX_WRITE );
SbxVariable* p;
- p = Make( rtl::OUString::createFromAscii( pCountStr ), SbxCLASS_PROPERTY, SbxINTEGER );
+ p = Make( OUString::createFromAscii( pCountStr ), SbxCLASS_PROPERTY, SbxINTEGER );
p->ResetFlag( SBX_WRITE );
p->SetFlag( SBX_DONTSTORE );
- p = Make( rtl::OUString::createFromAscii( pAddStr ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString::createFromAscii( pAddStr ), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
- p = Make( rtl::OUString::createFromAscii( pItemStr ), SbxCLASS_METHOD, SbxVARIANT );
+ p = Make( OUString::createFromAscii( pItemStr ), SbxCLASS_METHOD, SbxVARIANT );
p->SetFlag( SBX_DONTSTORE );
- p = Make( rtl::OUString::createFromAscii( pRemoveStr ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString::createFromAscii( pRemoveStr ), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
if ( !xAddInfo.Is() )
{
xAddInfo = new SbxInfo;
- xAddInfo->AddParam( String( RTL_CONSTASCII_USTRINGPARAM("Item") ), SbxVARIANT, SBX_READ );
- xAddInfo->AddParam( String( RTL_CONSTASCII_USTRINGPARAM("Key") ), SbxVARIANT, SBX_READ | SBX_OPTIONAL );
- xAddInfo->AddParam( String( RTL_CONSTASCII_USTRINGPARAM("Before") ), SbxVARIANT, SBX_READ | SBX_OPTIONAL );
- xAddInfo->AddParam( String( RTL_CONSTASCII_USTRINGPARAM("After") ), SbxVARIANT, SBX_READ | SBX_OPTIONAL );
+ xAddInfo->AddParam( OUString( "Item" ), SbxVARIANT, SBX_READ );
+ xAddInfo->AddParam( OUString( "Key" ), SbxVARIANT, SBX_READ | SBX_OPTIONAL );
+ xAddInfo->AddParam( OUString( "Before" ), SbxVARIANT, SBX_READ | SBX_OPTIONAL );
+ xAddInfo->AddParam( OUString( "After" ), SbxVARIANT, SBX_READ | SBX_OPTIONAL );
}
if ( !xItemInfo.Is() )
{
xItemInfo = new SbxInfo;
- xItemInfo->AddParam( String( RTL_CONSTASCII_USTRINGPARAM("Index") ), SbxVARIANT, SBX_READ | SBX_OPTIONAL);
+ xItemInfo->AddParam( OUString( "Index" ), SbxVARIANT, SBX_READ | SBX_OPTIONAL);
}
}
-SbxVariable* BasicCollection::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* BasicCollection::Find( const OUString& rName, SbxClassType t )
{
SbxVariable* pFind = SbxObject::Find( rName, t );
return pFind;
@@ -1959,33 +2101,47 @@ void BasicCollection::SFX_NOTIFY( SfxBroadcaster& rCst, const TypeId& rId1,
sal_Bool bRequestInfo = sal_Bool( nId == SBX_HINT_INFOWANTED );
SbxVariable* pVar = p->GetVar();
SbxArray* pArg = pVar->GetParameters();
- rtl::OUString aVarName( pVar->GetName() );
+ OUString aVarName( pVar->GetName() );
if( bRead || bWrite )
{
if( pVar->GetHashCode() == nCountHash
&& aVarName.equalsIgnoreAsciiCaseAscii( pCountStr ) )
+ {
pVar->PutLong( xItemArray->Count32() );
+ }
else if( pVar->GetHashCode() == nAddHash
&& aVarName.equalsIgnoreAsciiCaseAscii( pAddStr ) )
+ {
CollAdd( pArg );
+ }
else if( pVar->GetHashCode() == nItemHash
&& aVarName.equalsIgnoreAsciiCaseAscii( pItemStr ) )
+ {
CollItem( pArg );
+ }
else if( pVar->GetHashCode() == nRemoveHash
&& aVarName.equalsIgnoreAsciiCaseAscii( pRemoveStr ) )
+ {
CollRemove( pArg );
+ }
else
+ {
SbxObject::SFX_NOTIFY( rCst, rId1, rHint, rId2 );
+ }
return;
}
else if ( bRequestInfo )
{
if( pVar->GetHashCode() == nAddHash
&& aVarName.equalsIgnoreAsciiCaseAscii( pAddStr ) )
+ {
pVar->SetInfo( xAddInfo );
+ }
else if( pVar->GetHashCode() == nItemHash
&& aVarName.equalsIgnoreAsciiCaseAscii( pItemStr ) )
+ {
pVar->SetInfo( xItemInfo );
+ }
}
}
SbxObject::SFX_NOTIFY( rCst, rId1, rHint, rId2 );
@@ -1995,13 +2151,17 @@ sal_Int32 BasicCollection::implGetIndex( SbxVariable* pIndexVar )
{
sal_Int32 nIndex = -1;
if( pIndexVar->GetType() == SbxSTRING )
- nIndex = implGetIndexForName( pIndexVar->GetString() );
+ {
+ nIndex = implGetIndexForName( pIndexVar->GetOUString() );
+ }
else
+ {
nIndex = pIndexVar->GetLong() - 1;
+ }
return nIndex;
}
-sal_Int32 BasicCollection::implGetIndexForName( const String& rName )
+sal_Int32 BasicCollection::implGetIndexForName( const OUString& rName )
{
sal_Int32 nIndex = -1;
sal_Int32 nCount = xItemArray->Count32();
@@ -2010,7 +2170,7 @@ sal_Int32 BasicCollection::implGetIndexForName( const String& rName )
{
SbxVariable* pVar = xItemArray->Get32( i );
if( pVar->GetHashCode() == nNameHash &&
- pVar->GetName().EqualsIgnoreCaseAscii( rName ) )
+ pVar->GetName().equalsIgnoreAsciiCase( rName ) )
{
nIndex = i;
break;
@@ -2078,7 +2238,7 @@ void BasicCollection::CollAdd( SbxArray* pPar_ )
SetError( SbERR_BAD_ARGUMENT );
return;
}
- String aKey = pKey->GetString();
+ OUString aKey = pKey->GetOUString();
if( implGetIndexForName( aKey ) != -1 )
{
SetError( SbERR_BAD_ARGUMENT );
@@ -2108,11 +2268,17 @@ void BasicCollection::CollItem( SbxArray* pPar_ )
SbxVariable* p = pPar_->Get( 1 );
sal_Int32 nIndex = implGetIndex( p );
if( nIndex >= 0 && nIndex < (sal_Int32)xItemArray->Count32() )
+ {
pRes = xItemArray->Get32( nIndex );
+ }
if( !pRes )
+ {
SetError( SbERR_BAD_ARGUMENT );
+ }
else
+ {
*(pPar_->Get(0)) = *pRes;
+ }
}
void BasicCollection::CollRemove( SbxArray* pPar_ )
@@ -2138,12 +2304,16 @@ void BasicCollection::CollRemove( SbxArray* pPar_ )
if( pStack != NULL )
{
if( pStack->nCurCollectionIndex >= nIndex )
+ {
--pStack->nCurCollectionIndex;
+ }
}
}
}
else
+ {
SetError( SbERR_BAD_ARGUMENT );
+ }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/classes/sbunoobj.cxx b/basic/source/classes/sbunoobj.cxx
index cd43e1b4c6bd..54d2a26e2006 100644
--- a/basic/source/classes/sbunoobj.cxx
+++ b/basic/source/classes/sbunoobj.cxx
@@ -47,6 +47,7 @@
#include <com/sun/star/beans/PropertyConcept.hpp>
#include <com/sun/star/beans/MethodConcept.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/beans/Introspection.hpp>
#include <com/sun/star/script/BasicErrorException.hpp>
#include <com/sun/star/script/XAllListener.hpp>
#include <com/sun/star/script/XInvocationAdapterFactory.hpp>
@@ -114,7 +115,7 @@ static char const defaultNameSpace[] = "ooo.vba";
// redirection built in. The property name specifies the name
// of the default property.
-bool SbUnoObject::getDefaultPropName( SbUnoObject* pUnoObj, ::rtl::OUString& sDfltProp )
+bool SbUnoObject::getDefaultPropName( SbUnoObject* pUnoObj, OUString& sDfltProp )
{
bool result = false;
Reference< XDefaultProperty> xDefaultProp( pUnoObj->maTmpUnoObj, UNO_QUERY );
@@ -152,7 +153,7 @@ void SetSbUnoObjectDfltPropName( SbxObject* pObj )
SbUnoObject* pUnoObj = PTR_CAST(SbUnoObject,(SbxObject*) pObj);
if ( pUnoObj )
{
- ::rtl::OUString sDfltPropName;
+ OUString sDfltPropName;
if ( SbUnoObject::getDefaultPropName( pUnoObj, sDfltPropName ) )
{
@@ -175,14 +176,14 @@ Reference< XIdlReflection > getCoreReflection_Impl( void )
if( xContext.is() )
{
xContext->getValueByName(
- ::rtl::OUString( "/singletons/com.sun.star.reflection.theCoreReflection" ) )
+ OUString( "/singletons/com.sun.star.reflection.theCoreReflection" ) )
>>= xCoreReflection;
OSL_ENSURE( xCoreReflection.is(), "### CoreReflection singleton not accessable!?" );
}
if( !xCoreReflection.is() )
{
throw DeploymentException(
- ::rtl::OUString( "/singletons/com.sun.star.reflection.theCoreReflection singleton not accessable" ),
+ OUString( "/singletons/com.sun.star.reflection.theCoreReflection singleton not accessable" ),
Reference< XInterface >() );
}
}
@@ -219,15 +220,14 @@ Reference< XHierarchicalNameAccess > getTypeProvider_Impl( void )
if( xContext.is() )
{
xContext->getValueByName(
- ::rtl::OUString( "/singletons/com.sun.star.reflection.theTypeDescriptionManager" ) )
+ OUString( "/singletons/com.sun.star.reflection.theTypeDescriptionManager" ) )
>>= xAccess;
OSL_ENSURE( xAccess.is(), "### TypeDescriptionManager singleton not accessable!?" );
}
if( !xAccess.is() )
{
throw DeploymentException(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM
- ("/singletons/com.sun.star.reflection.theTypeDescriptionManager singleton not accessable") ),
+ OUString("/singletons/com.sun.star.reflection.theTypeDescriptionManager singleton not accessable"),
Reference< XInterface >() );
}
}
@@ -251,8 +251,7 @@ Reference< XTypeConverter > getTypeConverter_Impl( void )
if( !xTypeConverter.is() )
{
throw DeploymentException(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM
- ("com.sun.star.script.Converter service not accessable") ),
+ OUString("com.sun.star.script.Converter service not accessable"),
Reference< XInterface >() );
}
}
@@ -261,7 +260,7 @@ Reference< XTypeConverter > getTypeConverter_Impl( void )
// #111851 factory function to create an OLE object
-SbUnoObject* createOLEObject_Impl( const ::rtl::OUString& aType )
+SbUnoObject* createOLEObject_Impl( const OUString& aType )
{
static Reference< XMultiServiceFactory > xOLEFactory;
static bool bNeedsInit = true;
@@ -277,7 +276,7 @@ SbUnoObject* createOLEObject_Impl( const ::rtl::OUString& aType )
Reference<XMultiComponentFactory> xSMgr = xContext->getServiceManager();
xOLEFactory = Reference<XMultiServiceFactory>(
xSMgr->createInstanceWithContext(
- ::rtl::OUString( "com.sun.star.bridge.OleObjectFactory"),
+ OUString( "com.sun.star.bridge.OleObjectFactory"),
xContext ), UNO_QUERY );
}
}
@@ -286,10 +285,11 @@ SbUnoObject* createOLEObject_Impl( const ::rtl::OUString& aType )
if( xOLEFactory.is() )
{
// some type names available in VBA can not be directly used in COM
- ::rtl::OUString aOLEType = aType;
+ OUString aOLEType = aType;
if ( aOLEType == "SAXXMLReader30" )
- aOLEType = ::rtl::OUString( "Msxml2.SAXXMLReader.3.0" );
-
+ {
+ aOLEType = "Msxml2.SAXXMLReader.3.0";
+ }
Reference< XInterface > xOLEObject = xOLEFactory->createInstance( aOLEType );
if( xOLEObject.is() )
{
@@ -304,14 +304,16 @@ SbUnoObject* createOLEObject_Impl( const ::rtl::OUString& aType )
namespace
{
- void lcl_indent( ::rtl::OUStringBuffer& _inout_rBuffer, sal_Int32 _nLevel )
+ void lcl_indent( OUStringBuffer& _inout_rBuffer, sal_Int32 _nLevel )
{
while ( _nLevel-- > 0 )
+ {
_inout_rBuffer.appendAscii( " " );
+ }
}
}
-void implAppendExceptionMsg( ::rtl::OUStringBuffer& _inout_rBuffer, const Exception& _e, const ::rtl::OUString& _rExceptionType, sal_Int32 _nLevel )
+void implAppendExceptionMsg( OUStringBuffer& _inout_rBuffer, const Exception& _e, const OUString& _rExceptionType, sal_Int32 _nLevel )
{
_inout_rBuffer.appendAscii( "\n" );
lcl_indent( _inout_rBuffer, _nLevel );
@@ -330,19 +332,20 @@ void implAppendExceptionMsg( ::rtl::OUStringBuffer& _inout_rBuffer, const Except
}
// construct an error message for the exception
-::rtl::OUString implGetExceptionMsg( const Exception& e, const ::rtl::OUString& aExceptionType_ )
+OUString implGetExceptionMsg( const Exception& e, const OUString& aExceptionType_ )
{
- ::rtl::OUStringBuffer aMessageBuf;
+ OUStringBuffer aMessageBuf;
implAppendExceptionMsg( aMessageBuf, e, aExceptionType_, 0 );
return aMessageBuf.makeStringAndClear();
}
-::rtl::OUString implGetExceptionMsg( const Any& _rCaughtException )
+OUString implGetExceptionMsg( const Any& _rCaughtException )
{
OSL_PRECOND( _rCaughtException.getValueTypeClass() == TypeClass_EXCEPTION, "implGetExceptionMsg: illegal argument!" );
if ( _rCaughtException.getValueTypeClass() != TypeClass_EXCEPTION )
- return String();
-
+ {
+ return OUString();
+ }
return implGetExceptionMsg( *static_cast< const Exception* >( _rCaughtException.getValue() ), _rCaughtException.getValueTypeName() );
}
@@ -362,10 +365,9 @@ Any convertAny( const Any& rVal, const Type& aDestType )
}
catch( const CannotConvertException& e2 )
{
- ::rtl::OUString aCannotConvertExceptionName
- ( "com.sun.star.lang.IllegalArgumentException" );
+ OUString aCannotConvertExceptionName( "com.sun.star.lang.IllegalArgumentException");
StarBASIC::Error( ERRCODE_BASIC_EXCEPTION,
- implGetExceptionMsg( e2, aCannotConvertExceptionName ) );
+ implGetExceptionMsg( e2, aCannotConvertExceptionName ) );
return aConvertedVal;
}
return aConvertedVal;
@@ -386,7 +388,7 @@ Reference<XIdlClass> TypeToIdlClass( const Type& rType )
if( pTD )
{
- ::rtl::OUString sOWName( pTD->pTypeName );
+ OUString sOWName( pTD->pTypeName );
Reference< XIdlReflection > xRefl = getCoreReflection_Impl();
xRetClass = xRefl->forName( sOWName );
}
@@ -395,7 +397,7 @@ Reference<XIdlClass> TypeToIdlClass( const Type& rType )
// Exception type unknown
template< class EXCEPTION >
-::rtl::OUString implGetExceptionMsg( const EXCEPTION& e )
+OUString implGetExceptionMsg( const EXCEPTION& e )
{
return implGetExceptionMsg( e, ::getCppuType( &e ).getTypeName() );
}
@@ -419,7 +421,7 @@ void implHandleWrappedTargetException( const Any& _rWrappedTargetException )
BasicErrorException aBasicError;
SbError nError( ERRCODE_BASIC_EXCEPTION );
- ::rtl::OUStringBuffer aMessageBuf;
+ OUStringBuffer aMessageBuf;
// strip any other WrappedTargetException instances, but this time preserve the error messages.
WrappedTargetException aWrapped;
@@ -659,7 +661,7 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue )
aClassAny <<= xClass;
// instantiate SbUnoObject
- ::rtl::OUString aName;
+ OUString aName;
SbUnoObject* pSbUnoObject = new SbUnoObject( aName, aClassAny );
SbxObjectRef xWrapper = (SbxObject*)pSbUnoObject;
@@ -747,7 +749,7 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue )
}
}
// instantiate a SbUnoObject
- ::rtl::OUString aName;
+ OUString aName;
SbUnoObject* pSbUnoObject = new SbUnoObject( aName, aValue );
//If this is called externally e.g. from the scripting
//framework then there is no 'active' runtime the default property will not be set up
@@ -755,10 +757,12 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue )
//test seems a bit of overkill
//if ( SbiRuntime::isVBAEnabled() )
{
- ::rtl::OUString sDfltPropName;
+ OUString sDfltPropName;
if ( SbUnoObject::getDefaultPropName( pSbUnoObject, sDfltPropName ) )
- pSbUnoObject->SetDfltProperty( sDfltPropName );
+ {
+ pSbUnoObject->SetDfltProperty( sDfltPropName );
+ }
}
SbxObjectRef xWrapper = (SbxObject*)pSbUnoObject;
@@ -836,7 +840,7 @@ void unoToSbxValue( SbxVariable* pVar, const Any& aValue )
pVar->PutChar( *(sal_Unicode*)aValue.getValue() );
break;
}
- case TypeClass_STRING: { ::rtl::OUString val; aValue >>= val; pVar->PutString( val ); } break;
+ case TypeClass_STRING: { OUString val; aValue >>= val; pVar->PutString( val ); } break;
case TypeClass_FLOAT: { float val = 0; aValue >>= val; pVar->PutSingle( val ); } break;
case TypeClass_DOUBLE: { double val = 0; aValue >>= val; pVar->PutDouble( val ); } break;
case TypeClass_BYTE: { sal_Int8 val = 0; aValue >>= val; pVar->PutInteger( val ); } break;
@@ -871,7 +875,7 @@ Type getUnoTypeForSbxBaseType( SbxDataType eType )
aRetType = ::getCppuType( (oleautomation::Date*)0 );
}
break;
- case SbxSTRING: aRetType = ::getCppuType( (::rtl::OUString*)0 ); break;
+ case SbxSTRING: aRetType = ::getCppuType( (OUString*)0 ); break;
case SbxBOOL: aRetType = ::getCppuType( (sal_Bool*)0 ); break;
case SbxVARIANT: aRetType = ::getCppuType( (Any*)0 ); break;
case SbxCHAR: aRetType = ::getCppuType( (sal_Unicode*)0 ); break;
@@ -950,7 +954,7 @@ Type getUnoTypeForSbxValue( SbxValue* pVal )
}
}
- ::rtl::OUStringBuffer aSeqTypeName;
+ OUStringBuffer aSeqTypeName;
aSeqTypeName.appendAscii(RTL_CONSTASCII_STRINGPARAM(aSeqLevelStr))
.append(aElementType.getTypeName());
aRetType = Type( TypeClass_SEQUENCE, aSeqTypeName.makeStringAndClear() );
@@ -989,9 +993,11 @@ Type getUnoTypeForSbxValue( SbxValue* pVal )
}
}
- ::rtl::OUStringBuffer aSeqTypeName;
+ OUStringBuffer aSeqTypeName;
for( short iDim = 0 ; iDim < nDims ; iDim++ )
+ {
aSeqTypeName.appendAscii(RTL_CONSTASCII_STRINGPARAM(aSeqLevelStr));
+ }
aSeqTypeName.append(aElementType.getTypeName());
aRetType = Type( TypeClass_SEQUENCE, aSeqTypeName.makeStringAndClear() );
}
@@ -1127,10 +1133,12 @@ static Any implRekMultiDimArrayToSequence( SbxDimArray* pArray,
sal_Int32* pActualIndices, sal_Int32* pLowerBounds, sal_Int32* pUpperBounds )
{
sal_Int32 nSeqLevel = nMaxDimIndex - nActualDim + 1;
- ::rtl::OUStringBuffer aSeqTypeName;
+ OUStringBuffer aSeqTypeName;
sal_Int32 i;
for( i = 0 ; i < nSeqLevel ; i++ )
+ {
aSeqTypeName.appendAscii(RTL_CONSTASCII_STRINGPARAM(aSeqLevelStr));
+ }
aSeqTypeName.append(aElemType.getTypeName());
Type aSeqType( TypeClass_SEQUENCE, aSeqTypeName.makeStringAndClear() );
@@ -1189,7 +1197,7 @@ Any sbxToUnoValue( SbxVariable* pVar )
// function to find a global identifier in
// the UnoScope and to wrap it for Sbx
-static bool implGetTypeByName( const String& rName, Type& rRetType )
+static bool implGetTypeByName( const OUString& rName, Type& rRetType )
{
bool bSuccess = false;
@@ -1245,7 +1253,7 @@ Any sbxToUnoValue( SbxVariable* pVar, const Type& rType, Property* pUnoProperty
if( pVar->IsNull() && eType == TypeClass_INTERFACE )
{
Reference< XInterface > xRef;
- ::rtl::OUString aClassName = xIdlTargetClass->getName();
+ OUString aClassName = xIdlTargetClass->getName();
Type aClassType( xIdlTargetClass->getTypeClass(), aClassName.getStr() );
aRetVal.setValue( &xRef, aClassType );
}
@@ -1315,19 +1323,20 @@ Any sbxToUnoValue( SbxVariable* pVar, const Type& rType, Property* pUnoProperty
if( xIdlClass.is() )
{
- ::rtl::OUString aClassName = xIdlClass->getName();
+ OUString aClassName = xIdlClass->getName();
Type aType( xIdlClass->getTypeClass(), aClassName.getStr() );
aRetVal <<= aType;
}
}
else if( eBaseType == SbxSTRING )
{
- // String representing type?
- String aTypeName = pVar->GetString();
+ OUString aTypeName = pVar->GetOUString();
Type aType;
bool bSuccess = implGetTypeByName( aTypeName, aType );
if( bSuccess )
+ {
aRetVal <<= aType;
+ }
}
}
break;
@@ -1362,7 +1371,7 @@ Any sbxToUnoValue( SbxVariable* pVar, const Type& rType, Property* pUnoProperty
xArray->realloc( aRetVal, nSeqSize );
// Element-Type
- ::rtl::OUString aClassName = xIdlTargetClass->getName();
+ OUString aClassName = xIdlTargetClass->getName();
typelib_TypeDescription * pSeqTD = 0;
typelib_typedescription_getByName( &pSeqTD, aClassName.pData );
OSL_ASSERT( pSeqTD );
@@ -1403,7 +1412,7 @@ Any sbxToUnoValue( SbxVariable* pVar, const Type& rType, Property* pUnoProperty
Type aElemType;
do
{
- ::rtl::OUString aTypeName = aCurType.getTypeName();
+ OUString aTypeName = aCurType.getTypeName();
typelib_typedescription_getByName( &pSeqTD, aTypeName.pData );
OSL_ASSERT( pSeqTD );
if( pSeqTD->eTypeClass == typelib_TypeClass_SEQUENCE )
@@ -1515,8 +1524,8 @@ void processAutomationParams( SbxArray* pParams, Sequence< Any >& args, bool bOL
sal_uInt32 i = 0;
if( pArgNamesArray )
{
- Sequence< ::rtl::OUString >& rNameSeq = pArgNamesArray->getNames();
- ::rtl::OUString* pNames = rNameSeq.getArray();
+ Sequence< OUString >& rNameSeq = pArgNamesArray->getNames();
+ OUString* pNames = rNameSeq.getArray();
Any aValAny;
for( i = 0 ; i < nParamCount ; i++ )
{
@@ -1525,7 +1534,7 @@ void processAutomationParams( SbxArray* pParams, Sequence< Any >& args, bool bOL
aValAny = sbxToUnoValueImpl( pParams->Get( iSbx ),
bBlockConversionToSmallestType );
- ::rtl::OUString aParamName = pNames[iSbx];
+ OUString aParamName = pNames[iSbx];
if( !aParamName.isEmpty() )
{
oleautomation::NamedArgument aNamedArgument;
@@ -1555,7 +1564,7 @@ enum INVOKETYPE
SetProp,
Func
};
-Any invokeAutomationMethod( const rtl::OUString& Name, Sequence< Any >& args, SbxArray* pParams, sal_uInt32 nParamCount, Reference< XInvocation >& rxInvocation, INVOKETYPE invokeType = Func )
+Any invokeAutomationMethod( const OUString& Name, Sequence< Any >& args, SbxArray* pParams, sal_uInt32 nParamCount, Reference< XInvocation >& rxInvocation, INVOKETYPE invokeType = Func )
{
Sequence< sal_Int16 > OutParamIndex;
Sequence< Any > OutParam;
@@ -1599,16 +1608,16 @@ Any invokeAutomationMethod( const rtl::OUString& Name, Sequence< Any >& args, Sb
}
// Debugging help method to readout the imlemented interfaces of an object
-rtl::OUString Impl_GetInterfaceInfo( const Reference< XInterface >& x, const Reference< XIdlClass >& xClass, sal_uInt16 nRekLevel )
+OUString Impl_GetInterfaceInfo( const Reference< XInterface >& x, const Reference< XIdlClass >& xClass, sal_uInt16 nRekLevel )
{
Type aIfaceType = ::getCppuType( (const Reference< XInterface > *)0 );
static Reference< XIdlClass > xIfaceClass = TypeToIdlClass( aIfaceType );
- rtl::OUStringBuffer aRetStr;
+ OUStringBuffer aRetStr;
for( sal_uInt16 i = 0 ; i < nRekLevel ; i++ )
aRetStr.appendAscii( " " );
aRetStr.append( xClass->getName() );
- ::rtl::OUString aClassName = xClass->getName();
+ OUString aClassName = xClass->getName();
Type aClassType( xClass->getTypeClass(), aClassName.getStr() );
// checking if the interface is realy supported
@@ -1635,9 +1644,9 @@ rtl::OUString Impl_GetInterfaceInfo( const Reference< XInterface >& x, const Ref
return aRetStr.makeStringAndClear();
}
-::rtl::OUString getDbgObjectNameImpl( SbUnoObject* pUnoObj )
+OUString getDbgObjectNameImpl( SbUnoObject* pUnoObj )
{
- ::rtl::OUString aName;
+ OUString aName;
if( pUnoObj )
{
aName = pUnoObj->GetClassName();
@@ -1659,24 +1668,26 @@ rtl::OUString Impl_GetInterfaceInfo( const Reference< XInterface >& x, const Ref
return aName;
}
-::rtl::OUString getDbgObjectName( SbUnoObject* pUnoObj )
+OUString getDbgObjectName( SbUnoObject* pUnoObj )
{
- ::rtl::OUString aName = getDbgObjectNameImpl( pUnoObj );
+ OUString aName = getDbgObjectNameImpl( pUnoObj );
if( aName.isEmpty() )
aName += ::rtl::OUString("Unknown");
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
if( aName.getLength() > 20 )
+ {
aRet.appendAscii( "\n" );
+ }
aRet.appendAscii( "\"" );
aRet.append( aName );
aRet.appendAscii( "\":" );
return aRet.makeStringAndClear();
}
-::rtl::OUString getBasicObjectTypeName( SbxObject* pObj )
+OUString getBasicObjectTypeName( SbxObject* pObj )
{
- ::rtl::OUString aName;
+ OUString aName;
if( pObj )
{
SbUnoObject* pUnoObj = PTR_CAST(SbUnoObject,pObj);
@@ -1689,19 +1700,22 @@ rtl::OUString Impl_GetInterfaceInfo( const Reference< XInterface >& x, const Ref
return aName;
}
-bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
+bool checkUnoObjectType( SbUnoObject* pUnoObj, const OUString& rClass )
{
Any aToInspectObj = pUnoObj->getUnoAny();
TypeClass eType = aToInspectObj.getValueType().getTypeClass();
if( eType != TypeClass_INTERFACE )
+ {
return false;
+ }
const Reference< XInterface > x = *(Reference< XInterface >*)aToInspectObj.getValue();
// Return true for XInvocation based objects as interface type names don't count then
Reference< XInvocation > xInvocation( x, UNO_QUERY );
if( xInvocation.is() )
+ {
return true;
-
+ }
bool result = false;
Reference< XTypeProvider > xTypeProvider( x, UNO_QUERY );
if( xTypeProvider.is() )
@@ -1714,13 +1728,16 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
which matches the interface names 'ooo.vba.excel.XWorkbooks' or
'ooo.vba.msforms.XLabel'.
*/
- ::rtl::OUString aClassName( sal_Unicode( '.' ) );
+ OUString aClassName( sal_Unicode( '.' ) );
sal_Int32 nClassNameDot = rClass.lastIndexOf( '.' );
if( nClassNameDot >= 0 )
- aClassName += rClass.copy( 0, nClassNameDot + 1 ) + ::rtl::OUString( sal_Unicode( 'X' ) ) + rClass.copy( nClassNameDot + 1 );
+ {
+ aClassName += rClass.copy( 0, nClassNameDot + 1 ) + OUString( sal_Unicode( 'X' ) ) + rClass.copy( nClassNameDot + 1 );
+ }
else
+ {
aClassName += ::rtl::OUString( sal_Unicode( 'X' ) ) + rClass;
-
+ }
Sequence< Type > aTypeSeq = xTypeProvider->getTypes();
const Type* pTypeArray = aTypeSeq.getConstArray();
sal_uInt32 nIfaceCount = aTypeSeq.getLength();
@@ -1734,7 +1751,7 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
OSL_FAIL("failed to get XIdlClass for type");
break;
}
- ::rtl::OUString aInterfaceName = xClass->getName();
+ OUString aInterfaceName = xClass->getName();
if ( aInterfaceName == "com.sun.star.bridge.oleautomation.XAutomationObject" )
{
// there is a hack in the extensions/source/ole/oleobj.cxx to return the typename of the automation object, lets check if it
@@ -1742,13 +1759,17 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
Reference< XInvocation > xInv( aToInspectObj, UNO_QUERY );
if ( xInv.is() )
{
- rtl::OUString sTypeName;
- xInv->getValue( rtl::OUString( "$GetTypeName" ) ) >>= sTypeName;
+ OUString sTypeName;
+ xInv->getValue( OUString( "$GetTypeName" ) ) >>= sTypeName;
if ( sTypeName.isEmpty() || sTypeName == "IDispatch" )
+ {
// can't check type, leave it pass
result = true;
+ }
else
+ {
result = sTypeName.equals( rClass );
+ }
}
break; // finished checking automation object
}
@@ -1767,13 +1788,13 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
}
// Debugging help method to readout the imlemented interfaces of an object
-::rtl::OUString Impl_GetSupportedInterfaces( SbUnoObject* pUnoObj )
+OUString Impl_GetSupportedInterfaces( SbUnoObject* pUnoObj )
{
Any aToInspectObj = pUnoObj->getUnoAny();
// allow only TypeClass interface
TypeClass eType = aToInspectObj.getValueType().getTypeClass();
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
if( eType != TypeClass_INTERFACE )
{
aRet.appendAscii( RTL_CONSTASCII_STRINGPARAM(ID_DBG_SUPPORTEDINTERFACES) );
@@ -1822,9 +1843,9 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
// Debugging help method SbxDataType -> String
-::rtl::OUString Dbg_SbxDataType2String( SbxDataType eType )
+OUString Dbg_SbxDataType2String( SbxDataType eType )
{
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
switch( +eType )
{
case SbxEMPTY: aRet.appendAscii("SbxEMPTY"); break;
@@ -1866,9 +1887,9 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
}
// Debugging help method to display the properties of a SbUnoObjects
-::rtl::OUString Impl_DumpProperties( SbUnoObject* pUnoObj )
+OUString Impl_DumpProperties( SbUnoObject* pUnoObj )
{
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
aRet.appendAscii("Properties of object ");
aRet.append( getDbgObjectName( pUnoObj ) );
@@ -1898,7 +1919,7 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
SbxVariable* pVar = pProps->Get( i );
if( pVar )
{
- ::rtl::OUStringBuffer aPropStr;
+ OUStringBuffer aPropStr;
if( (i % nPropsPerLine) == 0 )
aPropStr.appendAscii( "\n" );
@@ -1943,9 +1964,9 @@ bool checkUnoObjectType( SbUnoObject* pUnoObj, const ::rtl::OUString& rClass )
}
// Debugging help method to display the methods of an SbUnoObjects
-::rtl::OUString Impl_DumpMethods( SbUnoObject* pUnoObj )
+OUString Impl_DumpMethods( SbUnoObject* pUnoObj )
{
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
aRet.appendAscii("Methods of object ");
aRet.append( getDbgObjectName( pUnoObj ) );
@@ -2055,7 +2076,7 @@ void SbUnoObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
// Id == -1: Display implemented interfaces according the ClassProvider
if( nId == -1 ) // Property ID_DBG_SUPPORTEDINTERFACES"
{
- ::rtl::OUString aRetStr = Impl_GetSupportedInterfaces( this );
+ OUString aRetStr = Impl_GetSupportedInterfaces( this );
pVar->PutString( aRetStr );
}
// Id == -2: output properties
@@ -2063,7 +2084,7 @@ void SbUnoObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
{
// by now all properties must be established
implCreateAll();
- ::rtl::OUString aRetStr = Impl_DumpProperties( this );
+ OUString aRetStr = Impl_DumpProperties( this );
pVar->PutString( aRetStr );
}
// Id == -3: output the methods
@@ -2071,7 +2092,7 @@ void SbUnoObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
{
// y now all properties must be established
implCreateAll();
- ::rtl::OUString aRetStr = Impl_DumpMethods( this );
+ OUString aRetStr = Impl_DumpMethods( this );
pVar->PutString( aRetStr );
}
return;
@@ -2313,7 +2334,7 @@ void SbUnoObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
}
-SbUnoObject::SbUnoObject( const rtl::OUString& aName_, const Any& aUnoObj_ )
+SbUnoObject::SbUnoObject( const OUString& aName_, const Any& aUnoObj_ )
: SbxObject( aName_ )
, bNeedIntrospection( true )
, bNativeCOMObject( false )
@@ -2321,8 +2342,8 @@ SbUnoObject::SbUnoObject( const rtl::OUString& aName_, const Any& aUnoObj_ )
static Reference< XIntrospection > xIntrospection;
// beat out again the default properties of Sbx
- Remove( rtl::OUString("Name"), SbxCLASS_DONTCARE );
- Remove( rtl::OUString("Parent"), SbxCLASS_DONTCARE );
+ Remove( OUString("Name"), SbxCLASS_DONTCARE );
+ Remove( OUString("Parent"), SbxCLASS_DONTCARE );
// check the type of the ojekts
TypeClass eType = aUnoObj_.getValueType().getTypeClass();
@@ -2369,7 +2390,7 @@ SbUnoObject::SbUnoObject( const rtl::OUString& aName_, const Any& aUnoObj_ )
// Is it an interface or a struct?
sal_Bool bSetClassName = sal_False;
- rtl::OUString aClassName_;
+ OUString aClassName_;
if( eType == TypeClass_STRUCT || eType == TypeClass_EXCEPTION )
{
// Struct is Ok
@@ -2421,18 +2442,8 @@ void SbUnoObject::doIntrospection( void )
if( !xIntrospection.is() )
{
// get the introspection service
- Reference< XMultiServiceFactory > xFactory( comphelper::getProcessServiceFactory() );
- if ( xFactory.is() )
- {
- Reference< XInterface > xI = xFactory->createInstance( rtl::OUString("com.sun.star.beans.Introspection") );
- if (xI.is())
- xIntrospection = Reference< XIntrospection >::query( xI );
- }
- }
- if( !xIntrospection.is() )
- {
- StarBASIC::FatalError( ERRCODE_BASIC_EXCEPTION );
- return;
+ Reference< XComponentContext > xContext( comphelper::getProcessComponentContext() );
+ xIntrospection = Introspection::create( xContext );
}
// pass the introspection
@@ -2518,7 +2529,7 @@ void clearUnoMethods( void )
SbUnoMethod::SbUnoMethod
(
- const rtl::OUString& aName_,
+ const OUString& aName_,
SbxDataType eSbxType,
Reference< XIdlMethod > xUnoMethod_,
bool bInvocation,
@@ -2567,7 +2578,7 @@ SbxInfo* SbUnoMethod::GetInfo()
for( sal_uInt32 i = 0 ; i < nParamCount ; i++ )
{
const ParamInfo& rInfo = pParamInfos[i];
- ::rtl::OUString aParamName = rInfo.aName;
+ OUString aParamName = rInfo.aName;
SbxDataType t = SbxVARIANT;
sal_uInt16 nFlags_ = SBX_READ;
@@ -2590,7 +2601,7 @@ const Sequence<ParamInfo>& SbUnoMethod::getParamInfos( void )
SbUnoProperty::SbUnoProperty
(
- const rtl::OUString& aName_,
+ const OUString& aName_,
SbxDataType eSbxType,
SbxDataType eRealSbxType,
const Property& aUnoProp_,
@@ -2615,7 +2626,7 @@ SbUnoProperty::~SbUnoProperty()
{}
-SbxVariable* SbUnoObject::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbUnoObject::Find( const OUString& rName, SbxClassType t )
{
static Reference< XIdlMethod > xDummyMethod;
static Property aDummyProp;
@@ -2629,14 +2640,16 @@ SbxVariable* SbUnoObject::Find( const rtl::OUString& rName, SbxClassType t )
// if a property or a method of the required name exist
if( !pRes )
{
- ::rtl::OUString aUName( rName );
+ OUString aUName( rName );
if( mxUnoAccess.is() && !bNativeCOMObject )
{
if( mxExactName.is() )
{
- ::rtl::OUString aUExactName = mxExactName->getExactName( aUName );
+ OUString aUExactName = mxExactName->getExactName( aUName );
if( !aUExactName.isEmpty() )
+ {
aUName = aUExactName;
+ }
}
if( mxUnoAccess->hasProperty( aUName, PropertyConcept::ALL - PropertyConcept::DANGEROUS ) )
{
@@ -2677,7 +2690,7 @@ SbxVariable* SbUnoObject::Find( const rtl::OUString& rName, SbxClassType t )
try
{
Reference< XNameAccess > xNameAccess( mxUnoAccess->queryAdapter( ::getCppuType( (const Reference< XPropertySet > *)0 ) ), UNO_QUERY );
- ::rtl::OUString aUName2( rName );
+ OUString aUName2( rName );
if( xNameAccess.is() && xNameAccess->hasByName( aUName2 ) )
{
@@ -2712,9 +2725,11 @@ SbxVariable* SbUnoObject::Find( const rtl::OUString& rName, SbxClassType t )
{
if( mxExactNameInvocation.is() )
{
- ::rtl::OUString aUExactName = mxExactNameInvocation->getExactName( aUName );
+ OUString aUExactName = mxExactNameInvocation->getExactName( aUName );
if( !aUExactName.isEmpty() )
+ {
aUName = aUExactName;
+ }
}
try
@@ -2781,15 +2796,15 @@ void SbUnoObject::implCreateDbgProperties( void )
Property aProp;
// Id == -1: display the implemented interfaces corresponding the ClassProvider
- SbxVariableRef xVarRef = new SbUnoProperty( ::rtl::OUString(ID_DBG_SUPPORTEDINTERFACES), SbxSTRING, SbxSTRING, aProp, -1, false, false );
+ SbxVariableRef xVarRef = new SbUnoProperty( OUString(ID_DBG_SUPPORTEDINTERFACES), SbxSTRING, SbxSTRING, aProp, -1, false, false );
QuickInsert( (SbxVariable*)xVarRef );
// Id == -2: output the properties
- xVarRef = new SbUnoProperty( ::rtl::OUString(ID_DBG_PROPERTIES), SbxSTRING, SbxSTRING, aProp, -2, false, false );
+ xVarRef = new SbUnoProperty( OUString(ID_DBG_PROPERTIES), SbxSTRING, SbxSTRING, aProp, -2, false, false );
QuickInsert( (SbxVariable*)xVarRef );
// Id == -3: output the Methods
- xVarRef = new SbUnoProperty( ::rtl::OUString(ID_DBG_METHODS), SbxSTRING, SbxSTRING, aProp, -3, false, false );
+ xVarRef = new SbUnoProperty( OUString(ID_DBG_METHODS), SbxSTRING, SbxSTRING, aProp, -3, false, false );
QuickInsert( (SbxVariable*)xVarRef );
}
@@ -2870,7 +2885,7 @@ Any SbUnoObject::getUnoAny( void )
}
// help method to create an Uno-Struct per CoreReflection
-SbUnoObject* Impl_CreateUnoStruct( const ::rtl::OUString& aClassName )
+SbUnoObject* Impl_CreateUnoStruct( const OUString& aClassName )
{
// get CoreReflection
Reference< XIdlReflection > xCoreReflection = getCoreReflection_Impl();
@@ -2907,7 +2922,7 @@ SbxBase* SbUnoFactory::Create( sal_uInt16, sal_uInt32 )
return NULL;
}
-SbxObject* SbUnoFactory::CreateObject( const rtl::OUString& rClassName )
+SbxObject* SbUnoFactory::CreateObject( const OUString& rClassName )
{
return Impl_CreateUnoStruct( rClassName );
}
@@ -2915,7 +2930,7 @@ SbxObject* SbUnoFactory::CreateObject( const rtl::OUString& rClassName )
// Provisional interface for the UNO-Connection
// Deliver a SbxObject, that wrap an Uno-Interface
-SbxObjectRef GetSbUnoObject( const ::rtl::OUString& aName, const Any& aUnoObj_ )
+SbxObjectRef GetSbUnoObject( const OUString& aName, const Any& aUnoObj_ )
{
return new SbUnoObject( aName, aUnoObj_ );
}
@@ -2929,11 +2944,17 @@ void createAllObjectProperties( SbxObject* pObj )
SbUnoObject* pUnoObj = PTR_CAST(SbUnoObject,pObj);
SbUnoStructRefObject* pUnoStructObj = PTR_CAST(SbUnoStructRefObject,pObj);
if( pUnoObj )
+ {
pUnoObj->createAllProperties();
+ }
else if ( pUnoStructObj )
+ {
pUnoStructObj->createAllProperties();
+ }
else
+ {
pObj->GetAll( SbxCLASS_DONTCARE );
+ }
}
@@ -2950,13 +2971,14 @@ void RTL_Impl_CreateUnoStruct( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
}
// get the name of the class of the struct
- ::rtl::OUString aClassName = rPar.Get(1)->GetString();
+ OUString aClassName = rPar.Get(1)->GetOUString();
// try to create Struct with the same name
SbUnoObjectRef xUnoObj = Impl_CreateUnoStruct( aClassName );
if( !xUnoObj )
+ {
return;
-
+ }
// return the object
SbxVariableRef refVar = rPar.Get(0);
refVar->PutObject( (SbUnoObject*)xUnoObj );
@@ -2975,7 +2997,7 @@ void RTL_Impl_CreateUnoService( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWri
}
// get the name of the class of the struct
- ::rtl::OUString aServiceName = rPar.Get(1)->GetString();
+ OUString aServiceName = rPar.Get(1)->GetOUString();
// search for the service and instatiate it
Reference< XMultiServiceFactory > xFactory( comphelper::getProcessServiceFactory() );
@@ -3029,7 +3051,7 @@ void RTL_Impl_CreateUnoServiceWithArguments( StarBASIC* pBasic, SbxArray& rPar,
}
// get the name of the class of the struct
- ::rtl::OUString aServiceName = rPar.Get(1)->GetString();
+ OUString aServiceName = rPar.Get(1)->GetOUString();
Any aArgAsAny = sbxToUnoValue( rPar.Get(2),
getCppuType( (Sequence<Any>*)0 ) );
Sequence< Any > aArgs;
@@ -3089,7 +3111,7 @@ void RTL_Impl_GetProcessServiceManager( StarBASIC* pBasic, SbxArray& rPar, sal_B
aAny <<= xFactory;
// Create a SbUnoObject out of it and return it
- SbUnoObjectRef xUnoObj = new SbUnoObject( ::rtl::OUString( "ProcessServiceManager" ), aAny );
+ SbUnoObjectRef xUnoObj = new SbUnoObject( OUString( "ProcessServiceManager" ), aAny );
refVar->PutObject( (SbUnoObject*)xUnoObj );
}
else
@@ -3118,35 +3140,42 @@ void RTL_Impl_HasInterfaces( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
// get the Uno-Object
SbxBaseRef pObj = (SbxBase*)rPar.Get( 1 )->GetObject();
if( !(pObj && pObj->ISA(SbUnoObject)) )
+ {
return;
+ }
Any aAny = ((SbUnoObject*)(SbxBase*)pObj)->getUnoAny();
TypeClass eType = aAny.getValueType().getTypeClass();
if( eType != TypeClass_INTERFACE )
+ {
return;
-
+ }
// get the interface out of the Any
Reference< XInterface > x = *(Reference< XInterface >*)aAny.getValue();
// get CoreReflection
Reference< XIdlReflection > xCoreReflection = getCoreReflection_Impl();
if( !xCoreReflection.is() )
+ {
return;
-
+ }
for( sal_uInt16 i = 2 ; i < nParCount ; i++ )
{
// get the name of the interface of the struct
- rtl::OUString aIfaceName = rPar.Get( i )->GetString();
+ OUString aIfaceName = rPar.Get( i )->GetOUString();
// search for the class
Reference< XIdlClass > xClass = xCoreReflection->forName( aIfaceName );
if( !xClass.is() )
+ {
return;
-
+ }
// check if the interface will be supported
- ::rtl::OUString aClassName = xClass->getName();
+ OUString aClassName = xClass->getName();
Type aClassType( xClass->getTypeClass(), aClassName.getStr() );
if( !x->queryInterface( aClassType ).hasValue() )
+ {
return;
+ }
}
// Every thing works; then return TRUE
@@ -3172,14 +3201,20 @@ void RTL_Impl_IsUnoStruct( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite )
// get the Uno-Object
SbxVariableRef xParam = rPar.Get( 1 );
if( !xParam->IsObject() )
+ {
return;
+ }
SbxBaseRef pObj = (SbxBase*)rPar.Get( 1 )->GetObject();
if( !(pObj && pObj->ISA(SbUnoObject)) )
+ {
return;
+ }
Any aAny = ((SbUnoObject*)(SbxBase*)pObj)->getUnoAny();
TypeClass eType = aAny.getValueType().getTypeClass();
if( eType == TypeClass_STRUCT )
+ {
refVar->PutBool( sal_True );
+ }
}
@@ -3201,32 +3236,46 @@ void RTL_Impl_EqualUnoObjects( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
// get the Uno-Objects
SbxVariableRef xParam1 = rPar.Get( 1 );
if( !xParam1->IsObject() )
+ {
return;
+ }
SbxBaseRef pObj1 = (SbxBase*)xParam1->GetObject();
if( !(pObj1 && pObj1->ISA(SbUnoObject)) )
+ {
return;
+ }
Any aAny1 = ((SbUnoObject*)(SbxBase*)pObj1)->getUnoAny();
TypeClass eType1 = aAny1.getValueType().getTypeClass();
if( eType1 != TypeClass_INTERFACE )
+ {
return;
+ }
Reference< XInterface > x1;
aAny1 >>= x1;
SbxVariableRef xParam2 = rPar.Get( 2 );
if( !xParam2->IsObject() )
+ {
return;
+ }
SbxBaseRef pObj2 = (SbxBase*)xParam2->GetObject();
if( !(pObj2 && pObj2->ISA(SbUnoObject)) )
+ {
return;
+ }
Any aAny2 = ((SbUnoObject*)(SbxBase*)pObj2)->getUnoAny();
TypeClass eType2 = aAny2.getValueType().getTypeClass();
if( eType2 != TypeClass_INTERFACE )
+ {
return;
+ }
Reference< XInterface > x2;
aAny2 >>= x2;
if( x1 == x2 )
+ {
refVar->PutBool( sal_True );
+ }
}
@@ -3235,9 +3284,9 @@ void RTL_Impl_EqualUnoObjects( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrit
// if it fails for whatever reason
// returned Reference<> be null e.g. .is() will be false
-Reference< XTypeDescriptionEnumeration >
-getTypeDescriptorEnumeration( const ::rtl::OUString& sSearchRoot,
- const Sequence< TypeClass >& types, TypeDescriptionSearchDepth depth )
+Reference< XTypeDescriptionEnumeration > getTypeDescriptorEnumeration( const OUString& sSearchRoot,
+ const Sequence< TypeClass >& types,
+ TypeDescriptionSearchDepth depth )
{
Reference< XTypeDescriptionEnumeration > xEnum;
Reference< XTypeDescriptionEnumerationAccess> xTypeEnumAccess( getTypeProvider_Impl(), UNO_QUERY );
@@ -3254,7 +3303,7 @@ getTypeDescriptorEnumeration( const ::rtl::OUString& sSearchRoot,
return xEnum;
}
-typedef boost::unordered_map< ::rtl::OUString, Any, ::rtl::OUStringHash, ::std::equal_to< ::rtl::OUString > > VBAConstantsHash;
+typedef boost::unordered_map< OUString, Any, ::rtl::OUStringHash, ::std::equal_to< OUString > > VBAConstantsHash;
VBAConstantHelper&
VBAConstantHelper::instance()
@@ -3263,29 +3312,31 @@ VBAConstantHelper::instance()
return aHelper;
}
-void
-VBAConstantHelper::init()
+void VBAConstantHelper::init()
{
if ( !isInited )
{
Sequence< TypeClass > types(1);
types[ 0 ] = TypeClass_CONSTANTS;
- Reference< XTypeDescriptionEnumeration > xEnum = getTypeDescriptorEnumeration( rtl::OUString(defaultNameSpace), types, TypeDescriptionSearchDepth_INFINITE );
+ Reference< XTypeDescriptionEnumeration > xEnum = getTypeDescriptorEnumeration( OUString(defaultNameSpace), types, TypeDescriptionSearchDepth_INFINITE );
- if ( !xEnum.is() )
+ if ( !xEnum.is())
+ {
return; //NULL;
-
+ }
while ( xEnum->hasMoreElements() )
{
Reference< XConstantsTypeDescription > xConstants( xEnum->nextElement(), UNO_QUERY );
if ( xConstants.is() )
{
// store constant group name
- ::rtl::OUString sFullName = xConstants->getName();
+ OUString sFullName = xConstants->getName();
sal_Int32 indexLastDot = sFullName.lastIndexOf('.');
- ::rtl::OUString sLeafName( sFullName );
+ OUString sLeafName( sFullName );
if ( indexLastDot > -1 )
+ {
sLeafName = sFullName.copy( indexLastDot + 1);
+ }
aConstCache.push_back( sLeafName ); // assume constant group names are unique
Sequence< Reference< XConstantTypeDescription > > aConsts = xConstants->getConstants();
Reference< XConstantTypeDescription >* pSrc = aConsts.getArray();
@@ -3293,13 +3344,14 @@ VBAConstantHelper::init()
for ( sal_Int32 index =0; index<nLen; ++pSrc, ++index )
{
// store constant member name
- Reference< XConstantTypeDescription >& rXConst =
- *pSrc;
+ Reference< XConstantTypeDescription >& rXConst = *pSrc;
sFullName = rXConst->getName();
indexLastDot = sFullName.lastIndexOf('.');
sLeafName = sFullName;
if ( indexLastDot > -1 )
+ {
sLeafName = sFullName.copy( indexLastDot + 1);
+ }
aConstHash[ sLeafName.toAsciiLowerCase() ] = rXConst->getConstantValue();
}
}
@@ -3309,11 +3361,11 @@ VBAConstantHelper::init()
}
bool
-VBAConstantHelper::isVBAConstantType( const ::rtl::OUString& rName )
+VBAConstantHelper::isVBAConstantType( const OUString& rName )
{
init();
bool bConstant = false;
- ::rtl::OUString sKey( rName );
+ OUString sKey( rName );
VBAConstantsVector::const_iterator it = aConstCache.begin();
for( ; it != aConstCache.end(); ++it )
@@ -3328,12 +3380,12 @@ VBAConstantHelper::isVBAConstantType( const ::rtl::OUString& rName )
}
SbxVariable*
-VBAConstantHelper::getVBAConstant( const ::rtl::OUString& rName )
+VBAConstantHelper::getVBAConstant( const OUString& rName )
{
SbxVariable* pConst = NULL;
init();
- ::rtl::OUString sKey( rName );
+ OUString sKey( rName );
VBAConstantsHash::const_iterator it = aConstHash.find( sKey.toAsciiLowerCase() );
@@ -3349,7 +3401,7 @@ VBAConstantHelper::getVBAConstant( const ::rtl::OUString& rName )
// Function to search for a global identifier in the
// UnoScope and to wrap it for Sbx
-SbUnoClass* findUnoClass( const ::rtl::OUString& rName )
+SbUnoClass* findUnoClass( const OUString& rName )
{
// #105550 Check if module exists
SbUnoClass* pUnoClass = NULL;
@@ -3365,13 +3417,15 @@ SbUnoClass* findUnoClass( const ::rtl::OUString& rName )
{
TypeClass eTypeClass = xTypeDesc->getTypeClass();
if( eTypeClass == TypeClass_MODULE || eTypeClass == TypeClass_CONSTANTS )
+ {
pUnoClass = new SbUnoClass( rName );
+ }
}
}
return pUnoClass;
}
-SbxVariable* SbUnoClass::Find( const rtl::OUString& rName, SbxClassType )
+SbxVariable* SbUnoClass::Find( const OUString& rName, SbxClassType )
{
SbxVariable* pRes = SbxObject::Find( rName, SbxCLASS_VARIABLE );
@@ -3406,8 +3460,8 @@ SbxVariable* SbUnoClass::Find( const rtl::OUString& rName, SbxClassType )
else
{
// expand fully qualified name
- ::rtl::OUString aNewName = GetName();
- aNewName += ::rtl::OUString(".");
+ OUString aNewName = GetName();
+ aNewName += ".";
aNewName += rName;
// get CoreReflection
@@ -3501,7 +3555,7 @@ SbxVariable* SbUnoClass::Find( const rtl::OUString& rName, SbxClassType )
}
-SbUnoService* findUnoService( const ::rtl::OUString& rName )
+SbUnoService* findUnoService( const OUString& rName )
{
SbUnoService* pSbUnoService = NULL;
@@ -3526,7 +3580,7 @@ SbUnoService* findUnoService( const ::rtl::OUString& rName )
return pSbUnoService;
}
-SbxVariable* SbUnoService::Find( const rtl::OUString& rName, SbxClassType )
+SbxVariable* SbUnoService::Find( const OUString& rName, SbxClassType )
{
SbxVariable* pRes = SbxObject::Find( rName, SbxCLASS_METHOD );
@@ -3544,11 +3598,13 @@ SbxVariable* SbUnoService::Find( const rtl::OUString& rName, SbxClassType )
{
Reference< XServiceConstructorDescription > xCtor = pCtorSeq[i];
- ::rtl::OUString aName( xCtor->getName() );
+ OUString aName( xCtor->getName() );
if( aName.isEmpty() )
{
if( xCtor->isDefaultConstructor() )
- aName = ::rtl::OUString("create");
+ {
+ aName = OUString("create");
+ }
}
if( !aName.isEmpty() )
@@ -3558,7 +3614,6 @@ SbxVariable* SbUnoService::Find( const rtl::OUString& rName, SbxClassType )
QuickInsert( (SbxVariable*)xSbCtorRef );
}
}
-
pRes = SbxObject::Find( rName, SbxCLASS_METHOD );
}
}
@@ -3685,7 +3740,7 @@ void SbUnoService::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
Reference< XMultiComponentFactory > xServiceMgr( xContext->getServiceManager() );
Any aRetAny;
- ::rtl::OUString aServiceName = GetName();
+ OUString aServiceName = GetName();
Reference < XInterface > xRet;
try
{
@@ -3734,7 +3789,7 @@ void clearUnoServiceCtors( void )
}
}
-SbUnoServiceCtor::SbUnoServiceCtor( const ::rtl::OUString& aName_, Reference< XServiceConstructorDescription > xServiceCtorDesc )
+SbUnoServiceCtor::SbUnoServiceCtor( const OUString& aName_, Reference< XServiceConstructorDescription > xServiceCtorDesc )
: SbxMethod( aName_, SbxOBJECT )
, m_xServiceCtorDesc( xServiceCtorDesc )
{
@@ -3752,7 +3807,7 @@ SbxInfo* SbUnoServiceCtor::GetInfo()
}
-SbUnoSingleton* findUnoSingleton( const ::rtl::OUString& rName )
+SbUnoSingleton* findUnoSingleton( const OUString& rName )
{
SbUnoSingleton* pSbUnoSingleton = NULL;
@@ -3777,13 +3832,12 @@ SbUnoSingleton* findUnoSingleton( const ::rtl::OUString& rName )
return pSbUnoSingleton;
}
-SbUnoSingleton::SbUnoSingleton( const ::rtl::OUString& aName_,
+SbUnoSingleton::SbUnoSingleton( const OUString& aName_,
const Reference< XSingletonTypeDescription >& xSingletonTypeDesc )
: SbxObject( aName_ )
, m_xSingletonTypeDesc( xSingletonTypeDesc )
{
- SbxVariableRef xGetMethodRef =
- new SbxMethod( ::rtl::OUString( "get" ), SbxOBJECT );
+ SbxVariableRef xGetMethodRef = new SbxMethod( OUString( "get" ), SbxOBJECT );
QuickInsert( (SbxVariable*)xGetMethodRef );
}
@@ -3823,7 +3877,7 @@ void SbUnoSingleton::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
Any aRetAny;
if( xContextToUse.is() )
{
- ::rtl::OUString aSingletonName( "/singletons/" );
+ OUString aSingletonName( "/singletons/" );
aSingletonName += GetName();
Reference < XInterface > xRet;
xContextToUse->getValueByName( aSingletonName ) >>= xRet;
@@ -3832,7 +3886,9 @@ void SbUnoSingleton::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
unoToSbxValue( pVar, aRetAny );
}
else
+ {
SbxObject::SFX_NOTIFY( rBC, rBCType, rHint, rHintType );
+ }
}
@@ -3846,9 +3902,9 @@ class BasicAllListener_Impl : public BasicAllListenerHelper
public:
SbxObjectRef xSbxObj;
- ::rtl::OUString aPrefixName;
+ OUString aPrefixName;
- BasicAllListener_Impl( const ::rtl::OUString& aPrefixName );
+ BasicAllListener_Impl( const OUString& aPrefixName );
~BasicAllListener_Impl();
// Methods of XAllListener
@@ -3861,10 +3917,7 @@ public:
//========================================================================
-BasicAllListener_Impl::BasicAllListener_Impl
-(
- const ::rtl::OUString & aPrefixName_
-)
+BasicAllListener_Impl::BasicAllListener_Impl(const OUString& aPrefixName_)
: aPrefixName( aPrefixName_ )
{
}
@@ -3882,7 +3935,7 @@ void BasicAllListener_Impl::firing_impl( const AllEventObject& Event, Any* pRet
if( xSbxObj.Is() )
{
- ::rtl::OUString aMethodName = aPrefixName;
+ OUString aMethodName = aPrefixName;
aMethodName = aMethodName + Event.MethodName;
SbxVariable * pP = xSbxObj;
@@ -3962,13 +4015,13 @@ public:
// XInvocation
virtual Reference< XIntrospectionAccess > SAL_CALL getIntrospection(void) throw( RuntimeException );
- virtual Any SAL_CALL invoke(const ::rtl::OUString& FunctionName, const Sequence< Any >& Params, Sequence< sal_Int16 >& OutParamIndex, Sequence< Any >& OutParam)
+ virtual Any SAL_CALL invoke(const OUString& FunctionName, const Sequence< Any >& Params, Sequence< sal_Int16 >& OutParamIndex, Sequence< Any >& OutParam)
throw( IllegalArgumentException, CannotConvertException, InvocationTargetException, RuntimeException );
- virtual void SAL_CALL setValue(const ::rtl::OUString& PropertyName, const Any& Value)
+ virtual void SAL_CALL setValue(const OUString& PropertyName, const Any& Value)
throw( UnknownPropertyException, CannotConvertException, InvocationTargetException, RuntimeException );
- virtual Any SAL_CALL getValue(const ::rtl::OUString& PropertyName) throw( UnknownPropertyException, RuntimeException );
- virtual sal_Bool SAL_CALL hasMethod(const ::rtl::OUString& Name) throw( RuntimeException );
- virtual sal_Bool SAL_CALL hasProperty(const ::rtl::OUString& Name) throw( RuntimeException );
+ virtual Any SAL_CALL getValue(const OUString& PropertyName) throw( UnknownPropertyException, RuntimeException );
+ virtual sal_Bool SAL_CALL hasMethod(const OUString& Name) throw( RuntimeException );
+ virtual sal_Bool SAL_CALL hasProperty(const OUString& Name) throw( RuntimeException );
private:
Reference< XIdlReflection > m_xCoreReflection;
@@ -4017,7 +4070,7 @@ Reference< XIntrospectionAccess > SAL_CALL InvocationToAllListenerMapper::getInt
}
//*************************************************************************
-Any SAL_CALL InvocationToAllListenerMapper::invoke(const ::rtl::OUString& FunctionName, const Sequence< Any >& Params,
+Any SAL_CALL InvocationToAllListenerMapper::invoke(const OUString& FunctionName, const Sequence< Any >& Params,
Sequence< sal_Int16 >& OutParamIndex, Sequence< Any >& OutParam)
throw( IllegalArgumentException, CannotConvertException,
InvocationTargetException, RuntimeException )
@@ -4071,7 +4124,7 @@ Any SAL_CALL InvocationToAllListenerMapper::invoke(const ::rtl::OUString& Functi
}
//*************************************************************************
-void SAL_CALL InvocationToAllListenerMapper::setValue(const ::rtl::OUString& PropertyName, const Any& Value)
+void SAL_CALL InvocationToAllListenerMapper::setValue(const OUString& PropertyName, const Any& Value)
throw( UnknownPropertyException, CannotConvertException,
InvocationTargetException, RuntimeException )
{
@@ -4080,7 +4133,7 @@ void SAL_CALL InvocationToAllListenerMapper::setValue(const ::rtl::OUString& Pro
}
//*************************************************************************
-Any SAL_CALL InvocationToAllListenerMapper::getValue(const ::rtl::OUString& PropertyName)
+Any SAL_CALL InvocationToAllListenerMapper::getValue(const OUString& PropertyName)
throw( UnknownPropertyException, RuntimeException )
{
(void)PropertyName;
@@ -4089,7 +4142,7 @@ Any SAL_CALL InvocationToAllListenerMapper::getValue(const ::rtl::OUString& Prop
}
//*************************************************************************
-sal_Bool SAL_CALL InvocationToAllListenerMapper::hasMethod(const ::rtl::OUString& Name)
+sal_Bool SAL_CALL InvocationToAllListenerMapper::hasMethod(const OUString& Name)
throw( RuntimeException )
{
Reference< XIdlMethod > xMethod = m_xListenerType->getMethod( Name );
@@ -4097,7 +4150,7 @@ sal_Bool SAL_CALL InvocationToAllListenerMapper::hasMethod(const ::rtl::OUString
}
//*************************************************************************
-sal_Bool SAL_CALL InvocationToAllListenerMapper::hasProperty(const ::rtl::OUString& Name)
+sal_Bool SAL_CALL InvocationToAllListenerMapper::hasProperty(const OUString& Name)
throw( RuntimeException )
{
Reference< XIdlField > xField = m_xListenerType->getField( Name );
@@ -4121,8 +4174,8 @@ void SbRtl_CreateUnoListener( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
}
// get the name of the class of the struct
- ::rtl::OUString aPrefixName = rPar.Get(1)->GetString();
- ::rtl::OUString aListenerClassName = rPar.Get(2)->GetString();
+ OUString aPrefixName = rPar.Get(1)->GetOUString();
+ OUString aListenerClassName = rPar.Get(2)->GetOUString();
// get the CoreReflection
Reference< XIdlReflection > xCoreReflection = getCoreReflection_Impl();
@@ -4141,7 +4194,7 @@ void SbRtl_CreateUnoListener( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
// From 1999-11-30: get the InvocationAdapterFactory
Reference< XInvocationAdapterFactory > xInvocationAdapterFactory = Reference< XInvocationAdapterFactory >(
- xFactory->createInstance( rtl::OUString("com.sun.star.script.InvocationAdapterFactory") ), UNO_QUERY );
+ xFactory->createInstance( OUString("com.sun.star.script.InvocationAdapterFactory") ), UNO_QUERY );
BasicAllListener_Impl * p;
Reference< XAllListener > xAllLst = p = new BasicAllListener_Impl( aPrefixName );
@@ -4150,7 +4203,7 @@ void SbRtl_CreateUnoListener( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
if( !xLst.is() )
return;
- ::rtl::OUString aClassName = xClass->getName();
+ OUString aClassName = xClass->getName();
Type aClassType( xClass->getTypeClass(), aClassName.getStr() );
aTmp = xLst->queryInterface( aClassType );
if( !aTmp.hasValue() )
@@ -4181,9 +4234,7 @@ void RTL_Impl_GetDefaultContext( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWr
Any aContextAny( comphelper::getProcessComponentContext() );
- SbUnoObjectRef xUnoObj = new SbUnoObject
- ( ::rtl::OUString( "DefaultContext" ),
- aContextAny );
+ SbUnoObjectRef xUnoObj = new SbUnoObject( OUString( "DefaultContext" ), aContextAny );
refVar->PutObject( (SbUnoObject*)xUnoObj );
}
@@ -4195,7 +4246,7 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
(void)pBasic;
(void)bWrite;
- static rtl::OUString aTypeTypeString( "type" );
+ static OUString aTypeTypeString( "type" );
// 2 parameters needed
if ( rPar.Count() != 3 )
@@ -4205,16 +4256,16 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
}
// get the name of the class of the struct
- rtl::OUString aTypeName = rPar.Get(1)->GetString();
+ OUString aTypeName = rPar.Get(1)->GetOUString();
SbxVariable* pVal = rPar.Get(2);
if( aTypeName == aTypeTypeString )
{
SbxDataType eBaseType = pVal->SbxValue::GetType();
- String aValTypeName;
+ OUString aValTypeName;
if( eBaseType == SbxSTRING )
{
- aValTypeName = pVal->GetString();
+ aValTypeName = pVal->GetOUString();
}
else if( eBaseType == SbxOBJECT )
{
@@ -4229,7 +4280,9 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
}
if( xIdlClass.is() )
+ {
aValTypeName = xIdlClass->getName();
+ }
}
Type aType;
bool bSuccess = implGetTypeByName( aValTypeName, aType );
@@ -4252,8 +4305,7 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
}
catch( const NoSuchElementException& e1 )
{
- ::rtl::OUString aNoSuchElementExceptionName
- ( "com.sun.star.container.NoSuchElementException" );
+ OUString aNoSuchElementExceptionName( "com.sun.star.container.NoSuchElementException" );
StarBASIC::Error( ERRCODE_BASIC_EXCEPTION,
implGetExceptionMsg( e1, aNoSuchElementExceptionName ) );
return;
@@ -4268,7 +4320,6 @@ void RTL_Impl_CreateUnoValue( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite
Any aVal = sbxToUnoValueImpl( pVal );
Any aConvertedVal = convertAny( aVal, aDestType );
-
SbxVariableRef refVar = rPar.Get(0);
SbxObjectRef xUnoAnyObject = new SbUnoAnyObject( aConvertedVal );
refVar->PutObject( xUnoAnyObject );
@@ -4290,27 +4341,27 @@ typedef WeakImplHelper2< XInvocation, XComponent > ModuleInvocationProxyHelper;
class ModuleInvocationProxy : public OMutexBasis,
public ModuleInvocationProxyHelper
{
- ::rtl::OUString m_aPrefix;
+ OUString m_aPrefix;
SbxObjectRef m_xScopeObj;
bool m_bProxyIsClassModuleObject;
::cppu::OInterfaceContainerHelper m_aListeners;
public:
- ModuleInvocationProxy( const ::rtl::OUString& aPrefix, SbxObjectRef xScopeObj );
+ ModuleInvocationProxy( const OUString& aPrefix, SbxObjectRef xScopeObj );
~ModuleInvocationProxy()
{}
// XInvocation
virtual Reference< XIntrospectionAccess > SAL_CALL getIntrospection() throw();
- virtual void SAL_CALL setValue( const ::rtl::OUString& rProperty, const Any& rValue )
+ virtual void SAL_CALL setValue( const OUString& rProperty, const Any& rValue )
throw( UnknownPropertyException );
- virtual Any SAL_CALL getValue( const ::rtl::OUString& rProperty )
+ virtual Any SAL_CALL getValue( const OUString& rProperty )
throw( UnknownPropertyException );
- virtual sal_Bool SAL_CALL hasMethod( const ::rtl::OUString& rName ) throw();
- virtual sal_Bool SAL_CALL hasProperty( const ::rtl::OUString& rProp ) throw();
+ virtual sal_Bool SAL_CALL hasMethod( const OUString& rName ) throw();
+ virtual sal_Bool SAL_CALL hasProperty( const OUString& rProp ) throw();
- virtual Any SAL_CALL invoke( const ::rtl::OUString& rFunction,
+ virtual Any SAL_CALL invoke( const OUString& rFunction,
const Sequence< Any >& rParams,
Sequence< sal_Int16 >& rOutParamIndex,
Sequence< Any >& rOutParam )
@@ -4322,8 +4373,8 @@ public:
virtual void SAL_CALL removeEventListener( const Reference< XEventListener >& aListener ) throw (RuntimeException);
};
-ModuleInvocationProxy::ModuleInvocationProxy( const ::rtl::OUString& aPrefix, SbxObjectRef xScopeObj )
- : m_aPrefix( aPrefix + ::rtl::OUString( "_" ) )
+ModuleInvocationProxy::ModuleInvocationProxy( const OUString& aPrefix, SbxObjectRef xScopeObj )
+ : m_aPrefix( aPrefix + OUString( "_" ) )
, m_xScopeObj( xScopeObj )
, m_aListeners( m_aMutex )
{
@@ -4335,14 +4386,14 @@ Reference< XIntrospectionAccess > SAL_CALL ModuleInvocationProxy::getIntrospecti
return Reference< XIntrospectionAccess >();
}
-void SAL_CALL ModuleInvocationProxy::setValue( const ::rtl::OUString& rProperty, const Any& rValue ) throw( UnknownPropertyException )
+void SAL_CALL ModuleInvocationProxy::setValue( const OUString& rProperty, const Any& rValue ) throw( UnknownPropertyException )
{
if( !m_bProxyIsClassModuleObject )
throw UnknownPropertyException();
SolarMutexGuard guard;
- ::rtl::OUString aPropertyFunctionName( "Property Set " );
+ OUString aPropertyFunctionName( "Property Set " );
aPropertyFunctionName += m_aPrefix;
aPropertyFunctionName += rProperty;
@@ -4373,14 +4424,15 @@ void SAL_CALL ModuleInvocationProxy::setValue( const ::rtl::OUString& rProperty,
}
-Any SAL_CALL ModuleInvocationProxy::getValue( const ::rtl::OUString& rProperty ) throw( UnknownPropertyException )
+Any SAL_CALL ModuleInvocationProxy::getValue( const OUString& rProperty ) throw( UnknownPropertyException )
{
if( !m_bProxyIsClassModuleObject )
+ {
throw UnknownPropertyException();
-
+ }
SolarMutexGuard guard;
- ::rtl::OUString aPropertyFunctionName( "Property Get " );
+ OUString aPropertyFunctionName( "Property Get " );
aPropertyFunctionName += m_aPrefix;
aPropertyFunctionName += rProperty;
@@ -4400,17 +4452,17 @@ Any SAL_CALL ModuleInvocationProxy::getValue( const ::rtl::OUString& rProperty )
return aRet;
}
-sal_Bool SAL_CALL ModuleInvocationProxy::hasMethod( const ::rtl::OUString& ) throw()
+sal_Bool SAL_CALL ModuleInvocationProxy::hasMethod( const OUString& ) throw()
{
return sal_False;
}
-sal_Bool SAL_CALL ModuleInvocationProxy::hasProperty( const ::rtl::OUString& ) throw()
+sal_Bool SAL_CALL ModuleInvocationProxy::hasProperty( const OUString& ) throw()
{
return sal_False;
}
-Any SAL_CALL ModuleInvocationProxy::invoke( const ::rtl::OUString& rFunction,
+Any SAL_CALL ModuleInvocationProxy::invoke( const OUString& rFunction,
const Sequence< Any >& rParams,
Sequence< sal_Int16 >&,
Sequence< Any >& )
@@ -4421,9 +4473,10 @@ Any SAL_CALL ModuleInvocationProxy::invoke( const ::rtl::OUString& rFunction,
Any aRet;
SbxObjectRef xScopeObj = m_xScopeObj;
if( !xScopeObj.Is() )
+ {
return aRet;
-
- ::rtl::OUString aFunctionName = m_aPrefix;
+ }
+ OUString aFunctionName = m_aPrefix;
aFunctionName += rFunction;
sal_Bool bSetRescheduleBack = sal_False;
@@ -4503,8 +4556,8 @@ void SAL_CALL ModuleInvocationProxy::removeEventListener( const Reference< XEven
}
-Reference< XInterface > createComListener( const Any& aControlAny, const ::rtl::OUString& aVBAType,
- const ::rtl::OUString& aPrefix, SbxObjectRef xScopeObj )
+Reference< XInterface > createComListener( const Any& aControlAny, const OUString& aVBAType,
+ const OUString& aPrefix, SbxObjectRef xScopeObj )
{
Reference< XInterface > xRet;
@@ -4522,7 +4575,7 @@ Reference< XInterface > createComListener( const Any& aControlAny, const ::rtl::
try
{
xRet = xServiceMgr->createInstanceWithArgumentsAndContext(
- ::rtl::OUString( "com.sun.star.custom.UnoComListener"),
+ OUString( "com.sun.star.custom.UnoComListener"),
args, xContext );
}
catch( const Exception& )
@@ -4636,7 +4689,7 @@ bool SbModule::createCOMWrapperForIface( Any& o_rRetAny, SbClassModuleObject* pP
Reference< XSingleServiceFactory > xComImplementsFactory
(
xServiceMgr->createInstanceWithContext(
- ::rtl::OUString( "com.sun.star.custom.ComImplementsFactory"), xContext ),
+ OUString( "com.sun.star.custom.ComImplementsFactory"), xContext ),
UNO_QUERY
);
if( !xComImplementsFactory.is() )
@@ -4649,15 +4702,16 @@ bool SbModule::createCOMWrapperForIface( Any& o_rRetAny, SbClassModuleObject* pP
for( sal_uInt16 i = 0 ; i < nCount ; ++i )
{
SbxVariable* pVar = pModIfaces->Get( i );
- ::rtl::OUString aIfaceName = pVar->GetName();
+ OUString aIfaceName = pVar->GetName();
if( !aIfaceName.isEmpty() )
{
- ::rtl::OUString aPureIfaceName = aIfaceName;
+ OUString aPureIfaceName = aIfaceName;
sal_Int32 indexLastDot = aIfaceName.lastIndexOf('.');
if ( indexLastDot > -1 )
+ {
aPureIfaceName = aIfaceName.copy( indexLastDot + 1 );
-
+ }
Reference< XInvocation > xProxy = new ModuleInvocationProxy( aPureIfaceName, pProxyClassModuleObject );
Sequence<Any> args( 2 );
@@ -4718,7 +4772,7 @@ bool handleToStringForCOMObjects( SbxObject* pObj, SbxValue* pVal )
// Only for native COM objects
if( pUnoObj->isNativeCOMObject() )
{
- SbxVariableRef pMeth = pObj->Find( ::rtl::OUString( "toString" ), SbxCLASS_METHOD );
+ SbxVariableRef pMeth = pObj->Find( OUString( "toString" ), SbxCLASS_METHOD );
if ( pMeth.Is() )
{
SbxValues aRes;
@@ -4753,11 +4807,13 @@ void StructRefInfo::setValue( const Any& rValue )
reinterpret_cast< uno_ReleaseFunc >(cpp_release) );
}
-rtl::OUString StructRefInfo::getTypeName() const
+OUString StructRefInfo::getTypeName() const
{
- rtl::OUString sTypeName;
+ OUString sTypeName;
if ( mpTD )
+ {
sTypeName = mpTD->pTypeName;
+ }
return sTypeName;
}
@@ -4774,9 +4830,9 @@ TypeClass StructRefInfo::getTypeClass() const
return t;
}
-SbUnoStructRefObject::SbUnoStructRefObject( const ::rtl::OUString& aName_, const StructRefInfo& rMemberInfo ) : SbxObject( aName_ ), maMemberInfo( rMemberInfo ), mbMemberCacheInit( false )
+SbUnoStructRefObject::SbUnoStructRefObject( const OUString& aName_, const StructRefInfo& rMemberInfo ) : SbxObject( aName_ ), maMemberInfo( rMemberInfo ), mbMemberCacheInit( false )
{
- SetClassName( rtl::OUString( maMemberInfo.getTypeName() ) );
+ SetClassName( OUString( maMemberInfo.getTypeName() ) );
}
SbUnoStructRefObject::~SbUnoStructRefObject()
@@ -4807,7 +4863,7 @@ void SbUnoStructRefObject::initMemberCache()
OSL_ENSURE( pMemberTD, "### cannot get field in struct!" );
if (pMemberTD)
{
- rtl::OUString aName( ppNames[nPos] );
+ OUString aName( ppNames[nPos] );
TYPELIB_DANGER_RELEASE( pMemberTD );
maFields[ aName ] = new StructRefInfo( maMemberInfo.getRootAnyRef(), pMemberTD, maMemberInfo.getPos() + pMemberOffsets[nPos] );
}
@@ -4816,14 +4872,14 @@ void SbUnoStructRefObject::initMemberCache()
mbMemberCacheInit = true;
}
-SbxVariable* SbUnoStructRefObject::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbUnoStructRefObject::Find( const OUString& rName, SbxClassType t )
{
SbxVariable* pRes = SbxObject::Find( rName, t );
if ( !pRes )
{
if ( !mbMemberCacheInit )
initMemberCache();
- StructFieldInfo::iterator it = maFields.find( String( rName ).ToUpperAscii() );
+ StructFieldInfo::iterator it = maFields.find( OUString( rName ).toAsciiUpperCase() );
if ( it != maFields.end() )
{
SbxDataType eSbxType;
@@ -4862,15 +4918,15 @@ void SbUnoStructRefObject::implCreateDbgProperties( void )
Property aProp;
// Id == -1: display the implemented interfaces corresponding the ClassProvider
- SbxVariableRef xVarRef = new SbUnoProperty( ::rtl::OUString(ID_DBG_SUPPORTEDINTERFACES), SbxSTRING, SbxSTRING, aProp, -1, false, false );
+ SbxVariableRef xVarRef = new SbUnoProperty( OUString(ID_DBG_SUPPORTEDINTERFACES), SbxSTRING, SbxSTRING, aProp, -1, false, false );
QuickInsert( (SbxVariable*)xVarRef );
// Id == -2: output the properties
- xVarRef = new SbUnoProperty( ::rtl::OUString(ID_DBG_PROPERTIES), SbxSTRING, SbxSTRING, aProp, -2, false, false );
+ xVarRef = new SbUnoProperty( OUString(ID_DBG_PROPERTIES), SbxSTRING, SbxSTRING, aProp, -2, false, false );
QuickInsert( (SbxVariable*)xVarRef );
// Id == -3: output the Methods
- xVarRef = new SbUnoProperty( ::rtl::OUString(ID_DBG_METHODS), SbxSTRING, SbxSTRING, aProp, -3, false, false );
+ xVarRef = new SbUnoProperty( OUString(ID_DBG_METHODS), SbxSTRING, SbxSTRING, aProp, -3, false, false );
QuickInsert( (SbxVariable*)xVarRef );
}
@@ -4885,7 +4941,7 @@ void SbUnoStructRefObject::implCreateAll()
for ( StructFieldInfo::iterator it = maFields.begin(), it_end = maFields.end(); it != it_end; ++it )
{
- const rtl::OUString& rName = it->first;
+ const OUString& rName = it->first;
SbxDataType eSbxType;
eSbxType = unoToSbxType( it->second->getTypeClass() );
SbxDataType eRealSbxType = eSbxType;
@@ -4907,9 +4963,9 @@ Any SbUnoStructRefObject::getUnoAny( void )
return maMemberInfo.getValue();
}
-::rtl::OUString SbUnoStructRefObject::Impl_DumpProperties()
+OUString SbUnoStructRefObject::Impl_DumpProperties()
{
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
aRet.appendAscii("Properties of object ");
aRet.append( getDbgObjectName() );
@@ -4920,16 +4976,17 @@ Any SbUnoStructRefObject::getUnoAny( void )
SbxVariable* pVar = pProps->Get( i );
if( pVar )
{
- ::rtl::OUStringBuffer aPropStr;
+ OUStringBuffer aPropStr;
if( (i % nPropsPerLine) == 0 )
+ {
aPropStr.appendAscii( "\n" );
-
+ }
// output the type and name
// Is it in Uno a sequence?
SbxDataType eType = pVar->GetFullType();
sal_Bool bMaybeVoid = sal_False;
- rtl::OUString aName( pVar->GetName() );
+ OUString aName( pVar->GetName() );
StructFieldInfo::iterator it = maFields.find( aName );
if ( it != maFields.end() )
@@ -4939,20 +4996,27 @@ Any SbUnoStructRefObject::getUnoAny( void )
if( eType == SbxOBJECT )
{
if( rPropInfo.getTypeClass() == TypeClass_SEQUENCE )
+ {
eType = (SbxDataType) ( SbxOBJECT | SbxARRAY );
+ }
}
}
aPropStr.append( Dbg_SbxDataType2String( eType ) );
if( bMaybeVoid )
+ {
aPropStr.appendAscii( "/void" );
+ }
aPropStr.appendAscii( " " );
aPropStr.append( pVar->GetName() );
if( i == nPropCount - 1 )
+ {
aPropStr.appendAscii( "\n" );
+ }
else
+ {
aPropStr.appendAscii( "; " );
-
+ }
aRet.append( aPropStr.makeStringAndClear() );
}
}
@@ -4982,7 +5046,7 @@ void SbUnoStructRefObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCTyp
// Id == -1: Display implemented interfaces according the ClassProvider
if( nId == -1 ) // Property ID_DBG_SUPPORTEDINTERFACES"
{
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
aRet.appendAscii( RTL_CONSTASCII_STRINGPARAM(ID_DBG_SUPPORTEDINTERFACES) );
aRet.appendAscii( " not available.\n(TypeClass is not TypeClass_INTERFACE)\n" );
@@ -4993,7 +5057,7 @@ void SbUnoStructRefObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCTyp
{
// by now all properties must be established
implCreateAll();
- ::rtl::OUString aRetStr = Impl_DumpProperties();
+ OUString aRetStr = Impl_DumpProperties();
pVar->PutString( aRetStr );
}
// Id == -3: output the methods
@@ -5001,7 +5065,7 @@ void SbUnoStructRefObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCTyp
{
// by now all properties must be established
implCreateAll();
- ::rtl::OUStringBuffer aRet;
+ OUStringBuffer aRet;
aRet.appendAscii("Methods of object ");
aRet.append( getDbgObjectName() );
aRet.appendAscii( "\nNo methods found\n" );
@@ -5035,10 +5099,12 @@ void SbUnoStructRefObject::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCTyp
}
}
-StructRefInfo SbUnoStructRefObject::getStructMember( const rtl::OUString& rMemberName )
+StructRefInfo SbUnoStructRefObject::getStructMember( const OUString& rMemberName )
{
if (!mbMemberCacheInit)
+ {
initMemberCache();
+ }
StructFieldInfo::iterator it = maFields.find( rMemberName );
typelib_TypeDescription * pFoundTD = NULL;
@@ -5053,15 +5119,18 @@ StructRefInfo SbUnoStructRefObject::getStructMember( const rtl::OUString& rMembe
return aRet;
}
-rtl::OUString SbUnoStructRefObject::getDbgObjectName()
+OUString SbUnoStructRefObject::getDbgObjectName()
{
- ::rtl::OUString aName = GetClassName();
+ OUString aName = GetClassName();
if( aName.isEmpty() )
+ {
aName += ::rtl::OUString("Unknown");
-
- ::rtl::OUStringBuffer aRet;
+ }
+ OUStringBuffer aRet;
if( aName.getLength() > 20 )
+ {
aRet.appendAscii( "\n" );
+ }
aRet.appendAscii( "\"" );
aRet.append( aName );
aRet.appendAscii( "\":" );
diff --git a/basic/source/classes/sbxmod.cxx b/basic/source/classes/sbxmod.cxx
index 759b9b25f74b..e577882b1c8b 100644
--- a/basic/source/classes/sbxmod.cxx
+++ b/basic/source/classes/sbxmod.cxx
@@ -102,9 +102,9 @@ class DocObjectWrapper : public DocObjectWrapper_BASE
Reference< XTypeProvider > m_xAggregateTypeProv;
Sequence< Type > m_Types;
SbModule* m_pMod;
- SbMethodRef getMethod( const rtl::OUString& aName ) throw (RuntimeException);
- SbPropertyRef getProperty( const rtl::OUString& aName ) throw (RuntimeException);
- String mName; // for debugging
+ SbMethodRef getMethod( const OUString& aName ) throw (RuntimeException);
+ SbPropertyRef getProperty( const OUString& aName ) throw (RuntimeException);
+ OUString mName; // for debugging
public:
DocObjectWrapper( SbModule* pMod );
@@ -122,11 +122,11 @@ public:
virtual Reference< XIntrospectionAccess > SAL_CALL getIntrospection( ) throw (RuntimeException);
- virtual Any SAL_CALL invoke( const ::rtl::OUString& aFunctionName, const Sequence< Any >& aParams, Sequence< ::sal_Int16 >& aOutParamIndex, Sequence< Any >& aOutParam ) throw (IllegalArgumentException, CannotConvertException, InvocationTargetException, RuntimeException);
- virtual void SAL_CALL setValue( const ::rtl::OUString& aPropertyName, const Any& aValue ) throw (UnknownPropertyException, CannotConvertException, InvocationTargetException, RuntimeException);
- virtual Any SAL_CALL getValue( const ::rtl::OUString& aPropertyName ) throw (UnknownPropertyException, RuntimeException);
- virtual ::sal_Bool SAL_CALL hasMethod( const ::rtl::OUString& aName ) throw (RuntimeException);
- virtual ::sal_Bool SAL_CALL hasProperty( const ::rtl::OUString& aName ) throw (RuntimeException);
+ virtual Any SAL_CALL invoke( const OUString& aFunctionName, const Sequence< Any >& aParams, Sequence< ::sal_Int16 >& aOutParamIndex, Sequence< Any >& aOutParam ) throw (IllegalArgumentException, CannotConvertException, InvocationTargetException, RuntimeException);
+ virtual void SAL_CALL setValue( const OUString& aPropertyName, const Any& aValue ) throw (UnknownPropertyException, CannotConvertException, InvocationTargetException, RuntimeException);
+ virtual Any SAL_CALL getValue( const OUString& aPropertyName ) throw (UnknownPropertyException, RuntimeException);
+ virtual ::sal_Bool SAL_CALL hasMethod( const OUString& aName ) throw (RuntimeException);
+ virtual ::sal_Bool SAL_CALL hasProperty( const OUString& aName ) throw (RuntimeException);
virtual Any SAL_CALL queryInterface( const Type& aType ) throw ( RuntimeException );
virtual Sequence< Type > SAL_CALL getTypes() throw ( RuntimeException );
@@ -160,7 +160,7 @@ DocObjectWrapper::DocObjectWrapper( SbModule* pVar ) : m_pMod( pVar ), mName( pV
comphelper::getProcessComponentContext() );
Reference< XMultiComponentFactory > xMFac(
xCtx->getServiceManager() );
- Reference< XProxyFactory > xProxyFac( xMFac->createInstanceWithContext( rtl::OUString( "com.sun.star.reflection.ProxyFactory" ), xCtx ), UNO_QUERY_THROW );
+ Reference< XProxyFactory > xProxyFac( xMFac->createInstanceWithContext( OUString( "com.sun.star.reflection.ProxyFactory" ), xCtx ), UNO_QUERY_THROW );
m_xAggProxy = xProxyFac->createProxy( xIf );
}
catch(const Exception& )
@@ -202,7 +202,9 @@ DocObjectWrapper::release() throw ()
delete this;
}
else
+ {
OSL_TRACE("DocObjectWrapper::release(%s) 0x%x refcount is now %d", rtl::OUStringToOString( mName, RTL_TEXTENCODING_UTF8 ).getStr(), this, m_refCount );
+ }
}
DocObjectWrapper::~DocObjectWrapper()
@@ -216,15 +218,21 @@ Sequence< Type > SAL_CALL DocObjectWrapper::getTypes()
{
Sequence< Type > sTypes;
if ( m_xAggregateTypeProv.is() )
+ {
sTypes = m_xAggregateTypeProv->getTypes();
+ }
m_Types.realloc( sTypes.getLength() + 1 );
Type* pPtr = m_Types.getArray();
for ( int i=0; i<m_Types.getLength(); ++i, ++pPtr )
{
if ( i == 0 )
+ {
*pPtr = XInvocation::static_type( NULL );
+ }
else
+ {
*pPtr = sTypes[ i - 1 ];
+ }
}
}
return m_Types;
@@ -237,7 +245,7 @@ DocObjectWrapper::getIntrospection( ) throw (RuntimeException)
}
Any SAL_CALL
-DocObjectWrapper::invoke( const ::rtl::OUString& aFunctionName, const Sequence< Any >& aParams, Sequence< ::sal_Int16 >& aOutParamIndex, Sequence< Any >& aOutParam ) throw (IllegalArgumentException, CannotConvertException, InvocationTargetException, RuntimeException)
+DocObjectWrapper::invoke( const OUString& aFunctionName, const Sequence< Any >& aParams, Sequence< ::sal_Int16 >& aOutParamIndex, Sequence< Any >& aOutParam ) throw (IllegalArgumentException, CannotConvertException, InvocationTargetException, RuntimeException)
{
if ( m_xAggInv.is() && m_xAggInv->hasMethod( aFunctionName ) )
return m_xAggInv->invoke( aFunctionName, aParams, aOutParamIndex, aOutParam );
@@ -261,7 +269,7 @@ DocObjectWrapper::invoke( const ::rtl::OUString& aFunctionName, const Sequence<
sal_Int32 nSbxCount = n - 1;
if ( nParamsCount < nSbxCount - nSbxOptional )
{
- throw RuntimeException( ::rtl::OUString( "wrong number of parameters!" ), Reference< XInterface >() );
+ throw RuntimeException( OUString( "wrong number of parameters!" ), Reference< XInterface >() );
}
}
// set parameters
@@ -331,7 +339,7 @@ DocObjectWrapper::invoke( const ::rtl::OUString& aFunctionName, const Sequence<
}
void SAL_CALL
-DocObjectWrapper::setValue( const ::rtl::OUString& aPropertyName, const Any& aValue ) throw (UnknownPropertyException, CannotConvertException, InvocationTargetException, RuntimeException)
+DocObjectWrapper::setValue( const OUString& aPropertyName, const Any& aValue ) throw (UnknownPropertyException, CannotConvertException, InvocationTargetException, RuntimeException)
{
if ( m_xAggInv.is() && m_xAggInv->hasProperty( aPropertyName ) )
return m_xAggInv->setValue( aPropertyName, aValue );
@@ -343,7 +351,7 @@ DocObjectWrapper::setValue( const ::rtl::OUString& aPropertyName, const Any& aVa
}
Any SAL_CALL
-DocObjectWrapper::getValue( const ::rtl::OUString& aPropertyName ) throw (UnknownPropertyException, RuntimeException)
+DocObjectWrapper::getValue( const OUString& aPropertyName ) throw (UnknownPropertyException, RuntimeException)
{
if ( m_xAggInv.is() && m_xAggInv->hasProperty( aPropertyName ) )
return m_xAggInv->getValue( aPropertyName );
@@ -361,7 +369,7 @@ DocObjectWrapper::getValue( const ::rtl::OUString& aPropertyName ) throw (Unknow
}
::sal_Bool SAL_CALL
-DocObjectWrapper::hasMethod( const ::rtl::OUString& aName ) throw (RuntimeException)
+DocObjectWrapper::hasMethod( const OUString& aName ) throw (RuntimeException)
{
if ( m_xAggInv.is() && m_xAggInv->hasMethod( aName ) )
return sal_True;
@@ -369,7 +377,7 @@ DocObjectWrapper::hasMethod( const ::rtl::OUString& aName ) throw (RuntimeExcept
}
::sal_Bool SAL_CALL
-DocObjectWrapper::hasProperty( const ::rtl::OUString& aName ) throw (RuntimeException)
+DocObjectWrapper::hasProperty( const OUString& aName ) throw (RuntimeException)
{
sal_Bool bRes = sal_False;
if ( m_xAggInv.is() && m_xAggInv->hasProperty( aName ) )
@@ -389,7 +397,7 @@ Any SAL_CALL DocObjectWrapper::queryInterface( const Type& aType )
return aRet;
}
-SbMethodRef DocObjectWrapper::getMethod( const rtl::OUString& aName ) throw (RuntimeException)
+SbMethodRef DocObjectWrapper::getMethod( const OUString& aName ) throw (RuntimeException)
{
SbMethodRef pMethod = NULL;
if ( m_pMod )
@@ -404,7 +412,7 @@ SbMethodRef DocObjectWrapper::getMethod( const rtl::OUString& aName ) throw (Run
return pMethod;
}
-SbPropertyRef DocObjectWrapper::getProperty( const rtl::OUString& aName ) throw (RuntimeException)
+SbPropertyRef DocObjectWrapper::getProperty( const OUString& aName ) throw (RuntimeException)
{
SbPropertyRef pProperty = NULL;
if ( m_pMod )
@@ -446,7 +454,7 @@ uno::Reference< vba::XVBACompatibility > getVBACompatibility( const uno::Referen
try
{
uno::Reference< beans::XPropertySet > xModelProps( rxModel, uno::UNO_QUERY_THROW );
- xVBACompat.set( xModelProps->getPropertyValue( ::rtl::OUString( "BasicLibraries" ) ), uno::UNO_QUERY );
+ xVBACompat.set( xModelProps->getPropertyValue( OUString( "BasicLibraries" ) ), uno::UNO_QUERY );
}
catch(const uno::Exception& )
{
@@ -476,7 +484,7 @@ public:
uno::Reference< lang::XMultiServiceFactory > xFactory = comphelper::getProcessServiceFactory();
if ( xFactory.is() )
{
- uno::Reference< frame::XDesktop > xDeskTop( xFactory->createInstance( rtl::OUString( "com.sun.star.frame.Desktop" ) ), uno::UNO_QUERY );
+ uno::Reference< frame::XDesktop > xDeskTop( xFactory->createInstance( OUString( "com.sun.star.frame.Desktop" ) ), uno::UNO_QUERY );
if ( xDeskTop.is() )
xDeskTop->terminate();
}
@@ -493,8 +501,8 @@ IMPL_LINK( AsyncQuitHandler, OnAsyncQuit, void*, /*pNull*/ )
// A Basic module has set EXTSEARCH, so that the elements, that the modul contains,
// could be found from other module.
-SbModule::SbModule( const String& rName, sal_Bool bVBACompat )
- : SbxObject( String( RTL_CONSTASCII_USTRINGPARAM("StarBASICModule") ) ),
+SbModule::SbModule( const OUString& rName, sal_Bool bVBACompat )
+ : SbxObject( OUString("StarBASICModule") ),
pImage( NULL ), pBreaks( NULL ), pClassData( NULL ), mbVBACompat( bVBACompat ), pDocObject( NULL ), bIsProxyModule( false )
{
SetName( rName );
@@ -502,9 +510,11 @@ SbModule::SbModule( const String& rName, sal_Bool bVBACompat )
SetModuleType( script::ModuleType::NORMAL );
// #i92642: Set name property to intitial name
- SbxVariable* pNameProp = pProps->Find( String( RTL_CONSTASCII_USTRINGPARAM("Name") ), SbxCLASS_PROPERTY );
+ SbxVariable* pNameProp = pProps->Find( OUString("Name"), SbxCLASS_PROPERTY );
if( pNameProp != NULL )
+ {
pNameProp->PutString( GetName() );
+ }
}
SbModule::~SbModule()
@@ -531,7 +541,7 @@ sal_Bool SbModule::IsCompiled() const
return sal_Bool( pImage != 0 );
}
-const SbxObject* SbModule::FindType( String aTypeName ) const
+const SbxObject* SbModule::FindType( OUString aTypeName ) const
{
return pImage ? pImage->FindType( aTypeName ) : NULL;
}
@@ -566,12 +576,14 @@ void SbModule::StartDefinitions()
// request/create method
-SbMethod* SbModule::GetMethod( const String& rName, SbxDataType t )
+SbMethod* SbModule::GetMethod( const OUString& rName, SbxDataType t )
{
SbxVariable* p = pMethods->Find( rName, SbxCLASS_METHOD );
SbMethod* pMeth = p ? PTR_CAST(SbMethod,p) : NULL;
if( p && !pMeth )
+ {
pMethods->Remove( p );
+ }
if( !pMeth )
{
pMeth = new SbMethod( rName, t, this );
@@ -588,18 +600,22 @@ SbMethod* SbModule::GetMethod( const String& rName, SbxDataType t )
pMeth->SetType( t );
pMeth->ResetFlag( SBX_WRITE );
if( t != SbxVARIANT )
+ {
pMeth->SetFlag( SBX_FIXED );
+ }
return pMeth;
}
// request/create property
-SbProperty* SbModule::GetProperty( const String& rName, SbxDataType t )
+SbProperty* SbModule::GetProperty( const OUString& rName, SbxDataType t )
{
SbxVariable* p = pProps->Find( rName, SbxCLASS_PROPERTY );
SbProperty* pProp = p ? PTR_CAST(SbProperty,p) : NULL;
if( p && !pProp )
+ {
pProps->Remove( p );
+ }
if( !pProp )
{
pProp = new SbProperty( rName, t, this );
@@ -611,13 +627,14 @@ SbProperty* SbModule::GetProperty( const String& rName, SbxDataType t )
return pProp;
}
-SbProcedureProperty* SbModule::GetProcedureProperty
- ( const String& rName, SbxDataType t )
+SbProcedureProperty* SbModule::GetProcedureProperty( const OUString& rName, SbxDataType t )
{
SbxVariable* p = pProps->Find( rName, SbxCLASS_PROPERTY );
SbProcedureProperty* pProp = p ? PTR_CAST(SbProcedureProperty,p) : NULL;
if( p && !pProp )
+ {
pProps->Remove( p );
+ }
if( !pProp )
{
pProp = new SbProcedureProperty( rName, t );
@@ -629,13 +646,14 @@ SbProcedureProperty* SbModule::GetProcedureProperty
return pProp;
}
-SbIfaceMapperMethod* SbModule::GetIfaceMapperMethod
- ( const String& rName, SbMethod* pImplMeth )
+SbIfaceMapperMethod* SbModule::GetIfaceMapperMethod( const OUString& rName, SbMethod* pImplMeth )
{
SbxVariable* p = pMethods->Find( rName, SbxCLASS_METHOD );
SbIfaceMapperMethod* pMapperMethod = p ? PTR_CAST(SbIfaceMapperMethod,p) : NULL;
if( p && !pMapperMethod )
+ {
pMethods->Remove( p );
+ }
if( !pMapperMethod )
{
pMapperMethod = new SbIfaceMapperMethod( rName, pImplMeth );
@@ -686,12 +704,14 @@ void SbModule::Clear()
}
-SbxVariable* SbModule::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbModule::Find( const OUString& rName, SbxClassType t )
{
// make sure a search in an uninstatiated class module will fail
SbxVariable* pRes = SbxObject::Find( rName, t );
if ( bIsProxyModule && !GetSbData()->bRunInit )
+ {
return NULL;
+ }
if( !pRes && pImage )
{
SbiInstance* pInst = GetSbData()->pInst;
@@ -707,14 +727,16 @@ SbxVariable* SbModule::Find( const rtl::OUString& rName, SbxClassType t )
if( pEnumObject )
{
bool bPrivate = pEnumObject->IsSet( SBX_PRIVATE );
- String aEnumName = pEnumObject->GetName();
+ OUString aEnumName = pEnumObject->GetName();
pRes = new SbxVariable( SbxOBJECT );
pRes->SetName( aEnumName );
pRes->SetParent( this );
pRes->SetFlag( SBX_READ );
if( bPrivate )
+ {
pRes->SetFlag( SBX_PRIVATE );
+ }
pRes->PutObject( pEnumObject );
}
}
@@ -723,14 +745,14 @@ SbxVariable* SbModule::Find( const rtl::OUString& rName, SbxClassType t )
return pRes;
}
-const ::rtl::OUString& SbModule::GetSource32() const
+const OUString& SbModule::GetSource32() const
{
return aOUSource;
}
-const String& SbModule::GetSource() const
+const OUString& SbModule::GetSource() const
{
- static String aRetStr;
+ static OUString aRetStr;
aRetStr = aOUSource;
return aRetStr;
}
@@ -757,8 +779,7 @@ void SbModule::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
if( pHint->GetId() == SBX_HINT_DATAWANTED )
{
- String aProcName;
- aProcName.AppendAscii( "Property Get " );
+ OUString aProcName("Property Get ");
aProcName += pProcProperty->GetName();
SbxVariable* pMethVar = Find( aProcName, SbxCLASS_METHOD );
@@ -800,15 +821,13 @@ void SbModule::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
{
pProcProperty->setSet( false );
- String aProcName;
- aProcName.AppendAscii( "Property Set " );
+ OUString aProcName("Property Set ");
aProcName += pProcProperty->GetName();
pMethVar = Find( aProcName, SbxCLASS_METHOD );
}
if( !pMethVar ) // Let
{
- String aProcName;
- aProcName.AppendAscii( "Property Let " );
+ OUString aProcName("Property Let " );
aProcName += pProcProperty->GetName();
pMethVar = Find( aProcName, SbxCLASS_METHOD );
}
@@ -837,8 +856,10 @@ void SbModule::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
if( pHint->GetId() == SBX_HINT_DATAWANTED )
{
if( pMeth->bInvalid && !Compile() )
+ {
// auto compile has not worked!
StarBASIC::Error( SbERR_BAD_PROP_VALUE );
+ }
else
{
// Call of a subprogram
@@ -857,11 +878,14 @@ void SbModule::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
sal_uIntPtr nId = pHint->GetId();
if( (nId == SBX_HINT_DATAWANTED || nId == SBX_HINT_DATACHANGED) &&
- pVar->GetName().EqualsIgnoreCaseAscii( "name" ) )
+ pVar->GetName().equalsIgnoreAsciiCase( "name" ) )
+ {
bForwardToSbxObject = false;
-
+ }
if( bForwardToSbxObject )
+ {
SbxObject::SFX_NOTIFY( rBC, rBCType, rHint, rHintType );
+ }
}
}
}
@@ -869,19 +893,19 @@ void SbModule::SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
// The setting of the source makes the image invalid
// and scans the method definitions newly in
-void SbModule::SetSource( const String& r )
+void SbModule::SetSource( const OUString& r )
{
SetSource32( r );
}
-void SbModule::SetSource32( const ::rtl::OUString& r )
+void SbModule::SetSource32( const OUString& r )
{
// Default basic mode to library container mode, but.. allow Option VBASupport 0/1 override
SetVBACompat( getDefaultVBAMode( static_cast< StarBASIC*>( GetParent() ) ) );
aOUSource = r;
StartDefinitions();
SbiTokenizer aTok( r );
- aTok.SetCompatible( IsVBACompat() );
+ aTok.SetCompatible( IsVBACompat() );
while( !aTok.IsEof() )
{
SbiToken eEndTok = NIL;
@@ -910,11 +934,13 @@ void SbModule::SetSource32( const ::rtl::OUString& r )
{
eCurTok = aTok.Next();
if( eCurTok == COMPATIBLE )
+ {
aTok.SetCompatible( true );
+ }
else if ( ( eCurTok == VBASUPPORT ) && ( aTok.Next() == NUMBER ) )
{
- sal_Bool bIsVBA = ( aTok.GetDbl()== 1 );
- SetVBACompat( bIsVBA );
+ sal_Bool bIsVBA = ( aTok.GetDbl()== 1 );
+ SetVBACompat( bIsVBA );
aTok.SetCompatible( bIsVBA );
}
}
@@ -928,17 +954,21 @@ void SbModule::SetSource32( const ::rtl::OUString& r )
sal_uInt16 nLine1 = aTok.GetLine();
if( aTok.Next() == SYMBOL )
{
- String aName_( aTok.GetSym() );
+ OUString aName_( aTok.GetSym() );
SbxDataType t = aTok.GetType();
if( t == SbxVARIANT && eEndTok == ENDSUB )
+ {
t = SbxVOID;
+ }
pMeth = GetMethod( aName_, t );
pMeth->nLine1 = pMeth->nLine2 = nLine1;
// The method is for a start VALID
pMeth->bInvalid = sal_False;
}
else
+ {
eEndTok = NIL;
+ }
}
// Skip up to END SUB/END FUNCTION
if( eEndTok != NIL )
@@ -952,7 +982,9 @@ void SbModule::SetSource32( const ::rtl::OUString& r )
}
}
if( aTok.IsEof() )
+ {
pMeth->nLine2 = aTok.GetLine();
+ }
}
}
EndDefinitions( sal_True );
@@ -1001,29 +1033,33 @@ static void SendHint( SbxObject* pObj, sal_uIntPtr nId, SbMethod* p )
void ClearUnoObjectsInRTL_Impl_Rek( StarBASIC* pBasic )
{
// delete the return value of CreateUnoService
- static String aName( RTL_CONSTASCII_USTRINGPARAM("CreateUnoService") );
+ static OUString aName("CreateUnoService");
SbxVariable* pVar = pBasic->GetRtl()->Find( aName, SbxCLASS_METHOD );
if( pVar )
+ {
pVar->SbxValue::Clear();
-
+ }
// delete the return value of CreateUnoDialog
- static String aName2( RTL_CONSTASCII_USTRINGPARAM("CreateUnoDialog") );
+ static OUString aName2("CreateUnoDialog");
pVar = pBasic->GetRtl()->Find( aName2, SbxCLASS_METHOD );
if( pVar )
+ {
pVar->SbxValue::Clear();
-
+ }
// delete the return value of CDec
- static String aName3( RTL_CONSTASCII_USTRINGPARAM("CDec") );
+ static OUString aName3("CDec");
pVar = pBasic->GetRtl()->Find( aName3, SbxCLASS_METHOD );
if( pVar )
+ {
pVar->SbxValue::Clear();
-
+ }
// delete return value of CreateObject
- static String aName4( RTL_CONSTASCII_USTRINGPARAM("CreateObject") );
+ static OUString aName4("CreateObject");
pVar = pBasic->GetRtl()->Find( aName4, SbxCLASS_METHOD );
if( pVar )
+ {
pVar->SbxValue::Clear();
-
+ }
// Go over all Sub-Basics
SbxArray* pObjs = pBasic->GetObjects();
sal_uInt16 nCount = pObjs->Count();
@@ -1032,7 +1068,9 @@ void ClearUnoObjectsInRTL_Impl_Rek( StarBASIC* pBasic )
SbxVariable* pObjVar = pObjs->Get( i );
StarBASIC* pSubBasic = PTR_CAST( StarBASIC, pObjVar );
if( pSubBasic )
+ {
ClearUnoObjectsInRTL_Impl_Rek( pSubBasic );
+ }
}
}
@@ -1067,7 +1105,7 @@ void SbModule::SetVBACompat( bool bCompat )
{
StarBASIC* pBasic = static_cast< StarBASIC* >( GetParent() );
uno::Reference< lang::XMultiServiceFactory > xFactory( getDocumentModel( pBasic ), uno::UNO_QUERY_THROW );
- xFactory->createInstance( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ooo.vba.VBAGlobals" ) ) );
+ xFactory->createInstance( OUString("ooo.vba.VBAGlobals") );
}
catch( Exception& )
{
@@ -1083,7 +1121,7 @@ sal_uInt16 SbModule::Run( SbMethod* pMeth )
sal_uInt16 nRes = 0;
bool bDelInst = ( GetSbData()->pInst == NULL );
- bool bQuit = false;
+ bool bQuit = false;
StarBASICRef xBasic;
uno::Reference< frame::XModel > xModel;
uno::Reference< script::vba::XVBACompatibility > xVBACompat;
@@ -1114,7 +1152,7 @@ sal_uInt16 SbModule::Run( SbMethod* pMeth )
// Launcher problem
// i80726 The Find below will genarate an error in Testtool so we reset it unless there was one before already
sal_Bool bWasError = SbxBase::GetError() != 0;
- SbxVariable* pMSOMacroRuntimeLibVar = Find( rtl::OUString("Launcher"), SbxCLASS_OBJECT );
+ SbxVariable* pMSOMacroRuntimeLibVar = Find( OUString("Launcher"), SbxCLASS_OBJECT );
if ( !bWasError && (SbxBase::GetError() == SbxERR_PROC_UNDEFINED) )
SbxBase::ResetError();
if( pMSOMacroRuntimeLibVar )
@@ -1124,7 +1162,7 @@ sal_uInt16 SbModule::Run( SbMethod* pMeth )
{
sal_uInt16 nGblFlag = pMSOMacroRuntimeLib->GetFlags() & SBX_GBLSEARCH;
pMSOMacroRuntimeLib->ResetFlag( SBX_GBLSEARCH );
- SbxVariable* pAppSymbol = pMSOMacroRuntimeLib->Find( rtl::OUString("Application"), SbxCLASS_METHOD );
+ SbxVariable* pAppSymbol = pMSOMacroRuntimeLib->Find( OUString("Application"), SbxCLASS_METHOD );
pMSOMacroRuntimeLib->SetFlag( nGblFlag );
if( pAppSymbol )
{
@@ -1321,11 +1359,11 @@ void SbModule::RunInit()
// Delete with private/dim declared variables
-void SbModule::AddVarName( const String& aName )
+void SbModule::AddVarName( const OUString& aName )
{
// see if the name is added allready
- std::vector< String >::iterator it_end = mModuleVariableNames.end();
- for ( std::vector< String >::iterator it = mModuleVariableNames.begin(); it != it_end; ++it )
+ std::vector< OUString >::iterator it_end = mModuleVariableNames.end();
+ for ( std::vector< OUString >::iterator it = mModuleVariableNames.begin(); it != it_end; ++it )
{
if ( aName == *it )
return;
@@ -1335,8 +1373,8 @@ void SbModule::AddVarName( const String& aName )
void SbModule::RemoveVars()
{
- std::vector< String >::iterator it_end = mModuleVariableNames.end();
- for ( std::vector< String >::iterator it = mModuleVariableNames.begin(); it != it_end; ++it )
+ std::vector< OUString >::iterator it_end = mModuleVariableNames.end();
+ for ( std::vector< OUString >::iterator it = mModuleVariableNames.begin(); it != it_end; ++it )
{
// We don't want a Find being called in a derived class ( e.g.
// SbUserform because it could trigger say an initialise event
@@ -1819,7 +1857,7 @@ sal_Bool SbModule::StoreBinaryData( SvStream& rStrm, sal_uInt16 nVer )
bRet = SbxObject::StoreData( rStrm );
if( bRet )
{
- pImage->aOUSource = ::rtl::OUString();
+ pImage->aOUSource = OUString();
pImage->aComment = aComment;
pImage->aName = GetName();
@@ -1841,7 +1879,7 @@ sal_Bool SbModule::StoreBinaryData( SvStream& rStrm, sal_uInt16 nVer )
sal_Bool SbModule::LoadBinaryData( SvStream& rStrm )
{
- ::rtl::OUString aKeepSource = aOUSource;
+ OUString aKeepSource = aOUSource;
bool bRet = LoadData( rStrm, 2 );
LoadCompleted();
aOUSource = aKeepSource;
@@ -1883,8 +1921,7 @@ void SbModule::handleProcedureProperties( SfxBroadcaster& rBC, const SfxHint& rH
if( pHint->GetId() == SBX_HINT_DATAWANTED )
{
- String aProcName;
- aProcName.AppendAscii( "Property Get " );
+ OUString aProcName("Property Get ");
aProcName += pProcProperty->GetName();
SbxVariable* pMeth = Find( aProcName, SbxCLASS_METHOD );
@@ -1926,15 +1963,13 @@ void SbModule::handleProcedureProperties( SfxBroadcaster& rBC, const SfxHint& rH
{
pProcProperty->setSet( false );
- String aProcName;
- aProcName.AppendAscii( "Property Set " );
+ OUString aProcName("Property Set " );
aProcName += pProcProperty->GetName();
pMeth = Find( aProcName, SbxCLASS_METHOD );
}
if( !pMeth ) // Let
{
- String aProcName;
- aProcName.AppendAscii( "Property Let " );
+ OUString aProcName("Property Set " );
aProcName += pProcProperty->GetName();
pMeth = Find( aProcName, SbxCLASS_METHOD );
}
@@ -1961,7 +1996,7 @@ void SbModule::handleProcedureProperties( SfxBroadcaster& rBC, const SfxHint& rH
// Implementation SbJScriptModule (Basic module for JavaScript source code)
-SbJScriptModule::SbJScriptModule( const String& rName )
+SbJScriptModule::SbJScriptModule( const OUString& rName )
:SbModule( rName )
{
}
@@ -1985,7 +2020,7 @@ sal_Bool SbJScriptModule::StoreData( SvStream& rStrm ) const
return sal_False;
// Write the source string
- String aTmp = aOUSource;
+ OUString aTmp = aOUSource;
rStrm.WriteUniOrByteString( aTmp, osl_getThreadTextEncoding() );
return sal_True;
}
@@ -1993,7 +2028,7 @@ sal_Bool SbJScriptModule::StoreData( SvStream& rStrm ) const
/////////////////////////////////////////////////////////////////////////
-SbMethod::SbMethod( const String& r, SbxDataType t, SbModule* p )
+SbMethod::SbMethod( const OUString& r, SbxDataType t, SbModule* p )
: SbxMethod( r, t ), pMod( p )
{
bInvalid = sal_True;
@@ -2161,7 +2196,7 @@ void SbMethod::Broadcast( sal_uIntPtr nHintId )
// Implementation of SbJScriptMethod (method class as a wrapper for JavaScript-functions)
-SbJScriptMethod::SbJScriptMethod( const String& r, SbxDataType t, SbModule* p )
+SbJScriptMethod::SbJScriptMethod( const OUString& r, SbxDataType t, SbModule* p )
: SbMethod( r, t, p )
{
}
@@ -2170,16 +2205,18 @@ SbJScriptMethod::~SbJScriptMethod()
{}
-SbObjModule::SbObjModule( const String& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVbaCompatible )
+SbObjModule::SbObjModule( const OUString& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVbaCompatible )
: SbModule( rName, bIsVbaCompatible )
{
SetModuleType( mInfo.ModuleType );
if ( mInfo.ModuleType == script::ModuleType::FORM )
{
- SetClassName( rtl::OUString("Form" ) );
+ SetClassName( OUString("Form" ) );
}
else if ( mInfo.ModuleObject.is() )
+ {
SetUnoObject( uno::makeAny( mInfo.ModuleObject ) );
+ }
}
SbObjModule::~SbObjModule()
@@ -2195,13 +2232,13 @@ SbObjModule::SetUnoObject( const uno::Any& aObj ) throw ( uno::RuntimeException
pDocObject = new SbUnoObject( GetName(), uno::makeAny( aObj ) );
com::sun::star::uno::Reference< com::sun::star::lang::XServiceInfo > xServiceInfo( aObj, com::sun::star::uno::UNO_QUERY_THROW );
- if( xServiceInfo->supportsService( rtl::OUString("ooo.vba.excel.Worksheet" ) ) )
+ if( xServiceInfo->supportsService( OUString("ooo.vba.excel.Worksheet" ) ) )
{
- SetClassName( rtl::OUString("Worksheet" ) );
+ SetClassName( OUString("Worksheet" ) );
}
- else if( xServiceInfo->supportsService( rtl::OUString("ooo.vba.excel.Workbook" ) ) )
+ else if( xServiceInfo->supportsService( OUString("ooo.vba.excel.Workbook" ) ) )
{
- SetClassName( rtl::OUString("Workbook" ) );
+ SetClassName( OUString("Workbook" ) );
}
}
@@ -2211,7 +2248,7 @@ SbObjModule::GetObject()
return pDocObject;
}
SbxVariable*
-SbObjModule::Find( const rtl::OUString& rName, SbxClassType t )
+SbObjModule::Find( const OUString& rName, SbxClassType t )
{
SbxVariable* pVar = NULL;
if ( pDocObject)
@@ -2347,15 +2384,14 @@ public:
aParams[0] <<= nCancel;
aParams[1] <<= nCloseMode;
- mpUserForm->triggerMethod( rtl::OUString("Userform_QueryClose" ),
- aParams);
+ mpUserForm->triggerMethod( OUString("Userform_QueryClose" ), aParams);
return;
}
}
}
- mpUserForm->triggerMethod( rtl::OUString("Userform_QueryClose" ) );
+ mpUserForm->triggerMethod( OUString("Userform_QueryClose" ) );
#endif
}
@@ -2438,7 +2474,7 @@ public:
}
};
-SbUserFormModule::SbUserFormModule( const String& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsCompat )
+SbUserFormModule::SbUserFormModule( const OUString& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsCompat )
: SbObjModule( rName, mInfo, bIsCompat )
, m_mInfo( mInfo )
, mbInit( false )
@@ -2461,13 +2497,13 @@ void SbUserFormModule::ResetApiObj( bool bTriggerTerminateEvent )
m_xDialog = NULL;
}
-void SbUserFormModule::triggerMethod( const String& aMethodToRun )
+void SbUserFormModule::triggerMethod( const OUString& aMethodToRun )
{
Sequence< Any > aArguments;
triggerMethod( aMethodToRun, aArguments );
}
-void SbUserFormModule::triggerMethod( const String& aMethodToRun, Sequence< Any >& aArguments )
+void SbUserFormModule::triggerMethod( const OUString& aMethodToRun, Sequence< Any >& aArguments )
{
OSL_TRACE("*** trigger %s ***", rtl::OUStringToOString( aMethodToRun, RTL_TEXTENCODING_UTF8 ).getStr() );
// Search method
@@ -2511,14 +2547,14 @@ void SbUserFormModule::triggerMethod( const String& aMethodToRun, Sequence< Any
void SbUserFormModule::triggerActivateEvent( void )
{
OSL_TRACE("**** entering SbUserFormModule::triggerActivate");
- triggerMethod( rtl::OUString( "UserForm_Activate" ) );
+ triggerMethod( OUString( "UserForm_Activate" ) );
OSL_TRACE("**** leaving SbUserFormModule::triggerActivate");
}
void SbUserFormModule::triggerDeactivateEvent( void )
{
OSL_TRACE("**** SbUserFormModule::triggerDeactivate");
- triggerMethod( rtl::OUString("Userform_Deactivate" ) );
+ triggerMethod( OUString("Userform_Deactivate" ) );
}
void SbUserFormModule::triggerInitializeEvent( void )
@@ -2526,7 +2562,7 @@ void SbUserFormModule::triggerInitializeEvent( void )
if ( mbInit )
return;
OSL_TRACE("**** SbUserFormModule::triggerInitializeEvent");
- static String aInitMethodName( RTL_CONSTASCII_USTRINGPARAM("Userform_Initialize") );
+ static OUString aInitMethodName( "Userform_Initialize");
triggerMethod( aInitMethodName );
mbInit = true;
}
@@ -2534,20 +2570,20 @@ void SbUserFormModule::triggerInitializeEvent( void )
void SbUserFormModule::triggerTerminateEvent( void )
{
OSL_TRACE("**** SbUserFormModule::triggerTerminateEvent");
- static String aTermMethodName( RTL_CONSTASCII_USTRINGPARAM("Userform_Terminate") );
+ static OUString aTermMethodName( "Userform_Terminate" );
triggerMethod( aTermMethodName );
mbInit=false;
}
void SbUserFormModule::triggerLayoutEvent( void )
{
- static String aMethodName( RTL_CONSTASCII_USTRINGPARAM("Userform_Layout") );
+ static OUString aMethodName( "Userform_Layout" );
triggerMethod( aMethodName );
}
void SbUserFormModule::triggerResizeEvent( void )
{
- static String aMethodName( RTL_CONSTASCII_USTRINGPARAM("Userform_Resize") );
+ static OUString aMethodName("Userform_Resize");
triggerMethod( aMethodName );
}
@@ -2558,20 +2594,20 @@ SbUserFormModuleInstance* SbUserFormModule::CreateInstance()
}
SbUserFormModuleInstance::SbUserFormModuleInstance( SbUserFormModule* pParentModule,
- const rtl::OUString& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVBACompat )
+ const OUString& rName, const com::sun::star::script::ModuleInfo& mInfo, bool bIsVBACompat )
: SbUserFormModule( rName, mInfo, bIsVBACompat )
, m_pParentModule( pParentModule )
{
}
-sal_Bool SbUserFormModuleInstance::IsClass( const rtl::OUString& rName ) const
+sal_Bool SbUserFormModuleInstance::IsClass( const OUString& rName ) const
{
- sal_Bool bParentNameMatches = m_pParentModule->GetName().EqualsIgnoreCaseAscii( rName );
+ sal_Bool bParentNameMatches = m_pParentModule->GetName().equalsIgnoreAsciiCase( rName );
sal_Bool bRet = bParentNameMatches || SbxObject::IsClass( rName );
return bRet;
}
-SbxVariable* SbUserFormModuleInstance::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbUserFormModuleInstance::Find( const OUString& rName, SbxClassType t )
{
SbxVariable* pVar = m_pParentModule->Find( rName, t );
return pVar;
@@ -2599,7 +2635,7 @@ void SbUserFormModule::Unload()
aParams[0] <<= nCancel;
aParams[1] <<= nCloseMode;
- triggerMethod( rtl::OUString("Userform_QueryClose" ), aParams);
+ triggerMethod( OUString("Userform_QueryClose" ), aParams);
aParams[0] >>= nCancel;
// basic boolean ( and what the user might use ) can be ambiguous ( e.g. basic true = -1 )
@@ -2615,7 +2651,7 @@ void SbUserFormModule::Unload()
triggerTerminateEvent();
}
// Search method
- SbxVariable* pMeth = SbObjModule::Find( rtl::OUString("UnloadObject"), SbxCLASS_METHOD );
+ SbxVariable* pMeth = SbObjModule::Find( OUString("UnloadObject"), SbxCLASS_METHOD );
if( pMeth )
{
OSL_TRACE("Attempting too run the UnloadObjectMethod");
@@ -2644,7 +2680,7 @@ void SbUserFormModule::InitObject()
{
try
{
- String aHook( RTL_CONSTASCII_USTRINGPARAM( "VBAGlobals" ) );
+ OUString aHook("VBAGlobals");
SbUnoObject* pGlobs = (SbUnoObject*)GetParent()->Find( aHook, SbxCLASS_DONTCARE );
if ( m_xModel.is() && pGlobs )
{
@@ -2656,20 +2692,20 @@ void SbUserFormModule::InitObject()
uno::Reference< lang::XMultiServiceFactory > xFactory = comphelper::getProcessServiceFactory();
uno::Sequence< uno::Any > aArgs(1);
aArgs[ 0 ] <<= m_xModel;
- rtl::OUString sDialogUrl( "vnd.sun.star.script:" );
- rtl::OUString sProjectName( "Standard" );
+ OUString sDialogUrl( "vnd.sun.star.script:" );
+ OUString sProjectName( "Standard" );
try
{
Reference< beans::XPropertySet > xProps( m_xModel, UNO_QUERY_THROW );
- uno::Reference< script::vba::XVBACompatibility > xVBAMode( xProps->getPropertyValue( rtl::OUString( "BasicLibraries" ) ), uno::UNO_QUERY_THROW );
+ uno::Reference< script::vba::XVBACompatibility > xVBAMode( xProps->getPropertyValue( OUString( "BasicLibraries" ) ), uno::UNO_QUERY_THROW );
sProjectName = xVBAMode->getProjectName();
}
catch(const Exception& ) {}
- sDialogUrl = sDialogUrl.concat( sProjectName ).concat( rtl::OUString( '.') ).concat( GetName() ).concat( rtl::OUString( "?location=document" ) );
+ sDialogUrl = sDialogUrl + sProjectName + "." + GetName() + "?location=document";
- uno::Reference< awt::XDialogProvider > xProvider( xFactory->createInstanceWithArguments( rtl::OUString( "com.sun.star.awt.DialogProvider"), aArgs ), uno::UNO_QUERY_THROW );
+ uno::Reference< awt::XDialogProvider > xProvider( xFactory->createInstanceWithArguments( OUString( "com.sun.star.awt.DialogProvider"), aArgs ), uno::UNO_QUERY_THROW );
m_xDialog = xProvider->createDialog( sDialogUrl );
// create vba api object
@@ -2718,7 +2754,7 @@ SbUserFormModule::Find( const rtl::OUString& rName, SbxClassType t )
return SbObjModule::Find( rName, t );
}
-SbProperty::SbProperty( const String& r, SbxDataType t, SbModule* p )
+SbProperty::SbProperty( const OUString& r, SbxDataType t, SbModule* p )
: SbxProperty( r, t ), pMod( p )
{
bInvalid = sal_False;
diff --git a/basic/source/comp/buffer.cxx b/basic/source/comp/buffer.cxx
index 6eb01f59a2f4..e3312c91e9c4 100644
--- a/basic/source/comp/buffer.cxx
+++ b/basic/source/comp/buffer.cxx
@@ -58,18 +58,33 @@ char* SbiBuffer::GetBuffer()
// Test, if the buffer can contain n Bytes.
// In case of doubt it will be enlarged
-bool SbiBuffer::Check( sal_uInt16 n )
+bool SbiBuffer::Check( sal_Int32 n )
{
- if( !n ) return true;
- if( ( static_cast<sal_uInt32>( nOff )+ n ) > static_cast<sal_uInt32>( nSize ) )
+ if( !n )
+ {
+ return true;
+ }
+ if( nOff + n > nSize )
{
if( nInc == 0 )
+ {
return false;
- sal_uInt16 nn = 0;
- while( nn < n ) nn = nn + nInc;
+ }
+
+ sal_Int32 nn = 0;
+ while( nn < n )
+ {
+ nn = nn + nInc;
+ }
char* p;
- if( ( static_cast<sal_uInt32>( nSize ) + nn ) > UP_LIMIT ) p = NULL;
- else p = new char [nSize + nn];
+ if( ( nSize + nn ) > UP_LIMIT )
+ {
+ p = NULL;
+ }
+ else
+ {
+ p = new char [nSize + nn];
+ }
if( !p )
{
pParser->Error( SbERR_PROG_TOO_LARGE );
@@ -140,16 +155,28 @@ bool SbiBuffer::operator +=( sal_Int8 n )
{
if( Check( 1 ) )
{
- *pCur++ = (char) n; nOff++; return true;
- } else return false;
+ *pCur++ = (char) n;
+ nOff += 1;
+ return true;
+ }
+ else
+ {
+ return false;
+ }
}
bool SbiBuffer::operator +=( sal_uInt8 n )
{
if( Check( 1 ) )
{
- *pCur++ = (char) n; nOff++; return true;
- } else return false;
+ *pCur++ = (char) n;
+ nOff += 1;
+ return true;
+ }
+ else
+ {
+ return false;
+ }
}
bool SbiBuffer::operator +=( sal_Int16 n )
@@ -158,8 +185,13 @@ bool SbiBuffer::operator +=( sal_Int16 n )
{
*pCur++ = (char) ( n & 0xFF );
*pCur++ = (char) ( n >> 8 );
- nOff += 2; return true;
- } else return false;
+ nOff += 2;
+ return true;
+ }
+ else
+ {
+ return false;
+ }
}
bool SbiBuffer::operator +=( sal_uInt16 n )
@@ -168,8 +200,13 @@ bool SbiBuffer::operator +=( sal_uInt16 n )
{
*pCur++ = (char) ( n & 0xFF );
*pCur++ = (char) ( n >> 8 );
- nOff += 2; return true;
- } else return false;
+ nOff += 2;
+ return true;
+ }
+ else
+ {
+ return false;
+ }
}
bool SbiBuffer::operator +=( sal_uInt32 n )
@@ -179,10 +216,15 @@ bool SbiBuffer::operator +=( sal_uInt32 n )
sal_uInt16 n1 = static_cast<sal_uInt16>( n & 0xFFFF );
sal_uInt16 n2 = static_cast<sal_uInt16>( n >> 16 );
if ( operator +=( n1 ) && operator +=( n2 ) )
+ {
return true;
+ }
return true;
}
- return false;
+ else
+ {
+ return false;
+ }
}
bool SbiBuffer::operator +=( sal_Int32 n )
@@ -191,18 +233,21 @@ bool SbiBuffer::operator +=( sal_Int32 n )
}
-bool SbiBuffer::operator +=( const String& n )
+bool SbiBuffer::operator +=( const OUString& n )
{
- sal_uInt16 l = n.Len() + 1;
- if( Check( l ) )
+ sal_uInt32 len = n.getLength() + 1;
+ if( Check( len ) )
{
rtl::OString aByteStr(rtl::OUStringToOString(n, osl_getThreadTextEncoding()));
- memcpy( pCur, aByteStr.getStr(), l );
- pCur += l;
- nOff = nOff + l;
+ memcpy( pCur, aByteStr.getStr(), len );
+ pCur += len;
+ nOff += len;
return true;
}
- else return false;
+ else
+ {
+ return false;
+ }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/comp/codegen.cxx b/basic/source/comp/codegen.cxx
index 6642cb13f6f1..77542dd58ae9 100644
--- a/basic/source/comp/codegen.cxx
+++ b/basic/source/comp/codegen.cxx
@@ -135,7 +135,7 @@ void SbiCodeGen::Save()
{
for( int i = 0 ; i < nIfaceCount ; i++ )
{
- const String& rIfaceName = pParser->aIfaceVector[i];
+ const OUString& rIfaceName = pParser->aIfaceVector[i];
SbxVariable* pIfaceVar = new SbxVariable( SbxVARIANT );
pIfaceVar->SetName( rIfaceName );
SbxArray* pIfaces = rMod.pClassData->mxIfaces;
@@ -149,45 +149,50 @@ void SbiCodeGen::Save()
{
GetSbData()->pClassFac->RemoveClassModule( &rMod );
// Only a ClassModule can revert to Normal
- if ( rMod.mnType == com::sun::star::script::ModuleType::CLASS )
+ if ( rMod.mnType == com::sun::star::script::ModuleType::CLASS )
+ {
rMod.mnType = com::sun::star::script::ModuleType::NORMAL;
+ }
rMod.bIsProxyModule = false;
}
// GlobalCode-Flag
if( pParser->HasGlobalCode() )
+ {
p->SetFlag( SBIMG_INITCODE );
+ }
// Die Entrypoints:
for( SbiSymDef* pDef = pParser->aPublics.First(); pDef;
- pDef = pParser->aPublics.Next() )
+ pDef = pParser->aPublics.Next() )
{
SbiProcDef* pProc = pDef->GetProcDef();
if( pProc && pProc->IsDefined() )
{
- String aProcName = pProc->GetName();
- String aIfaceProcName;
- String aIfaceName;
+ OUString aProcName = pProc->GetName();
+ OUString aIfaceProcName;
+ OUString aIfaceName;
sal_uInt16 nPassCount = 1;
if( nIfaceCount )
{
- int nPropPrefixFound =
- aProcName.Search( String( RTL_CONSTASCII_USTRINGPARAM("Property ") ) );
- String aPureProcName = aProcName;
- String aPropPrefix;
+ int nPropPrefixFound = aProcName.indexOf(OUString("Property "));
+ OUString aPureProcName = aProcName;
+ OUString aPropPrefix;
if( nPropPrefixFound == 0 )
{
- aPropPrefix = aProcName.Copy( 0, 13 ); // 13 == Len( "Property ?et " )
- aPureProcName = aProcName.Copy( 13 );
+ aPropPrefix = aProcName.copy( 0, 13 ); // 13 == Len( "Property ?et " )
+ aPureProcName = aProcName.copy( 13 );
}
for( int i = 0 ; i < nIfaceCount ; i++ )
{
- const String& rIfaceName = pParser->aIfaceVector[i];
- int nFound = aPureProcName.Search( rIfaceName );
- if( nFound == 0 && '_' == aPureProcName.GetChar( rIfaceName.Len() ) )
+ const OUString& rIfaceName = pParser->aIfaceVector[i];
+ int nFound = aPureProcName.indexOf( rIfaceName );
+ if( nFound == 0 && '_' == aPureProcName[rIfaceName.getLength()] )
{
if( nPropPrefixFound == 0 )
+ {
aIfaceProcName += aPropPrefix;
- aIfaceProcName += aPureProcName.Copy( rIfaceName.Len() + 1 );
+ }
+ aIfaceProcName += aPureProcName.copy( rIfaceName.getLength() + 1 );
aIfaceName = rIfaceName;
nPassCount = 2;
break;
@@ -198,42 +203,47 @@ void SbiCodeGen::Save()
for( sal_uInt16 nPass = 0 ; nPass < nPassCount ; nPass++ )
{
if( nPass == 1 )
+ {
aProcName = aIfaceProcName;
-
+ }
PropertyMode ePropMode = pProc->getPropertyMode();
if( ePropMode != PROPERTY_MODE_NONE )
{
SbxDataType ePropType = SbxEMPTY;
switch( ePropMode )
{
- case PROPERTY_MODE_GET:
- ePropType = pProc->GetType();
- break;
- case PROPERTY_MODE_LET:
+ case PROPERTY_MODE_GET:
+ ePropType = pProc->GetType();
+ break;
+ case PROPERTY_MODE_LET:
+ {
+ // type == type of first parameter
+ ePropType = SbxVARIANT; // Default
+ SbiSymPool* pPool = &pProc->GetParams();
+ if( pPool->GetSize() > 1 )
{
- // type == type of first parameter
- ePropType = SbxVARIANT; // Default
- SbiSymPool* pPool = &pProc->GetParams();
- if( pPool->GetSize() > 1 )
+ SbiSymDef* pPar = pPool->Get( 1 );
+ if( pPar )
{
- SbiSymDef* pPar = pPool->Get( 1 );
- if( pPar )
- ePropType = pPar->GetType();
+ ePropType = pPar->GetType();
}
- break;
}
- case PROPERTY_MODE_SET:
- ePropType = SbxOBJECT;
- break;
- case PROPERTY_MODE_NONE:
- OSL_FAIL( "Illegal PropertyMode PROPERTY_MODE_NONE" );
- break;
+ break;
+ }
+ case PROPERTY_MODE_SET:
+ ePropType = SbxOBJECT;
+ break;
+ case PROPERTY_MODE_NONE:
+ OSL_FAIL( "Illegal PropertyMode PROPERTY_MODE_NONE" );
+ break;
}
- String aPropName = pProc->GetPropName();
+ OUString aPropName = pProc->GetPropName();
if( nPass == 1 )
- aPropName = aPropName.Copy( aIfaceName.Len() + 1 );
+ {
+ aPropName = aPropName.copy( aIfaceName.getLength() + 1 );
+ }
OSL_TRACE("*** getProcedureProperty for thing %s",
- rtl::OUStringToOString( aPropName,RTL_TEXTENCODING_UTF8 ).getStr() );
+ rtl::OUStringToOString( aPropName,RTL_TEXTENCODING_UTF8 ).getStr() );
rMod.GetProcedureProperty( aPropName, ePropType );
}
if( nPass == 1 )
@@ -245,18 +255,20 @@ void SbiCodeGen::Save()
pMeth = rMod.GetMethod( aProcName, pProc->GetType() );
if( !pProc->IsPublic() )
+ {
pMeth->SetFlag( SBX_PRIVATE );
-
+ }
// Declare? -> Hidden
- if( pProc->GetLib().Len() > 0 )
+ if( !pProc->GetLib().isEmpty())
+ {
pMeth->SetFlag( SBX_HIDDEN );
-
+ }
pMeth->nStart = pProc->GetAddr();
pMeth->nLine1 = pProc->GetLine1();
pMeth->nLine2 = pProc->GetLine2();
// The parameter:
SbxInfo* pInfo = pMeth->GetInfo();
- String aHelpFile, aComment;
+ OUString aHelpFile, aComment;
sal_uIntPtr nHelpId = 0;
if( pInfo )
{
@@ -275,24 +287,35 @@ void SbiCodeGen::Save()
SbiSymDef* pPar = pPool->Get( i );
SbxDataType t = pPar->GetType();
if( !pPar->IsByVal() )
+ {
t = (SbxDataType) ( t | SbxBYREF );
+ }
if( pPar->GetDims() )
+ {
t = (SbxDataType) ( t | SbxARRAY );
+ }
// #33677 hand-over an Optional-Info
- sal_uInt16 nFlags = SBX_READ;
+ sal_uInt16 nFlags = SBX_READ;
if( pPar->IsOptional() )
+ {
nFlags |= SBX_OPTIONAL;
-
+ }
pInfo->AddParam( pPar->GetName(), t, nFlags );
sal_uInt32 nUserData = 0;
sal_uInt16 nDefaultId = pPar->GetDefaultId();
if( nDefaultId )
+ {
nUserData |= nDefaultId;
+ }
if( pPar->IsParamArray() )
+ {
nUserData |= PARAM_INFO_PARAMARRAY;
+ }
if( pPar->IsWithBrackets() )
+ {
nUserData |= PARAM_INFO_WITHBRACKETS;
+ }
if( nUserData )
{
SbxParamInfo* pParam = (SbxParamInfo*)pInfo->GetParam( i );
@@ -301,7 +324,6 @@ void SbiCodeGen::Save()
}
pMeth->SetInfo( pInfo );
}
-
} // for( iPass...
}
}
@@ -314,23 +336,29 @@ void SbiCodeGen::Save()
p->MakeStrings( nSize );
sal_uInt16 i;
for( i = 1; i <= nSize; i++ )
+ {
p->AddString( pPool->Find( i ) );
-
+ }
// Insert types
sal_uInt16 nCount = pParser->rTypeArray->Count();
for (i = 0; i < nCount; i++)
+ {
p->AddType((SbxObject *)pParser->rTypeArray->Get(i));
-
+ }
// Insert enum objects
nCount = pParser->rEnumArray->Count();
for (i = 0; i < nCount; i++)
+ {
p->AddEnum((SbxObject *)pParser->rEnumArray->Get(i));
-
+ }
if( !p->IsError() )
+ {
rMod.pImage = p;
+ }
else
+ {
delete p;
-
+ }
rMod.EndDefinitions();
}
diff --git a/basic/source/comp/dim.cxx b/basic/source/comp/dim.cxx
index 70d441e8003a..3a6c5c93d971 100644
--- a/basic/source/comp/dim.cxx
+++ b/basic/source/comp/dim.cxx
@@ -124,7 +124,7 @@ void SbiParser::TypeDecl( SbiSymDef& rDef, bool bAsNewAlreadyParsed )
Error( SbERR_SYNTAX );
else
{
- String aCompleteName = aSym;
+ OUString aCompleteName = aSym;
// #52709 DIM AS NEW for Uno with full-qualified name
if( Peek() == DOT )
@@ -154,7 +154,7 @@ void SbiParser::TypeDecl( SbiSymDef& rDef, bool bAsNewAlreadyParsed )
break;
}
- // Take over in the String pool
+ // Take over in the string pool
rDef.SetTypeId( aGblStrings.Add( aCompleteName ) );
if( rDef.IsNew() && pProc == NULL )
@@ -390,9 +390,11 @@ void SbiParser::DefVar( SbiOpcode eOp, bool bStatic )
{
if( !bCompatible && !pDef->IsNew() )
{
- String aTypeName( aGblStrings.Find( pDef->GetTypeId() ) );
+ OUString aTypeName( aGblStrings.Find( pDef->GetTypeId() ) );
if( rTypeArray->Find( aTypeName, SbxCLASS_OBJECT ) == NULL )
+ {
Error( SbERR_UNDEF_TYPE, aTypeName );
+ }
}
if( bConst )
@@ -595,9 +597,11 @@ void SbiParser::DefType( bool bPrivate )
if( pElem )
{
SbxArray *pTypeMembers = pType->GetProperties();
- String aElemName = pElem->GetName();
+ OUString aElemName = pElem->GetName();
if( pTypeMembers->Find( aElemName, SbxCLASS_DONTCARE) )
+ {
Error (SbERR_VAR_DEFINED);
+ }
else
{
SbxDataType eElemType = pElem->GetType();
@@ -644,7 +648,7 @@ void SbiParser::DefType( bool bPrivate )
sal_uInt16 nElemTypeId = pElem->GetTypeId();
if( nElemTypeId != 0 )
{
- String aTypeName( aGblStrings.Find( nElemTypeId ) );
+ OUString aTypeName( aGblStrings.Find( nElemTypeId ) );
SbxObject* pTypeObj = static_cast< SbxObject* >( rTypeArray->Find( aTypeName, SbxCLASS_OBJECT ) );
if( pTypeObj != NULL )
{
@@ -680,7 +684,7 @@ void SbiParser::DefEnum( bool bPrivate )
if (!TestSymbol())
return;
- String aEnumName = aSym;
+ OUString aEnumName = aSym;
if( rEnumArray->Find(aEnumName,SbxCLASS_OBJECT) )
{
Error( SbERR_VAR_DEFINED, aSym );
@@ -689,8 +693,9 @@ void SbiParser::DefEnum( bool bPrivate )
SbxObject *pEnum = new SbxObject( aEnumName );
if( bPrivate )
+ {
pEnum->SetFlag( SBX_PRIVATE );
-
+ }
SbiSymDef* pElem;
SbiDimList* pDim;
bool bDone = false;
@@ -812,7 +817,7 @@ SbiProcDef* SbiParser::ProcDecl( bool bDecl )
bool bFunc = ( eCurTok == FUNCTION );
bool bProp = ( eCurTok == GET || eCurTok == SET || eCurTok == LET );
if( !TestSymbol() ) return NULL;
- String aName( aSym );
+ OUString aName( aSym );
SbxDataType eType = eScanType;
SbiProcDef* pDef = new SbiProcDef( this, aName, true );
pDef->SetType( eType );
@@ -824,112 +829,166 @@ SbiProcDef* SbiParser::ProcDecl( bool bDecl )
{
Next();
if( Next() == FIXSTRING )
+ {
pDef->GetLib() = aSym;
+ }
else
+ {
Error( SbERR_SYNTAX );
+ }
}
if( Peek() == ALIAS )
{
Next();
if( Next() == FIXSTRING )
+ {
pDef->GetAlias() = aSym;
+ }
else
+ {
Error( SbERR_SYNTAX );
+ }
}
if( !bDecl )
{
// CDECL, LIB and ALIAS are invalid
- if( pDef->GetLib().Len() )
+ if( !pDef->GetLib().isEmpty() )
+ {
Error( SbERR_UNEXPECTED, LIB );
- if( pDef->GetAlias().Len() )
+ }
+ if( !pDef->GetAlias().isEmpty() )
+ {
Error( SbERR_UNEXPECTED, ALIAS );
+ }
if( pDef->IsCdecl() )
+ {
Error( SbERR_UNEXPECTED, _CDECL_ );
+ }
pDef->SetCdecl( false );
- pDef->GetLib().Erase();
- pDef->GetAlias().Erase();
+ pDef->GetLib() = "";
+ pDef->GetAlias() = "";
}
- else if( !pDef->GetLib().Len() )
+ else if( pDef->GetLib().isEmpty() )
{
// ALIAS and CDECL only together with LIB
- if( pDef->GetAlias().Len() )
+ if( !pDef->GetAlias().isEmpty() )
+ {
Error( SbERR_UNEXPECTED, ALIAS );
+ }
if( pDef->IsCdecl() )
+ {
Error( SbERR_UNEXPECTED, _CDECL_ );
+ }
pDef->SetCdecl( false );
- pDef->GetAlias().Erase();
+ pDef->GetAlias() = "";
}
// Brackets?
if( Peek() == LPAREN )
{
Next();
if( Peek() == RPAREN )
+ {
Next();
+ }
else
- for(;;) {
- bool bByVal = false;
- bool bOptional = false;
- bool bParamArray = false;
- while( Peek() == BYVAL || Peek() == BYREF || Peek() == _OPTIONAL_ )
- {
- if ( Peek() == BYVAL ) Next(), bByVal = true;
- else if ( Peek() == BYREF ) Next(), bByVal = false;
- else if ( Peek() == _OPTIONAL_ ) Next(), bOptional = true;
- }
- if( bCompatible && Peek() == PARAMARRAY )
- {
- if( bByVal || bOptional )
- Error( SbERR_UNEXPECTED, PARAMARRAY );
- Next();
- bParamArray = true;
- }
- SbiSymDef* pPar = VarDecl( NULL, false, false );
- if( !pPar )
- break;
- if( bByVal )
- pPar->SetByVal();
- if( bOptional )
- pPar->SetOptional();
- if( bParamArray )
- pPar->SetParamArray();
- pDef->GetParams().Add( pPar );
- SbiToken eTok = Next();
- if( eTok != COMMA && eTok != RPAREN )
+ {
+ for(;;)
{
- bool bError2 = true;
- if( bOptional && bCompatible && eTok == EQ )
+ bool bByVal = false;
+ bool bOptional = false;
+ bool bParamArray = false;
+ while( Peek() == BYVAL || Peek() == BYREF || Peek() == _OPTIONAL_ )
{
- SbiConstExpression* pDefaultExpr = new SbiConstExpression( this );
- SbxDataType eType2 = pDefaultExpr->GetType();
-
- sal_uInt16 nStringId;
- if( eType2 == SbxSTRING )
- nStringId = aGblStrings.Add( pDefaultExpr->GetString() );
- else
- nStringId = aGblStrings.Add( pDefaultExpr->GetValue(), eType2 );
+ if( Peek() == BYVAL )
+ {
+ bByVal = true;
+ }
+ else if ( Peek() == BYREF )
+ {
+ bByVal = false;
+ }
+ else if ( Peek() == _OPTIONAL_ )
+ {
+ bOptional = true;
+ }
+ Next();
+ }
+ if( bCompatible && Peek() == PARAMARRAY )
+ {
+ if( bByVal || bOptional )
+ {
+ Error( SbERR_UNEXPECTED, PARAMARRAY );
+ }
+ Next();
+ bParamArray = true;
+ }
+ SbiSymDef* pPar = VarDecl( NULL, false, false );
+ if( !pPar )
+ {
+ break;
+ }
+ if( bByVal )
+ {
+ pPar->SetByVal();
+ }
+ if( bOptional )
+ {
+ pPar->SetOptional();
+ }
+ if( bParamArray )
+ {
+ pPar->SetParamArray();
+ }
+ pDef->GetParams().Add( pPar );
+ SbiToken eTok = Next();
+ if( eTok != COMMA && eTok != RPAREN )
+ {
+ bool bError2 = true;
+ if( bOptional && bCompatible && eTok == EQ )
+ {
+ SbiConstExpression* pDefaultExpr = new SbiConstExpression( this );
+ SbxDataType eType2 = pDefaultExpr->GetType();
- pPar->SetDefaultId( nStringId );
- delete pDefaultExpr;
+ sal_uInt16 nStringId;
+ if( eType2 == SbxSTRING )
+ {
+ nStringId = aGblStrings.Add( pDefaultExpr->GetString() );
+ }
+ else
+ {
+ nStringId = aGblStrings.Add( pDefaultExpr->GetValue(), eType2 );
+ }
+ pPar->SetDefaultId( nStringId );
+ delete pDefaultExpr;
- eTok = Next();
- if( eTok == COMMA || eTok == RPAREN )
- bError2 = false;
+ eTok = Next();
+ if( eTok == COMMA || eTok == RPAREN )
+ {
+ bError2 = false;
+ }
+ }
+ if( bError2 )
+ {
+ Error( SbERR_EXPECTED, RPAREN );
+ break;
+ }
}
- if( bError2 )
+ if( eTok == RPAREN )
{
- Error( SbERR_EXPECTED, RPAREN );
break;
}
}
- if( eTok == RPAREN )
- break;
}
}
TypeDecl( *pDef );
if( eType != SbxVARIANT && pDef->GetType() != eType )
+ {
Error( SbERR_BAD_DECLARATION, aName );
+ }
if( pDef->GetType() == SbxVARIANT && !( bFunc || bProp ) )
+ {
pDef->SetType( SbxEMPTY );
+ }
return pDef;
}
@@ -944,7 +1003,9 @@ void SbiParser::DefDeclare( bool bPrivate )
{
Next();
if( eCurTok != SUB && eCurTok != FUNCTION )
+ {
Error( SbERR_UNEXPECTED, eCurTok );
+ }
else
{
bool bFunction = (eCurTok == FUNCTION);
@@ -952,8 +1013,10 @@ void SbiParser::DefDeclare( bool bPrivate )
SbiProcDef* pDef = ProcDecl( true );
if( pDef )
{
- if( !pDef->GetLib().Len() )
+ if( pDef->GetLib().isEmpty() )
+ {
Error( SbERR_EXPECTED, LIB );
+ }
// Is it already there?
SbiSymDef* pOld = aPublics.Find( pDef->GetName() );
if( pOld )
@@ -967,17 +1030,20 @@ void SbiParser::DefDeclare( bool bPrivate )
pDef = NULL;
}
else
+ {
pDef->Match( p );
+ }
}
else
+ {
aPublics.Add( pDef );
-
+ }
if ( pDef )
{
pDef->SetPublic( !bPrivate );
// New declare handling
- if( pDef->GetLib().Len() > 0 )
+ if( !pDef->GetLib().isEmpty())
{
if( bNewGblDefs && nGblChain == 0 )
{
@@ -996,8 +1062,9 @@ void SbiParser::DefDeclare( bool bPrivate )
SbxDataType eType = pDef->GetType();
if( bFunction )
+ {
aGen.Gen( _PARAM, 0, sal::static_int_cast< sal_uInt16 >( eType ) );
-
+ }
if( nParCount > 1 )
{
aGen.Gen( _ARGC );
@@ -1025,15 +1092,20 @@ void SbiParser::DefDeclare( bool bPrivate )
SbiOpcode eOp = pDef->IsCdecl() ? _CALLC : _CALL;
sal_uInt16 nId = pDef->GetId();
- if( pDef->GetAlias().Len() )
+ if( !pDef->GetAlias().isEmpty() )
+ {
nId = ( nId & 0x8000 ) | aGblStrings.Add( pDef->GetAlias() );
+ }
if( nParCount > 1 )
+ {
nId |= 0x8000;
+ }
aGen.Gen( eOp, nId, sal::static_int_cast< sal_uInt16 >( eType ) );
if( bFunction )
+ {
aGen.Gen( _PUT );
-
+ }
aGen.Gen( _LEAVE );
}
}
@@ -1047,14 +1119,19 @@ void SbiParser::Attribute()
while( Next() != EQ )
{
if( Next() != DOT)
+ {
break;
+ }
}
if( eCurTok != EQ )
+ {
Error( SbERR_SYNTAX );
+ }
else
+ {
SbiExpression aValue( this );
-
+ }
// Don't generate any code - just discard it.
}
@@ -1086,19 +1163,29 @@ void SbiParser::DefProc( bool bStatic, bool bPrivate )
{
Next();
if( eCurTok == GET )
+ {
ePropertyMode = PROPERTY_MODE_GET;
+ }
else if( eCurTok == LET )
+ {
ePropertyMode = PROPERTY_MODE_LET;
+ }
else if( eCurTok == SET )
+ {
ePropertyMode = PROPERTY_MODE_SET;
+ }
else
+ {
Error( SbERR_EXPECTED, "Get or Let or Set" );
+ }
}
SbiToken eExit = eCurTok;
SbiProcDef* pDef = ProcDecl( false );
if( !pDef )
+ {
return;
+ }
pDef->setPropertyMode( ePropertyMode );
// Is the Proc already declared?
@@ -1137,10 +1224,13 @@ void SbiParser::DefProc( bool bStatic, bool bPrivate )
}
}
else
+ {
aPublics.Add( pDef ), pProc = pDef;
-
+ }
if( !pProc )
+ {
return;
+ }
pProc->SetPublic( !bPrivate );
// Now we set the search hierarchy for symbols as well as the
@@ -1148,16 +1238,20 @@ void SbiParser::DefProc( bool bStatic, bool bPrivate )
aPublics.SetProcId( pProc->GetId() );
pProc->GetParams().SetParent( &aPublics );
if( bStatic )
- {
+ {
if ( bVBASupportOn )
+ {
pProc->SetStatic( sal_True );
+ }
else
+ {
Error( SbERR_NOT_IMPLEMENTED ); // STATIC SUB ...
}
- else
+ }
+ else
{
pProc->SetStatic( sal_False );
- }
+ }
// Normal case: Local variable->parameter->global variable
pProc->GetLocals().SetParent( &pProc->GetParams() );
pPool = &pProc->GetLocals();
@@ -1186,30 +1280,35 @@ void SbiParser::Static()
void SbiParser::DefStatic( bool bPrivate )
{
+ SbiSymPool* p;
+
switch( Peek() )
{
- case SUB:
- case FUNCTION:
- case PROPERTY:
- // End global chain if necessary (not done in
- // SbiParser::Parse() under these conditions
- if( bNewGblDefs && nGblChain == 0 )
- {
- nGblChain = aGen.Gen( _JUMP, 0 );
- bNewGblDefs = false;
- }
- Next();
- DefProc( true, bPrivate );
- break;
- default: {
- if( !pProc )
- Error( SbERR_NOT_IN_SUBR );
- // Reset the Pool, so that STATIC-Declarations go into the
- // global Pool
- SbiSymPool* p = pPool; pPool = &aPublics;
- DefVar( _STATIC, true );
- pPool = p;
- } break;
+ case SUB:
+ case FUNCTION:
+ case PROPERTY:
+ // End global chain if necessary (not done in
+ // SbiParser::Parse() under these conditions
+ if( bNewGblDefs && nGblChain == 0 )
+ {
+ nGblChain = aGen.Gen( _JUMP, 0 );
+ bNewGblDefs = false;
+ }
+ Next();
+ DefProc( true, bPrivate );
+ break;
+ default:
+ if( !pProc )
+ {
+ Error( SbERR_NOT_IN_SUBR );
+ }
+ // Reset the Pool, so that STATIC-Declarations go into the
+ // global Pool
+ p = pPool;
+ pPool = &aPublics;
+ DefVar( _STATIC, true );
+ pPool = p;
+ break;
}
}
diff --git a/basic/source/comp/exprgen.cxx b/basic/source/comp/exprgen.cxx
index d752993b07fa..357809757c5a 100644
--- a/basic/source/comp/exprgen.cxx
+++ b/basic/source/comp/exprgen.cxx
@@ -57,22 +57,26 @@ static OpTable aOpTable [] = {
// Output of an element
void SbiExprNode::Gen( RecursiveMode eRecMode )
{
+ sal_uInt16 nStringId;
+
if( IsConstant() )
{
switch( GetType() )
{
- case SbxEMPTY: pGen->Gen( _EMPTY ); break;
- case SbxINTEGER: pGen->Gen( _CONST, (short) nVal ); break;
- case SbxSTRING:
- {
- sal_uInt16 nStringId = pGen->GetParser()->aGblStrings.Add( aStrVal, sal_True );
- pGen->Gen( _SCONST, nStringId ); break;
- }
- default:
- {
- sal_uInt16 nStringId = pGen->GetParser()->aGblStrings.Add( nVal, eType );
- pGen->Gen( _NUMBER, nStringId );
- }
+ case SbxEMPTY:
+ pGen->Gen( _EMPTY );
+ break;
+ case SbxINTEGER:
+ pGen->Gen( _CONST, (short) nVal );
+ break;
+ case SbxSTRING:
+ nStringId = pGen->GetParser()->aGblStrings.Add( aStrVal, sal_True );
+ pGen->Gen( _SCONST, nStringId );
+ break;
+ default:
+ nStringId = pGen->GetParser()->aGblStrings.Add( nVal, eType );
+ pGen->Gen( _NUMBER, nStringId );
+ break;
}
}
else if( IsOperand() )
@@ -92,10 +96,14 @@ void SbiExprNode::Gen( RecursiveMode eRecMode )
else if( eRecMode == UNDEFINED )
{
if( aVar.pPar && aVar.pPar->IsBracket() )
+ {
bTreatFunctionAsParam = false;
+ }
}
if( !bTreatFunctionAsParam )
+ {
eOp = aVar.pDef->IsGlobal() ? _FIND_G : _FIND;
+ }
}
}
// special treatment for WITH
@@ -114,7 +122,9 @@ void SbiExprNode::Gen( RecursiveMode eRecMode )
SbiProcDef* pProc = aVar.pDef->GetProcDef();
if ( pGen->GetParser()->bClassModule )
+ {
eOp = _FIND_CM;
+ }
else if ( aVar.pDef->IsStatic() || (pProc && pProc->IsStatic()) )
{
eOp = _FIND_STATIC;
@@ -123,7 +133,9 @@ void SbiExprNode::Gen( RecursiveMode eRecMode )
for( SbiExprNode* p = this; p; p = p->aVar.pNext )
{
if( p == this && pWithParent_ != NULL )
+ {
pWithParent_->Gen();
+ }
p->GenElement( eOp );
eOp = _ELEM;
}
@@ -141,7 +153,9 @@ void SbiExprNode::Gen( RecursiveMode eRecMode )
{
pLeft->Gen();
if( pRight )
+ {
pRight->Gen();
+ }
for( OpTable* p = aOpTable; p->eTok != NIL; p++ )
{
if( p->eTok == eTok )
@@ -202,7 +216,7 @@ void SbiExprList::Gen()
for( SbiExpression* pExpr = pFirst; pExpr; pExpr = pExpr->pNext,nCount++ )
{
pExpr->Gen();
- if( pExpr->GetName().Len() )
+ if( !pExpr->GetName().isEmpty() )
{
// named arg
sal_uInt16 nSid = pParser->aGblStrings.Add( pExpr->GetName() );
@@ -247,12 +261,16 @@ void SbiExpression::Gen( RecursiveMode eRecMode )
// If pExpr == .-term in With, approximately Gen for Basis-Object
pExpr->Gen( eRecMode );
if( bByVal )
+ {
pParser->aGen.Gen( _BYVAL );
+ }
if( bBased )
{
sal_uInt16 uBase = pParser->nBase;
if( pParser->IsCompatible() )
+ {
uBase |= 0x8000; // #109275 Flag compatiblity
+ }
pParser->aGen.Gen( _BASED, uBase );
pParser->aGen.Gen( _ARGV );
}
diff --git a/basic/source/comp/exprnode.cxx b/basic/source/comp/exprnode.cxx
index a863413a65ba..10c98942d492 100644
--- a/basic/source/comp/exprnode.cxx
+++ b/basic/source/comp/exprnode.cxx
@@ -53,7 +53,7 @@ SbiExprNode::SbiExprNode( SbiParser* p, double n, SbxDataType t )
nVal = n;
}
-SbiExprNode::SbiExprNode( SbiParser* p, const String& rVal )
+SbiExprNode::SbiExprNode( SbiParser* p, const OUString& rVal )
{
BaseInit( p );
@@ -256,8 +256,8 @@ void SbiExprNode::FoldConstants()
eType = SbxSTRING;
if( eType == SbxSTRING )
{
- String rl( pLeft->GetString() );
- String rr( pRight->GetString() );
+ OUString rl( pLeft->GetString() );
+ OUString rr( pRight->GetString() );
delete pLeft; pLeft = NULL;
delete pRight; pRight = NULL;
if( eTok == PLUS || eTok == CAT )
@@ -273,30 +273,31 @@ void SbiExprNode::FoldConstants()
{
eType = SbxDOUBLE;
eNodeType = SbxNUMVAL;
- StringCompare eRes = rr.CompareTo( rl );
+ int eRes = rr.compareTo( rl );
switch( eTok )
{
- case EQ:
- nVal = ( eRes == COMPARE_EQUAL ) ? SbxTRUE : SbxFALSE;
- break;
- case NE:
- nVal = ( eRes != COMPARE_EQUAL ) ? SbxTRUE : SbxFALSE;
- break;
- case LT:
- nVal = ( eRes == COMPARE_LESS ) ? SbxTRUE : SbxFALSE;
- break;
- case GT:
- nVal = ( eRes == COMPARE_GREATER ) ? SbxTRUE : SbxFALSE;
- break;
- case LE:
- nVal = ( eRes != COMPARE_GREATER ) ? SbxTRUE : SbxFALSE;
- break;
- case GE:
- nVal = ( eRes != COMPARE_LESS ) ? SbxTRUE : SbxFALSE;
- break;
- default:
- pGen->GetParser()->Error( SbERR_CONVERSION );
- bError = true;
+ case EQ:
+ nVal = ( eRes == 0 ) ? SbxTRUE : SbxFALSE;
+ break;
+ case NE:
+ nVal = ( eRes != 0 ) ? SbxTRUE : SbxFALSE;
+ break;
+ case LT:
+ nVal = ( eRes < 0 ) ? SbxTRUE : SbxFALSE;
+ break;
+ case GT:
+ nVal = ( eRes > 0 ) ? SbxTRUE : SbxFALSE;
+ break;
+ case LE:
+ nVal = ( eRes <= 0 ) ? SbxTRUE : SbxFALSE;
+ break;
+ case GE:
+ nVal = ( eRes >= 0 ) ? SbxTRUE : SbxFALSE;
+ break;
+ default:
+ pGen->GetParser()->Error( SbERR_CONVERSION );
+ bError = true;
+ break;
}
}
}
diff --git a/basic/source/comp/exprtree.cxx b/basic/source/comp/exprtree.cxx
index 1a4b465ded02..1037e77e190f 100644
--- a/basic/source/comp/exprtree.cxx
+++ b/basic/source/comp/exprtree.cxx
@@ -39,11 +39,17 @@ SbiExpression::SbiExpression( SbiParser* p, SbiExprType t,
pNext = NULL;
pExpr = (t != SbSTDEXPR ) ? Term( pKeywordSymbolInfo ) : Boolean();
if( t != SbSYMBOL )
+ {
pExpr->Optimize();
+ }
if( t == SbLVALUE && !pExpr->IsLvalue() )
+ {
p->Error( SbERR_LVALUE_EXPECTED );
+ }
if( t == SbOPERAND && !IsVariable() )
+ {
p->Error( SbERR_VAR_EXPECTED );
+ }
}
SbiExpression::SbiExpression( SbiParser* p, double n, SbxDataType t )
@@ -82,12 +88,16 @@ SbiExpression::~SbiExpression()
static sal_Bool DoParametersFollow( SbiParser* p, SbiExprType eCurExpr, SbiToken eTok )
{
if( eTok == LPAREN )
+ {
return sal_True;
+ }
// but only if similar to CALL!
if( !p->WhiteSpace() || eCurExpr != SbSYMBOL )
+ {
return sal_False;
- if ( eTok == NUMBER || eTok == MINUS || eTok == FIXSTRING
- || eTok == SYMBOL || eTok == COMMA || eTok == DOT || eTok == NOT || eTok == BYVAL )
+ }
+ if ( eTok == NUMBER || eTok == MINUS || eTok == FIXSTRING ||
+ eTok == SYMBOL || eTok == COMMA || eTok == DOT || eTok == NOT || eTok == BYVAL )
{
return sal_True;
}
@@ -97,16 +107,17 @@ static sal_Bool DoParametersFollow( SbiParser* p, SbiExprType eCurExpr, SbiToken
// Urk the Next() / Peek() symantics are... weird
tokens.Next();
if ( tokens.Peek() == ASSIGN )
+ {
return sal_True;
+ }
}
return sal_False;
}
// definition of a new symbol
-static SbiSymDef* AddSym
- ( SbiToken eTok, SbiSymPool& rPool, SbiExprType eCurExpr,
- const String& rName, SbxDataType eType, SbiParameters* pPar )
+static SbiSymDef* AddSym ( SbiToken eTok, SbiSymPool& rPool, SbiExprType eCurExpr,
+ const OUString& rName, SbxDataType eType, SbiParameters* pPar )
{
SbiSymDef* pDef;
// A= is not a procedure
@@ -118,24 +129,28 @@ static SbiSymDef* AddSym
// procs must always get into a public pool
SbiSymPool* pPool = &rPool;
if( pPool->GetScope() != SbPUBLIC )
+ {
pPool = &rPool.GetParser()->aPublics;
+ }
SbiProcDef* pProc = pPool->AddProc( rName );
// special treatment for Colls like Documents(1)
if( eCurExpr == SbSTDEXPR )
+ {
bHasType = sal_True;
-
+ }
pDef = pProc;
pDef->SetType( bHasType ? eType : SbxEMPTY );
if( pPar )
{
// generate dummy parameters
- sal_uInt16 n = 1;
+ sal_Int32 n = 1;
for( short i = 0; i < pPar->GetSize(); i++ )
{
- String aPar = rtl::OUString("PAR");
- aPar += ++n;
- pProc->GetParams().AddSym( aPar );
+ n += 1;
+ OUStringBuffer aPar("PAR");
+ aPar.append(n);
+ pProc->GetParams().AddSym( aPar.makeStringAndClear() );
}
}
}
@@ -166,7 +181,9 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
{
pNd = ObjTerm( *pDef );
if( pNd )
+ {
pNd->SetWithParent( pWithVar );
+ }
}
if( !pNd )
{
@@ -179,7 +196,7 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
SbiToken eTok = (pKeywordSymbolInfo == NULL) ? pParser->Next() : pKeywordSymbolInfo->m_eTok;
// memorize the parsing's begin
pParser->LockColumn();
- String aSym( (pKeywordSymbolInfo == NULL) ? pParser->GetSym() : pKeywordSymbolInfo->m_aKeywordSymbol );
+ OUString aSym( (pKeywordSymbolInfo == NULL) ? pParser->GetSym() : pKeywordSymbolInfo->m_aKeywordSymbol );
SbxDataType eType = (pKeywordSymbolInfo == NULL) ? pParser->GetType() : pKeywordSymbolInfo->m_eSbxDataType;
SbiParameters* pPar = NULL;
SbiExprListVector* pvMoreParLcl = NULL;
@@ -220,7 +237,9 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
while( eTok == LPAREN )
{
if( pvMoreParLcl == NULL )
+ {
pvMoreParLcl = new SbiExprListVector();
+ }
SbiParameters* pAddPar = new SbiParameters( pParser );
pvMoreParLcl->push_back( pAddPar );
bError = bError || !pAddPar->IsValid();
@@ -236,7 +255,9 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
{
bBracket = false; // Now the bracket for the first term is obsolete
if( eType == SbxVARIANT )
+ {
eType = SbxOBJECT;
+ }
else
{
// Name%. really does not work!
@@ -257,18 +278,24 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
SbModule& rMod = pParser->aGen.GetModule();
SbxArray* pModMethods = rMod.GetMethods();
if( pModMethods->Find( aSym, SbxCLASS_DONTCARE ) )
+ {
pDef = NULL;
+ }
}
if( !pDef )
{
if( bObj )
+ {
eType = SbxOBJECT;
+ }
pDef = AddSym( eTok, *pParser->pPool, eCurExpr, aSym, eType, pPar );
// Looks like this is a local ( but undefined variable )
// if it is in a static procedure then make this Symbol
// static
if ( !bObj && pParser->pProc && pParser->pProc->IsStatic() )
+ {
pDef->SetStatic();
+ }
}
else
{
@@ -277,16 +304,22 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
if( pConst )
{
if( pConst->GetType() == SbxSTRING )
+ {
return new SbiExprNode( pParser, pConst->GetString() );
+ }
else
+ {
return new SbiExprNode( pParser, pConst->GetValue(), pConst->GetType() );
+ }
}
// 0 parameters come up to ()
if( pDef->GetDims() )
{
if( pPar && pPar->GetSize() && pPar->GetSize() != pDef->GetDims() )
+ {
pParser->Error( SbERR_WRONG_DIMS );
+ }
}
if( pDef->IsDefinedAs() )
{
@@ -299,10 +332,12 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
bError = true;
}
else if ( eType == SbxVARIANT )
+ {
// if there's nothing named, take the type of the entry,
// but only if the var hasn't been defined with AS XXX
// so that we catch n% = 5 : print n
eType = eDefType;
+ }
}
// checking type of variables:
// is there named anything different in the scanner?
@@ -327,7 +362,9 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
}
SbiExprNode* pNd = new SbiExprNode( pParser, *pDef, eType );
if( !pPar )
+ {
pPar = new SbiParameters( pParser,sal_False,sal_False );
+ }
pNd->aVar.pPar = pPar;
pNd->aVar.pvMorePar = pvMoreParLcl;
if( bObj )
@@ -347,7 +384,9 @@ SbiExprNode* SbiExpression::Term( const KeywordSymbolInfo* pKeywordSymbolInfo )
}
}
if( !bError )
+ {
pNd->aVar.pNext = ObjTerm( *pDef );
+ }
}
pParser->UnlockColumn();
@@ -374,9 +413,10 @@ SbiExprNode* SbiExpression::ObjTerm( SbiSymDef& rObj )
}
if( bError )
+ {
return NULL;
-
- String aSym( pParser->GetSym() );
+ }
+ OUString aSym( pParser->GetSym() );
SbxDataType eType = pParser->GetType();
SbiParameters* pPar = NULL;
SbiExprListVector* pvMoreParLcl = NULL;
@@ -393,19 +433,22 @@ SbiExprNode* SbiExpression::ObjTerm( SbiSymDef& rObj )
while( eTok == LPAREN )
{
if( pvMoreParLcl == NULL )
+ {
pvMoreParLcl = new SbiExprListVector();
+ }
SbiParameters* pAddPar = new SbiParameters( pParser );
pvMoreParLcl->push_back( pAddPar );
bError = bError || !pPar->IsValid();
eTok = pParser->Peek();
}
-
}
sal_Bool bObj = sal_Bool( ( eTok == DOT || eTok == EXCLAM ) && !pParser->WhiteSpace() );
if( bObj )
{
if( eType == SbxVARIANT )
+ {
eType = SbxOBJECT;
+ }
else
{
// Name%. does really not work!
@@ -430,8 +473,9 @@ SbiExprNode* SbiExpression::ObjTerm( SbiSymDef& rObj )
if( bObj )
{
if( pDef->GetType() == SbxVARIANT )
+ {
pDef->SetType( SbxOBJECT );
-
+ }
if( pDef->GetType() != SbxOBJECT )
{
pParser->Error( SbERR_BAD_DECLARATION, aSym );
@@ -462,67 +506,78 @@ SbiExprNode* SbiExpression::Operand( bool bUsedForTypeOf )
// test operand:
switch( eTok = pParser->Peek() )
{
- case SYMBOL:
- pRes = Term();
- // process something like "IF Not r Is Nothing Then .."
- if( !bUsedForTypeOf && pParser->IsVBASupportOn() && pParser->Peek() == IS )
- {
- eTok = pParser->Next();
- pRes = new SbiExprNode( pParser, pRes, eTok, Like() );
- }
- break;
- case DOT: // .with
- pRes = Term(); break;
- case NUMBER:
+ case SYMBOL:
+ pRes = Term();
+ // process something like "IF Not r Is Nothing Then .."
+ if( !bUsedForTypeOf && pParser->IsVBASupportOn() && pParser->Peek() == IS )
+ {
+ eTok = pParser->Next();
+ pRes = new SbiExprNode( pParser, pRes, eTok, Like() );
+ }
+ break;
+ case DOT: // .with
+ pRes = Term(); break;
+ case NUMBER:
+ pParser->Next();
+ pRes = new SbiExprNode( pParser, pParser->GetDbl(), pParser->GetType() );
+ break;
+ case FIXSTRING:
+ pParser->Next();
+ pRes = new SbiExprNode( pParser, pParser->GetSym() ); break;
+ case LPAREN:
+ pParser->Next();
+ if( nParenLevel == 0 && m_eMode == EXPRMODE_LPAREN_PENDING && pParser->Peek() == RPAREN )
+ {
+ m_eMode = EXPRMODE_EMPTY_PAREN;
+ pRes = new SbiExprNode(); // Dummy node
pParser->Next();
- pRes = new SbiExprNode( pParser, pParser->GetDbl(), pParser->GetType() );
break;
- case FIXSTRING:
- pParser->Next();
- pRes = new SbiExprNode( pParser, pParser->GetSym() ); break;
- case LPAREN:
- pParser->Next();
- if( nParenLevel == 0 && m_eMode == EXPRMODE_LPAREN_PENDING && pParser->Peek() == RPAREN )
+ }
+ nParenLevel++;
+ pRes = Boolean();
+ if( pParser->Peek() != RPAREN )
+ {
+ // If there was a LPARAM, it does not belong to the expression
+ if( nParenLevel == 1 && m_eMode == EXPRMODE_LPAREN_PENDING )
{
- m_eMode = EXPRMODE_EMPTY_PAREN;
- pRes = new SbiExprNode(); // Dummy node
- pParser->Next();
- break;
+ m_eMode = EXPRMODE_LPAREN_NOT_NEEDED;
}
- nParenLevel++;
- pRes = Boolean();
- if( pParser->Peek() != RPAREN )
+ else
{
- // If there was a LPARAM, it does not belong to the expression
- if( nParenLevel == 1 && m_eMode == EXPRMODE_LPAREN_PENDING )
- m_eMode = EXPRMODE_LPAREN_NOT_NEEDED;
- else
- pParser->Error( SbERR_BAD_BRACKETS );
+ pParser->Error( SbERR_BAD_BRACKETS );
}
- else
+ }
+ else
+ {
+ pParser->Next();
+ if( nParenLevel == 1 && m_eMode == EXPRMODE_LPAREN_PENDING )
{
- pParser->Next();
- if( nParenLevel == 1 && m_eMode == EXPRMODE_LPAREN_PENDING )
+ SbiToken eTokAfterRParen = pParser->Peek();
+ if( eTokAfterRParen == EQ || eTokAfterRParen == LPAREN || eTokAfterRParen == DOT )
{
- SbiToken eTokAfterRParen = pParser->Peek();
- if( eTokAfterRParen == EQ || eTokAfterRParen == LPAREN || eTokAfterRParen == DOT )
- m_eMode = EXPRMODE_ARRAY_OR_OBJECT;
- else
- m_eMode = EXPRMODE_STANDARD;
+ m_eMode = EXPRMODE_ARRAY_OR_OBJECT;
+ }
+ else
+ {
+ m_eMode = EXPRMODE_STANDARD;
}
}
- nParenLevel--;
- break;
- default:
- // keywords here are OK at the moment!
- if( pParser->IsKwd( eTok ) )
- pRes = Term();
- else
- {
- pParser->Next();
- pRes = new SbiExprNode( pParser, 1.0, SbxDOUBLE );
- pParser->Error( SbERR_UNEXPECTED, eTok );
- }
+ }
+ nParenLevel--;
+ break;
+ default:
+ // keywords here are OK at the moment!
+ if( pParser->IsKwd( eTok ) )
+ {
+ pRes = Term();
+ }
+ else
+ {
+ pParser->Next();
+ pRes = new SbiExprNode( pParser, 1.0, SbxDOUBLE );
+ pParser->Error( SbERR_UNEXPECTED, eTok );
+ }
+ break;
}
return pRes;
}
@@ -559,7 +614,7 @@ SbiExprNode* SbiExpression::Unary()
bool bUsedForTypeOf = true;
SbiExprNode* pObjNode = Operand( bUsedForTypeOf );
pParser->TestToken( IS );
- String aDummy;
+ OUString aDummy;
SbiSymDef* pTypeDef = new SbiSymDef( aDummy );
pParser->TypeDecl( *pTypeDef, sal_True );
pNd = new SbiExprNode( pParser, pObjNode, pTypeDef->GetTypeId() );
@@ -568,7 +623,7 @@ SbiExprNode* SbiExpression::Unary()
case NEW:
{
pParser->Next();
- String aStr;
+ OUString aStr;
SbiSymDef* pTypeDef = new SbiSymDef( aStr );
pParser->TypeDecl( *pTypeDef, sal_True );
pNd = new SbiExprNode( pParser, pTypeDef->GetTypeId() );
@@ -585,7 +640,8 @@ SbiExprNode* SbiExpression::Exp()
SbiExprNode* pNd = Unary();
if( m_eMode != EXPRMODE_EMPTY_PAREN )
{
- while( pParser->Peek() == EXPON ) {
+ while( pParser->Peek() == EXPON )
+ {
SbiToken eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, Unary() );
}
@@ -602,7 +658,9 @@ SbiExprNode* SbiExpression::MulDiv()
{
SbiToken eTok = pParser->Peek();
if( eTok != MUL && eTok != DIV )
+ {
break;
+ }
eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, Exp() );
}
@@ -615,7 +673,8 @@ SbiExprNode* SbiExpression::IntDiv()
SbiExprNode* pNd = MulDiv();
if( m_eMode != EXPRMODE_EMPTY_PAREN )
{
- while( pParser->Peek() == IDIV ) {
+ while( pParser->Peek() == IDIV )
+ {
SbiToken eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, MulDiv() );
}
@@ -628,7 +687,8 @@ SbiExprNode* SbiExpression::Mod()
SbiExprNode* pNd = IntDiv();
if( m_eMode != EXPRMODE_EMPTY_PAREN )
{
- while( pParser->Peek() == MOD ) {
+ while( pParser->Peek() == MOD )
+ {
SbiToken eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, IntDiv() );
}
@@ -645,7 +705,9 @@ SbiExprNode* SbiExpression::AddSub()
{
SbiToken eTok = pParser->Peek();
if( eTok != PLUS && eTok != MINUS )
+ {
break;
+ }
eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, Mod() );
}
@@ -662,7 +724,9 @@ SbiExprNode* SbiExpression::Cat()
{
SbiToken eTok = pParser->Peek();
if( eTok != CAT )
+ {
break;
+ }
eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, AddSub() );
}
@@ -680,10 +744,14 @@ SbiExprNode* SbiExpression::Comp()
{
SbiToken eTok = pParser->Peek();
if( m_eMode == EXPRMODE_ARRAY_OR_OBJECT )
+ {
break;
- if( eTok != EQ && eTok != NE && eTok != LT
- && eTok != GT && eTok != LE && eTok != GE )
+ }
+ if( eTok != EQ && eTok != NE && eTok != LT &&
+ eTok != GT && eTok != LE && eTok != GE )
+ {
break;
+ }
eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, Cat() );
nCount++;
@@ -716,7 +784,8 @@ SbiExprNode* SbiExpression::Like()
if( m_eMode != EXPRMODE_EMPTY_PAREN )
{
short nCount = 0;
- while( pParser->Peek() == LIKE ) {
+ while( pParser->Peek() == LIKE )
+ {
SbiToken eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, Comp() ), nCount++;
}
@@ -738,9 +807,12 @@ SbiExprNode* SbiExpression::Boolean()
for( ;; )
{
SbiToken eTok = pParser->Peek();
- if( eTok != AND && eTok != OR && eTok != XOR
- && eTok != EQV && eTok != IMP && eTok != IS )
+ if( (eTok != AND) && (eTok != OR) &&
+ (eTok != XOR) && (eTok != EQV) &&
+ (eTok != IMP) && (eTok != IS) )
+ {
break;
+ }
eTok = pParser->Next();
pNd = new SbiExprNode( pParser, pNd, eTok, Like() );
}
@@ -778,12 +850,12 @@ SbiConstExpression::SbiConstExpression( SbiParser* p ) : SbiExpression( p )
SbiSymDef* pVarDef = pExpr->GetVar();
sal_Bool bBoolVal = sal_False;
- if( pVarDef->GetName().EqualsIgnoreCaseAscii( "true" ) )
+ if( pVarDef->GetName().equalsIgnoreAsciiCase( "true" ) )
{
bIsBool = sal_True;
bBoolVal = sal_True;
}
- else if( pVarDef->GetName().EqualsIgnoreCaseAscii( "false" ) )
+ else if( pVarDef->GetName().equalsIgnoreAsciiCase( "false" ) )
//else if( pVarDef->GetName().ICompare( "false" ) == COMPARE_EQUAL )
{
bIsBool = sal_True;
@@ -820,10 +892,13 @@ short SbiConstExpression::GetShortValue()
{
double n = nVal;
if( n > 0 )
+ {
n += .5;
+ }
else
+ {
n -= .5;
-
+ }
if( n > SbxMAXINT )
{
n = SbxMAXINT;
@@ -872,7 +947,9 @@ SbiExpression* SbiExprList::Get( short n )
{
SbiExpression* p = pFirst;
while( n-- && p )
+ {
p = p->pNext;
+ }
return p;
}
@@ -886,8 +963,9 @@ void SbiExprList::addExpression( SbiExpression* pExpr )
SbiExpression* p = pFirst;
while( p->pNext )
+ {
p = p->pNext;
-
+ }
p->pNext = pExpr;
}
@@ -911,8 +989,9 @@ SbiParameters::SbiParameters( SbiParser* p, bool bStandaloneExpression, bool bPa
SbiExprList( p )
{
if( !bPar )
+ {
return;
-
+ }
SbiExpression *pExpr;
SbiToken eTok = pParser->Peek();
@@ -936,15 +1015,17 @@ SbiParameters::SbiParameters( SbiParser* p, bool bStandaloneExpression, bool bPa
if( ( bBracket && eTok == RPAREN ) || pParser->IsEoln( eTok ) )
{
if( eTok == RPAREN )
+ {
pParser->Next();
+ }
return;
}
// read in parameter table and lay down in correct order!
SbiExpression* pLast = NULL;
- String aName;
+ OUString aName;
while( !bError )
{
- aName.Erase();
+ aName = "";
// missing argument
if( eTok == COMMA )
{
@@ -985,16 +1066,20 @@ SbiParameters::SbiParameters( SbiParser* p, bool bStandaloneExpression, bool bPa
bBracket = true;
delete pExpr;
if( bByVal )
+ {
pParser->Error( SbERR_LVALUE_EXPECTED );
+ }
return;
}
}
else
+ {
pExpr = new SbiExpression( pParser );
-
+ }
if( bByVal && pExpr->IsLvalue() )
+ {
pExpr->SetByVal();
-
+ }
if( !bAssumeArrayMode )
{
if( pParser->Peek() == ASSIGN )
@@ -1011,24 +1096,29 @@ SbiParameters::SbiParameters( SbiParser* p, bool bStandaloneExpression, bool bPa
}
pExpr->pNext = NULL;
if( !pLast )
+ {
pFirst = pLast = pExpr;
+ }
else
+ {
pLast->pNext = pExpr, pLast = pExpr;
+ }
nExpr++;
bError = bError || !pExpr->IsValid();
if( bAssumeArrayMode )
+ {
break;
-
+ }
// next element?
eTok = pParser->Peek();
if( eTok != COMMA )
{
if( ( bBracket && eTok == RPAREN ) || pParser->IsEoln( eTok ) )
+ {
break;
- pParser->Error( bBracket
- ? SbERR_BAD_BRACKETS
- : SbERR_EXPECTED, COMMA );
+ }
+ pParser->Error( bBracket ? SbERR_BAD_BRACKETS : SbERR_EXPECTED, COMMA );
bError = true;
}
else
@@ -1036,7 +1126,9 @@ SbiParameters::SbiParameters( SbiParser* p, bool bStandaloneExpression, bool bPa
pParser->Next();
eTok = pParser->Peek();
if( ( bBracket && eTok == RPAREN ) || pParser->IsEoln( eTok ) )
+ {
break;
+ }
}
}
// closing bracket
@@ -1089,9 +1181,13 @@ SbiDimList::SbiDimList( SbiParser* p ) : SbiExprList( p )
bError = bError || !pExpr1->IsValid() || !pExpr2->IsValid();
pExpr1->pNext = pExpr2;
if( !pLast )
+ {
pFirst = pExpr1;
+ }
else
+ {
pLast->pNext = pExpr1;
+ }
pLast = pExpr2;
nExpr += 2;
}
@@ -1102,9 +1198,13 @@ SbiDimList::SbiDimList( SbiParser* p ) : SbiExprList( p )
bConst = bConst && pExpr1->IsIntConstant();
bError = bError || !pExpr1->IsValid();
if( !pLast )
+ {
pFirst = pLast = pExpr1;
+ }
else
+ {
pLast->pNext = pExpr1, pLast = pExpr1;
+ }
nExpr++;
}
nDim++;
diff --git a/basic/source/comp/loops.cxx b/basic/source/comp/loops.cxx
index b2e7eb7736c4..388911be93c7 100644
--- a/basic/source/comp/loops.cxx
+++ b/basic/source/comp/loops.cxx
@@ -458,13 +458,21 @@ done:
void SbiParser::On()
{
SbiToken eTok = Peek();
- String aString = SbiTokenizer::Symbol(eTok);
- if (aString.EqualsIgnoreCaseAscii("ERROR"))
+ OUString aString = SbiTokenizer::Symbol(eTok);
+ if (aString.equalsIgnoreAsciiCase("ERROR"))
+ {
eTok = _ERROR_; // Error comes as SYMBOL
- if( eTok != _ERROR_ && eTok != LOCAL ) OnGoto();
+ }
+ if( eTok != _ERROR_ && eTok != LOCAL )
+ {
+ OnGoto();
+ }
else
{
- if( eTok == LOCAL ) Next();
+ if( eTok == LOCAL )
+ {
+ Next();
+ }
Next (); // no more TestToken, as there'd be an error otherwise
Next(); // get token after error
@@ -476,7 +484,9 @@ void SbiParser::On()
if( MayBeLabel() )
{
if( eCurTok == NUMBER && !nVal )
+ {
aGen.Gen( _STDERROR );
+ }
else
{
sal_uInt32 nOff = pProc->GetLabels().Reference( aSym );
@@ -487,12 +497,18 @@ void SbiParser::On()
{
Next();
if( eCurTok == NUMBER && nVal == 1 )
+ {
aGen.Gen( _STDERROR );
+ }
else
+ {
bError_ = true;
+ }
}
if( bError_ )
+ {
Error( SbERR_LABEL_EXPECTED );
+ }
}
else if( eCurTok == RESUME )
{
diff --git a/basic/source/comp/parser.cxx b/basic/source/comp/parser.cxx
index c1f175206a23..a4a4501077d9 100644
--- a/basic/source/comp/parser.cxx
+++ b/basic/source/comp/parser.cxx
@@ -155,7 +155,7 @@ SbiParser::SbiParser( StarBASIC* pb, SbModule* pm )
// part of the runtime-library?
-SbiSymDef* SbiParser::CheckRTLForSym( const String& rSym, SbxDataType eType )
+SbiSymDef* SbiParser::CheckRTLForSym( const OUString& rSym, SbxDataType eType )
{
SbxVariable* pVar = GetBasic()->GetRtl()->Find( rSym, SbxCLASS_DONTCARE );
SbiSymDef* pDef = NULL;
@@ -495,8 +495,8 @@ void SbiParser::Symbol( const KeywordSymbolInfo* pKeywordSymbolInfo )
SbiSymDef* pDef = aVar.GetRealVar();
if( bEQ && pDef && pDef->GetScope() == SbRTL )
{
- String aRtlName = pDef->GetName();
- if( aRtlName.EqualsIgnoreCaseAscii("Mid") )
+ OUString aRtlName = pDef->GetName();
+ if( aRtlName.equalsIgnoreAsciiCase("Mid") )
{
SbiExprNode* pExprNode = aVar.GetExprNode();
if( pExprNode && pExprNode->GetNodeType() == SbxVARVAL )
@@ -588,7 +588,7 @@ void SbiParser::Set()
if( eTok == NEW )
{
Next();
- String aStr;
+ OUString aStr;
SbiSymDef* pTypeDef = new SbiSymDef( aStr );
TypeDecl( *pTypeDef, sal_True );
@@ -628,11 +628,15 @@ void SbiParser::LSet()
{
SbiExpression aLvalue( this, SbLVALUE );
if( aLvalue.GetType() != SbxSTRING )
+ {
Error( SbERR_INVALID_OBJECT );
+ }
TestToken( EQ );
SbiSymDef* pDef = aLvalue.GetRealVar();
if( pDef && pDef->GetConstDef() )
+ {
Error( SbERR_DUPLICATE_DEF, pDef->GetName() );
+ }
SbiExpression aExpr( this );
aLvalue.Gen();
aExpr.Gen();
@@ -644,7 +648,9 @@ void SbiParser::RSet()
{
SbiExpression aLvalue( this, SbLVALUE );
if( aLvalue.GetType() != SbxSTRING )
+ {
Error( SbERR_INVALID_OBJECT );
+ }
TestToken( EQ );
SbiSymDef* pDef = aLvalue.GetRealVar();
if( pDef && pDef->GetConstDef() )
@@ -709,11 +715,11 @@ void SbiParser::Implements()
return;
}
- String aImplementedIface = aSym;
+ OUString aImplementedIface = aSym;
Next();
if( Peek() == DOT )
{
- rtl::OUString aDotStr( '.' );
+ OUString aDotStr( '.' );
while( Peek() == DOT )
{
aImplementedIface += aDotStr;
@@ -763,20 +769,28 @@ void SbiParser::Option()
break;
case PRIVATE:
{
- String aString = SbiTokenizer::Symbol(Next());
- if( !aString.EqualsIgnoreCaseAscii("Module") )
+ OUString aString = SbiTokenizer::Symbol(Next());
+ if( !aString.equalsIgnoreAsciiCase("Module") )
+ {
Error( SbERR_EXPECTED, "Module" );
+ }
break;
}
case COMPARE:
{
SbiToken eTok = Next();
if( eTok == BINARY )
+ {
bText = false;
+ }
else if( eTok == SYMBOL && GetSym().equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("text")) )
+ {
bText = true;
+ }
else
+ {
Error( SbERR_EXPECTED, "Text/Binary" );
+ }
break;
}
case COMPATIBLE:
@@ -794,11 +808,15 @@ void SbiParser::Option()
{
bVBASupportOn = ( nVal == 1 );
if ( bVBASupportOn )
+ {
EnableCompatibility();
+ }
// if the module setting is different
// reset it to what the Option tells us
if ( bVBASupportOn != aGen.GetModule().IsVBACompat() )
+ {
aGen.GetModule().SetVBACompat( bVBASupportOn );
+ }
break;
}
}
@@ -809,9 +827,9 @@ void SbiParser::Option()
}
}
-void addStringConst( SbiSymPool& rPool, const char* pSym, const String& rStr )
+void addStringConst( SbiSymPool& rPool, const char* pSym, const OUString& rStr )
{
- SbiConstDef* pConst = new SbiConstDef( rtl::OUString::createFromAscii( pSym ) );
+ SbiConstDef* pConst = new SbiConstDef( OUString::createFromAscii( pSym ) );
pConst->SetType( SbxSTRING );
pConst->Set( rStr );
rPool.Add( pConst );
@@ -839,8 +857,7 @@ void SbiParser::AddConstants( void )
addStringConst( aPublics, "vbVerticalTab", "\x0B" );
// Force length 1 and make char 0 afterwards
- String aNullCharStr( rtl::OUString(" ") );
- aNullCharStr.SetChar( 0, 0 );
+ OUString aNullCharStr((sal_Unicode)0);
addStringConst( aPublics, "vbNullChar", aNullCharStr );
}
diff --git a/basic/source/comp/sbcomp.cxx b/basic/source/comp/sbcomp.cxx
index b3ee0a18f5ec..45c94148529c 100644
--- a/basic/source/comp/sbcomp.cxx
+++ b/basic/source/comp/sbcomp.cxx
@@ -257,7 +257,7 @@ const char* lcl_getSpaces( int nSpaceCount )
return pSpacesEnd - nSpaceCount;
}
-static rtl::OString lcl_toOStringSkipLeadingWhites( const String& aStr )
+static rtl::OString lcl_toOStringSkipLeadingWhites( const OUString& aStr )
{
static sal_Char Buffer[1000];
@@ -282,10 +282,11 @@ static rtl::OString lcl_toOStringSkipLeadingWhites( const String& aStr )
String lcl_dumpMethodParameters( SbMethod* pMethod )
{
- String aStr;
+ OUString aStr;
if( pMethod == NULL )
+ {
return aStr;
-
+ }
SbxError eOld = SbxBase::GetError();
SbxArray* pParams = pMethod->GetParameters();
@@ -298,30 +299,41 @@ String lcl_dumpMethodParameters( SbMethod* pMethod )
{
SbxVariable* pVar = pParams->Get( nParam );
DBG_ASSERT( pVar, "Parameter?!" );
- if ( pVar->GetName().Len() )
+ if ( !pVar->GetName().isEmpty() )
+ {
aStr += pVar->GetName();
+ }
else if ( pInfo )
{
const SbxParamInfo* pParam = pInfo->GetParam( nParam );
if ( pParam )
+ {
aStr += pParam->aName;
+ }
}
aStr += '=';
SbxDataType eType = pVar->GetType();
if( eType & SbxARRAY )
- aStr += String( RTL_CONSTASCII_USTRINGPARAM( "..." ) );
+ {
+ aStr += "...";
+ }
else if( eType != SbxOBJECT )
+ {
aStr += pVar->GetString();
+ }
if ( nParam < ( pParams->Count() - 1 ) )
- aStr += String( RTL_CONSTASCII_USTRINGPARAM( ", " ) );
+ {
+ aStr += ", ";
+ }
}
aStr += ')';
}
SbxBase::ResetError();
if( eOld != SbxERR_OK )
+ {
SbxBase::SetError( eOld );
-
+ }
return aStr;
}
@@ -338,7 +350,7 @@ static bool GbBlockAll = false;
struct FunctionItem
{
- String m_aCompleteFunctionName;
+ OUString m_aCompleteFunctionName;
double m_dTotalTime;
double m_dNetTime;
int m_nCallCount;
@@ -386,7 +398,9 @@ void lcl_printTimeOutput( void )
{
FunctionItem* pFunctionItem = it->second;
if( pFunctionItem != NULL )
+ {
avFunctionItems.push_back( pFunctionItem );
+ }
}
std::sort( avFunctionItems.begin(), avFunctionItems.end(), compareFunctionNetTime );
@@ -397,7 +411,7 @@ void lcl_printTimeOutput( void )
FunctionItem* pFunctionItem = *itv;
if( pFunctionItem != NULL )
{
- rtl::OUString aCompleteFunctionName = pFunctionItem->m_aCompleteFunctionName;
+ OUString aCompleteFunctionName = pFunctionItem->m_aCompleteFunctionName;
const char* pName = OUStringToOString( aCompleteFunctionName, RTL_TEXTENCODING_ASCII_US ).getStr();
int nNameLen = aCompleteFunctionName.getLength();
@@ -407,10 +421,12 @@ void lcl_printTimeOutput( void )
double dFctNetTimePercent = 100.0 * dFctNetTime / dTotalTime;
int nSpaceCount = 30 - nNameLen;
if( nSpaceCount < 0 )
+ {
nSpaceCount = 2;
+ }
sprintf( TimeBuffer, "%s:%sCalled %d times\t%f ms (%f%%) / net %f (%f%%) ms",
- pName, lcl_getSpaces( nSpaceCount ), pFunctionItem->m_nCallCount,
- dFctTotalTime*1000.0, dFctTotalTimePercent, dFctNetTime*1000.0, dFctNetTimePercent );
+ pName, lcl_getSpaces( nSpaceCount ), pFunctionItem->m_nCallCount,
+ dFctTotalTime*1000.0, dFctTotalTimePercent, dFctNetTime*1000.0, dFctNetTimePercent );
lcl_lineOut( TimeBuffer );
}
}
@@ -427,7 +443,9 @@ void dbg_InitTrace( void )
{
#ifdef DBG_TRACE_PROFILING
if( GbTimerOn )
+ {
GpTimer->continueTimer();
+ }
#endif
GpGlobalFile = fopen( GpTraceFileName, "a+" );
return;
@@ -435,15 +453,19 @@ void dbg_InitTrace( void )
GbInitTraceAlreadyCalled = true;
if( const sal_Char* pcIniFileName = ::getenv( "OOO_BASICTRACEINI" ) )
+ {
lcl_ReadIniFile( pcIniFileName );
+ }
else if( GpTraceIniFile != NULL )
+ {
lcl_ReadIniFile( GpTraceIniFile );
-
+ }
GpGlobalFile = fopen( GpTraceFileName, "w" );
GbSavTraceOn = GbTraceOn;
if( !GbTraceOn )
+ {
lcl_lineOut( "### Program started with trace off ###" );
-
+ }
#ifdef DBG_TRACE_PROFILING
GpTimer = new canvas::tools::ElapsedTime();
GdStartTime = GpTimer->getElapsedTime();
@@ -459,14 +481,19 @@ void dbg_DeInitTrace( void )
#ifdef DBG_TRACE_PROFILING
while( !GaCallEnterTimeStack.empty() )
+ {
GaCallEnterTimeStack.pop();
+ }
while( !GaFunctionItemStack.empty() )
+ {
GaFunctionItemStack.pop();
-
+ }
lcl_printTimeOutput();
for( FunctionItemMap::iterator it = GaFunctionItemMap.begin() ; it != GaFunctionItemMap.end() ; ++it )
+ {
delete it->second;
+ }
GaFunctionItemMap.clear();
if( GpGlobalFile )
@@ -478,7 +505,9 @@ void dbg_DeInitTrace( void )
if( GbInitOnlyAtOfficeStart )
{
if( GbTimerOn )
+ {
GpTimer->pauseTimer();
+ }
}
else
{
@@ -489,11 +518,12 @@ void dbg_DeInitTrace( void )
static sal_Int32 GnLastCallLvl = 0;
-void dbg_tracePrint( const String& aStr, sal_Int32 nCallLvl, bool bCallLvlRelativeToCurrent )
+void dbg_tracePrint( const OUString& aStr, sal_Int32 nCallLvl, bool bCallLvlRelativeToCurrent )
{
if( bCallLvlRelativeToCurrent )
+ {
nCallLvl += GnLastCallLvl;
-
+ }
int nIndent = nCallLvl * GnIndentPerCallLevel;
lcl_lineOut( OUStringToOString( rtl::OUString( aStr ), RTL_TEXTENCODING_ASCII_US ).getStr(), lcl_getSpaces( nIndent ) );
}
@@ -501,12 +531,14 @@ void dbg_tracePrint( const String& aStr, sal_Int32 nCallLvl, bool bCallLvlRelati
void dbg_traceStep( SbModule* pModule, sal_uInt32 nPC, sal_Int32 nCallLvl )
{
if( !GbTraceOn )
+ {
return;
-
+ }
#ifdef DBG_TRACE_PROFILING
if( GbBlockSteps || GbBlockAll )
+ {
return;
-
+ }
double dCurTime = 0.0;
bool bPrintTimeStamp = false;
if( GbTimerOn )
@@ -528,7 +560,7 @@ void dbg_traceStep( SbModule* pModule, sal_uInt32 nPC, sal_Int32 nCallLvl )
pTraceMod = pClassModuleObj->getClassModule();
}
- String aModuleName = pTraceMod->GetName();
+ OUString aModuleName = pTraceMod->GetName();
ModuleTraceMap::iterator it = rModuleTraceMap.find( aModuleName );
if( it == rModuleTraceMap.end() )
{
@@ -562,8 +594,9 @@ void dbg_traceStep( SbModule* pModule, sal_uInt32 nPC, sal_Int32 nCallLvl )
const rtl::OString& rStr_STMNT = rTraceTextData.m_aTraceStr_STMNT;
bool bSTMT = false;
if( rStr_STMNT.getLength() )
+ {
bSTMT = true;
-
+ }
char TimeBuffer[200];
#ifdef DBG_TRACE_PROFILING
if( bPrintTimeStamp )
@@ -577,14 +610,16 @@ void dbg_traceStep( SbModule* pModule, sal_uInt32 nPC, sal_Int32 nCallLvl )
if( bSTMT )
{
lcl_lineOut( rStr_STMNT.getStr(), lcl_getSpaces( nIndent ),
- (bPrintTimeStamp && !GbIncludePCodes) ? TimeBuffer : NULL );
+ (bPrintTimeStamp && !GbIncludePCodes) ? TimeBuffer : NULL );
}
if( !GbIncludePCodes )
{
#ifdef DBG_TRACE_PROFILING
if( GbTimerOn )
+ {
GpTimer->continueTimer();
+ }
#endif
return;
}
@@ -594,12 +629,14 @@ void dbg_traceStep( SbModule* pModule, sal_uInt32 nPC, sal_Int32 nCallLvl )
if( rStr_PCode.getLength() )
{
lcl_lineOut( rStr_PCode.getStr(), lcl_getSpaces( nIndent ),
- bPrintTimeStamp ? TimeBuffer : NULL );
+ bPrintTimeStamp ? TimeBuffer : NULL );
}
#ifdef DBG_TRACE_PROFILING
if( GbTimerOn )
+ {
GpTimer->continueTimer();
+ }
#endif
}
@@ -609,8 +646,9 @@ void dbg_traceNotifyCall( SbModule* pModule, SbMethod* pMethod, sal_Int32 nCallL
static const char* pSeparator = "' ================================================================================";
if( !GbTraceOn )
+ {
return;
-
+ }
#ifdef DBG_TRACE_PROFILING
double dCurTime = 0.0;
double dExecutionTime = 0.0;
@@ -631,16 +669,16 @@ void dbg_traceNotifyCall( SbModule* pModule, SbMethod* pMethod, sal_Int32 nCallL
pTraceMod = pClassModuleObj->getClassModule();
}
- String aCompleteFunctionName = pTraceMod->GetName();
+ OUString aCompleteFunctionName = pTraceMod->GetName();
if( pMethod != NULL )
{
- aCompleteFunctionName.AppendAscii( "::" );
- String aMethodName = pMethod->GetName();
+ aCompleteFunctionName += "::";
+ OUString aMethodName = pMethod->GetName();
aCompleteFunctionName += aMethodName;
}
else
{
- aCompleteFunctionName.AppendAscii( "/RunInit" );
+ aCompleteFunctionName += "/RunInit";
}
bool bOwnBlockSteps = false;
@@ -651,8 +689,9 @@ void dbg_traceNotifyCall( SbModule* pModule, SbMethod* pMethod, sal_Int32 nCallL
{
FunctionItemMap::iterator itFunctionItem = GaFunctionItemMap.find( aCompleteFunctionName );
if( itFunctionItem != GaFunctionItemMap.end() )
+ {
pFunctionItem = itFunctionItem->second;
-
+ }
if( pFunctionItem == NULL )
{
DBG_ASSERT( !bLeave, "No FunctionItem in leave!" );
@@ -710,13 +749,17 @@ void dbg_traceNotifyCall( SbModule* pModule, SbMethod* pMethod, sal_Int32 nCallL
if( bOwnBlockAll )
{
if( GbTimerOn )
+ {
GpTimer->continueTimer();
+ }
return;
}
#endif
if( nCallLvl > 0 )
+ {
nCallLvl--;
+ }
int nIndent = nCallLvl * GnIndentPerCallLevel;
if( !bLeave && !bOwnBlockSteps )
{
@@ -724,31 +767,33 @@ void dbg_traceNotifyCall( SbModule* pModule, SbMethod* pMethod, sal_Int32 nCallL
lcl_lineOut( pSeparator, lcl_getSpaces( nIndent ) );
}
- String aStr;
+ OUString aStr;
if( bLeave )
{
if( !bOwnBlockSteps )
{
lcl_lineOut( "}", lcl_getSpaces( nIndent ) );
- aStr.AppendAscii( "' Leaving " );
+ aStr = "' Leaving ";
}
}
else
{
- aStr.AppendAscii( "Entering " );
+ aStr = "Entering " ;
}
if( !bLeave || !bOwnBlockSteps )
+ {
aStr += aCompleteFunctionName;
-
+ }
if( !bOwnBlockSteps && pClassModuleObj != NULL )
{
- aStr.AppendAscii( "[this=" );
+ aStr += "[this=";
aStr += pClassModuleObj->GetName();
- aStr.AppendAscii( "]" );
+ aStr += "]" ;
}
if( !bLeave )
+ {
aStr += lcl_dumpMethodParameters( pMethod );
-
+ }
const char* pPostStr = NULL;
#ifdef DBG_TRACE_PROFILING
char TimeBuffer[200];
@@ -759,26 +804,35 @@ void dbg_traceNotifyCall( SbModule* pModule, SbMethod* pMethod, sal_Int32 nCallL
}
#endif
lcl_lineOut( (!bLeave || !bOwnBlockSteps) ? OUStringToOString( rtl::OUString( aStr ), RTL_TEXTENCODING_ASCII_US ).getStr() : "}",
- lcl_getSpaces( nIndent ), pPostStr );
+ lcl_getSpaces( nIndent ), pPostStr );
if( !bLeave )
+ {
lcl_lineOut( "{", lcl_getSpaces( nIndent ) );
-
+ }
if( bLeave && !bOwnBlockSteps )
+ {
lcl_lineOut( "" );
-
+ }
#ifdef DBG_TRACE_PROFILING
if( GbTimerOn )
+ {
GpTimer->continueTimer();
+ }
#endif
}
-void dbg_traceNotifyError( SbError nTraceErr, const String& aTraceErrMsg, bool bTraceErrHandled, sal_Int32 nCallLvl )
+void dbg_traceNotifyError( SbError nTraceErr, const OUString& aTraceErrMsg,
+ bool bTraceErrHandled, sal_Int32 nCallLvl )
{
if( !GbTraceOn )
+ {
return;
+ }
#ifdef DBG_TRACE_PROFILING
if( GbBlockSteps || GbBlockAll )
+ {
return;
+ }
#endif
GnLastCallLvl = nCallLvl;
@@ -792,9 +846,9 @@ void dbg_traceNotifyError( SbError nTraceErr, const String& aTraceErrMsg, bool b
}
void dbg_RegisterTraceTextForPC( SbModule* pModule, sal_uInt32 nPC,
- const String& aTraceStr_STMNT, const String& aTraceStr_PCode )
+ const OUString& aTraceStr_STMNT, const OUString& aTraceStr_PCode )
{
- String aModuleName = pModule->GetName();
+ OUString aModuleName = pModule->GetName();
ModuleTraceMap::iterator it = rModuleTraceMap.find( aModuleName );
PCToTextDataMap* pInnerMap;
if( it == rModuleTraceMap.end() )
@@ -829,21 +883,25 @@ void RTL_Impl_TraceCommand( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite )
return;
}
- String aCommand = rPar.Get(1)->GetString();
+ OUString aCommand = rPar.Get(1)->GetString();
- if( aCommand.EqualsIgnoreCaseAscii( "TraceOn" ) )
+ if( aCommand.equalsIngoreAsciiCase( "TraceOn" ) )
+ {
GbTraceOn = true;
- else
- if( aCommand.EqualsIgnoreCaseAscii( "TraceOff" ) )
+ }
+ else if( aCommand.equalsIngoreAsciiCase( "TraceOff" ) )
+ {
GbTraceOn = false;
- else
- if( aCommand.EqualsIgnoreCaseAscii( "PCodeOn" ) )
+ }
+ else if( aCommand.equalsIngoreAsciiCase( "PCodeOn" ) )
+ {
GbIncludePCodes = true;
- else
- if( aCommand.EqualsIgnoreCaseAscii( "PCodeOff" ) )
+ }
+ else if( aCommand.equalsIngoreAsciiCase( "PCodeOff" ) )
+ {
GbIncludePCodes = false;
- else
- if( aCommand.EqualsIgnoreCaseAscii( "Print" ) )
+ }
+ else if( aCommand.equalsIngoreAsciiCase( "Print" ) )
{
if ( rPar.Count() < 3 )
{
@@ -855,11 +913,11 @@ void RTL_Impl_TraceCommand( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite )
if( eOld != SbxERR_OK )
SbxBase::ResetError();
- String aValStr = rPar.Get(2)->GetString();
+ OUString aValStr = rPar.Get(2)->GetString();
SbxError eErr = SbxBase::GetError();
if( eErr != SbxERR_OK )
{
- aValStr = String( RTL_CONSTASCII_USTRINGPARAM( "<ERROR converting value to String>" ) );
+ aValStr = "<ERROR converting value to String>";
SbxBase::ResetError();
}
@@ -871,7 +929,9 @@ void RTL_Impl_TraceCommand( StarBASIC* pBasic, SbxArray& rPar, sal_Bool bWrite )
lcl_lineOut( Buffer, lcl_getSpaces( nIndent ) );
if( eOld != SbxERR_OK )
+ {
SbxBase::SetError( eOld );
+ }
}
}
diff --git a/basic/source/comp/symtbl.cxx b/basic/source/comp/symtbl.cxx
index 395f19aa24ca..005ae381ebcc 100644
--- a/basic/source/comp/symtbl.cxx
+++ b/basic/source/comp/symtbl.cxx
@@ -51,12 +51,12 @@ const rtl::OUString& SbiStringPool::Find( sal_uInt32 n ) const
return aData[n - 1];
}
-short SbiStringPool::Add( const rtl::OUString& rVal, bool bNoCase )
+short SbiStringPool::Add( const OUString& rVal, bool bNoCase )
{
sal_uInt32 n = aData.size();
for( sal_uInt32 i = 0; i < n; ++i )
{
- rtl::OUString& p = aData[i];
+ OUString& p = aData[i];
if( ( bNoCase && p == rVal )
|| ( !bNoCase && p.equalsIgnoreAsciiCase( rVal ) ) )
return i+1;
@@ -114,7 +114,7 @@ SbiSymDef* SbiSymPool::Next()
}
-SbiSymDef* SbiSymPool::AddSym( const String& rName )
+SbiSymDef* SbiSymPool::AddSym( const OUString& rName )
{
SbiSymDef* p = new SbiSymDef( rName );
p->nPos = aData.size();
@@ -125,7 +125,7 @@ SbiSymDef* SbiSymPool::AddSym( const String& rName )
return p;
}
-SbiProcDef* SbiSymPool::AddProc( const String& rName )
+SbiProcDef* SbiSymPool::AddProc( const OUString& rName )
{
SbiProcDef* p = new SbiProcDef( pParser, rName );
p->nPos = aData.size();
@@ -157,38 +157,46 @@ void SbiSymPool::Add( SbiSymDef* pDef )
{
// A unique name must be created in the string pool
// for static variables (Form ProcName:VarName)
- String aName( pDef->aName );
+ OUString aName( pDef->aName );
if( pDef->IsStatic() )
{
aName = pParser->aGblStrings.Find( nProcId );
- aName += ':';
+ aName += ":";
aName += pDef->aName;
}
pDef->nId = rStrings.Add( aName );
}
if( !pDef->GetProcDef() )
+ {
pDef->nProcId = nProcId;
+ }
pDef->pIn = this;
aData.insert( aData.begin() + pDef->nPos, pDef );
}
}
-SbiSymDef* SbiSymPool::Find( const String& rName ) const
+SbiSymDef* SbiSymPool::Find( const OUString& rName ) const
{
sal_uInt16 nCount = aData.size();
for( sal_uInt16 i = 0; i < nCount; i++ )
{
SbiSymDef* p = aData[ nCount - i - 1 ];
- if( ( !p->nProcId || ( p->nProcId == nProcId ) )
- && ( p->aName.EqualsIgnoreCaseAscii( rName ) ) )
+ if( ( !p->nProcId || ( p->nProcId == nProcId)) &&
+ ( p->aName.equalsIgnoreAsciiCase(rName)))
+ {
return p;
+ }
}
if( pParent )
+ {
return pParent->Find( rName );
+ }
else
+ {
return NULL;
+ }
}
@@ -198,12 +206,18 @@ SbiSymDef* SbiSymPool::FindId( sal_uInt16 n ) const
{
SbiSymDef* p = aData[ i ];
if( p->nId == n && ( !p->nProcId || ( p->nProcId == nProcId ) ) )
+ {
return p;
+ }
}
if( pParent )
+ {
return pParent->FindId( n );
+ }
else
+ {
return NULL;
+ }
}
// find via position (from 0)
@@ -211,28 +225,39 @@ SbiSymDef* SbiSymPool::FindId( sal_uInt16 n ) const
SbiSymDef* SbiSymPool::Get( sal_uInt16 n ) const
{
if( n >= aData.size() )
+ {
return NULL;
+ }
else
+ {
return aData[ n ];
+ }
}
-sal_uInt32 SbiSymPool::Define( const String& rName )
+sal_uInt32 SbiSymPool::Define( const OUString& rName )
{
SbiSymDef* p = Find( rName );
if( p )
- { if( p->IsDefined() )
+ {
+ if( p->IsDefined() )
+ {
pParser->Error( SbERR_LABEL_DEFINED, rName );
+ }
}
else
+ {
p = AddSym( rName );
+ }
return p->Define();
}
-sal_uInt32 SbiSymPool::Reference( const String& rName )
+sal_uInt32 SbiSymPool::Reference( const OUString& rName )
{
SbiSymDef* p = Find( rName );
if( !p )
+ {
p = AddSym( rName );
+ }
// to be sure
pParser->aGen.GenStmnt();
return p->Reference();
@@ -245,7 +270,9 @@ void SbiSymPool::CheckRefs()
{
SbiSymDef* p = aData[ i ];
if( !p->IsDefined() )
+ {
pParser->Error( SbERR_UNDEF_LABEL, p->GetName() );
+ }
}
}
@@ -255,7 +282,7 @@ void SbiSymPool::CheckRefs()
|*
***************************************************************************/
-SbiSymDef::SbiSymDef( const String& rName ) : aName( rName )
+SbiSymDef::SbiSymDef( const OUString& rName ) : aName( rName )
{
eType = SbxEMPTY;
nDims = 0;
@@ -297,10 +324,12 @@ SbiConstDef* SbiSymDef::GetConstDef()
}
-const String& SbiSymDef::GetName()
+const OUString& SbiSymDef::GetName()
{
if( pIn )
+ {
aName = pIn->rStrings.Find( nId );
+ }
return aName;
}
@@ -309,15 +338,20 @@ void SbiSymDef::SetType( SbxDataType t )
{
if( t == SbxVARIANT && pIn )
{
- sal_Unicode cu = aName.GetBuffer()[0];
+ sal_Unicode cu = aName[0];
if( cu < 256 )
{
- char ch = (char)aName.GetBuffer()[0];
- if( ch == '_' ) ch = 'Z';
+ char ch = (char)cu;
+ if( ch == '_' )
+ {
+ ch = 'Z';
+ }
int ch2 = toupper( ch );
unsigned char c = (unsigned char)ch2;
if( c > 0 && c < 128 )
+ {
t = pIn->pParser->eDefTypes[ ch2 - 'A' ];
+ }
}
}
eType = t;
@@ -342,7 +376,10 @@ sal_uInt32 SbiSymDef::Define()
{
sal_uInt32 n = pIn->pParser->aGen.GetPC();
pIn->pParser->aGen.GenStmnt();
- if( nChain ) pIn->pParser->aGen.BackChain( nChain );
+ if( nChain )
+ {
+ pIn->pParser->aGen.BackChain( nChain );
+ }
nChain = n;
bChained = true;
return nChain;
@@ -354,7 +391,9 @@ sal_uInt32 SbiSymDef::Define()
SbiSymPool& SbiSymDef::GetPool()
{
if( !pPool )
+ {
pPool = new SbiSymPool( pIn->pParser->aGblStrings, SbLOCAL ); // is dumped
+ }
return *pPool;
}
@@ -371,7 +410,7 @@ SbiSymScope SbiSymDef::GetScope() const
// 2) pPool: all local variables
// 3) aLabels: labels
-SbiProcDef::SbiProcDef( SbiParser* pParser, const String& rName,
+SbiProcDef::SbiProcDef( SbiParser* pParser, const OUString& rName,
bool bProcDecl )
: SbiSymDef( rName )
, aParams( pParser->aGblStrings, SbPARAM ) // is dumped
@@ -422,7 +461,9 @@ void SbiProcDef::Match( SbiProcDef* pOld )
// no type matching - that is done during running
// but is it maybe called with too little parameters?
if( !po && !pn->IsOptional() && !pn->IsParamArray() )
+ {
break;
+ }
po = pOld->aParams.Next();
}
@@ -453,16 +494,13 @@ void SbiProcDef::setPropertyMode( PropertyMode ePropMode )
// CompleteProcName includes "Property xxx "
// to avoid conflicts with other symbols
- String aCompleteProcName;
- aCompleteProcName.AppendAscii( "Property " );
+ OUString aCompleteProcName = "Property ";
switch( mePropMode )
{
- case PROPERTY_MODE_GET: aCompleteProcName.AppendAscii( "Get " ); break;
- case PROPERTY_MODE_LET: aCompleteProcName.AppendAscii( "Let " ); break;
- case PROPERTY_MODE_SET: aCompleteProcName.AppendAscii( "Set " ); break;
- case PROPERTY_MODE_NONE:
- OSL_FAIL( "Illegal PropertyMode PROPERTY_MODE_NONE" );
- break;
+ case PROPERTY_MODE_GET: aCompleteProcName += "Get "; break;
+ case PROPERTY_MODE_LET: aCompleteProcName += "Let "; break;
+ case PROPERTY_MODE_SET: aCompleteProcName += "Set "; break;
+ case PROPERTY_MODE_NONE: OSL_FAIL( "Illegal PropertyMode PROPERTY_MODE_NONE" ); break;
}
aCompleteProcName += aName;
aName = aCompleteProcName;
@@ -471,7 +509,7 @@ void SbiProcDef::setPropertyMode( PropertyMode ePropMode )
-SbiConstDef::SbiConstDef( const String& rName )
+SbiConstDef::SbiConstDef( const OUString& rName )
: SbiSymDef( rName )
{
nVal = 0; eType = SbxINTEGER;
@@ -479,10 +517,10 @@ SbiConstDef::SbiConstDef( const String& rName )
void SbiConstDef::Set( double n, SbxDataType t )
{
- aVal.Erase(); nVal = n; eType = t;
+ aVal = ""; nVal = n; eType = t;
}
-void SbiConstDef::Set( const String& n )
+void SbiConstDef::Set( const OUString& n )
{
aVal = n; nVal = 0; eType = SbxSTRING;
}
@@ -498,7 +536,9 @@ SbiConstDef* SbiConstDef::GetConstDef()
SbiSymbols::~SbiSymbols()
{
for( const_iterator it = begin(); it != end(); ++it )
+ {
delete *it;
+ }
};
diff --git a/basic/source/comp/token.cxx b/basic/source/comp/token.cxx
index 0de57e6356b0..a6054c19415a 100644
--- a/basic/source/comp/token.cxx
+++ b/basic/source/comp/token.cxx
@@ -28,7 +28,6 @@ static short nToken; // number of tokens
static TokenTable* pTokTable;
static TokenTable aTokTable_Basic [] = {
-
{ CAT, "&" },
{ MUL, "*" },
{ PLUS, "+" },
@@ -188,16 +187,19 @@ TokenLabelInfo::TokenLabelInfo( void )
{
m_pTokenCanBeLabelTab = new bool[VBASUPPORT+1];
for( int i = 0 ; i <= VBASUPPORT ; ++i )
+ {
m_pTokenCanBeLabelTab[i] = false;
-
+ }
// Token accepted as label by VBA
SbiToken eLabelToken[] = { ACCESS, ALIAS, APPEND, BASE, BINARY, CLASSMODULE,
- COMPARE, COMPATIBLE, DEFERR, _ERROR_, EXPLICIT, LIB, LINE, LPRINT, NAME,
- TOBJECT, OUTPUT, PROPERTY, RANDOM, READ, STEP, STOP, TEXT, VBASUPPORT, NIL };
+ COMPARE, COMPATIBLE, DEFERR, _ERROR_, EXPLICIT, LIB, LINE, LPRINT, NAME,
+ TOBJECT, OUTPUT, PROPERTY, RANDOM, READ, STEP, STOP, TEXT, VBASUPPORT, NIL };
SbiToken* pTok = eLabelToken;
SbiToken eTok;
for( pTok = eLabelToken ; (eTok = *pTok) != NIL ; ++pTok )
+ {
m_pTokenCanBeLabelTab[eTok] = true;
+ }
}
TokenLabelInfo::~TokenLabelInfo()
@@ -218,7 +220,10 @@ SbiTokenizer::SbiTokenizer( const ::rtl::OUString& rSrc, StarBASIC* pb )
ePush = NIL;
bEos = bKeywords = bErrorIsSymbol = true;
if( !nToken )
- for( nToken = 0, tp = pTokTable; tp->t; nToken++, tp++ ) {}
+ {
+ for( nToken = 0, tp = pTokTable; tp->t; nToken++, tp++ )
+ {}
+ }
}
SbiTokenizer::~SbiTokenizer()
@@ -280,16 +285,17 @@ const ::rtl::OUString& SbiTokenizer::Symbol( SbiToken t )
}
switch( t )
{
- case NEG :
- aSym = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("-"));
- return aSym;
- case EOS :
- aSym = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(":/CRLF"));
- return aSym;
- case EOLN :
- aSym = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("CRLF"));
- return aSym;
- default: break;
+ case NEG :
+ aSym = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("-"));
+ return aSym;
+ case EOS :
+ aSym = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(":/CRLF"));
+ return aSym;
+ case EOLN :
+ aSym = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("CRLF"));
+ return aSym;
+ default:
+ break;
}
TokenTable* tp = pTokTable;
for( short i = 0; i < nToken; i++, tp++ )
@@ -302,7 +308,9 @@ const ::rtl::OUString& SbiTokenizer::Symbol( SbiToken t )
}
const sal_Unicode *p = aSym.getStr();
if (*p <= ' ')
+ {
aSym = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("???"));
+ }
return aSym;
}
@@ -313,7 +321,10 @@ const ::rtl::OUString& SbiTokenizer::Symbol( SbiToken t )
SbiToken SbiTokenizer::Next()
{
- if (bEof) return EOLN;
+ if (bEof)
+ {
+ return EOLN;
+ }
// have read in one already?
if( ePush != NIL )
{
@@ -340,16 +351,23 @@ SbiToken SbiTokenizer::Next()
bEos = false;
if( bNumber )
+ {
return eCurTok = NUMBER;
-
+ }
else if( ( eScanType == SbxDATE || eScanType == SbxSTRING ) && !bSymbol )
+ {
return eCurTok = FIXSTRING;
+ }
// Special cases of characters that are between "Z" and "a". ICompare()
// evaluates the position of these characters in different ways.
else if( aSym[0] == '^' )
+ {
return eCurTok = EXPON;
+ }
else if( aSym[0] == '\\' )
+ {
return eCurTok = IDIV;
+ }
else
{
if( eScanType != SbxVARIANT
@@ -366,32 +384,52 @@ SbiToken SbiTokenizer::Next()
sal_Int32 res = aSym.compareToIgnoreAsciiCaseAscii( tp->s );
if( res == 0 )
+ {
goto special;
-
+ }
if( res < 0 )
{
- if ((ub - lb) == 2) ub = lb;
- else ub = ub - delta;
+ if ((ub - lb) == 2)
+ {
+ ub = lb;
+ }
+ else
+ {
+ ub = ub - delta;
+ }
}
else
{
- if ((ub -lb) == 2) lb = ub;
- else lb = lb + delta;
+ if ((ub -lb) == 2)
+ {
+ lb = ub;
+ }
+ else
+ {
+ lb = lb + delta;
+ }
}
- } while( delta );
+ }
+ while( delta );
// Symbol? if not >= token
sal_Unicode ch = aSym[0];
if( !theBasicCharClass::get().isAlpha( ch, bCompatible ) && !bSymbol )
+ {
return eCurTok = (SbiToken) (ch & 0x00FF);
+ }
return eCurTok = SYMBOL;
}
special:
// #i92642
bool bStartOfLine = (eCurTok == NIL || eCurTok == REM || eCurTok == EOLN);
if( !bStartOfLine && (tp->t == NAME || tp->t == LINE) )
+ {
return eCurTok = SYMBOL;
+ }
else if( tp->t == TEXT )
+ {
return eCurTok = SYMBOL;
+ }
// maybe we can expand this for other statements that have parameters
// that are keywords ( and those keywords are only used within such
// statements )
@@ -400,8 +438,9 @@ special:
// we just treat keyword 'append' as a normal 'SYMBOL'.
// Also we accept Dim APPEND
else if ( ( !bInStatement || eCurTok == DIM ) && tp->t == APPEND )
+ {
return eCurTok = SYMBOL;
-
+ }
// #i92642: Special LINE token handling -> SbiParser::Line()
// END IF, CASE, SUB, DEF, FUNCTION, TYPE, CLASS, WITH
@@ -413,21 +452,21 @@ special:
sal_uInt16 nOldCol = nCol;
sal_uInt16 nOldCol1 = nCol1;
sal_uInt16 nOldCol2 = nCol2;
- String aOldSym = aSym;
+ OUString aOldSym = aSym;
SaveLine(); // save pLine in the scanner
eCurTok = Peek();
switch( eCurTok )
{
- case IF: Next(); eCurTok = ENDIF; break;
- case SELECT: Next(); eCurTok = ENDSELECT; break;
- case SUB: Next(); eCurTok = ENDSUB; break;
- case FUNCTION: Next(); eCurTok = ENDFUNC; break;
- case PROPERTY: Next(); eCurTok = ENDPROPERTY; break;
- case TYPE: Next(); eCurTok = ENDTYPE; break;
- case ENUM: Next(); eCurTok = ENDENUM; break;
- case WITH: Next(); eCurTok = ENDWITH; break;
- default : eCurTok = END;
+ case IF: Next(); eCurTok = ENDIF; break;
+ case SELECT: Next(); eCurTok = ENDSELECT; break;
+ case SUB: Next(); eCurTok = ENDSUB; break;
+ case FUNCTION: Next(); eCurTok = ENDFUNC; break;
+ case PROPERTY: Next(); eCurTok = ENDPROPERTY; break;
+ case TYPE: Next(); eCurTok = ENDTYPE; break;
+ case ENUM: Next(); eCurTok = ENDENUM; break;
+ case WITH: Next(); eCurTok = ENDWITH; break;
+ default : eCurTok = END; break;
}
nCol1 = nOldCol1;
if( eCurTok == END )
@@ -447,13 +486,19 @@ special:
eCurTok = tp->t;
// AS: data types are keywords
if( tp->t == AS )
+ {
bAs = true;
+ }
else
{
if( bAs )
+ {
bAs = false;
+ }
else if( eCurTok >= DATATYPE1 && eCurTok <= DATATYPE2 && (bErrorIsSymbol || eCurTok != _ERROR_) )
+ {
eCurTok = SYMBOL;
+ }
}
// CLASSMODULE, PROPERTY, GET, ENUM token only visible in compatible mode
@@ -462,10 +507,13 @@ special:
{
// #129904 Suppress system
if( eTok == STOP && aSym.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("system")) )
+ {
eCurTok = SYMBOL;
-
+ }
if( eTok == GET && bStartOfLine )
+ {
eCurTok = SYMBOL;
+ }
}
else
{
@@ -493,11 +541,15 @@ special:
bool SbiTokenizer::MayBeLabel( bool bNeedsColon )
{
if( eCurTok == SYMBOL || m_aTokenLabelInfo.canTokenBeLabel( eCurTok ) )
+ {
return bNeedsColon ? DoesColonFollow() : true;
+ }
else
+ {
return ( eCurTok == NUMBER
&& eScanType == SbxINTEGER
&& nVal >= 0 );
+ }
}
#ifdef _MSC_VER
diff --git a/basic/source/inc/buffer.hxx b/basic/source/inc/buffer.hxx
index 08a1f2f5f2df..5ac631a71e12 100644
--- a/basic/source/inc/buffer.hxx
+++ b/basic/source/inc/buffer.hxx
@@ -19,9 +19,8 @@
#ifndef _BUFFER_HXX
#define _BUFFER_HXX
-
+#include <rtl/ustring.hxx>
#include <tools/solar.h>
-#include <tools/string.hxx>
class SbiParser;
@@ -32,13 +31,13 @@ class SbiBuffer {
sal_uInt32 nOff;
sal_uInt32 nSize;
short nInc;
- bool Check( sal_uInt16 );
+ bool Check( sal_Int32 );
public:
SbiBuffer( SbiParser*, short ); // increment
~SbiBuffer();
void Patch( sal_uInt32, sal_uInt32 );
void Chain( sal_uInt32 );
- bool operator += (const String&); // save basic-string
+ bool operator += (const OUString&); // save basic-string
bool operator += (sal_Int8); // save character
bool operator += (sal_Int16); // save integer
bool operator += (sal_uInt8); // save character
diff --git a/basic/source/inc/errobject.hxx b/basic/source/inc/errobject.hxx
index db4433268ee9..2c59e478cd7e 100644
--- a/basic/source/inc/errobject.hxx
+++ b/basic/source/inc/errobject.hxx
@@ -28,7 +28,7 @@ class SbxErrObject : public SbUnoObject
class ErrObject* m_pErrObject;
com::sun::star::uno::Reference< ooo::vba::XErrObject > m_xErr;
- SbxErrObject( const String& aName_, const com::sun::star::uno::Any& aUnoObj_ );
+ SbxErrObject( const OUString& aName_, const com::sun::star::uno::Any& aUnoObj_ );
~SbxErrObject();
class ErrObject* getImplErrObject( void )
@@ -38,7 +38,7 @@ public:
static SbxVariableRef getErrObject();
static com::sun::star::uno::Reference< ooo::vba::XErrObject > getUnoErrObject();
- void setNumberAndDescription( ::sal_Int32 _number, const ::rtl::OUString& _description )
+ void setNumberAndDescription( ::sal_Int32 _number, const OUString& _description )
throw (com::sun::star::uno::RuntimeException);
};
#endif
diff --git a/basic/source/inc/expr.hxx b/basic/source/inc/expr.hxx
index 92a67b907aed..0b9eb229a795 100644
--- a/basic/source/inc/expr.hxx
+++ b/basic/source/inc/expr.hxx
@@ -46,7 +46,7 @@ struct SbVar {
struct KeywordSymbolInfo
{
- ::rtl::OUString m_aKeywordSymbol;
+ OUString m_aKeywordSymbol;
SbxDataType m_eSbxDataType;
SbiToken m_eTok;
};
@@ -94,7 +94,7 @@ class SbiExprNode { // operators (and operands)
double nVal; // numeric value
SbVar aVar; // or variable
};
- String aStrVal; // #i59791/#i45570 Store string directly
+ OUString aStrVal; // #i59791/#i45570 Store string directly
SbiExprNode* pLeft; // right branch
SbiExprNode* pRight; // right branch (NULL for unary ops)
SbiExprNode* pWithParent; // node, whose member is "this per with"
@@ -118,7 +118,7 @@ class SbiExprNode { // operators (and operands)
public:
SbiExprNode( void );
SbiExprNode( SbiParser*, double, SbxDataType );
- SbiExprNode( SbiParser*, const String& );
+ SbiExprNode( SbiParser*, const OUString& );
SbiExprNode( SbiParser*, const SbiSymDef&, SbxDataType, SbiExprList* = NULL );
SbiExprNode( SbiParser*, SbiExprNode*, SbiToken, SbiExprNode* );
SbiExprNode( SbiParser*, SbiExprNode*, sal_uInt16 ); // #120061 TypeOf
@@ -141,7 +141,7 @@ public:
SbiSymDef* GetRealVar(); // last variable in x.y.z
SbiExprNode* GetRealNode(); // last node in x.y.z
short GetDepth(); // compute a tree's depth
- const String& GetString() { return aStrVal; }
+ const OUString& GetString() { return aStrVal; }
short GetNumber() { return (short)nVal; }
SbiExprList* GetParameters() { return aVar.pPar; }
SbiExprListVector* GetMoreParameters() { return aVar.pvMorePar; }
@@ -156,7 +156,7 @@ class SbiExpression {
friend class SbiParameters;
friend class SbiDimList;
protected:
- String aArgName;
+ OUString aArgName;
SbiParser* pParser;
SbiExpression* pNext; // link at parameter lists
SbiExprNode* pExpr; // expression tree
@@ -187,7 +187,7 @@ public:
SbiExpression( SbiParser*, double, SbxDataType = SbxDOUBLE );
SbiExpression( SbiParser*, const SbiSymDef&, SbiExprList* = NULL );
~SbiExpression();
- String& GetName() { return aArgName; }
+ OUString& GetName() { return aArgName; }
void SetBased() { bBased = true; }
bool IsBased() { return bBased; }
void SetByVal() { bByVal = true; }
@@ -198,7 +198,7 @@ public:
bool IsVariable() { return pExpr->IsVariable(); }
bool IsLvalue() { return pExpr->IsLvalue(); }
bool IsIntConstant() { return pExpr->IsIntConst(); }
- const String& GetString() { return pExpr->GetString(); }
+ const OUString& GetString() { return pExpr->GetString(); }
SbiSymDef* GetVar() { return pExpr->GetVar(); }
SbiSymDef* GetRealVar() { return pExpr->GetRealVar(); }
SbiExprNode* GetExprNode() { return pExpr; }
@@ -209,12 +209,12 @@ public:
class SbiConstExpression : public SbiExpression {
double nVal;
- String aVal;
+ OUString aVal;
SbxDataType eType;
public: // numeric constant
SbiConstExpression( SbiParser* );
SbxDataType GetType() { return eType; }
- const String& GetString() { return aVal; }
+ const OUString& GetString() { return aVal; }
double GetValue() { return nVal; }
short GetShortValue();
};
diff --git a/basic/source/inc/image.hxx b/basic/source/inc/image.hxx
index 96474ad78ca1..42d19f97b675 100644
--- a/basic/source/inc/image.hxx
+++ b/basic/source/inc/image.hxx
@@ -32,32 +32,32 @@ class SbiImage {
SbxArrayRef rTypes; // User defined types
SbxArrayRef rEnums; // Enum types
- sal_uInt32* pStringOff; // StringId-Offsets
+ sal_uInt32* pStringOff; // StringId-Offsets
sal_Unicode* pStrings; // StringPool
char* pCode; // Code-Image
char* pLegacyPCode; // Code-Image
bool bError;
- sal_uInt16 nFlags;
+ sal_uInt16 nFlags;
short nStrings;
- sal_uInt32 nStringSize;
- sal_uInt32 nCodeSize;
- sal_uInt16 nLegacyCodeSize;
- sal_uInt16 nDimBase; // OPTION BASE value
+ sal_uInt32 nStringSize;
+ sal_uInt32 nCodeSize;
+ sal_uInt16 nLegacyCodeSize;
+ sal_uInt16 nDimBase; // OPTION BASE value
rtl_TextEncoding eCharSet;
// temporary management-variable:
short nStringIdx;
- sal_uInt32 nStringOff; // current Pos in the stringbuffer
+ sal_uInt32 nStringOff; // current Pos in the stringbuffer
// routines for the compiler:
void MakeStrings( short ); // establish StringPool
- void AddString( const String& );
+ void AddString( const OUString& );
void AddCode( char*, sal_uInt32 );
void AddType(SbxObject *);
void AddEnum(SbxObject *);
public:
- String aName; // macro name
- ::rtl::OUString aOUSource; // source code
- String aComment;
+ OUString aName; // macro name
+ OUString aOUSource; // source code
+ OUString aComment;
bool bInit;
bool bFirstInit;
@@ -71,21 +71,20 @@ public:
bool IsError() { return bError; }
const char* GetCode() const { return pCode; }
- sal_uInt32 GetCodeSize() const { return nCodeSize; }
- ::rtl::OUString& GetSource32() { return aOUSource; }
- sal_uInt16 GetBase() const { return nDimBase; }
- String GetString( short nId ) const;
- const SbxObject* FindType (String aTypeName) const;
+ sal_uInt32 GetCodeSize() const { return nCodeSize; }
+ OUString& GetSource32() { return aOUSource; }
+ sal_uInt16 GetBase() const { return nDimBase; }
+ OUString GetString( short nId ) const;
+ const SbxObject* FindType (OUString aTypeName) const;
SbxArrayRef GetEnums() { return rEnums; }
void SetFlag( sal_uInt16 n ) { nFlags |= n; }
- sal_uInt16 GetFlag( sal_uInt16 n ) const { return nFlags & n; }
- sal_uInt16 CalcLegacyOffset( sal_Int32 nOffset );
- sal_uInt32 CalcNewOffset( sal_Int16 nOffset );
+ sal_uInt16 GetFlag( sal_uInt16 n ) const { return nFlags & n; }
+ sal_uInt16 CalcLegacyOffset( sal_Int32 nOffset );
+ sal_uInt32 CalcNewOffset( sal_Int16 nOffset );
void ReleaseLegacyBuffer();
bool ExceedsLegacyLimits();
-
};
#define SBIMG_EXPLICIT 0x0001 // OPTION EXPLICIT is active
diff --git a/basic/source/inc/namecont.hxx b/basic/source/inc/namecont.hxx
index bfb867d3b360..5213510493fe 100644
--- a/basic/source/inc/namecont.hxx
+++ b/basic/source/inc/namecont.hxx
@@ -71,10 +71,10 @@ typedef ::cppu::WeakImplHelper3<
class NameContainer : public ::cppu::BaseMutex, public NameContainer_BASE
{
- typedef boost::unordered_map < ::rtl::OUString, sal_Int32, ::rtl::OUStringHash > NameContainerNameMap;
+ typedef boost::unordered_map < OUString, sal_Int32, ::rtl::OUStringHash > NameContainerNameMap;
NameContainerNameMap mHashMap;
- ::com::sun::star::uno::Sequence< ::rtl::OUString > mNames;
+ ::com::sun::star::uno::Sequence< OUString > mNames;
::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > mValues;
sal_Int32 mnElementCount;
@@ -103,29 +103,29 @@ public:
throw(::com::sun::star::uno::RuntimeException);
// Methods XNameAccess
- virtual ::com::sun::star::uno::Any SAL_CALL getByName( const ::rtl::OUString& aName )
+ virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames( )
+ virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames( )
throw(::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName )
+ virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
throw(::com::sun::star::uno::RuntimeException);
// Methods XNameReplace
- virtual void SAL_CALL replaceByName( const ::rtl::OUString& aName, const ::com::sun::star::uno::Any& aElement )
+ virtual void SAL_CALL replaceByName( const OUString& aName, const ::com::sun::star::uno::Any& aElement )
throw(::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
// Methods XNameContainer
- virtual void SAL_CALL insertByName( const ::rtl::OUString& aName, const ::com::sun::star::uno::Any& aElement )
+ virtual void SAL_CALL insertByName( const OUString& aName, const ::com::sun::star::uno::Any& aElement )
throw(::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::ElementExistException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeByName( const ::rtl::OUString& Name )
+ virtual void SAL_CALL removeByName( const OUString& Name )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
@@ -216,7 +216,7 @@ class SfxLibraryContainer : public SfxLibraryContainer_BASE, public ::utl::OEven
VBAScriptListenerContainer maVBAScriptListeners;
sal_Int32 mnRunningVBAScripts;
sal_Bool mbVBACompat;
- rtl::OUString msProjectName;
+ OUString msProjectName;
protected:
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > mxMSF;
::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess2 > mxSFI;
@@ -231,12 +231,12 @@ protected:
bool mbOldInfoFormat;
bool mbOasis2OOoFormat;
- ::rtl::OUString maInitialDocumentURL;
- ::rtl::OUString maInfoFileName;
- ::rtl::OUString maOldInfoFileName;
- ::rtl::OUString maLibElementFileExtension;
- ::rtl::OUString maLibraryPath;
- ::rtl::OUString maLibrariesDir;
+ OUString maInitialDocumentURL;
+ OUString maInfoFileName;
+ OUString maOldInfoFileName;
+ OUString maLibElementFileExtension;
+ OUString maLibraryPath;
+ OUString maLibrariesDir;
::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > mxStorage;
BasicManager* mpBasMgr;
@@ -252,14 +252,14 @@ protected:
} meInitMode;
void implStoreLibrary( SfxLibrary* pLib,
- const ::rtl::OUString& aName,
+ const OUString& aName,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage );
// New variant for library export
void implStoreLibrary( SfxLibrary* pLib,
- const ::rtl::OUString& aName,
+ const OUString& aName,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
- const ::rtl::OUString& aTargetURL,
+ const OUString& aTargetURL,
const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess2 > xToUseSFI,
const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& xHandler );
@@ -269,27 +269,27 @@ protected:
// New variant for library export
void implStoreLibraryIndexFile( SfxLibrary* pLib, const ::xmlscript::LibDescriptor& rLib,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
- const ::rtl::OUString& aTargetURL,
+ const OUString& aTargetURL,
const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess2 > xToUseSFI );
bool implLoadLibraryIndexFile( SfxLibrary* pLib,
::xmlscript::LibDescriptor& rLib,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
- const ::rtl::OUString& aIndexFileName );
+ const OUString& aIndexFileName );
void implImportLibDescriptor( SfxLibrary* pLib, ::xmlscript::LibDescriptor& rLib );
// Methods to distinguish between deffirent library types
- virtual SfxLibrary* SAL_CALL implCreateLibrary( const ::rtl::OUString& aName ) = 0;
+ virtual SfxLibrary* SAL_CALL implCreateLibrary( const OUString& aName ) = 0;
virtual SfxLibrary* SAL_CALL implCreateLibraryLink
- ( const ::rtl::OUString& aName, const ::rtl::OUString& aLibInfoFileURL,
- const ::rtl::OUString& StorageURL, sal_Bool ReadOnly ) = 0;
+ ( const OUString& aName, const OUString& aLibInfoFileURL,
+ const OUString& StorageURL, sal_Bool ReadOnly ) = 0;
virtual ::com::sun::star::uno::Any SAL_CALL createEmptyLibraryElement( void ) = 0;
virtual bool SAL_CALL isLibraryElementValid( ::com::sun::star::uno::Any aElement ) const = 0;
virtual void SAL_CALL writeLibraryElement
(
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer>& xLibrary,
- const ::rtl::OUString& aElementName,
+ const OUString& aElementName,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& xOutput
)
throw(::com::sun::star::uno::Exception) = 0;
@@ -297,22 +297,22 @@ protected:
virtual ::com::sun::star::uno::Any SAL_CALL importLibraryElement
(
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer>& xLibrary,
- const ::rtl::OUString& aElementName,
- const ::rtl::OUString& aFile,
+ const OUString& aElementName,
+ const OUString& aFile,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream >& xElementStream ) = 0;
- virtual void SAL_CALL importFromOldStorage( const ::rtl::OUString& aFile ) = 0;
+ virtual void SAL_CALL importFromOldStorage( const OUString& aFile ) = 0;
// Password encryption
- virtual sal_Bool implStorePasswordLibrary( SfxLibrary* pLib, const ::rtl::OUString& aName,
+ virtual sal_Bool implStorePasswordLibrary( SfxLibrary* pLib, const OUString& aName,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage, const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& Handler );
// New variant for library export
- virtual sal_Bool implStorePasswordLibrary( SfxLibrary* pLib, const ::rtl::OUString& aName,
+ virtual sal_Bool implStorePasswordLibrary( SfxLibrary* pLib, const OUString& aName,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
- const ::rtl::OUString& aTargetURL,
+ const OUString& aTargetURL,
const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess2 > xToUseSFI, const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& Handler );
- virtual sal_Bool implLoadPasswordLibrary( SfxLibrary* pLib, const ::rtl::OUString& Name,
+ virtual sal_Bool implLoadPasswordLibrary( SfxLibrary* pLib, const OUString& Name,
sal_Bool bVerifyPasswordOnly=false )
throw(::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
@@ -327,9 +327,9 @@ protected:
// Interface to get the BasicManager (Hack for password implementation)
BasicManager* getBasicManager( void );
- ::rtl::OUString createAppLibraryFolder( SfxLibrary* pLib, const ::rtl::OUString& aName );
+ OUString createAppLibraryFolder( SfxLibrary* pLib, const OUString& aName );
- void init( const ::rtl::OUString& rInitialDocumentURL,
+ void init( const OUString& rInitialDocumentURL,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& _rxInitialStorage );
virtual const sal_Char* SAL_CALL getInfoFileName() const = 0;
@@ -340,21 +340,21 @@ protected:
// Handle maLibInfoFileURL and maStorageURL correctly
void checkStorageURL
(
- const ::rtl::OUString& aSourceURL,
- ::rtl::OUString& aLibInfoFileURL,
- ::rtl::OUString& aStorageURL,
- ::rtl::OUString& aUnexpandedStorageURL
+ const OUString& aSourceURL,
+ OUString& aLibInfoFileURL,
+ OUString& aStorageURL,
+ OUString& aUnexpandedStorageURL
);
- ::rtl::OUString expand_url( const ::rtl::OUString& url )
+ OUString expand_url( const OUString& url )
throw(::com::sun::star::uno::RuntimeException);
- SfxLibrary* getImplLib( const String& rLibraryName );
+ SfxLibrary* getImplLib( const OUString& rLibraryName );
void storeLibraries_Impl(
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
bool bComplete );
- void SAL_CALL initializeFromDocumentURL( const ::rtl::OUString& _rInitialDocumentURL );
+ void SAL_CALL initializeFromDocumentURL( const OUString& _rInitialDocumentURL );
void SAL_CALL initializeFromDocument( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageBasedDocument >& _rxDocument );
// OEventListenerAdapter
@@ -364,7 +364,7 @@ protected:
virtual void SAL_CALL disposing();
private:
- void init_Impl( const ::rtl::OUString& rInitialDocumentURL,
+ void init_Impl( const OUString& rInitialDocumentURL,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& _rxInitialStorage );
void implScanExtensions( void );
@@ -391,13 +391,13 @@ public:
throw(::com::sun::star::uno::RuntimeException);
// Methods XNameAccess
- virtual ::com::sun::star::uno::Any SAL_CALL getByName( const ::rtl::OUString& aName )
+ virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames()
+ virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames()
throw(::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName )
+ virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
throw(::com::sun::star::uno::RuntimeException);
// Members XStorageBasedLibraryContainer
@@ -413,53 +413,53 @@ public:
// Methods XPersistentLibraryContainer (base of XStorageBasedLibraryContainer)
virtual ::com::sun::star::uno::Any SAL_CALL getRootLocation() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getContainerLocationName() throw (::com::sun::star::uno::RuntimeException);
+ virtual OUString SAL_CALL getContainerLocationName() throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL storeLibraries( ) throw (::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
//Methods XLibraryContainer3
- virtual ::rtl::OUString SAL_CALL getOriginalLibraryLinkURL( const ::rtl::OUString& Name )
+ virtual OUString SAL_CALL getOriginalLibraryLinkURL( const OUString& Name )
throw (::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
// Methods XLibraryContainer2 (base of XPersistentLibraryContainer)
- virtual sal_Bool SAL_CALL isLibraryLink( const ::rtl::OUString& Name )
+ virtual sal_Bool SAL_CALL isLibraryLink( const OUString& Name )
throw (::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getLibraryLinkURL( const ::rtl::OUString& Name )
+ virtual OUString SAL_CALL getLibraryLinkURL( const OUString& Name )
throw (::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isLibraryReadOnly( const ::rtl::OUString& Name )
+ virtual sal_Bool SAL_CALL isLibraryReadOnly( const OUString& Name )
throw (::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setLibraryReadOnly( const ::rtl::OUString& Name, sal_Bool bReadOnly )
+ virtual void SAL_CALL setLibraryReadOnly( const OUString& Name, sal_Bool bReadOnly )
throw (::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL renameLibrary( const ::rtl::OUString& Name, const ::rtl::OUString& NewName )
+ virtual void SAL_CALL renameLibrary( const OUString& Name, const OUString& NewName )
throw (::com::sun::star::container::NoSuchElementException,
::com::sun::star::container::ElementExistException,
::com::sun::star::uno::RuntimeException);
// Methods XLibraryContainer (base of XLibraryContainer2)
virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer > SAL_CALL
- createLibrary( const ::rtl::OUString& Name )
+ createLibrary( const OUString& Name )
throw(::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::ElementExistException,
::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > SAL_CALL createLibraryLink
- ( const ::rtl::OUString& Name, const ::rtl::OUString& StorageURL, sal_Bool ReadOnly )
+ ( const OUString& Name, const OUString& StorageURL, sal_Bool ReadOnly )
throw(::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::ElementExistException,
::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeLibrary( const ::rtl::OUString& Name )
+ virtual void SAL_CALL removeLibrary( const OUString& Name )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isLibraryLoaded( const ::rtl::OUString& Name )
+ virtual sal_Bool SAL_CALL isLibraryLoaded( const OUString& Name )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL loadLibrary( const ::rtl::OUString& Name )
+ virtual void SAL_CALL loadLibrary( const OUString& Name )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
@@ -471,19 +471,19 @@ public:
::com::sun::star::uno::RuntimeException);
// Methods XLibraryContainerPassword
- virtual sal_Bool SAL_CALL isLibraryPasswordProtected( const ::rtl::OUString& Name )
+ virtual sal_Bool SAL_CALL isLibraryPasswordProtected( const OUString& Name )
throw (::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isLibraryPasswordVerified( const ::rtl::OUString& Name )
+ virtual sal_Bool SAL_CALL isLibraryPasswordVerified( const OUString& Name )
throw (::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL verifyLibraryPassword( const ::rtl::OUString& Name, const ::rtl::OUString& Password )
+ virtual sal_Bool SAL_CALL verifyLibraryPassword( const OUString& Name, const OUString& Password )
throw (::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL changeLibraryPassword( const ::rtl::OUString& Name,
- const ::rtl::OUString& OldPassword, const ::rtl::OUString& NewPassword )
+ virtual void SAL_CALL changeLibraryPassword( const OUString& Name,
+ const OUString& OldPassword, const OUString& NewPassword )
throw (::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
@@ -497,24 +497,24 @@ public:
throw (::com::sun::star::uno::RuntimeException);
// Methods XLibraryContainerExport
- virtual void SAL_CALL exportLibrary( const ::rtl::OUString& Name, const ::rtl::OUString& URL,
+ virtual void SAL_CALL exportLibrary( const OUString& Name, const OUString& URL,
const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& Handler )
throw (::com::sun::star::uno::Exception,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::uno::RuntimeException);
// Methods XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName( )
+ virtual OUString SAL_CALL getImplementationName( )
throw (::com::sun::star::uno::RuntimeException) = 0;
- virtual ::sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName )
+ virtual ::sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames( )
+ virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( )
throw (::com::sun::star::uno::RuntimeException) = 0;
// Methods XVBACompatibility
virtual ::sal_Bool SAL_CALL getVBACompatibilityMode() throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setVBACompatibilityMode( ::sal_Bool _vbacompatmodeon ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getProjectName() throw (::com::sun::star::uno::RuntimeException) { return msProjectName; }
- virtual void SAL_CALL setProjectName( const ::rtl::OUString& _projectname ) throw (::com::sun::star::uno::RuntimeException);
+ virtual OUString SAL_CALL getProjectName() throw (::com::sun::star::uno::RuntimeException) { return msProjectName; }
+ virtual void SAL_CALL setProjectName( const OUString& _projectname ) throw (::com::sun::star::uno::RuntimeException);
virtual sal_Int32 SAL_CALL getRunningVBAScripts()
throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL addVBAScriptListener(
@@ -523,7 +523,7 @@ public:
virtual void SAL_CALL removeVBAScriptListener(
const ::com::sun::star::uno::Reference< ::com::sun::star::script::vba::XVBAScriptListener >& Listener )
throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL broadcastVBAScriptEvent( sal_Int32 nIdentifier, const ::rtl::OUString& rModuleName )
+ virtual void SAL_CALL broadcastVBAScriptEvent( sal_Int32 nIdentifier, const OUString& rModuleName )
throw (::com::sun::star::uno::RuntimeException);
};
@@ -571,11 +571,11 @@ class SfxLibrary
private:
- ::rtl::OUString maLibElementFileExtension;
- ::rtl::OUString maLibInfoFileURL;
- ::rtl::OUString maStorageURL;
- ::rtl::OUString maUnexpandedStorageURL;
- ::rtl::OUString maOriginalStorageURL;
+ OUString maLibElementFileExtension;
+ OUString maLibInfoFileURL;
+ OUString maStorageURL;
+ OUString maUnexpandedStorageURL;
+ OUString maOriginalStorageURL;
sal_Bool mbLink;
sal_Bool mbReadOnly;
@@ -585,7 +585,7 @@ private:
sal_Bool mbPasswordProtected;
sal_Bool mbPasswordVerified;
bool mbDoc50Password;
- ::rtl::OUString maPassword;
+ OUString maPassword;
bool mbSharedIndexFile;
bool mbExtension;
@@ -594,8 +594,8 @@ private:
// Provide modify state including resources
virtual sal_Bool isModified( void ) = 0;
virtual void storeResources( void ) = 0;
- virtual void storeResourcesAsURL( const ::rtl::OUString& URL, const ::rtl::OUString& NewName ) = 0;
- virtual void storeResourcesToURL( const ::rtl::OUString& URL,
+ virtual void storeResourcesAsURL( const OUString& URL, const OUString& NewName ) = 0;
+ virtual void storeResourcesToURL( const OUString& URL,
const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& xHandler ) = 0;
virtual void storeResourcesToStorage( const ::com::sun::star::uno::Reference
< ::com::sun::star::embed::XStorage >& xStorage ) = 0;
@@ -614,7 +614,7 @@ private:
void impl_checkLoaded();
private:
- void impl_removeWithoutChecks( const ::rtl::OUString& _rElementName );
+ void impl_removeWithoutChecks( const OUString& _rElementName );
public:
SfxLibrary(
@@ -628,8 +628,8 @@ public:
const ::com::sun::star::uno::Type& aType,
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xMSF,
const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess2 >& xSFI,
- const ::rtl::OUString& aLibInfoFileURL,
- const ::rtl::OUString&
+ const OUString& aLibInfoFileURL,
+ const OUString&
aStorageURL,
sal_Bool ReadOnly
);
@@ -646,29 +646,29 @@ public:
throw(::com::sun::star::uno::RuntimeException);
// Methods XNameAccess
- virtual ::com::sun::star::uno::Any SAL_CALL getByName( const ::rtl::OUString& aName )
+ virtual ::com::sun::star::uno::Any SAL_CALL getByName( const OUString& aName )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames( )
+ virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getElementNames( )
throw(::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName )
+ virtual sal_Bool SAL_CALL hasByName( const OUString& aName )
throw(::com::sun::star::uno::RuntimeException);
// Methods XNameReplace
- virtual void SAL_CALL replaceByName( const ::rtl::OUString& aName, const ::com::sun::star::uno::Any& aElement )
+ virtual void SAL_CALL replaceByName( const OUString& aName, const ::com::sun::star::uno::Any& aElement )
throw(::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
// Methods XNameContainer
- virtual void SAL_CALL insertByName( const ::rtl::OUString& aName, const ::com::sun::star::uno::Any& aElement )
+ virtual void SAL_CALL insertByName( const OUString& aName, const ::com::sun::star::uno::Any& aElement )
throw(::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::container::ElementExistException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeByName( const ::rtl::OUString& Name )
+ virtual void SAL_CALL removeByName( const OUString& Name )
throw(::com::sun::star::container::NoSuchElementException,
::com::sun::star::lang::WrappedTargetException,
::com::sun::star::uno::RuntimeException);
@@ -697,7 +697,7 @@ public:
public:
struct LibraryContainerAccess { friend class SfxLibraryContainer; private: LibraryContainerAccess() { } };
- void removeElementWithoutChecks( const ::rtl::OUString& _rElementName, LibraryContainerAccess )
+ void removeElementWithoutChecks( const OUString& _rElementName, LibraryContainerAccess )
{
impl_removeWithoutChecks( _rElementName );
}
@@ -736,7 +736,7 @@ class ScriptExtensionIterator
{
public:
ScriptExtensionIterator( void );
- rtl::OUString nextBasicOrDialogLibrary( bool& rbPureDialogLib );
+ OUString nextBasicOrDialogLibrary( bool& rbPureDialogLib );
protected:
com::sun::star::uno::Reference< com::sun::star::deployment::XPackage >
diff --git a/basic/source/inc/parser.hxx b/basic/source/inc/parser.hxx
index 68dd9f18f39a..d6c14a6b27ee 100644
--- a/basic/source/inc/parser.hxx
+++ b/basic/source/inc/parser.hxx
@@ -26,7 +26,7 @@
#include <vector>
-typedef ::std::vector< String > StringVector;
+typedef ::std::vector< OUString > StringVector;
struct SbiParseStack;
@@ -82,7 +82,7 @@ public:
SbiExprNode* GetWithVar();
// from 31.3.1996, search symbol in the runtime-library
- SbiSymDef* CheckRTLForSym( const String& rSym, SbxDataType eType );
+ SbiSymDef* CheckRTLForSym( const OUString& rSym, SbxDataType eType );
void AddConstants( void );
bool HasGlobalCode();
diff --git a/basic/source/inc/runtime.hxx b/basic/source/inc/runtime.hxx
index e2c795718736..fd5313775ded 100644
--- a/basic/source/inc/runtime.hxx
+++ b/basic/source/inc/runtime.hxx
@@ -112,7 +112,7 @@ public:
sal_Int16 nDirFlags;
short nCurDirPos;
- String sFullNameToBeChecked;
+ OUString sFullNameToBeChecked;
WildCard* pWildCard;
Sequence< ::rtl::OUString > aDirSeq;
@@ -148,10 +148,10 @@ class SbiInstance
sal_uInt32 nStdDateIdx, nStdTimeIdx, nStdDateTimeIdx;
SbError nErr;
- String aErrorMsg; // last error message for $ARG
- sal_uInt16 nErl; // current error line
- sal_Bool bReschedule; // Flag: sal_True = Reschedule in main loop
- sal_Bool bCompatibility; // Flag: sal_True = VBA runtime compatibility mode
+ OUString aErrorMsg; // last error message for $ARG
+ sal_Int32 nErl; // current error line
+ sal_Bool bReschedule; // Flag: sal_True = Reschedule in main loop
+ sal_Bool bCompatibility; // Flag: sal_True = VBA runtime compatibility mode
ComponentVector_t ComponentVector;
public:
@@ -168,17 +168,17 @@ public:
~SbiInstance();
void Error( SbError ); // trappable Error
- void Error( SbError, const String& rMsg ); // trappable Error with message
- void ErrorVB( sal_Int32 nVBNumber, const String& rMsg );
- void setErrorVB( sal_Int32 nVBNumber, const String& rMsg );
+ void Error( SbError, const OUString& rMsg ); // trappable Error with message
+ void ErrorVB( sal_Int32 nVBNumber, const OUString& rMsg );
+ void setErrorVB( sal_Int32 nVBNumber, const OUString& rMsg );
void FatalError( SbError ); // non-trappable Error
- void FatalError( SbError, const String& ); // non-trappable Error
+ void FatalError( SbError, const OUString& ); // non-trappable Error
void Abort(); // with current error code
void Stop();
SbError GetErr() { return nErr; }
- String GetErrorMsg() { return aErrorMsg; }
- xub_StrLen GetErl() { return nErl; }
+ OUString GetErrorMsg() { return aErrorMsg; }
+ sal_Int32 GetErl() { return nErl; }
void EnableReschedule( sal_Bool bEnable ) { bReschedule = bEnable; }
sal_Bool IsReschedule( void ) { return bReschedule; }
void EnableCompatibility( sal_Bool bEnable ) { bCompatibility = bEnable; }
@@ -257,7 +257,7 @@ class SbiRuntime
const sal_uInt8* pRestart; // restart-address
const sal_uInt8* pErrCode; // restart-adresse RESUME NEXT
const sal_uInt8* pErrStmnt; // Restart-Adresse RESUMT 0
- String aLibName; // Lib-name for declare-call
+ OUString aLibName; // Lib-name for declare-call
SbxArrayRef refParams; // current procedure parameters
SbxArrayRef refLocals; // local variable
SbxArrayRef refArgv;
@@ -329,12 +329,12 @@ class SbiRuntime
void SetParameters( SbxArray* );
// HAS TO BE IMPLEMENTED SOME TIME
- void DllCall( const String&, const String&, SbxArray*, SbxDataType, bool );
+ void DllCall( const OUString&, const OUString&, SbxArray*, SbxDataType, bool );
// #56204 swap out DIM-functionality into help method (step0.cxx)
void DimImpl( SbxVariableRef refVar );
- bool implIsClass( SbxObject* pObj, const ::rtl::OUString& aClass );
+ bool implIsClass( SbxObject* pObj, const OUString& aClass );
void StepSETCLASS_impl( sal_uInt32 nOp1, bool bHandleDflt = false );
@@ -366,7 +366,7 @@ class SbiRuntime
void StepGOSUB( sal_uInt32 ), StepRETURN( sal_uInt32 );
void StepTESTFOR( sal_uInt32 ), StepCASETO( sal_uInt32 ), StepERRHDL( sal_uInt32 );
void StepRESUME( sal_uInt32 ), StepSETCLASS( sal_uInt32 ), StepVBASETCLASS( sal_uInt32 ), StepTESTCLASS( sal_uInt32 ), StepLIB( sal_uInt32 );
- bool checkClass_Impl( const SbxVariableRef& refVal, const ::rtl::OUString& aClass, bool bRaiseErrors, bool bDefault = true );
+ bool checkClass_Impl( const SbxVariableRef& refVal, const OUString& aClass, bool bRaiseErrors, bool bDefault = true );
void StepCLOSE( sal_uInt32 ), StepPRCHAR( sal_uInt32 ), StepARGTYP( sal_uInt32 );
// all opcodes with two operands
void StepRTL( sal_uInt32, sal_uInt32 ), StepPUBLIC( sal_uInt32, sal_uInt32 ), StepPUBLIC_P( sal_uInt32, sal_uInt32 );
@@ -377,7 +377,7 @@ class SbiRuntime
void StepPARAM( sal_uInt32, sal_uInt32), StepCREATE( sal_uInt32, sal_uInt32 );
void StepCALL( sal_uInt32, sal_uInt32 ), StepCALLC( sal_uInt32, sal_uInt32 );
void StepCASEIS( sal_uInt32, sal_uInt32 ), StepSTMNT( sal_uInt32, sal_uInt32 );
- SbxVariable* StepSTATIC_Impl( String& aName, SbxDataType& t );
+ SbxVariable* StepSTATIC_Impl( OUString& aName, SbxDataType& t );
void StepOPEN( sal_uInt32, sal_uInt32 ), StepSTATIC( sal_uInt32, sal_uInt32 );
void StepTCREATE(sal_uInt32,sal_uInt32), StepDCREATE(sal_uInt32,sal_uInt32);
void StepGLOBAL_P( sal_uInt32, sal_uInt32 ),StepFIND_G( sal_uInt32, sal_uInt32 );
@@ -389,16 +389,16 @@ public:
void SetVBAEnabled( bool bEnabled );
sal_uInt16 GetImageFlag( sal_uInt16 n ) const;
sal_uInt16 GetBase();
- xub_StrLen nLine,nCol1,nCol2;
+ sal_Int32 nLine,nCol1,nCol2;
SbiRuntime* pNext; // Stack-Chain
SbiRuntime( SbModule*, SbMethod*, sal_uInt32 );
~SbiRuntime();
void Error( SbError, bool bVBATranslationAlreadyDone = false ); // set error if != 0
- void Error( SbError, const String& ); // set error if != 0
+ void Error( SbError, const OUString& ); // set error if != 0
void FatalError( SbError ); // error handling = standard, set error
- void FatalError( SbError, const String& ); // error handling = standard, set error
- static sal_Int32 translateErrorToVba( SbError nError, String& rMsg );
+ void FatalError( SbError, const OUString& ); // error handling = standard, set error
+ static sal_Int32 translateErrorToVba( SbError nError, OUString& rMsg );
void DumpPCode();
bool Step(); // single step (one opcode)
void Stop() { bRun = false; }
@@ -413,7 +413,7 @@ public:
SbiForStack* FindForStackItemForCollection( class BasicCollection* pCollection );
- SbxBase* FindElementExtern( const String& rName );
+ SbxBase* FindElementExtern( const OUString& rName );
static bool isVBAEnabled();
};
@@ -451,20 +451,20 @@ bool hasUno( void );
// Converts possibly relative paths to absolute paths
// according to the setting done by ChDir/ChDrive
// (Implemented in methods.cxx)
-String getFullPath( const String& aRelPath );
+OUString getFullPath( const OUString& aRelPath );
// Implementation of StepRENAME with UCB
// (Implemented in methods.cxx, so step0.cxx
// has not to be infected with UNO)
-void implStepRenameUCB( const String& aSource, const String& aDest );
+void implStepRenameUCB( const OUString& aSource, const OUString& aDest );
//*** OSL file access ***
// #87427 OSL need File URLs, so map to getFullPath
-inline String getFullPathUNC( const String& aRelPath )
+inline OUString getFullPathUNC( const OUString& aRelPath )
{
return getFullPath( aRelPath );
}
-void implStepRenameOSL( const String& aSource, const String& aDest );
+void implStepRenameOSL( const OUString& aSource, const OUString& aDest );
bool IsBaseIndexOne();
#endif
diff --git a/basic/source/inc/sbintern.hxx b/basic/source/inc/sbintern.hxx
index a4ff91f6d268..7dfd011f8385 100644
--- a/basic/source/inc/sbintern.hxx
+++ b/basic/source/inc/sbintern.hxx
@@ -40,10 +40,10 @@ class SbiFactory : public SbxFactory
{
public:
virtual SbxBase* Create( sal_uInt16 nSbxId, sal_uInt32 = SBXCR_SBX );
- virtual SbxObject* CreateObject( const rtl::OUString& );
+ virtual SbxObject* CreateObject( const OUString& );
};
-typedef ::std::vector< String > StringVector;
+typedef ::std::vector< OUString > StringVector;
struct SbClassData
{
@@ -73,9 +73,9 @@ public:
void RemoveClassModule( SbModule* pClassModule );
virtual SbxBase* Create( sal_uInt16 nSbxId, sal_uInt32 = SBXCR_SBX );
- virtual SbxObject* CreateObject( const rtl::OUString& );
+ virtual SbxObject* CreateObject( const OUString& );
- SbModule* FindClass( const String& rClassName );
+ SbModule* FindClass( const OUString& rClassName );
};
struct SbiGlobals
@@ -93,12 +93,12 @@ struct SbiGlobals
Link aErrHdl; // global error handler
Link aBreakHdl; // global break handler
SbError nCode;
- xub_StrLen nLine;
- xub_StrLen nCol1,nCol2; // from... to...
+ sal_Int32 nLine;
+ sal_Int32 nCol1,nCol2; // from... to...
bool bCompiler; // flag for compiler error
bool bGlobalInitErr;
bool bRunInit; // true, if RunInit active from the Basic
- String aErrMsg; // buffer for GetErrorText()
+ OUString aErrMsg; // buffer for GetErrorText()
::utl::TransliterationWrapper* pTransliterationWrapper; // For StrComp
bool bBlockCompilerError;
BasicManager* pAppBasMgr;
diff --git a/basic/source/inc/sbjsmeth.hxx b/basic/source/inc/sbjsmeth.hxx
index e53473a16b7e..acfe8aa711f0 100644
--- a/basic/source/inc/sbjsmeth.hxx
+++ b/basic/source/inc/sbjsmeth.hxx
@@ -30,7 +30,7 @@
class SbJScriptMethod : public SbMethod
{
public:
- SbJScriptMethod( const String&, SbxDataType, SbModule* );
+ SbJScriptMethod( const OUString&, SbxDataType, SbModule* );
virtual ~SbJScriptMethod();
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_JSCRIPTMETH,2);
diff --git a/basic/source/inc/sbjsmod.hxx b/basic/source/inc/sbjsmod.hxx
index 5149df447853..02c100aa6070 100644
--- a/basic/source/inc/sbjsmod.hxx
+++ b/basic/source/inc/sbjsmod.hxx
@@ -33,7 +33,7 @@ class SbJScriptModule : public SbModule
public:
SBX_DECL_PERSIST_NODATA(SBXCR_SBX,SBXID_JSCRIPTMOD,1);
TYPEINFO();
- SbJScriptModule( const String& ); // hand through
+ SbJScriptModule( const OUString& ); // hand through
};
#endif
diff --git a/basic/source/inc/sbunoobj.hxx b/basic/source/inc/sbunoobj.hxx
index ab0f43901099..a90197e73409 100644
--- a/basic/source/inc/sbunoobj.hxx
+++ b/basic/source/inc/sbunoobj.hxx
@@ -49,7 +49,7 @@ public:
sal_Int32 getPos() const { return mnPos; }
typelib_TypeDescription* getTD() const { return mpTD; }
- rtl::OUString getTypeName() const;
+ OUString getTypeName() const;
com::sun::star::uno::Any& getRootAnyRef() { return maAny; };
com::sun::star::uno::TypeClass getTypeClass() const;
@@ -65,29 +65,29 @@ class SbUnoStructRefObject: public SbxObject
{
struct caseLessComp
{
- bool operator() (const ::rtl::OUString& rProp, const ::rtl::OUString& rOtherProp ) const
+ bool operator() (const OUString& rProp, const OUString& rOtherProp ) const
{
return rProp.toAsciiUpperCase().compareTo( rOtherProp.toAsciiUpperCase() ) < 0;
}
};
- typedef ::std::map< rtl::OUString, StructRefInfo*, caseLessComp > StructFieldInfo;
+ typedef ::std::map< OUString, StructRefInfo*, caseLessComp > StructFieldInfo;
StructFieldInfo maFields;
StructRefInfo maMemberInfo;
bool mbMemberCacheInit;
void implCreateAll();
void implCreateDbgProperties();
void initMemberCache();
- rtl::OUString Impl_DumpProperties();
- rtl::OUString getDbgObjectName();
+ OUString Impl_DumpProperties();
+ OUString getDbgObjectName();
public:
TYPEINFO();
- StructRefInfo getStructMember( const rtl::OUString& rMember );
+ StructRefInfo getStructMember( const OUString& rMember );
StructRefInfo getStructInfo() { return maMemberInfo; }
- SbUnoStructRefObject( const ::rtl::OUString& aName_, const StructRefInfo& rMemberInfo );
+ SbUnoStructRefObject( const OUString& aName_, const StructRefInfo& rMemberInfo );
~SbUnoStructRefObject();
// Find overloaded to support e. g. NameAccess
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
// Force creation of all properties for debugging
void createAllProperties( void )
@@ -118,16 +118,16 @@ class SbUnoObject: public SbxObject
void implCreateAll( void );
public:
- static bool getDefaultPropName( SbUnoObject* pUnoObj, ::rtl::OUString& sDfltProp );
+ static bool getDefaultPropName( SbUnoObject* pUnoObj, OUString& sDfltProp );
TYPEINFO();
- SbUnoObject( const ::rtl::OUString& aName_, const ::com::sun::star::uno::Any& aUnoObj_ );
+ SbUnoObject( const OUString& aName_, const ::com::sun::star::uno::Any& aUnoObj_ );
~SbUnoObject();
// #76470 do introspection on demand
void doIntrospection( void );
// Find overloaded to support e. g. NameAccess
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
// Force creation of all properties for debugging
void createAllProperties( void )
@@ -168,7 +168,7 @@ class SbUnoMethod : public SbxMethod
public:
TYPEINFO();
- SbUnoMethod( const rtl::OUString& aName_, SbxDataType eSbxType, ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlMethod > xUnoMethod_,
+ SbUnoMethod( const OUString& aName_, SbxDataType eSbxType, ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlMethod > xUnoMethod_,
bool bInvocation,
bool bDirect = false );
virtual ~SbUnoMethod();
@@ -201,7 +201,7 @@ class SbUnoProperty : public SbxProperty
public:
TYPEINFO();
- SbUnoProperty( const rtl::OUString& aName_, SbxDataType eSbxType, SbxDataType eRealSbxType,
+ SbUnoProperty( const OUString& aName_, SbxDataType eSbxType, SbxDataType eRealSbxType,
const ::com::sun::star::beans::Property& aUnoProp_, sal_Int32 nId_, bool bInvocation, bool bUnoStruct );
bool isUnoStruct() { return mbUnoStruct; }
@@ -215,7 +215,7 @@ class SbUnoFactory : public SbxFactory
{
public:
virtual SbxBase* Create( sal_uInt16 nSbxId, sal_uInt32 = SBXCR_SBX );
- virtual SbxObject* CreateObject( const rtl::OUString& );
+ virtual SbxObject* CreateObject( const OUString& );
};
// wrapper for an uno-class
@@ -225,16 +225,16 @@ class SbUnoClass : public SbxObject
public:
TYPEINFO();
- SbUnoClass( const String& aName_ )
+ SbUnoClass( const OUString& aName_ )
: SbxObject( aName_ )
{}
- SbUnoClass( const String& aName_, const ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass >& xClass_ )
+ SbUnoClass( const OUString& aName_, const ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass >& xClass_ )
: SbxObject( aName_ )
, m_xClass( xClass_ )
{}
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
const ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass >& getUnoClass( void ) { return m_xClass; }
@@ -245,31 +245,31 @@ SV_DECL_IMPL_REF(SbUnoClass);
// function to find a global identifier in
// the UnoScope and to wrap it for Sbx
-SbUnoClass* findUnoClass( const ::rtl::OUString& rName );
+SbUnoClass* findUnoClass( const OUString& rName );
// Wrapper for UNO Service
class SbUnoService : public SbxObject
{
- const ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XServiceTypeDescription2 > m_xServiceTypeDesc;
- bool m_bNeedsInit;
+ const ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XServiceTypeDescription2 > m_xServiceTypeDesc;
+ bool m_bNeedsInit;
public:
TYPEINFO();
- SbUnoService( const String& aName_,
+ SbUnoService( const OUString& aName_,
const ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XServiceTypeDescription2 >& xServiceTypeDesc )
: SbxObject( aName_ )
, m_xServiceTypeDesc( xServiceTypeDesc )
, m_bNeedsInit( true )
{}
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
void SFX_NOTIFY( SfxBroadcaster&, const TypeId&, const SfxHint& rHint, const TypeId& );
};
SV_DECL_IMPL_REF(SbUnoService);
-SbUnoService* findUnoService( const ::rtl::OUString& rName );
+SbUnoService* findUnoService( const OUString& rName );
void clearUnoServiceCtors( void );
@@ -286,7 +286,7 @@ class SbUnoServiceCtor : public SbxMethod
public:
TYPEINFO();
- SbUnoServiceCtor( const::rtl::OUString& aName_, ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XServiceConstructorDescription > xServiceCtorDesc );
+ SbUnoServiceCtor( const OUString& aName_, ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XServiceConstructorDescription > xServiceCtorDesc );
virtual ~SbUnoServiceCtor();
virtual SbxInfo* GetInfo();
@@ -302,14 +302,14 @@ class SbUnoSingleton : public SbxObject
public:
TYPEINFO();
- SbUnoSingleton( const ::rtl::OUString& aName_,
+ SbUnoSingleton( const OUString& aName_,
const ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XSingletonTypeDescription >& xSingletonTypeDesc );
void SFX_NOTIFY( SfxBroadcaster&, const TypeId&, const SfxHint& rHint, const TypeId& );
};
SV_DECL_IMPL_REF(SbUnoSingleton);
-SbUnoSingleton* findUnoSingleton( const ::rtl::OUString& rName );
+SbUnoSingleton* findUnoSingleton( const OUString& rName );
// #105565 Special Object to wrap a strongly typed Uno Any
@@ -319,7 +319,7 @@ class SbUnoAnyObject: public SbxObject
public:
SbUnoAnyObject( const ::com::sun::star::uno::Any& rVal )
- : SbxObject( String() )
+ : SbxObject( OUString() )
, mVal( rVal )
{}
@@ -335,14 +335,14 @@ public:
class AutomationNamedArgsSbxArray : public SbxArray
{
- ::com::sun::star::uno::Sequence< ::rtl::OUString > maNameSeq;
+ ::com::sun::star::uno::Sequence< OUString > maNameSeq;
public:
TYPEINFO();
AutomationNamedArgsSbxArray( sal_Int32 nSeqSize )
: maNameSeq( nSeqSize )
{}
- ::com::sun::star::uno::Sequence< ::rtl::OUString >& getNames( void )
+ ::com::sun::star::uno::Sequence< OUString >& getNames( void )
{ return maNameSeq; }
};
@@ -379,21 +379,21 @@ class BasicCollection : public SbxObject
virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
const SfxHint& rHint, const TypeId& rHintType );
sal_Int32 implGetIndex( SbxVariable* pIndexVar );
- sal_Int32 implGetIndexForName( const String& rName );
+ sal_Int32 implGetIndexForName( const OUString& rName );
void CollAdd( SbxArray* pPar_ );
void CollItem( SbxArray* pPar_ );
void CollRemove( SbxArray* pPar_ );
public:
TYPEINFO();
- BasicCollection( const rtl::OUString& rClassname );
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ BasicCollection( const OUString& rClassname );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
virtual void Clear();
};
-typedef boost::unordered_map< ::rtl::OUString, ::com::sun::star::uno::Any, ::rtl::OUStringHash, ::std::equal_to< ::rtl::OUString > > VBAConstantsHash;
+typedef boost::unordered_map< OUString, ::com::sun::star::uno::Any, ::rtl::OUStringHash, ::std::equal_to< ::rtl::OUString > > VBAConstantsHash;
-typedef std::vector< rtl::OUString > VBAConstantsVector;
+typedef std::vector< OUString > VBAConstantsVector;
class VBAConstantHelper
{
@@ -407,8 +407,8 @@ private:
void init();
public:
static VBAConstantHelper& instance();
- SbxVariable* getVBAConstant( const ::rtl::OUString& rName );
- bool isVBAConstantType( const ::rtl::OUString& rName );
+ SbxVariable* getVBAConstant( const OUString& rName );
+ bool isVBAConstantType( const OUString& rName );
};
#endif
diff --git a/basic/source/inc/scriptcont.hxx b/basic/source/inc/scriptcont.hxx
index 372a298dcac4..a7bdb200444e 100644
--- a/basic/source/inc/scriptcont.hxx
+++ b/basic/source/inc/scriptcont.hxx
@@ -81,10 +81,10 @@ class SfxScriptLibraryContainer : public SfxLibraryContainer, public OldBasicPas
// OldBasicPassword interface
- virtual void setLibraryPassword( const String& rLibraryName, const String& rPassword );
- virtual String getLibraryPassword( const String& rLibraryName );
- virtual void clearLibraryPassword( const String& rLibraryName );
- virtual sal_Bool hasLibraryPassword( const String& rLibraryName );
+ virtual void setLibraryPassword( const OUString& rLibraryName, const OUString& rPassword );
+ virtual OUString getLibraryPassword( const OUString& rLibraryName );
+ virtual void clearLibraryPassword( const OUString& rLibraryName );
+ virtual sal_Bool hasLibraryPassword( const OUString& rLibraryName );
virtual const sal_Char* SAL_CALL getInfoFileName() const;
virtual const sal_Char* SAL_CALL getOldInfoFileName() const;
diff --git a/basic/source/inc/stdobj.hxx b/basic/source/inc/stdobj.hxx
index 324cdf242a86..12935f78d688 100644
--- a/basic/source/inc/stdobj.hxx
+++ b/basic/source/inc/stdobj.hxx
@@ -35,8 +35,8 @@ class SbiStdObject : public SbxObject
virtual void SFX_NOTIFY( SfxBroadcaster& rBC, const TypeId& rBCType,
const SfxHint& rHint, const TypeId& rHintType );
public:
- SbiStdObject( const String&, StarBASIC* );
- virtual SbxVariable* Find( const rtl::OUString&, SbxClassType );
+ SbiStdObject( const OUString&, StarBASIC* );
+ virtual SbxVariable* Find( const OUString&, SbxClassType );
virtual void SetModified( sal_Bool );
};
diff --git a/basic/source/inc/symtbl.hxx b/basic/source/inc/symtbl.hxx
index 87d329c99809..fa7309e0467c 100644
--- a/basic/source/inc/symtbl.hxx
+++ b/basic/source/inc/symtbl.hxx
@@ -34,8 +34,8 @@ enum SbiSymScope { SbLOCAL, SbPARAM, SbPUBLIC, SbGLOBAL, SbRTL };
// makes sure that they don't exist twice.
class SbiStringPool {
- const rtl::OUString aEmpty;
- std::vector<rtl::OUString> aData;
+ const OUString aEmpty;
+ std::vector<OUString> aData;
SbiParser* pParser;
public:
SbiStringPool( SbiParser* );
@@ -43,9 +43,9 @@ public:
sal_uInt32 GetSize() const { return aData.size(); }
// From 8.4.1999: default changed to true because of #64236 -
// change it back to false when the bug is cleanly removed.
- short Add( const rtl::OUString&, bool=true );
+ short Add( const OUString&, bool=true );
short Add( double, SbxDataType );
- const rtl::OUString& Find( sal_uInt32 ) const;
+ const OUString& Find( sal_uInt32 ) const;
SbiParser* GetParser() { return pParser; }
};
@@ -78,16 +78,16 @@ public:
void SetScope( SbiSymScope s ) { eScope = s; }
SbiParser* GetParser() { return pParser; }
- SbiSymDef* AddSym( const String& );
- SbiProcDef* AddProc( const String& );
+ SbiSymDef* AddSym( const OUString& );
+ SbiProcDef* AddProc( const OUString& );
void Add( SbiSymDef* );
- SbiSymDef* Find( const String& ) const; // variable name
+ SbiSymDef* Find( const OUString& ) const; // variable name
SbiSymDef* FindId( sal_uInt16 ) const;
SbiSymDef* Get( sal_uInt16 ) const; // find variable per position
SbiSymDef* First(), *Next(); // iterators
- sal_uInt32 Define( const String& );
- sal_uInt32 Reference( const String& );
+ sal_uInt32 Define( const OUString& );
+ sal_uInt32 Reference( const OUString& );
void CheckRefs();
};
@@ -95,7 +95,7 @@ public:
class SbiSymDef { // general symbol entry
friend class SbiSymPool;
protected:
- String aName;
+ OUString aName;
SbxDataType eType;
SbiSymPool* pIn; // parent pool
SbiSymPool* pPool; // pool for sub-elements
@@ -119,21 +119,21 @@ protected:
sal_uInt16 nDefaultId; // Symbol number of default value
short nFixedStringLength; // String length in: Dim foo As String*Length
public:
- SbiSymDef( const String& );
+ SbiSymDef( const OUString& );
virtual ~SbiSymDef();
virtual SbiProcDef* GetProcDef();
virtual SbiConstDef* GetConstDef();
SbxDataType GetType() const { return eType; }
virtual void SetType( SbxDataType );
- const String& GetName();
+ const OUString& GetName();
SbiSymScope GetScope() const;
- sal_uInt16 GetProcId() const{ return nProcId; }
- sal_uInt32 GetAddr() const { return nChain; }
- sal_uInt16 GetId() const { return nId; }
- sal_uInt16 GetTypeId() const{ return nTypeId; }
+ sal_uInt16 GetProcId() const{ return nProcId; }
+ sal_uInt32 GetAddr() const { return nChain; }
+ sal_uInt16 GetId() const { return nId; }
+ sal_uInt16 GetTypeId() const{ return nTypeId; }
void SetTypeId( sal_uInt16 n ) { nTypeId = n; eType = SbxOBJECT; }
- sal_uInt16 GetPos() const { return nPos; }
+ sal_uInt16 GetPos() const { return nPos; }
void SetLen( short n ){ nLen = n; }
short GetLen() const { return nLen; }
void SetDims( short n ) { nDims = n; }
@@ -143,14 +143,13 @@ public:
void SetParamArray() { bParamArray = true; }
void SetWithEvents() { bWithEvents = true; }
void SetWithBrackets(){ bWithBrackets = true; }
- void SetByVal( bool bByVal_ = true )
- { bByVal = bByVal_; }
+ void SetByVal( bool bByVal_ = true ) { bByVal = bByVal_; }
void SetStatic( bool bAsStatic = true ) { bStatic = bAsStatic; }
void SetNew() { bNew = true; }
void SetDefinedAs() { bAs = true; }
void SetGlobal(bool b){ bGlobal = b; }
void SetDefaultId( sal_uInt16 n ) { nDefaultId = n; }
- sal_uInt16 GetDefaultId( void ) { return nDefaultId; }
+ sal_uInt16 GetDefaultId( void ) { return nDefaultId; }
bool IsOptional() const{ return bOpt; }
bool IsParamArray() const{ return bParamArray; }
bool IsWithEvents() const{ return bWithEvents; }
@@ -175,36 +174,36 @@ private:
class SbiProcDef : public SbiSymDef { // procedure definition (from basic):
SbiSymPool aParams;
SbiSymPool aLabels; // local jump targets
- String aLibName;
- String aAlias;
+ OUString aLibName;
+ OUString aAlias;
sal_uInt16 nLine1, nLine2; // line area
PropertyMode mePropMode; // Marks if this is a property procedure and which
- String maPropName; // Property name if property procedure (!= proc name)
+ OUString maPropName; // Property name if property procedure (!= proc name)
bool bCdecl : 1; // true: CDECL given
bool bPublic : 1; // true: proc is PUBLIC
bool mbProcDecl : 1; // true: instanciated by SbiParser::ProcDecl
public:
- SbiProcDef( SbiParser*, const String&, bool bProcDecl=false );
+ SbiProcDef( SbiParser*, const OUString&, bool bProcDecl=false );
virtual ~SbiProcDef();
virtual SbiProcDef* GetProcDef();
virtual void SetType( SbxDataType );
SbiSymPool& GetParams() { return aParams; }
SbiSymPool& GetLabels() { return aLabels; }
SbiSymPool& GetLocals() { return GetPool();}
- String& GetLib() { return aLibName; }
- String& GetAlias() { return aAlias; }
+ OUString& GetLib() { return aLibName; }
+ OUString& GetAlias() { return aAlias; }
void SetPublic( bool b ) { bPublic = b; }
bool IsPublic() const { return bPublic; }
void SetCdecl( bool b = true) { bCdecl = b; }
bool IsCdecl() const { return bCdecl; }
bool IsUsedForProcDecl() const { return mbProcDecl; }
- void SetLine1( sal_uInt16 n ) { nLine1 = n; }
- sal_uInt16 GetLine1() const { return nLine1; }
- void SetLine2( sal_uInt16 n ) { nLine2 = n; }
- sal_uInt16 GetLine2() const { return nLine2; }
+ void SetLine1( sal_uInt16 n ) { nLine1 = n; }
+ sal_uInt16 GetLine1() const { return nLine1; }
+ void SetLine2( sal_uInt16 n ) { nLine2 = n; }
+ sal_uInt16 GetLine2() const { return nLine2; }
PropertyMode getPropertyMode() { return mePropMode; }
void setPropertyMode( PropertyMode ePropMode );
- const String& GetPropName() { return maPropName; }
+ const OUString& GetPropName() { return maPropName; }
// Match with a forward-declaration. The parameter names are
// compared and the forward declaration is replaced by this
@@ -218,15 +217,15 @@ private:
class SbiConstDef : public SbiSymDef
{
double nVal;
- String aVal;
+ OUString aVal;
public:
- SbiConstDef( const String& );
+ SbiConstDef( const OUString& );
virtual ~SbiConstDef();
virtual SbiConstDef* GetConstDef();
void Set( double, SbxDataType );
- void Set( const String& );
+ void Set( const OUString& );
double GetValue() { return nVal; }
- const String& GetString() { return aVal; }
+ const OUString& GetString() { return aVal; }
};
diff --git a/basic/source/runtime/basrdll.cxx b/basic/source/runtime/basrdll.cxx
index d5d00ea3bad4..882ffc0d666c 100644
--- a/basic/source/runtime/basrdll.cxx
+++ b/basic/source/runtime/basrdll.cxx
@@ -52,7 +52,9 @@ void BasicDLL::EnableBreak( bool bEnable )
BasicDLL* pThis = BASIC_DLL();
DBG_ASSERT( pThis, "BasicDLL::EnableBreak: Noch keine Instanz!" );
if ( pThis )
+ {
pThis->bBreakEnabled = bEnable;
+ }
}
void BasicDLL::SetDebugMode( bool bDebugMode )
@@ -60,7 +62,9 @@ void BasicDLL::SetDebugMode( bool bDebugMode )
BasicDLL* pThis = BASIC_DLL();
DBG_ASSERT( pThis, "BasicDLL::EnableBreak: Noch keine Instanz!" );
if ( pThis )
+ {
pThis->bDebugMode = bDebugMode;
+ }
}
diff --git a/basic/source/runtime/comenumwrapper.cxx b/basic/source/runtime/comenumwrapper.cxx
index dbc2abb2bf03..a5372ffdfe1d 100644
--- a/basic/source/runtime/comenumwrapper.cxx
+++ b/basic/source/runtime/comenumwrapper.cxx
@@ -31,9 +31,7 @@ using namespace ::com::sun::star;
if ( m_xInvocation.is() )
{
sal_Int32 nLength = 0;
- bResult =
- ( ( m_xInvocation->getValue( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "length" ) ) ) >>= nLength )
- && nLength > m_nCurInd );
+ bResult = ( ( m_xInvocation->getValue( OUString("length" ) ) >>= nLength ) && nLength > m_nCurInd );
}
}
catch(const uno::Exception& )
@@ -57,7 +55,7 @@ uno::Any SAL_CALL ComEnumerationWrapper::nextElement()
aArgs[0] <<= m_nCurInd++;
- return m_xInvocation->invoke( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "item" ) ),
+ return m_xInvocation->invoke( OUString("item"),
aArgs,
aNamedParamIndex,
aNamedParam );
diff --git a/basic/source/runtime/ddectrl.cxx b/basic/source/runtime/ddectrl.cxx
index 1b3adcf52861..fd942b0d3815 100644
--- a/basic/source/runtime/ddectrl.cxx
+++ b/basic/source/runtime/ddectrl.cxx
@@ -52,13 +52,19 @@ static const SbError nDdeErrMap[] =
SbError SbiDdeControl::GetLastErr( DdeConnection* pConv )
{
if( !pConv )
+ {
return 0;
+ }
long nErr = pConv->GetError();
if( !nErr )
+ {
return 0;
+ }
if( nErr < DDE_FIRSTERR || nErr > DDE_LASTERR )
+ {
return SbERR_DDE_ERROR;
- return nDdeErrMap[ 2*(nErr - DDE_FIRSTERR) + 1 ];
+ }
+ return nDdeErrMap[ 2 * (nErr - DDE_FIRSTERR) + 1 ];
}
IMPL_LINK_INLINE( SbiDdeControl,Data , DdeData*, pData,
@@ -77,23 +83,25 @@ SbiDdeControl::~SbiDdeControl()
TerminateAll();
}
-sal_Int16 SbiDdeControl::GetFreeChannel()
+size_t SbiDdeControl::GetFreeChannel()
{
- sal_Int16 nChannel = 0;
- sal_Int16 nListSize = static_cast<sal_Int16>(aConvList.size());
+ size_t nChannel = 0;
+ size_t nListSize = aConvList.size();
for (; nChannel < nListSize; ++nChannel)
{
if (aConvList[nChannel] == DDE_FREECHANNEL)
+ {
return nChannel+1;
+ }
}
aConvList.push_back(DDE_FREECHANNEL);
return nChannel+1;
}
-SbError SbiDdeControl::Initiate( const String& rService, const String& rTopic,
- sal_Int16& rnHandle )
+SbError SbiDdeControl::Initiate( const OUString& rService, const OUString& rTopic,
+ size_t& rnHandle )
{
SbError nErr;
DdeConnection* pConv = new DdeConnection( rService, rTopic );
@@ -105,23 +113,25 @@ SbError SbiDdeControl::Initiate( const String& rService, const String& rTopic,
}
else
{
- sal_Int16 nChannel = GetFreeChannel();
+ size_t nChannel = GetFreeChannel();
aConvList[nChannel-1] = pConv;
rnHandle = nChannel;
}
return 0;
}
-SbError SbiDdeControl::Terminate( sal_uInt16 nChannel )
+SbError SbiDdeControl::Terminate( size_t nChannel )
{
if (!nChannel || nChannel > aConvList.size())
+ {
return SbERR_DDE_NO_CHANNEL;
-
+ }
DdeConnection* pConv = aConvList[nChannel-1];
if( pConv == DDE_FREECHANNEL )
+ {
return SbERR_DDE_NO_CHANNEL;
-
+ }
delete pConv;
pConv = DDE_FREECHANNEL;
@@ -131,12 +141,14 @@ SbError SbiDdeControl::Terminate( sal_uInt16 nChannel )
SbError SbiDdeControl::TerminateAll()
{
DdeConnection *conv;
- for (sal_uInt16 nChannel = 0; nChannel < aConvList.size(); ++nChannel)
+ for (size_t nChannel = 0; nChannel < aConvList.size(); ++nChannel)
{
conv = aConvList[nChannel];
if (conv != DDE_FREECHANNEL)
+ {
delete conv;
+ }
}
aConvList.clear();
@@ -144,15 +156,19 @@ SbError SbiDdeControl::TerminateAll()
return 0;
}
-SbError SbiDdeControl::Request( sal_uInt16 nChannel, const String& rItem, String& rResult )
+SbError SbiDdeControl::Request( size_t nChannel, const OUString& rItem, OUString& rResult )
{
if (!nChannel || nChannel > aConvList.size())
+ {
return SbERR_DDE_NO_CHANNEL;
+ }
DdeConnection* pConv = aConvList[nChannel-1];
if( pConv == DDE_FREECHANNEL )
+ {
return SbERR_DDE_NO_CHANNEL;
+ }
DdeRequest aRequest( *pConv, rItem, 30000 );
aRequest.SetDataHdl( LINK( this, SbiDdeControl, Data ) );
@@ -161,31 +177,36 @@ SbError SbiDdeControl::Request( sal_uInt16 nChannel, const String& rItem, String
return GetLastErr( pConv );
}
-SbError SbiDdeControl::Execute( sal_uInt16 nChannel, const String& rCommand )
+SbError SbiDdeControl::Execute( size_t nChannel, const OUString& rCommand )
{
if (!nChannel || nChannel > aConvList.size())
+ {
return SbERR_DDE_NO_CHANNEL;
+ }
DdeConnection* pConv = aConvList[nChannel-1];
if( pConv == DDE_FREECHANNEL )
+ {
return SbERR_DDE_NO_CHANNEL;
-
+ }
DdeExecute aRequest( *pConv, rCommand, 30000 );
aRequest.Execute();
return GetLastErr( pConv );
}
-SbError SbiDdeControl::Poke( sal_uInt16 nChannel, const String& rItem, const String& rData )
+SbError SbiDdeControl::Poke( size_t nChannel, const OUString& rItem, const OUString& rData )
{
if (!nChannel || nChannel > aConvList.size())
+ {
return SbERR_DDE_NO_CHANNEL;
-
+ }
DdeConnection* pConv = aConvList[nChannel-1];
if( pConv == DDE_FREECHANNEL )
+ {
return SbERR_DDE_NO_CHANNEL;
-
+ }
DdePoke aRequest( *pConv, rItem, DdeData(rData), 30000 );
aRequest.Execute();
return GetLastErr( pConv );
diff --git a/basic/source/runtime/ddectrl.hxx b/basic/source/runtime/ddectrl.hxx
index 14489dfe3ff2..27be76fe0c10 100644
--- a/basic/source/runtime/ddectrl.hxx
+++ b/basic/source/runtime/ddectrl.hxx
@@ -22,7 +22,6 @@
#include <tools/link.hxx>
#include <basic/sberrors.hxx>
-#include <tools/string.hxx>
class DdeConnection;
class DdeData;
@@ -32,22 +31,22 @@ class SbiDdeControl
private:
DECL_LINK( Data, DdeData* );
SbError GetLastErr( DdeConnection* );
- sal_Int16 GetFreeChannel();
+ size_t GetFreeChannel();
std::vector<DdeConnection*> aConvList;
- String aData;
+ OUString aData;
public:
SbiDdeControl();
~SbiDdeControl();
- SbError Initiate( const String& rService, const String& rTopic,
- sal_Int16& rnHandle );
- SbError Terminate( sal_uInt16 nChannel );
+ SbError Initiate( const OUString& rService, const OUString& rTopic,
+ size_t& rnHandle );
+ SbError Terminate( size_t nChannel );
SbError TerminateAll();
- SbError Request( sal_uInt16 nChannel, const String& rItem, String& rResult );
- SbError Execute( sal_uInt16 nChannel, const String& rCommand );
- SbError Poke( sal_uInt16 nChannel, const String& rItem, const String& rData );
+ SbError Request( size_t nChannel, const OUString& rItem, OUString& rResult );
+ SbError Execute( size_t nChannel, const OUString& rCommand );
+ SbError Poke( size_t nChannel, const OUString& rItem, const OUString& rData );
};
#endif
diff --git a/basic/source/runtime/dllmgr-x64.cxx b/basic/source/runtime/dllmgr-x64.cxx
index c7a7729fb76a..14d782ac68be 100644
--- a/basic/source/runtime/dllmgr-x64.cxx
+++ b/basic/source/runtime/dllmgr-x64.cxx
@@ -185,7 +185,7 @@ SbError marshalString(
{
OSL_ASSERT(variable != 0 && buffer != 0);
rtl::OString str;
- SbError e = convert(variable->GetString(), &str);
+ SbError e = convert(variable->GetOUString(), &str);
if (e != ERRCODE_NONE) {
return e;
}
@@ -448,7 +448,7 @@ SbError unmarshalString(StringData const & data, SbxVariable & result) {
return e;
}
}
- data.variable->PutString(String(str));
+ data.variable->PutString(str);
return ERRCODE_NONE;
}
@@ -575,7 +575,7 @@ SbError call(
if (e != ERRCODE_NONE) {
return e;
}
- result.PutString(String(s2));
+ result.PutString(s2);
break;
}
case SbxOBJECT:
diff --git a/basic/source/runtime/dllmgr-x86.cxx b/basic/source/runtime/dllmgr-x86.cxx
index db583fa90035..1e6bec350237 100644
--- a/basic/source/runtime/dllmgr-x86.cxx
+++ b/basic/source/runtime/dllmgr-x86.cxx
@@ -193,7 +193,7 @@ SbError marshalString(
{
OSL_ASSERT(variable != 0 && buffer != 0);
rtl::OString str;
- SbError e = convert(variable->GetString(), &str);
+ SbError e = convert(variable->GetOUString(), &str);
if (e != ERRCODE_NONE) {
return e;
}
@@ -463,7 +463,7 @@ SbError unmarshalString(StringData const & data, SbxVariable & result) {
return e;
}
}
- data.variable->PutString(String(str));
+ data.variable->PutString(str);
return ERRCODE_NONE;
}
@@ -528,7 +528,7 @@ SbError call(
if (e != ERRCODE_NONE) {
return e;
}
- result.PutString(String(s2));
+ result.PutString(s2);
break;
}
case SbxOBJECT:
diff --git a/basic/source/runtime/inputbox.cxx b/basic/source/runtime/inputbox.cxx
index 2bfc65e79af9..8a03001ef4f6 100644
--- a/basic/source/runtime/inputbox.cxx
+++ b/basic/source/runtime/inputbox.cxx
@@ -156,11 +156,11 @@ RTLFUNC(InputBox)
String aTitle;
String aDefault;
sal_Int32 nX = -1, nY = -1; // center
- const String& rPrompt = rPar.Get(1)->GetString();
+ const String& rPrompt = rPar.Get(1)->GetOUString();
if ( nArgCount > 2 && !rPar.Get(2)->IsErr() )
- aTitle = rPar.Get(2)->GetString();
+ aTitle = rPar.Get(2)->GetOUString();
if ( nArgCount > 3 && !rPar.Get(3)->IsErr() )
- aDefault = rPar.Get(3)->GetString();
+ aDefault = rPar.Get(3)->GetOUString();
if ( nArgCount > 4 )
{
if ( nArgCount != 6 )
diff --git a/basic/source/runtime/iosys.cxx b/basic/source/runtime/iosys.cxx
index d03b8a67d58d..c6cf5fad1cb5 100644
--- a/basic/source/runtime/iosys.cxx
+++ b/basic/source/runtime/iosys.cxx
@@ -71,15 +71,15 @@ class SbiInputDialog : public ModalDialog {
Edit aInput;
OKButton aOk;
CancelButton aCancel;
- String aText;
+ OUString aText;
DECL_LINK( Ok, Window * );
DECL_LINK( Cancel, Window * );
public:
- SbiInputDialog( Window*, const String& );
- const String& GetInput() { return aText; }
+ SbiInputDialog( Window*, const OUString& );
+ const OUString& GetInput() { return aText; }
};
-SbiInputDialog::SbiInputDialog( Window* pParent, const String& rPrompt )
+SbiInputDialog::SbiInputDialog( Window* pParent, const OUString& rPrompt )
:ModalDialog( pParent, WB_3DLOOK | WB_MOVEABLE | WB_CLOSEABLE ),
aInput( this, WB_3DLOOK | WB_LEFT | WB_BORDER ),
aOk( this ), aCancel( this )
@@ -142,32 +142,42 @@ SbiStream::~SbiStream()
void SbiStream::MapError()
{
if( pStrm )
- switch( pStrm->GetError() )
- {
+ {
+ switch( pStrm->GetError() )
+ {
case SVSTREAM_OK:
- nError = 0; break;
+ nError = 0;
+ break;
case SVSTREAM_FILE_NOT_FOUND:
- nError = SbERR_FILE_NOT_FOUND; break;
+ nError = SbERR_FILE_NOT_FOUND;
+ break;
case SVSTREAM_PATH_NOT_FOUND:
- nError = SbERR_PATH_NOT_FOUND; break;
+ nError = SbERR_PATH_NOT_FOUND;
+ break;
case SVSTREAM_TOO_MANY_OPEN_FILES:
- nError = SbERR_TOO_MANY_FILES; break;
+ nError = SbERR_TOO_MANY_FILES;
+ break;
case SVSTREAM_ACCESS_DENIED:
- nError = SbERR_ACCESS_DENIED; break;
+ nError = SbERR_ACCESS_DENIED;
+ break;
case SVSTREAM_INVALID_PARAMETER:
- nError = SbERR_BAD_ARGUMENT; break;
+ nError = SbERR_BAD_ARGUMENT;
+ break;
case SVSTREAM_OUTOFMEMORY:
- nError = SbERR_NO_MEMORY; break;
+ nError = SbERR_NO_MEMORY;
+ break;
default:
- nError = SbERR_IO_ERROR; break;
+ nError = SbERR_IO_ERROR;
+ break;
+ }
}
}
// TODO: Code is copied from daemons2/source/uno/asciiEncoder.cxx
-::rtl::OUString findUserInDescription( const ::rtl::OUString& aDescription )
+OUString findUserInDescription( const ::rtl::OUString& aDescription )
{
- ::rtl::OUString user;
+ OUString user;
sal_Int32 index;
sal_Int32 lastIndex = 0;
@@ -175,13 +185,13 @@ void SbiStream::MapError()
do
{
index = aDescription.indexOf((sal_Unicode) ',', lastIndex);
- ::rtl::OUString token = (index == -1) ? aDescription.copy(lastIndex) : aDescription.copy(lastIndex, index - lastIndex);
+ OUString token = (index == -1) ? aDescription.copy(lastIndex) : aDescription.copy(lastIndex, index - lastIndex);
lastIndex = index + 1;
sal_Int32 eindex = token.indexOf((sal_Unicode)'=');
- ::rtl::OUString left = token.copy(0, eindex).toAsciiLowerCase().trim();
- ::rtl::OUString right = INetURLObject::decode( token.copy(eindex + 1).trim(), '%',
+ OUString left = token.copy(0, eindex).toAsciiLowerCase().trim();
+ OUString right = INetURLObject::decode( token.copy(eindex + 1).trim(), '%',
INetURLObject::DECODE_WITH_CHARSET );
if( left == "user" )
@@ -206,7 +216,7 @@ bool needSecurityRestrictions( void )
// Get system user to compare to portal user
oslSecurity aSecurity = osl_getCurrentSecurity();
- ::rtl::OUString aSystemUser;
+ OUString aSystemUser;
sal_Bool bRet = osl_getUserName( aSecurity, &aSystemUser.pData );
if( !bRet )
{
@@ -234,8 +244,8 @@ bool needSecurityRestrictions( void )
for( i = 0 ; i < nBridgeCount ; i++ )
{
const Reference< XBridge >& rxBridge = pBridges[ i ];
- ::rtl::OUString aDescription = rxBridge->getDescription();
- ::rtl::OUString aPortalUser = findUserInDescription( aDescription );
+ OUString aDescription = rxBridge->getDescription();
+ OUString aPortalUser = findUserInDescription( aDescription );
if( !aPortalUser.isEmpty() )
{
// User Found, compare to system user
@@ -296,16 +306,16 @@ class OslStream : public SvStream
osl::File maFile;
public:
- OslStream( const String& rName, short nStrmMode );
- ~OslStream();
+ OslStream( const OUString& rName, short nStrmMode );
+ ~OslStream();
virtual sal_uIntPtr GetData( void* pData, sal_uIntPtr nSize );
virtual sal_uIntPtr PutData( const void* pData, sal_uIntPtr nSize );
virtual sal_uIntPtr SeekPos( sal_uIntPtr nPos );
- virtual void FlushData();
- virtual void SetSize( sal_uIntPtr nSize );
+ virtual void FlushData();
+ virtual void SetSize( sal_uIntPtr nSize );
};
-OslStream::OslStream( const String& rName, short nStrmMode )
+OslStream::OslStream( const OUString& rName, short nStrmMode )
: maFile( rName )
{
sal_uInt32 nFlags;
@@ -360,9 +370,13 @@ sal_uIntPtr OslStream::SeekPos( sal_uIntPtr nPos )
{
::osl::FileBase::RC rc = ::osl::FileBase::E_None;
if( nPos == STREAM_SEEK_TO_END )
+ {
rc = maFile.setPos( osl_Pos_End, 0 );
+ }
else
+ {
rc = maFile.setPos( osl_Pos_Absolut, (sal_uInt64)nPos );
+ }
OSL_VERIFY(rc == ::osl::FileBase::E_None);
sal_uInt64 nRealPos(0);
maFile.getPos( nRealPos );
@@ -385,14 +399,14 @@ class UCBStream : public SvStream
Reference< XStream > xS;
Reference< XSeekable > xSeek;
public:
- UCBStream( Reference< XInputStream > & xIS );
- UCBStream( Reference< XStream > & xS );
- ~UCBStream();
+ UCBStream( Reference< XInputStream > & xIS );
+ UCBStream( Reference< XStream > & xS );
+ ~UCBStream();
virtual sal_uIntPtr GetData( void* pData, sal_uIntPtr nSize );
virtual sal_uIntPtr PutData( const void* pData, sal_uIntPtr nSize );
virtual sal_uIntPtr SeekPos( sal_uIntPtr nPos );
- virtual void FlushData();
- virtual void SetSize( sal_uIntPtr nSize );
+ virtual void FlushData();
+ virtual void SetSize( sal_uIntPtr nSize );
};
UCBStream::UCBStream( Reference< XInputStream > & rStm )
@@ -413,12 +427,16 @@ UCBStream::~UCBStream()
try
{
if( xIS.is() )
+ {
xIS->closeInput();
+ }
else if( xS.is() )
{
Reference< XInputStream > xIS_ = xS->getInputStream();
if( xIS_.is() )
+ {
xIS_->closeInput();
+ }
}
}
catch(const Exception & )
@@ -447,7 +465,9 @@ sal_uIntPtr UCBStream::GetData( void* pData, sal_uIntPtr nSize )
return nSize;
}
else
+ {
SetError( ERRCODE_IO_GENERAL );
+ }
}
catch(const Exception & )
{
@@ -468,7 +488,9 @@ sal_uIntPtr UCBStream::PutData( const void* pData, sal_uIntPtr nSize )
return nSize;
}
else
+ {
SetError( ERRCODE_IO_GENERAL );
+ }
}
catch(const Exception & )
{
@@ -485,12 +507,16 @@ sal_uIntPtr UCBStream::SeekPos( sal_uIntPtr nPos )
{
sal_uIntPtr nLen = sal::static_int_cast<sal_uIntPtr>( xSeek->getLength() );
if( nPos > nLen )
+ {
nPos = nLen;
+ }
xSeek->seek( nPos );
return nPos;
}
else
+ {
SetError( ERRCODE_IO_GENERAL );
+ }
}
catch(const Exception & )
{
@@ -499,15 +525,19 @@ sal_uIntPtr UCBStream::SeekPos( sal_uIntPtr nPos )
return 0;
}
-void UCBStream::FlushData()
+void UCBStream::FlushData()
{
try
{
Reference< XOutputStream > xOSFromS;
if( xS.is() && (xOSFromS = xS->getOutputStream()).is() )
+ {
xOSFromS->flush();
+ }
else
+ {
SetError( ERRCODE_IO_GENERAL );
+ }
}
catch(const Exception & )
{
@@ -533,9 +563,11 @@ SbError SbiStream::Open
nLine = 0;
nExpandOnWriteTo = 0;
if( ( nStrmMode & ( STREAM_READ|STREAM_WRITE ) ) == STREAM_READ )
+ {
nStrmMode |= STREAM_NOCREATE;
- String aStr(rtl::OStringToOUString(rName, osl_getThreadTextEncoding()));
- String aNameStr = getFullPath( aStr );
+ }
+ OUString aStr(rtl::OStringToOUString(rName, osl_getThreadTextEncoding()));
+ OUString aNameStr = getFullPath( aStr );
if( hasUno() )
{
@@ -583,10 +615,14 @@ SbError SbiStream::Open
pStrm = new OslStream( aNameStr, nStrmMode );
}
if( IsAppend() )
+ {
pStrm->Seek( STREAM_SEEK_TO_END );
+ }
MapError();
if( nError )
+ {
delete pStrm, pStrm = NULL;
+ }
return nError;
}
@@ -613,9 +649,13 @@ SbError SbiStream::Read(rtl::OString& rBuf, sal_uInt16 n, bool bForceReadingPerB
else
{
if( !n )
+ {
n = nLen;
+ }
if( !n )
+ {
return nError = SbERR_BAD_RECORD_LENGTH;
+ }
rtl::OStringBuffer aBuffer(read_uInt8s_ToOString(*pStrm, n));
//Pad it out with ' ' to the requested length on short read
sal_Int32 nRequested = sal::static_int_cast<sal_Int32>(n);
@@ -624,7 +664,9 @@ SbError SbiStream::Read(rtl::OString& rBuf, sal_uInt16 n, bool bForceReadingPerB
}
MapError();
if( !nError && pStrm->IsEof() )
+ {
nError = SbERR_READ_PAST_EOF;
+ }
return nError;
}
@@ -651,7 +693,9 @@ void SbiStream::ExpandFile()
sal_uIntPtr nDiff = nExpandOnWriteTo - nCur;
char c = 0;
while( nDiff-- )
+ {
*pStrm << c;
+ }
}
else
{
@@ -675,8 +719,9 @@ SbError SbiStream::Write( const rtl::OString& rBuf, sal_uInt16 n )
{
ExpandFile();
if( IsAppend() )
+ {
pStrm->Seek( STREAM_SEEK_TO_END );
-
+ }
if( IsText() )
{
aLine = aLine + rBuf;
@@ -687,7 +732,9 @@ SbError SbiStream::Write( const rtl::OString& rBuf, sal_uInt16 n )
{
aLine = aLine.copy(0, nLineLen);
if (nLineLen && aLine[--nLineLen] == 0x0D)
+ {
aLine = aLine.copy(0, nLineLen);
+ }
WriteLines(*pStrm, aLine);
aLine = rtl::OString();
}
@@ -695,9 +742,13 @@ SbError SbiStream::Write( const rtl::OString& rBuf, sal_uInt16 n )
else
{
if( !n )
+ {
n = nLen;
+ }
if( !n )
+ {
return nError = SbERR_BAD_RECORD_LENGTH;
+ }
pStrm->Write(rBuf.getStr(), n);
MapError();
}
@@ -716,7 +767,9 @@ SbiIoSystem* SbGetIoSystem()
SbiIoSystem::SbiIoSystem()
{
for( short i = 0; i < CHANNELS; i++ )
+ {
pChan[ i ] = NULL;
+ }
nChan = 0;
nError = 0;
}
@@ -736,15 +789,21 @@ void SbiIoSystem::Open(short nCh, const rtl::OString& rName, short nMode, short
{
nError = 0;
if( nCh >= CHANNELS || !nCh )
+ {
nError = SbERR_BAD_CHANNEL;
+ }
else if( pChan[ nCh ] )
+ {
nError = SbERR_FILE_ALREADY_OPEN;
+ }
else
{
pChan[ nCh ] = new SbiStream;
nError = pChan[ nCh ]->Open( nCh, rName, nMode, nFlags, nLen );
- if( nError )
+ if( nError )
+ {
delete pChan[ nCh ], pChan[ nCh ] = NULL;
+ }
}
nChan = 0;
}
@@ -753,9 +812,13 @@ void SbiIoSystem::Open(short nCh, const rtl::OString& rName, short nMode, short
void SbiIoSystem::Close()
{
if( !nChan )
+ {
nError = SbERR_BAD_CHANNEL;
+ }
else if( !pChan[ nChan ] )
+ {
nError = SbERR_BAD_CHANNEL;
+ }
else
{
nError = pChan[ nChan ]->Close();
@@ -776,7 +839,9 @@ void SbiIoSystem::Shutdown()
delete pChan[ i ];
pChan[ i ] = NULL;
if( n && !nError )
+ {
nError = n;
+ }
}
}
nChan = 0;
@@ -786,9 +851,9 @@ void SbiIoSystem::Shutdown()
rtl::OUString aOutStr(rtl::OStringToOUString(aOut, osl_getThreadTextEncoding()));
#if defined GCC
Window* pParent = Application::GetDefDialogParent();
- MessBox( pParent, WinBits( WB_OK ), String(), aOutStr ).Execute();
+ MessBox( pParent, WinBits( WB_OK ), OUString(), aOutStr ).Execute();
#else
- MessBox( GetpApp()->GetDefDialogParent(), WinBits( WB_OK ), String(), aOutStr ).Execute();
+ MessBox( GetpApp()->GetDefDialogParent(), WinBits( WB_OK ), OUString(), aOutStr ).Execute();
#endif
}
aOut = rtl::OString();
@@ -798,11 +863,17 @@ void SbiIoSystem::Shutdown()
void SbiIoSystem::Read(rtl::OString& rBuf, short n)
{
if( !nChan )
+ {
ReadCon( rBuf );
+ }
else if( !pChan[ nChan ] )
+ {
nError = SbERR_BAD_CHANNEL;
+ }
else
+ {
nError = pChan[ nChan ]->Read( rBuf, n );
+ }
}
char SbiIoSystem::Read()
@@ -819,20 +890,30 @@ char SbiIoSystem::Read()
aIn = aIn.copy(1);
}
else if( !pChan[ nChan ] )
+ {
nError = SbERR_BAD_CHANNEL;
+ }
else
+ {
nError = pChan[ nChan ]->Read( ch );
+ }
return ch;
}
void SbiIoSystem::Write(const rtl::OString& rBuf, short n)
{
if( !nChan )
+ {
WriteCon( rBuf );
+ }
else if( !pChan[ nChan ] )
+ {
nError = SbERR_BAD_CHANNEL;
+ }
else
+ {
nError = pChan[ nChan ]->Write( rBuf, n );
+ }
}
// nChannel == 0..CHANNELS-1
@@ -841,7 +922,9 @@ SbiStream* SbiIoSystem::GetStream( short nChannel ) const
{
SbiStream* pRet = 0;
if( nChannel >= 0 && nChannel < CHANNELS )
+ {
pRet = pChan[ nChannel ];
+ }
return pRet;
}
@@ -855,7 +938,9 @@ void SbiIoSystem::CloseAll(void)
delete pChan[ i ];
pChan[ i ] = NULL;
if( n && !nError )
+ {
nError = n;
+ }
}
}
}
@@ -869,12 +954,16 @@ void SbiIoSystem::CloseAll(void)
void SbiIoSystem::ReadCon(rtl::OString& rIn)
{
- rtl::OUString aPromptStr(rtl::OStringToOUString(aPrompt, osl_getThreadTextEncoding()));
+ OUString aPromptStr(rtl::OStringToOUString(aPrompt, osl_getThreadTextEncoding()));
SbiInputDialog aDlg( NULL, aPromptStr );
if( aDlg.Execute() )
+ {
rIn = rtl::OUStringToOString(aDlg.GetInput(), osl_getThreadTextEncoding());
+ }
else
+ {
nError = SbERR_USER_ABORT;
+ }
aPrompt = rtl::OString();
}
@@ -888,22 +977,32 @@ void SbiIoSystem::WriteCon(const rtl::OString& rText)
if( n1 != -1 || n2 != -1 )
{
if( n1 == -1 )
+ {
n1 = n2;
+ }
else if( n2 == -1 )
+ {
n2 = n1;
+ }
if( n1 > n2 )
+ {
n1 = n2;
- rtl::OString s(aOut.copy(0, n1));
+ }
+ OString s(aOut.copy(0, n1));
aOut = aOut.copy(n1);
while (aOut[0] == '\n' || aOut[0] == '\r')
+ {
aOut = aOut.copy(1);
- String aStr(rtl::OStringToOUString(s, osl_getThreadTextEncoding()));
+ }
+ OUString aStr(rtl::OStringToOUString(s, osl_getThreadTextEncoding()));
{
SolarMutexGuard aSolarGuard;
if( !MessBox( GetpApp()->GetDefDialogParent(),
WinBits( WB_OK_CANCEL | WB_DEF_OK ),
- String(), aStr ).Execute() )
+ OUString(), aStr ).Execute() )
+ {
nError = SbERR_USER_ABORT;
+ }
}
}
}
diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx
index 054de265eb46..881ee8678c0e 100644
--- a/basic/source/runtime/methods.cxx
+++ b/basic/source/runtime/methods.cxx
@@ -107,16 +107,17 @@ SbxVariable* getDefaultProp( SbxVariable* pRef );
// from source/classes/sbxmod.cxx
uno::Reference< frame::XModel > getDocumentModel( StarBASIC* );
-static void FilterWhiteSpace( String& rStr )
+static void FilterWhiteSpace( OUString& rStr )
{
- if (!rStr.Len())
+ if (rStr.isEmpty())
+ {
return;
-
+ }
rtl::OUStringBuffer aRet;
- for (xub_StrLen i = 0; i < rStr.Len(); ++i)
+ for (sal_Int32 i = 0; i < rStr.getLength(); ++i)
{
- sal_Unicode cChar = rStr.GetChar(i);
+ sal_Unicode cChar = rStr[i];
if ((cChar != ' ') && (cChar != '\t') &&
(cChar != '\n') && (cChar != '\r'))
{
@@ -152,9 +153,9 @@ static inline bool isFolder( FileStatus::Type aType )
// Converts possibly relative paths to absolute paths
// according to the setting done by ChDir/ChDrive
-String getFullPath( const String& aRelPath )
+OUString getFullPath( const OUString& aRelPath )
{
- ::rtl::OUString aFileURL;
+ OUString aFileURL;
// #80204 Try first if it already is a valid URL
INetURLObject aURLObj( aRelPath );
@@ -178,7 +179,7 @@ static uno::Reference< ucb::XSimpleFileAccess3 > getFileAccess( void )
if( xSMgr.is() )
{
xSFI = uno::Reference< ucb::XSimpleFileAccess3 >( xSMgr->createInstance
- ( ::rtl::OUString("com.sun.star.ucb.SimpleFileAccess" ) ), uno::UNO_QUERY );
+ ( OUString("com.sun.star.ucb.SimpleFileAccess" ) ), uno::UNO_QUERY );
}
}
return xSFI;
@@ -195,7 +196,7 @@ RTLFUNC(CreateObject)
{
(void)bWrite;
- String aClass( rPar.Get( 1 )->GetString() );
+ OUString aClass( rPar.Get( 1 )->GetOUString() );
SbxObjectRef p = SbxBase::CreateObject( aClass );
if( !p )
StarBASIC::Error( SbERR_CANNOT_LOAD );
@@ -217,7 +218,7 @@ RTLFUNC(Error)
StarBASIC::Error( SbERR_INTERNAL_ERROR );
else
{
- String aErrorMsg;
+ OUString aErrorMsg;
SbError nErr = 0L;
sal_Int32 nCode = 0;
if( rPar.Count() == 1 )
@@ -229,14 +230,18 @@ RTLFUNC(Error)
{
nCode = rPar.Get( 1 )->GetLong();
if( nCode > 65535L )
+ {
StarBASIC::Error( SbERR_CONVERSION );
+ }
else
+ {
nErr = StarBASIC::GetSfxFromVBError( (sal_uInt16)nCode );
+ }
}
bool bVBA = SbiRuntime::isVBAEnabled();
- String tmpErrMsg;
- if( bVBA && aErrorMsg.Len() > 0 )
+ OUString tmpErrMsg;
+ if( bVBA && !aErrorMsg.isEmpty())
{
tmpErrMsg = aErrorMsg;
}
@@ -252,7 +257,9 @@ RTLFUNC(Error)
{
uno::Reference< ooo::vba::XErrObject > xErrObj( SbxErrObject::getUnoErrObject() );
if ( xErrObj.is() && xErrObj->getNumber() == nCode && !xErrObj->getDescription().isEmpty() )
+ {
tmpErrMsg = xErrObj->getDescription();
+ }
}
rPar.Get( 0 )->PutString( tmpErrMsg );
}
@@ -312,7 +319,9 @@ RTLFUNC(Abs)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariableRef pArg = rPar.Get( 1 );
@@ -327,19 +336,21 @@ RTLFUNC(Asc)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariableRef pArg = rPar.Get( 1 );
- String aStr( pArg->GetString() );
- if ( aStr.Len() == 0 )
+ OUString aStr( pArg->GetOUString() );
+ if ( aStr.isEmpty())
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
rPar.Get(0)->PutEmpty();
}
else
{
- sal_Unicode aCh = aStr.GetBuffer()[0];
+ sal_Unicode aCh = aStr[0];
rPar.Get(0)->PutLong( aCh );
}
}
@@ -348,12 +359,14 @@ RTLFUNC(Asc)
void implChr( SbxArray& rPar, bool bChrW )
{
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariableRef pArg = rPar.Get( 1 );
- rtl::OUString aStr;
+ OUString aStr;
if( !bChrW && SbiRuntime::isVBAEnabled() )
{
sal_Char c = static_cast<sal_Char>(pArg->GetByte());
@@ -362,7 +375,7 @@ void implChr( SbxArray& rPar, bool bChrW )
else
{
sal_Unicode aCh = static_cast<sal_Unicode>(pArg->GetUShort());
- aStr = rtl::OUString(aCh);
+ aStr = OUString(aCh);
}
rPar.Get(0)->PutString( aStr );
}
@@ -406,29 +419,35 @@ RTLFUNC(CurDir)
int nCurDir = 0; // Current dir // JSM
if ( rPar.Count() == 2 )
{
- String aDrive = rPar.Get(1)->GetString();
- if ( aDrive.Len() != 1 )
+ OUString aDrive = rPar.Get(1)->GetOUString();
+ if ( aDrive.getLength() != 1 )
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
else
{
- nCurDir = (int)aDrive.GetBuffer()[0];
+ nCurDir = (int)aDrive[0];
if ( !isalpha( nCurDir ) )
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
else
+ {
nCurDir -= ( 'A' - 1 );
+ }
}
}
char* pBuffer = new char[ _MAX_PATH ];
if ( _getdcwd( nCurDir, pBuffer, _MAX_PATH ) != 0 )
+ {
rPar.Get(0)->PutString( rtl::OUString::createFromAscii( pBuffer ) );
+ }
else
+ {
StarBASIC::Error( SbERR_NO_DEVICE );
+ }
delete [] pBuffer;
#elif defined( UNX )
@@ -471,10 +490,14 @@ RTLFUNC(ChDir)
{
// VBA: track current directory per document type (separately for Writer, Calc, Impress, etc.)
if( SbiRuntime::isVBAEnabled() )
- ::basic::vba::registerCurrentDirectory( getDocumentModel( pBasic ), rPar.Get(1)->GetString() );
+ {
+ ::basic::vba::registerCurrentDirectory( getDocumentModel( pBasic ), rPar.Get(1)->GetOUString() );
+ }
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(ChDrive)
@@ -484,30 +507,36 @@ RTLFUNC(ChDrive)
rPar.Get(0)->PutEmpty();
if (rPar.Count() != 2)
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
// Implementation of StepRENAME with UCB
-void implStepRenameUCB( const String& aSource, const String& aDest )
+void implStepRenameUCB( const OUString& aSource, const OUString& aDest )
{
uno::Reference< ucb::XSimpleFileAccess3 > xSFI = getFileAccess();
if( xSFI.is() )
{
try
{
- String aSourceFullPath = getFullPath( aSource );
+ OUString aSourceFullPath = getFullPath( aSource );
if( !xSFI->exists( aSourceFullPath ) )
{
StarBASIC::Error( SbERR_FILE_NOT_FOUND );
return;
}
- String aDestFullPath = getFullPath( aDest );
+ OUString aDestFullPath = getFullPath( aDest );
if( xSFI->exists( aDestFullPath ) )
+ {
StarBASIC::Error( SbERR_FILE_EXISTS );
+ }
else
+ {
xSFI->move( aSourceFullPath, aDestFullPath );
+ }
}
catch(const Exception & )
{
@@ -517,7 +546,7 @@ void implStepRenameUCB( const String& aSource, const String& aDest )
}
// Implementation of StepRENAME with OSL
-void implStepRenameOSL( const String& aSource, const String& aDest )
+void implStepRenameOSL( const OUString& aSource, const OUString& aDest )
{
FileBase::RC nRet = File::move( getFullPathUNC( aSource ), getFullPathUNC( aDest ) );
if( nRet != FileBase::E_None )
@@ -534,8 +563,8 @@ RTLFUNC(FileCopy)
rPar.Get(0)->PutEmpty();
if (rPar.Count() == 3)
{
- String aSource = rPar.Get(1)->GetString();
- String aDest = rPar.Get(2)->GetString();
+ OUString aSource = rPar.Get(1)->GetOUString();
+ OUString aDest = rPar.Get(2)->GetOUString();
if( hasUno() )
{
uno::Reference< ucb::XSimpleFileAccess3 > xSFI = getFileAccess();
@@ -572,14 +601,14 @@ RTLFUNC(Kill)
rPar.Get(0)->PutEmpty();
if (rPar.Count() == 2)
{
- String aFileSpec = rPar.Get(1)->GetString();
+ OUString aFileSpec = rPar.Get(1)->GetOUString();
if( hasUno() )
{
uno::Reference< ucb::XSimpleFileAccess3 > xSFI = getFileAccess();
if( xSFI.is() )
{
- String aFullPath = getFullPath( aFileSpec );
+ OUString aFullPath = getFullPath( aFileSpec );
if( !xSFI->exists( aFullPath ) || xSFI->isFolder( aFullPath ) )
{
StarBASIC::Error( SbERR_FILE_NOT_FOUND );
@@ -601,7 +630,9 @@ RTLFUNC(Kill)
}
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(MkDir)
@@ -612,7 +643,7 @@ RTLFUNC(MkDir)
rPar.Get(0)->PutEmpty();
if (rPar.Count() == 2)
{
- String aPath = rPar.Get(1)->GetString();
+ OUString aPath = rPar.Get(1)->GetOUString();
if( hasUno() )
{
@@ -635,13 +666,15 @@ RTLFUNC(MkDir)
}
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
// In OSL only empty directories can be deleted
// so we have to delete all files recursively
-void implRemoveDirRecursive( const String& aDirPath )
+void implRemoveDirRecursive( const OUString& aDirPath )
{
DirectoryItem aItem;
FileBase::RC nRet = DirectoryItem::get( aDirPath, aItem );
@@ -671,12 +704,13 @@ void implRemoveDirRecursive( const String& aDirPath )
DirectoryItem aItem2;
nRet = aDir.getNextItem( aItem2 );
if( nRet != FileBase::E_None )
+ {
break;
-
+ }
// Handle flags
FileStatus aFileStatus2( osl_FileStatus_Mask_Type | osl_FileStatus_Mask_FileURL );
nRet = aItem2.getFileStatus( aFileStatus2 );
- ::rtl::OUString aPath = aFileStatus2.getFileURL();
+ OUString aPath = aFileStatus2.getFileURL();
// Directory?
FileStatus::Type aType2 = aFileStatus2.getFileType();
@@ -704,7 +738,7 @@ RTLFUNC(RmDir)
rPar.Get(0)->PutEmpty();
if (rPar.Count() == 2)
{
- String aPath = rPar.Get(1)->GetString();
+ OUString aPath = rPar.Get(1)->GetOUString();
if( hasUno() )
{
uno::Reference< ucb::XSimpleFileAccess3 > xSFI = getFileAccess();
@@ -721,7 +755,7 @@ RTLFUNC(RmDir)
bool bCompatibility = ( pInst && pInst->IsCompatibility() );
if( bCompatibility )
{
- Sequence< ::rtl::OUString > aContent = xSFI->getFolderContents( aPath, true );
+ Sequence< OUString > aContent = xSFI->getFolderContents( aPath, true );
sal_Int32 nCount = aContent.getLength();
if( nCount > 0 )
{
@@ -744,7 +778,9 @@ RTLFUNC(RmDir)
}
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(SendKeys)
@@ -778,11 +814,13 @@ RTLFUNC(FileLen)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariableRef pArg = rPar.Get( 1 );
- String aStr( pArg->GetString() );
+ OUString aStr( pArg->GetOUString() );
sal_Int32 nLen = 0;
if( hasUno() )
{
@@ -818,7 +856,9 @@ RTLFUNC(Hex)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariableRef pArg = rPar.Get( 1 );
@@ -862,18 +902,17 @@ RTLFUNC(InStr)
StarBASIC::Error( SbERR_BAD_ARGUMENT );
else
{
- sal_uInt16 nStartPos = 1;
+ sal_Int32 nStartPos = 1;
+ sal_Int32 nFirstStringPos = 1;
- sal_uInt16 nFirstStringPos = 1;
if ( nArgCount >= 3 )
{
- sal_Int32 lStartPos = rPar.Get(1)->GetLong();
- if( lStartPos <= 0 || lStartPos > 0xffff )
+ nStartPos = rPar.Get(1)->GetLong();
+ if( nStartPos <= 0 )
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
- lStartPos = 1;
+ nStartPos = 1;
}
- nStartPos = (sal_uInt16)lStartPos;
nFirstStringPos++;
}
@@ -890,13 +929,14 @@ RTLFUNC(InStr)
bTextMode = 1;;
}
if ( nArgCount == 4 )
+ {
bTextMode = rPar.Get(4)->GetInteger();
-
- sal_uInt16 nPos;
- const String& rToken = rPar.Get(nFirstStringPos+1)->GetString();
+ }
+ sal_Int32 nPos;
+ const OUString& rToken = rPar.Get(nFirstStringPos+1)->GetOUString();
// #97545 Always find empty string
- if( !rToken.Len() )
+ if( rToken.isEmpty() )
{
nPos = nStartPos;
}
@@ -904,27 +944,18 @@ RTLFUNC(InStr)
{
if( !bTextMode )
{
- const String& rStr1 = rPar.Get(nFirstStringPos)->GetString();
-
- nPos = rStr1.Search( rToken, nStartPos-1 );
- if ( nPos == STRING_NOTFOUND )
- nPos = 0;
- else
- nPos++;
+ const OUString& rStr1 = rPar.Get(nFirstStringPos)->GetOUString();
+ nPos = rStr1.indexOf( rToken, nStartPos - 1 ) + 1;
}
else
{
- String aStr1 = rPar.Get(nFirstStringPos)->GetString();
- String aToken = rToken;
+ OUString aStr1 = rPar.Get(nFirstStringPos)->GetOUString();
+ OUString aToken = rToken;
- aStr1.ToUpperAscii();
- aToken.ToUpperAscii();
+ aStr1 = aStr1.toAsciiUpperCase();
+ aToken = aToken.toAsciiUpperCase();
- nPos = aStr1.Search( aToken, nStartPos-1 );
- if ( nPos == STRING_NOTFOUND )
- nPos = 0;
- else
- nPos++;
+ nPos = aStr1.indexOf( aToken, nStartPos-1 ) + 1;
}
}
rPar.Get(0)->PutLong( nPos );
@@ -941,20 +972,22 @@ RTLFUNC(InStrRev)
sal_uIntPtr nArgCount = rPar.Count()-1;
if ( nArgCount < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aStr1 = rPar.Get(1)->GetString();
- String aToken = rPar.Get(2)->GetString();
+ OUString aStr1 = rPar.Get(1)->GetOUString();
+ OUString aToken = rPar.Get(2)->GetOUString();
- sal_Int32 lStartPos = -1;
+ sal_Int32 nStartPos = -1;
if ( nArgCount >= 3 )
{
- lStartPos = rPar.Get(3)->GetLong();
- if( (lStartPos <= 0 && lStartPos != -1) || lStartPos > 0xffff )
+ nStartPos = rPar.Get(3)->GetLong();
+ if( (nStartPos <= 0 && nStartPos != -1))
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
- lStartPos = -1;
+ nStartPos = -1;
}
}
@@ -971,15 +1004,19 @@ RTLFUNC(InStrRev)
bTextMode = 1;;
}
if ( nArgCount == 4 )
+ {
bTextMode = rPar.Get(4)->GetInteger();
+ }
+ sal_Int32 nStrLen = aStr1.getLength();
+ if( nStartPos == -1 )
+ {
+ nStartPos = nStrLen;
+ }
- sal_uInt16 nStrLen = aStr1.Len();
- sal_uInt16 nStartPos = lStartPos == -1 ? nStrLen : (sal_uInt16)lStartPos;
-
- sal_uInt16 nPos = 0;
+ sal_Int32 nPos = 0;
if( nStartPos <= nStrLen )
{
- sal_uInt16 nTokenLen = aToken.Len();
+ sal_Int32 nTokenLen = aToken.getLength();
if( !nTokenLen )
{
// Always find empty string
@@ -989,27 +1026,14 @@ RTLFUNC(InStrRev)
{
if( !bTextMode )
{
- ::rtl::OUString aOUStr1 ( aStr1 );
- ::rtl::OUString aOUToken( aToken );
- sal_Int32 nRet = aOUStr1.lastIndexOf( aOUToken, nStartPos );
- if( nRet == -1 )
- nPos = 0;
- else
- nPos = (sal_uInt16)nRet + 1;
+ nPos = aStr1.lastIndexOf( aToken, nStartPos ) + 1;
}
else
{
- aStr1.ToUpperAscii();
- aToken.ToUpperAscii();
-
- ::rtl::OUString aOUStr1 ( aStr1 );
- ::rtl::OUString aOUToken( aToken );
- sal_Int32 nRet = aOUStr1.lastIndexOf( aOUToken, nStartPos );
+ aStr1 = aStr1.toAsciiUpperCase();
+ aToken = aToken.toAsciiUpperCase();
- if( nRet == -1 )
- nPos = 0;
- else
- nPos = (sal_uInt16)nRet + 1;
+ nPos = aStr1.lastIndexOf( aToken, nStartPos ) + 1;
}
}
}
@@ -1073,11 +1097,13 @@ RTLFUNC(LCase)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
const CharClass& rCharClass = GetCharClass();
- String aStr( rPar.Get(1)->GetString() );
+ OUString aStr( rPar.Get(1)->GetOUString() );
aStr = rCharClass.lowercase(aStr);
rPar.Get(0)->PutString( aStr );
}
@@ -1089,21 +1115,23 @@ RTLFUNC(Left)
(void)bWrite;
if ( rPar.Count() < 3 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aStr( rPar.Get(1)->GetString() );
- sal_Int32 lResultLen = rPar.Get(2)->GetLong();
- if( lResultLen > 0xffff )
+ OUString aStr( rPar.Get(1)->GetOUString() );
+ sal_Int32 nResultLen = rPar.Get(2)->GetLong();
+ if( nResultLen < 0 )
{
- lResultLen = 0xffff;
+ nResultLen = 0;
+ StarBASIC::Error( SbERR_BAD_ARGUMENT );
}
- else if( lResultLen < 0 )
+ else if(nResultLen > aStr.getLength())
{
- lResultLen = 0;
- StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ nResultLen = aStr.getLength();
}
- aStr.Erase( (sal_uInt16)lResultLen );
+ aStr = aStr.copy(0, nResultLen );
rPar.Get(0)->PutString( aStr );
}
}
@@ -1114,7 +1142,9 @@ RTLFUNC(Log)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double aArg = rPar.Get(1)->GetDouble();
@@ -1125,7 +1155,9 @@ RTLFUNC(Log)
rPar.Get( 0 )->PutDouble( d );
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
}
@@ -1135,10 +1167,12 @@ RTLFUNC(LTrim)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- rtl::OUString aStr(comphelper::string::stripStart(rPar.Get(1)->GetString(), ' '));
+ OUString aStr(comphelper::string::stripStart(rPar.Get(1)->GetOUString(), ' '));
rPar.Get(0)->PutString(aStr);
}
}
@@ -1151,9 +1185,11 @@ RTLFUNC(Mid)
(void)pBasic;
(void)bWrite;
- sal_uIntPtr nArgCount = rPar.Count()-1;
+ int nArgCount = rPar.Count()-1;
if ( nArgCount < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
// #23178: replicate the functionality of Mid$ as a command
@@ -1161,41 +1197,46 @@ RTLFUNC(Mid)
// In contrast to the original the third parameter (nLength)
// can't be left out here. That's considered in bWrite already.
if( nArgCount == 4 )
+ {
bWrite = sal_True;
-
- String aArgStr = rPar.Get(1)->GetString();
- sal_uInt16 nStartPos = (sal_uInt16)(rPar.Get(2)->GetLong() );
+ }
+ OUString aArgStr = rPar.Get(1)->GetOUString();
+ sal_Int32 nStartPos = rPar.Get(2)->GetLong();
if ( nStartPos == 0 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
nStartPos--;
- sal_uInt16 nLen = 0xffff;
+ sal_Int32 nLen = -1;
bool bWriteNoLenParam = false;
if ( nArgCount == 3 || bWrite )
{
sal_Int32 n = rPar.Get(3)->GetLong();
if( bWrite && n == -1 )
+ {
bWriteNoLenParam = true;
- nLen = (sal_uInt16)n;
+ }
+ nLen = n;
}
- String aResultStr;
if ( bWrite )
{
+ OUStringBuffer aResultStr;
SbiInstance* pInst = GetSbData()->pInst;
bool bCompatibility = ( pInst && pInst->IsCompatibility() );
if( bCompatibility )
{
- sal_uInt16 nArgLen = aArgStr.Len();
+ sal_Int32 nArgLen = aArgStr.getLength();
if( nStartPos + 1 > nArgLen )
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
- String aReplaceStr = rPar.Get(4)->GetString();
- sal_uInt16 nReplaceStrLen = aReplaceStr.Len();
- sal_uInt16 nReplaceLen;
+ OUString aReplaceStr = rPar.Get(4)->GetOUString();
+ sal_Int32 nReplaceStrLen = aReplaceStr.getLength();
+ sal_Int32 nReplaceLen;
if( bWriteNoLenParam )
{
nReplaceLen = nReplaceStrLen;
@@ -1203,31 +1244,35 @@ RTLFUNC(Mid)
else
{
nReplaceLen = nLen;
- if( nReplaceLen > nReplaceStrLen )
+ if( nReplaceLen < 0 || nReplaceLen > nReplaceStrLen )
+ {
nReplaceLen = nReplaceStrLen;
+ }
}
- sal_uInt16 nReplaceEndPos = nStartPos + nReplaceLen;
+ sal_Int32 nReplaceEndPos = nStartPos + nReplaceLen;
if( nReplaceEndPos > nArgLen )
+ {
nReplaceLen -= (nReplaceEndPos - nArgLen);
-
+ }
aResultStr = aArgStr;
- sal_uInt16 nErase = nReplaceLen;
- aResultStr.Erase( nStartPos, nErase );
- aResultStr.Insert( aReplaceStr, 0, nReplaceLen, nStartPos );
+ sal_Int32 nErase = nReplaceLen;
+ aResultStr.remove( nStartPos, nErase );
+ aResultStr.insert( nStartPos, aReplaceStr.getStr(), nReplaceLen);
}
else
{
aResultStr = aArgStr;
- aResultStr.Erase( nStartPos, nLen );
- aResultStr.Insert(rPar.Get(4)->GetString(),0,nLen,nStartPos);
+ aResultStr.remove( nStartPos, nLen );
+ aResultStr.insert( nStartPos, rPar.Get(4)->GetOUString().getStr(), nLen);
}
- rPar.Get(1)->PutString( aResultStr );
+ rPar.Get(1)->PutString( aResultStr.makeStringAndClear() );
}
else
{
- aResultStr = aArgStr.Copy( nStartPos, nLen );
+ OUString aResultStr;
+ aResultStr = aArgStr.copy( nStartPos, nLen );
rPar.Get(0)->PutString( aResultStr );
}
}
@@ -1240,15 +1285,21 @@ RTLFUNC(Oct)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
char aBuffer[16];
SbxVariableRef pArg = rPar.Get( 1 );
if ( pArg->IsInteger() )
+ {
snprintf( aBuffer, sizeof(aBuffer), "%o", pArg->GetInteger() );
+ }
else
+ {
snprintf( aBuffer, sizeof(aBuffer), "%lo", static_cast<long unsigned int>(pArg->GetLong()) );
+ }
rPar.Get(0)->PutString( rtl::OUString::createFromAscii( aBuffer ) );
}
}
@@ -1262,19 +1313,23 @@ RTLFUNC(Replace)
sal_uIntPtr nArgCount = rPar.Count()-1;
if ( nArgCount < 3 || nArgCount > 6 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aExpStr = rPar.Get(1)->GetString();
- String aFindStr = rPar.Get(2)->GetString();
- String aReplaceStr = rPar.Get(3)->GetString();
+ OUString aExpStr = rPar.Get(1)->GetOUString();
+ OUString aFindStr = rPar.Get(2)->GetOUString();
+ OUString aReplaceStr = rPar.Get(3)->GetOUString();
sal_Int32 lStartPos = 1;
if ( nArgCount >= 4 )
{
if( rPar.Get(4)->GetType() != SbxEMPTY )
+ {
lStartPos = rPar.Get(4)->GetLong();
- if( lStartPos < 1 || lStartPos > 0xffff )
+ }
+ if( lStartPos < 1)
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
lStartPos = 1;
@@ -1285,8 +1340,10 @@ RTLFUNC(Replace)
if( nArgCount >=5 )
{
if( rPar.Get(5)->GetType() != SbxEMPTY )
+ {
lCount = rPar.Get(5)->GetLong();
- if( lCount < -1 || lCount > 0xffff )
+ }
+ if( lCount < -1)
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
lCount = -1;
@@ -1306,28 +1363,29 @@ RTLFUNC(Replace)
bTextMode = 1;
}
if ( nArgCount == 6 )
+ {
bTextMode = rPar.Get(6)->GetInteger();
-
- sal_uInt16 nExpStrLen = aExpStr.Len();
- sal_uInt16 nFindStrLen = aFindStr.Len();
- sal_uInt16 nReplaceStrLen = aReplaceStr.Len();
+ }
+ sal_Int32 nExpStrLen = aExpStr.getLength();
+ sal_Int32 nFindStrLen = aFindStr.getLength();
+ sal_Int32 nReplaceStrLen = aReplaceStr.getLength();
if( lStartPos <= nExpStrLen )
{
- sal_uInt16 nPos = static_cast<sal_uInt16>( lStartPos - 1 );
- sal_uInt16 nCounts = 0;
+ sal_Int32 nPos = lStartPos - 1;
+ sal_Int32 nCounts = 0;
while( lCount == -1 || lCount > nCounts )
{
- String aSrcStr( aExpStr );
+ OUString aSrcStr( aExpStr );
if( bTextMode )
{
- aSrcStr.ToUpperAscii();
- aFindStr.ToUpperAscii();
+ aSrcStr = aSrcStr.toAsciiUpperCase();
+ aFindStr = aFindStr.toAsciiUpperCase();
}
- nPos = aSrcStr.Search( aFindStr, nPos );
- if( nPos != STRING_NOTFOUND )
+ nPos = aSrcStr.indexOf( aFindStr, nPos );
+ if( nPos >= 0 )
{
- aExpStr.Replace( nPos, nFindStrLen, aReplaceStr );
+ aExpStr = aExpStr.replaceAt( nPos, nFindStrLen, aReplaceStr );
nPos = nPos - nFindStrLen + nReplaceStrLen + 1;
nCounts++;
}
@@ -1337,7 +1395,7 @@ RTLFUNC(Replace)
}
}
}
- rPar.Get(0)->PutString( aExpStr.Copy( static_cast<sal_uInt16>(lStartPos - 1) ) );
+ rPar.Get(0)->PutString( aExpStr.copy( lStartPos - 1 ) );
}
}
@@ -1347,25 +1405,24 @@ RTLFUNC(Right)
(void)bWrite;
if ( rPar.Count() < 3 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- const String& rStr = rPar.Get(1)->GetString();
- sal_Int32 lResultLen = rPar.Get(2)->GetLong();
- if( lResultLen > 0xffff )
- {
- lResultLen = 0xffff;
- }
- else if( lResultLen < 0 )
+ const OUString& rStr = rPar.Get(1)->GetOUString();
+ int nResultLen = rPar.Get(2)->GetLong();
+ if( nResultLen < 0 )
{
- lResultLen = 0;
+ nResultLen = 0;
StarBASIC::Error( SbERR_BAD_ARGUMENT );
}
- sal_uInt16 nResultLen = (sal_uInt16)lResultLen;
- sal_uInt16 nStrLen = rStr.Len();
+ int nStrLen = rStr.getLength();
if ( nResultLen > nStrLen )
+ {
nResultLen = nStrLen;
- String aResultStr = rStr.Copy( nStrLen-nResultLen );
+ }
+ OUString aResultStr = rStr.copy( nStrLen - nResultLen );
rPar.Get(0)->PutString( aResultStr );
}
}
@@ -1384,10 +1441,12 @@ RTLFUNC(RTrim)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- rtl::OUString aStr(comphelper::string::stripEnd(rPar.Get(1)->GetString(), ' '));
+ OUString aStr(comphelper::string::stripEnd(rPar.Get(1)->GetOUString(), ' '));
rPar.Get(0)->PutString(aStr);
}
}
@@ -1398,15 +1457,21 @@ RTLFUNC(Sgn)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double aDouble = rPar.Get(1)->GetDouble();
sal_Int16 nResult = 0;
if ( aDouble > 0 )
+ {
nResult = 1;
+ }
else if ( aDouble < 0 )
+ {
nResult = -1;
+ }
rPar.Get(0)->PutInteger( nResult );
}
}
@@ -1417,12 +1482,14 @@ RTLFUNC(Space)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aStr;
- aStr.Fill( (sal_uInt16)(rPar.Get(1)->GetLong() ));
- rPar.Get(0)->PutString( aStr );
+ OUStringBuffer aBuf;
+ string::padToLength(aBuf, rPar.Get(1)->GetLong(), ' ');
+ rPar.Get(0)->PutString(aBuf.makeStringAndClear());
}
}
@@ -1432,12 +1499,14 @@ RTLFUNC(Spc)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aStr;
- aStr.Fill( (sal_uInt16)(rPar.Get(1)->GetLong() ));
- rPar.Get(0)->PutString( aStr );
+ OUStringBuffer aBuf;
+ string::padToLength(aBuf, rPar.Get(1)->GetLong(), ' ');
+ rPar.Get(0)->PutString(aBuf.makeStringAndClear());
}
}
@@ -1447,14 +1516,20 @@ RTLFUNC(Sqr)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double aDouble = rPar.Get(1)->GetDouble();
if ( aDouble >= 0 )
+ {
rPar.Get(0)->PutDouble( sqrt( aDouble ));
+ }
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
}
@@ -1464,10 +1539,13 @@ RTLFUNC(Str)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aStr;
+ OUString aStr;
+ OUString aStrNew("");
SbxVariableRef pArg = rPar.Get( 1 );
pArg->Format( aStr );
@@ -1475,34 +1553,47 @@ RTLFUNC(Str)
if( pArg->IsNumericRTL() )
{
// replace commas by points so that it's symmetric to Val!
- aStr.SearchAndReplace( ',', '.' );
+ aStr = aStr.replaceFirst( ",", "." );
SbiInstance* pInst = GetSbData()->pInst;
bool bCompatibility = ( pInst && pInst->IsCompatibility() );
if( bCompatibility )
{
- xub_StrLen nLen = aStr.Len();
+ sal_Int32 nLen = aStr.getLength();
- const sal_Unicode* pBuf = aStr.GetBuffer();
+ const sal_Unicode* pBuf = aStr.getStr();
bool bNeg = ( pBuf[0] == '-' );
- sal_uInt16 iZeroSearch = 0;
+ sal_Int32 iZeroSearch = 0;
if( bNeg )
+ {
+ aStrNew += "-";
iZeroSearch++;
-
- sal_uInt16 iNext = iZeroSearch + 1;
+ }
+ else
+ {
+ if( pBuf[0] != ' ' )
+ {
+ aStrNew += " ";
+ }
+ }
+ sal_Int32 iNext = iZeroSearch + 1;
if( pBuf[iZeroSearch] == '0' && nLen > iNext && pBuf[iNext] == '.' )
{
- aStr.Erase( iZeroSearch, 1 );
- pBuf = aStr.GetBuffer();
+ iZeroSearch += 1;
}
- if( !bNeg )
- aStr.Insert( ' ', 0 );
+ aStrNew += aStr.copy(iZeroSearch);
}
else
- aStr.Insert( ' ', 0 );
+ {
+ aStrNew = " " + aStr;
+ }
}
- rPar.Get(0)->PutString( aStr );
+ else
+ {
+ aStrNew = aStr;
+ }
+ rPar.Get(0)->PutString( aStrNew );
}
}
@@ -1517,8 +1608,8 @@ RTLFUNC(StrComp)
rPar.Get(0)->PutEmpty();
return;
}
- const String& rStr1 = rPar.Get(1)->GetString();
- const String& rStr2 = rPar.Get(2)->GetString();
+ const OUString& rStr1 = rPar.Get(1)->GetOUString();
+ const OUString& rStr2 = rPar.Get(2)->GetOUString();
SbiInstance* pInst = GetSbData()->pInst;
sal_Int16 nTextCompare;
@@ -1536,18 +1627,18 @@ RTLFUNC(StrComp)
nTextCompare = rPar.Get(3)->GetInteger();
if( !bCompatibility )
+ {
nTextCompare = !nTextCompare;
-
- StringCompare aResult;
+ }
sal_Int32 nRetValue = 0;
if( nTextCompare )
{
::utl::TransliterationWrapper* pTransliterationWrapper = GetSbData()->pTransliterationWrapper;
if( !pTransliterationWrapper )
{
- uno::Reference< lang::XMultiServiceFactory > xSMgr = getProcessServiceFactory();
+ uno::Reference< uno::XComponentContext > xContext = getProcessComponentContext();
pTransliterationWrapper = GetSbData()->pTransliterationWrapper =
- new ::utl::TransliterationWrapper( xSMgr,
+ new ::utl::TransliterationWrapper( xContext,
i18n::TransliterationModules_IGNORE_CASE |
i18n::TransliterationModules_IGNORE_KANA |
i18n::TransliterationModules_IGNORE_WIDTH );
@@ -1559,13 +1650,17 @@ RTLFUNC(StrComp)
}
else
{
- aResult = rStr1.CompareTo( rStr2 );
- if ( aResult == COMPARE_LESS )
+ sal_Int32 aResult;
+ aResult = rStr1.compareTo( rStr2 );
+ if ( aResult < 0 )
+ {
nRetValue = -1;
- else if ( aResult == COMPARE_GREATER )
+ }
+ else if ( aResult > 0)
+ {
nRetValue = 1;
+ }
}
-
rPar.Get(0)->PutInteger( sal::static_int_cast< sal_Int16 >( nRetValue ) );
}
@@ -1575,24 +1670,29 @@ RTLFUNC(String)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aStr;
sal_Unicode aFiller;
sal_Int32 lCount = rPar.Get(1)->GetLong();
if( lCount < 0 || lCount > 0xffff )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
- sal_uInt16 nCount = (sal_uInt16)lCount;
+ }
if( rPar.Get(2)->GetType() == SbxINTEGER )
+ {
aFiller = (sal_Unicode)rPar.Get(2)->GetInteger();
+ }
else
{
- const String& rStr = rPar.Get(2)->GetString();
- aFiller = rStr.GetBuffer()[0];
+ const OUString& rStr = rPar.Get(2)->GetOUString();
+ aFiller = rStr[0];
}
- aStr.Fill( nCount, aFiller );
- rPar.Get(0)->PutString( aStr );
+ OUStringBuffer aBuf(lCount);
+ string::padToLength(aBuf, lCount, aFiller);
+ rPar.Get(0)->PutString(aBuf.makeStringAndClear());
}
}
@@ -1602,7 +1702,9 @@ RTLFUNC(Tan)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariableRef pArg = rPar.Get( 1 );
@@ -1616,11 +1718,13 @@ RTLFUNC(UCase)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
const CharClass& rCharClass = GetCharClass();
- String aStr( rPar.Get(1)->GetString() );
+ OUString aStr( rPar.Get(1)->GetOUString() );
aStr = rCharClass.uppercase( aStr );
rPar.Get(0)->PutString( aStr );
}
@@ -1633,26 +1737,32 @@ RTLFUNC(Val)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double nResult = 0.0;
char* pEndPtr;
- String aStr( rPar.Get(1)->GetString() );
+ OUString aStr( rPar.Get(1)->GetOUString() );
FilterWhiteSpace( aStr );
- if ( aStr.GetBuffer()[0] == '&' && aStr.Len() > 1 )
+ if ( aStr[0] == '&' && aStr.getLength() > 1 )
{
int nRadix = 10;
- char aChar = (char)aStr.GetBuffer()[1];
+ char aChar = (char)aStr[1];
if ( aChar == 'h' || aChar == 'H' )
+ {
nRadix = 16;
+ }
else if ( aChar == 'o' || aChar == 'O' )
+ {
nRadix = 8;
+ }
if ( nRadix != 10 )
{
- rtl::OString aByteStr(rtl::OUStringToOString(aStr, osl_getThreadTextEncoding()));
+ OString aByteStr(rtl::OUStringToOString(aStr, osl_getThreadTextEncoding()));
sal_Int16 nlResult = (sal_Int16)strtol( aByteStr.getStr()+2, &pEndPtr, nRadix);
nResult = (double)nlResult;
}
@@ -1714,11 +1824,13 @@ RTLFUNC(CDateToIso)
implGetDateYear( aDate ),
implGetDateMonth( aDate ),
implGetDateDay( aDate ) );
- String aRetStr = rtl::OUString::createFromAscii( Buffer );
+ OUString aRetStr = rtl::OUString::createFromAscii( Buffer );
rPar.Get(0)->PutString( aRetStr );
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
// Function to convert date from ISO 8601 date format
@@ -1729,21 +1841,23 @@ RTLFUNC(CDateFromIso)
if ( rPar.Count() == 2 )
{
- String aStr = rPar.Get(1)->GetString();
- sal_Int16 iMonthStart = aStr.Len() - 4;
- String aYearStr = aStr.Copy( 0, iMonthStart );
- String aMonthStr = aStr.Copy( iMonthStart, 2 );
- String aDayStr = aStr.Copy( iMonthStart+2, 2 );
+ OUString aStr = rPar.Get(1)->GetOUString();
+ sal_Int16 iMonthStart = aStr.getLength() - 4;
+ OUString aYearStr = aStr.copy( 0, iMonthStart );
+ OUString aMonthStr = aStr.copy( iMonthStart, 2 );
+ OUString aDayStr = aStr.copy( iMonthStart+2, 2 );
double dDate;
- if( implDateSerial( (sal_Int16)aYearStr.ToInt32(),
- (sal_Int16)aMonthStr.ToInt32(), (sal_Int16)aDayStr.ToInt32(), dDate ) )
+ if( implDateSerial( (sal_Int16)aYearStr.toInt32(),
+ (sal_Int16)aMonthStr.toInt32(), (sal_Int16)aDayStr.toInt32(), dDate ) )
{
rPar.Get(0)->PutDate( dDate );
}
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(DateSerial)
@@ -1762,7 +1876,9 @@ RTLFUNC(DateSerial)
double dDate;
if( implDateSerial( nYear, nMonth, nDay, dDate ) )
+ {
rPar.Get(0)->PutDate( dDate );
+ }
}
RTLFUNC(TimeSerial)
@@ -1777,7 +1893,9 @@ RTLFUNC(TimeSerial)
}
sal_Int16 nHour = rPar.Get(1)->GetInteger();
if ( nHour == 24 )
+ {
nHour = 0; // because of UNO DateTimes, which go till 24 o'clock
+ }
sal_Int16 nMinute = rPar.Get(2)->GetInteger();
sal_Int16 nSecond = rPar.Get(3)->GetInteger();
if ((nHour < 0 || nHour > 23) ||
@@ -1802,13 +1920,17 @@ RTLFUNC(DateValue)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
// #39629 check GetSbData()->pInst, can be called from the URL line
SvNumberFormatter* pFormatter = NULL;
if( GetSbData()->pInst )
+ {
pFormatter = GetSbData()->pInst->GetNumberFormatter();
+ }
else
{
sal_uInt32 n; // Dummy
@@ -1817,7 +1939,7 @@ RTLFUNC(DateValue)
sal_uInt32 nIndex;
double fResult;
- String aStr( rPar.Get(1)->GetString() );
+ OUString aStr( rPar.Get(1)->GetOUString() );
sal_Bool bSuccess = pFormatter->IsNumberFormat( aStr, nIndex, fResult );
short nType = pFormatter->GetType( nIndex );
@@ -1842,18 +1964,25 @@ RTLFUNC(DateValue)
{
// cut time
if ( fResult > 0.0 )
+ {
fResult = floor( fResult );
+ }
else
+ {
fResult = ceil( fResult );
+ }
}
rPar.Get(0)->PutDate( fResult );
}
else
+ {
StarBASIC::Error( SbERR_CONVERSION );
-
+ }
// #39629 pFormatter can be requested itself
if( !GetSbData()->pInst )
+ {
delete pFormatter;
+ }
}
}
@@ -1863,7 +1992,9 @@ RTLFUNC(TimeValue)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SvNumberFormatter* pFormatter = NULL;
@@ -1877,21 +2008,26 @@ RTLFUNC(TimeValue)
sal_uInt32 nIndex;
double fResult;
- sal_Bool bSuccess = pFormatter->IsNumberFormat( rPar.Get(1)->GetString(),
+ sal_Bool bSuccess = pFormatter->IsNumberFormat( rPar.Get(1)->GetOUString(),
nIndex, fResult );
short nType = pFormatter->GetType(nIndex);
if(bSuccess && (nType==NUMBERFORMAT_TIME||nType==NUMBERFORMAT_DATETIME))
{
if ( nType == NUMBERFORMAT_DATETIME )
+ {
// cut days
fResult = fmod( fResult, 1 );
+ }
rPar.Get(0)->PutDate( fResult );
}
else
+ {
StarBASIC::Error( SbERR_CONVERSION );
-
+ }
if( !GetSbData()->pInst )
+ {
delete pFormatter;
+ }
}
}
@@ -1901,7 +2037,9 @@ RTLFUNC(Day)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariableRef pArg = rPar.Get( 1 );
@@ -1918,7 +2056,9 @@ RTLFUNC(Year)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_Int16 nYear = implGetDateYear( rPar.Get(1)->GetDate() );
@@ -1929,7 +2069,9 @@ RTLFUNC(Year)
sal_Int16 implGetHour( double dDate )
{
if( dDate < 0.0 )
+ {
dDate *= -1.0;
+ }
double nFrac = dDate - floor( dDate );
nFrac *= 86400.0;
sal_Int32 nSeconds = (sal_Int32)(nFrac + 0.5);
@@ -1943,7 +2085,9 @@ RTLFUNC(Hour)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double nArg = rPar.Get(1)->GetDate();
@@ -1958,7 +2102,9 @@ RTLFUNC(Minute)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double nArg = rPar.Get(1)->GetDate();
@@ -1973,7 +2119,9 @@ RTLFUNC(Month)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_Int16 nMonth = implGetDateMonth( rPar.Get(1)->GetDate() );
@@ -1984,7 +2132,9 @@ RTLFUNC(Month)
sal_Int16 implGetSecond( double dDate )
{
if( dDate < 0.0 )
+ {
dDate *= -1.0;
+ }
double nFrac = dDate - floor( dDate );
nFrac *= 86400.0;
sal_Int32 nSeconds = (sal_Int32)(nFrac + 0.5);
@@ -2003,7 +2153,9 @@ RTLFUNC(Second)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double nArg = rPar.Get(1)->GetDate();
@@ -2030,8 +2182,8 @@ double Now_Impl()
RTLFUNC(Now)
{
- (void)pBasic;
- (void)bWrite;
+ (void)pBasic;
+ (void)bWrite;
rPar.Get(0)->PutDate( Now_Impl() );
}
@@ -2045,13 +2197,13 @@ RTLFUNC(Time)
{
Time aTime( Time::SYSTEM );
SbxVariable* pMeth = rPar.Get( 0 );
- String aRes;
+ OUString aRes;
if( pMeth->IsFixed() )
{
// Time$: hh:mm:ss
char buf[ 20 ];
snprintf( buf, sizeof(buf), "%02d:%02d:%02d",
- aTime.GetHour(), aTime.GetMin(), aTime.GetSec() );
+ aTime.GetHour(), aTime.GetMin(), aTime.GetSec() );
aRes = rtl::OUString::createFromAscii( buf );
}
else
@@ -2080,7 +2232,9 @@ RTLFUNC(Time)
pFormatter->GetOutputString( nDays, nIndex, aRes, &pCol );
if( !GetSbData()->pInst )
+ {
delete pFormatter;
+ }
}
pMeth->PutString( aRes );
}
@@ -2116,7 +2270,7 @@ RTLFUNC(Date)
SbxVariable* pMeth = rPar.Get( 0 );
if( pMeth->IsString() )
{
- String aRes;
+ OUString aRes;
Color* pCol;
SvNumberFormatter* pFormatter = NULL;
@@ -2136,10 +2290,14 @@ RTLFUNC(Date)
pMeth->PutString( aRes );
if( !GetSbData()->pInst )
+ {
delete pFormatter;
+ }
}
else
+ {
pMeth->PutDate( nDays );
+ }
}
else
{
@@ -2153,9 +2311,13 @@ RTLFUNC(IsArray)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
+ {
rPar.Get(0)->PutBool((rPar.Get(1)->GetType() & SbxARRAY) ? sal_True : sal_False );
+ }
}
RTLFUNC(IsObject)
@@ -2164,7 +2326,9 @@ RTLFUNC(IsObject)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariable* pVar = rPar.Get(1);
@@ -2193,7 +2357,9 @@ RTLFUNC(IsDate)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
// #46134 only string is converted, all other types result in sal_False
@@ -2228,19 +2394,25 @@ RTLFUNC(IsEmpty)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariable* pVar = NULL;
if( SbiRuntime::isVBAEnabled() )
+ {
pVar = getDefaultProp( rPar.Get(1) );
+ }
if ( pVar )
{
pVar->Broadcast( SBX_HINT_DATAWANTED );
rPar.Get( 0 )->PutBool( pVar->IsEmpty() );
}
else
+ {
rPar.Get( 0 )->PutBool( rPar.Get(1)->IsEmpty() );
+ }
}
}
@@ -2250,23 +2422,33 @@ RTLFUNC(IsError)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxVariable* pVar =rPar.Get( 1 );
SbUnoObject* pObj = PTR_CAST(SbUnoObject,pVar );
- if ( !pObj )
- {
- if ( SbxBase* pBaseObj = pVar->GetObject() )
- pObj = PTR_CAST(SbUnoObject, pBaseObj );
- }
+ if ( !pObj )
+ {
+ if ( SbxBase* pBaseObj = pVar->GetObject() )
+ {
+ pObj = PTR_CAST(SbUnoObject, pBaseObj );
+ }
+ }
uno::Reference< script::XErrorQuery > xError;
if ( pObj )
+ {
xError.set( pObj->getUnoAny(), uno::UNO_QUERY );
+ }
if ( xError.is() )
+ {
rPar.Get( 0 )->PutBool( xError->hasError() );
+ }
else
+ {
rPar.Get( 0 )->PutBool( rPar.Get(1)->IsErr() );
+ }
}
}
@@ -2276,7 +2458,9 @@ RTLFUNC(IsNull)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
// #51475 because of Uno-objects return true
@@ -2287,7 +2471,9 @@ RTLFUNC(IsNull)
{
SbxBase* pObj = pArg->GetObject();
if( !pObj )
+ {
bNull = sal_True;
+ }
}
rPar.Get( 0 )->PutBool( bNull );
}
@@ -2299,9 +2485,13 @@ RTLFUNC(IsNumeric)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
+ {
rPar.Get( 0 )->PutBool( rPar.Get( 1 )->IsNumericRTL() );
+ }
}
@@ -2312,14 +2502,18 @@ RTLFUNC(IsMissing)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
+ {
// #57915 Missing is reported by an error
rPar.Get( 0 )->PutBool( rPar.Get(1)->IsErr() );
+ }
}
// Function looks for wildcards, removes them and always returns the pure path
-String implSetupWildcard( const String& rFileParam, SbiRTLData* pRTLData )
+OUString implSetupWildcard( const OUString& rFileParam, SbiRTLData* pRTLData )
{
static sal_Char cDelim1 = (sal_Char)'/';
static sal_Char cDelim2 = (sal_Char)'\\';
@@ -2328,68 +2522,77 @@ String implSetupWildcard( const String& rFileParam, SbiRTLData* pRTLData )
delete pRTLData->pWildCard;
pRTLData->pWildCard = NULL;
- pRTLData->sFullNameToBeChecked = String();
-
- String aFileParam = rFileParam;
- xub_StrLen nLastWild = aFileParam.SearchBackward( cWild1 );
- if( nLastWild == STRING_NOTFOUND )
- nLastWild = aFileParam.SearchBackward( cWild2 );
- bool bHasWildcards = ( nLastWild != STRING_NOTFOUND );
+ pRTLData->sFullNameToBeChecked = OUString();
+ OUString aFileParam = rFileParam;
+ sal_Int32 nLastWild = aFileParam.lastIndexOf( cWild1 );
+ if( nLastWild < 0 )
+ {
+ nLastWild = aFileParam.lastIndexOf( cWild2 );
+ }
+ bool bHasWildcards = ( nLastWild >= 0 );
- xub_StrLen nLastDelim = aFileParam.SearchBackward( cDelim1 );
- if( nLastDelim == STRING_NOTFOUND )
- nLastDelim = aFileParam.SearchBackward( cDelim2 );
+ sal_Int32 nLastDelim = aFileParam.lastIndexOf( cDelim1 );
+ if( nLastDelim < 0 )
+ {
+ nLastDelim = aFileParam.lastIndexOf( cDelim2 );
+ }
if( bHasWildcards )
{
// Wildcards in path?
- if( nLastDelim != STRING_NOTFOUND && nLastDelim > nLastWild )
+ if( nLastDelim >= 0 && nLastDelim > nLastWild )
+ {
return aFileParam;
+ }
}
else
{
- String aPathStr = getFullPath( aFileParam );
- if( nLastDelim != aFileParam.Len() - 1 )
+ OUString aPathStr = getFullPath( aFileParam );
+ if( nLastDelim != aFileParam.getLength() - 1 )
+ {
pRTLData->sFullNameToBeChecked = aPathStr;
+ }
return aPathStr;
}
- rtl::OUString aPureFileName;
- if( nLastDelim == STRING_NOTFOUND )
+ OUString aPureFileName;
+ if( nLastDelim < 0 )
{
aPureFileName = aFileParam;
- aFileParam = String();
+ aFileParam = OUString();
}
else
{
- aPureFileName = aFileParam.Copy( nLastDelim + 1 );
- aFileParam = aFileParam.Copy( 0, nLastDelim );
+ aPureFileName = aFileParam.copy( nLastDelim + 1 );
+ aFileParam = aFileParam.copy( 0, nLastDelim );
}
// Try again to get a valid URL/UNC-path with only the path
- String aPathStr = getFullPath( aFileParam );
+ OUString aPathStr = getFullPath( aFileParam );
// Is there a pure file name left? Otherwise the path is
// invalid anyway because it was not accepted by OSL before
- if (comphelper::string::equals(aPureFileName, '*'))
+ if (string::equals(aPureFileName, '*'))
{
pRTLData->pWildCard = new WildCard( aPureFileName );
}
return aPathStr;
}
-inline sal_Bool implCheckWildcard( const String& rName, SbiRTLData* pRTLData )
+inline sal_Bool implCheckWildcard( const OUString& rName, SbiRTLData* pRTLData )
{
sal_Bool bMatch = sal_True;
if( pRTLData->pWildCard )
+ {
bMatch = pRTLData->pWildCard->Matches( rName );
+ }
return bMatch;
}
-bool isRootDir( String aDirURLStr )
+bool isRootDir( OUString aDirURLStr )
{
INetURLObject aDirURLObj( aDirURLStr );
bool bRoot = false;
@@ -2407,9 +2610,9 @@ bool isRootDir( String aDirURLStr )
// or Windows "file:///c:/" -> root
else if( nCount == 1 )
{
- ::rtl::OUString aSeg1 = aDirURLObj.getName( 0, sal_True,
- INetURLObject::DECODE_WITH_CHARSET );
- if( aSeg1.getStr()[1] == (sal_Unicode)':' )
+ OUString aSeg1 = aDirURLObj.getName( 0, sal_True,
+ INetURLObject::DECODE_WITH_CHARSET );
+ if( aSeg1[1] == (sal_Unicode)':' )
{
bRoot = true;
}
@@ -2425,11 +2628,13 @@ RTLFUNC(Dir)
(void)pBasic;
(void)bWrite;
- String aPath;
+ OUString aPath;
sal_uInt16 nParCount = rPar.Count();
if( nParCount > 3 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbiRTLData* pRTLData = GetSbData()->pInst->GetRTLData();
@@ -2437,8 +2642,9 @@ RTLFUNC(Dir)
// #34645: can also be called from the URL line via 'macro: Dir'
// there's no pRTLDate existing in that case and the method must be left
if( !pRTLData )
+ {
return;
-
+ }
if( hasUno() )
{
uno::Reference< ucb::XSimpleFileAccess3 > xSFI = getFileAccess();
@@ -2446,21 +2652,21 @@ RTLFUNC(Dir)
{
if ( nParCount >= 2 )
{
- String aFileParam = rPar.Get(1)->GetString();
+ OUString aFileParam = rPar.Get(1)->GetOUString();
- String aFileURLStr = implSetupWildcard( aFileParam, pRTLData );
- if( pRTLData->sFullNameToBeChecked.Len() > 0 )
+ OUString aFileURLStr = implSetupWildcard( aFileParam, pRTLData );
+ if( !pRTLData->sFullNameToBeChecked.isEmpty())
{
sal_Bool bExists = sal_False;
try { bExists = xSFI->exists( aFileURLStr ); }
catch(const Exception & ) {}
- String aNameOnlyStr;
+ OUString aNameOnlyStr;
if( bExists )
{
INetURLObject aFileURL( aFileURLStr );
aNameOnlyStr = aFileURL.getName( INetURLObject::LAST_SEGMENT,
- true, INetURLObject::DECODE_WITH_CHARSET );
+ true, INetURLObject::DECODE_WITH_CHARSET );
}
rPar.Get(0)->PutString( aNameOnlyStr );
return;
@@ -2468,7 +2674,7 @@ RTLFUNC(Dir)
try
{
- String aDirURLStr;
+ OUString aDirURLStr;
sal_Bool bFolder = xSFI->isFolder( aFileURLStr );
if( bFolder )
@@ -2477,16 +2683,19 @@ RTLFUNC(Dir)
}
else
{
- String aEmptyStr;
+ OUString aEmptyStr;
rPar.Get(0)->PutString( aEmptyStr );
}
sal_uInt16 nFlags = 0;
if ( nParCount > 2 )
+ {
pRTLData->nDirFlags = nFlags = rPar.Get(2)->GetInteger();
+ }
else
+ {
pRTLData->nDirFlags = 0;
-
+ }
// Read directory
sal_Bool bIncludeFolders = ((nFlags & Sb_ATTR_DIRECTORY) != 0);
pRTLData->aDirSeq = xSFI->getFolderContents( aDirURLStr, bIncludeFolders );
@@ -2536,12 +2745,12 @@ RTLFUNC(Dir)
else if( pRTLData->nCurDirPos >= pRTLData->aDirSeq.getLength() )
{
pRTLData->aDirSeq.realloc( 0 );
- aPath.Erase();
+ aPath = "";
break;
}
else
{
- ::rtl::OUString aFile = pRTLData->aDirSeq.getConstArray()[pRTLData->nCurDirPos++];
+ OUString aFile = pRTLData->aDirSeq.getConstArray()[pRTLData->nCurDirPos++];
if( bCompatibility )
{
@@ -2549,7 +2758,9 @@ RTLFUNC(Dir)
{
sal_Bool bFolder = xSFI->isFolder( aFile );
if( bFolder )
+ {
continue;
+ }
}
}
else
@@ -2559,19 +2770,22 @@ RTLFUNC(Dir)
{
sal_Bool bFolder = xSFI->isFolder( aFile );
if( !bFolder )
+ {
continue;
+ }
}
}
INetURLObject aURL( aFile );
aPath = aURL.getName( INetURLObject::LAST_SEGMENT, sal_True,
- INetURLObject::DECODE_WITH_CHARSET );
+ INetURLObject::DECODE_WITH_CHARSET );
}
sal_Bool bMatch = implCheckWildcard( aPath, pRTLData );
if( !bMatch )
+ {
continue;
-
+ }
break;
}
}
@@ -2583,15 +2797,19 @@ RTLFUNC(Dir)
// TODO: OSL
if ( nParCount >= 2 )
{
- String aFileParam = rPar.Get(1)->GetString();
+ OUString aFileParam = rPar.Get(1)->GetOUString();
- String aDirURL = implSetupWildcard( aFileParam, pRTLData );
+ OUString aDirURL = implSetupWildcard( aFileParam, pRTLData );
sal_uInt16 nFlags = 0;
if ( nParCount > 2 )
+ {
pRTLData->nDirFlags = nFlags = rPar.Get(2)->GetInteger();
+ }
else
+ {
pRTLData->nDirFlags = 0;
+ }
// Read directory
bool bIncludeFolders = ((nFlags & Sb_ATTR_DIRECTORY) != 0);
@@ -2601,7 +2819,7 @@ RTLFUNC(Dir)
{
delete pRTLData->pDir;
pRTLData->pDir = NULL;
- rPar.Get(0)->PutString( String() );
+ rPar.Get(0)->PutString( OUString() );
return;
}
@@ -2648,7 +2866,7 @@ RTLFUNC(Dir)
{
delete pRTLData->pDir;
pRTLData->pDir = NULL;
- aPath.Erase();
+ aPath = "";
break;
}
@@ -2662,7 +2880,9 @@ RTLFUNC(Dir)
FileStatus::Type aType = aFileStatus.getFileType();
bool bFolder = isFolder( aType );
if( !bFolder )
+ {
continue;
+ }
}
aPath = aFileStatus.getFileName();
@@ -2670,8 +2890,9 @@ RTLFUNC(Dir)
sal_Bool bMatch = implCheckWildcard( aPath, pRTLData );
if( !bMatch )
+ {
continue;
-
+ }
break;
}
}
@@ -2695,22 +2916,25 @@ RTLFUNC(GetAttr)
#if defined( WNT )
if( SbiRuntime::isVBAEnabled() )
{
- DirEntry aEntry( rPar.Get(1)->GetString() );
+ DirEntry aEntry( rPar.Get(1)->GetOUString() );
aEntry.ToAbs();
// #57064 extract the real-path for virtual URLs
- rtl::OString aByteStrFullPath(rtl::OUStringToOString(aEntry.GetFull(),
- osl_getThreadTextEncoding()));
+ OString aByteStrFullPath(rtl::OUStringToOString(aEntry.GetFull(),
+ osl_getThreadTextEncoding()));
DWORD nRealFlags = GetFileAttributes (aByteStrFullPath.getStr());
if (nRealFlags != 0xffffffff)
{
if (nRealFlags == FILE_ATTRIBUTE_NORMAL)
+ {
nRealFlags = 0;
+ }
nFlags = (sal_Int16) (nRealFlags);
}
else
+ {
StarBASIC::Error( SbERR_FILE_NOT_FOUND );
-
+ }
rPar.Get(0)->PutInteger( nFlags );
return;
@@ -2724,7 +2948,7 @@ RTLFUNC(GetAttr)
{
try
{
- String aPath = getFullPath( rPar.Get(1)->GetString() );
+ OUString aPath = getFullPath( rPar.Get(1)->GetOUString() );
sal_Bool bExists = sal_False;
try { bExists = xSFI->exists( aPath ); }
catch(const Exception & ) {}
@@ -2738,11 +2962,17 @@ RTLFUNC(GetAttr)
sal_Bool bHidden = xSFI->isHidden( aPath );
sal_Bool bDirectory = xSFI->isFolder( aPath );
if( bReadOnly )
+ {
nFlags |= Sb_ATTR_READONLY;
+ }
if( bHidden )
+ {
nFlags |= Sb_ATTR_HIDDEN;
+ }
if( bDirectory )
+ {
nFlags |= Sb_ATTR_DIRECTORY;
+ }
}
catch(const Exception & )
{
@@ -2753,7 +2983,7 @@ RTLFUNC(GetAttr)
else
{
DirectoryItem aItem;
- DirectoryItem::get( getFullPathUNC( rPar.Get(1)->GetString() ), aItem );
+ DirectoryItem::get( getFullPathUNC( rPar.Get(1)->GetOUString() ), aItem );
FileStatus aFileStatus( osl_FileStatus_Mask_Attributes | osl_FileStatus_Mask_Type );
aItem.getFileStatus( aFileStatus );
sal_uInt64 nAttributes = aFileStatus.getAttributes();
@@ -2762,14 +2992,20 @@ RTLFUNC(GetAttr)
FileStatus::Type aType = aFileStatus.getFileType();
bool bDirectory = isFolder( aType );
if( bReadOnly )
+ {
nFlags |= Sb_ATTR_READONLY;
+ }
if( bDirectory )
+ {
nFlags |= Sb_ATTR_DIRECTORY;
+ }
}
rPar.Get(0)->PutInteger( nFlags );
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
@@ -2779,10 +3015,12 @@ RTLFUNC(FileDateTime)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aPath = rPar.Get(1)->GetString();
+ OUString aPath = rPar.Get(1)->GetOUString();
Time aTime( Time::EMPTY );
Date aDate( Date::EMPTY );
if( hasUno() )
@@ -2839,12 +3077,14 @@ RTLFUNC(FileDateTime)
SbiInstance::PrepareNumberFormatter( pFormatter, n, n, nIndex );
}
- String aRes;
+ OUString aRes;
pFormatter->GetOutputString( fSerial, nIndex, aRes, &pCol );
rPar.Get(0)->PutString( aRes );
if( !GetSbData()->pInst )
+ {
delete pFormatter;
+ }
}
}
@@ -2856,7 +3096,9 @@ RTLFUNC(EOF)
// No changes for UCB
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_Int16 nChannel = rPar.Get(1)->GetInteger();
@@ -2875,10 +3117,14 @@ RTLFUNC(EOF)
(*pSvStrm) >> cBla; // can we read another character?
bIsEof = pSvStrm->IsEof();
if ( !bIsEof )
+ {
pSvStrm->SeekRel( -1 );
+ }
}
else
+ {
bIsEof = pSvStrm->IsEof(); // for binary data!
+ }
rPar.Get(0)->PutBool( bIsEof );
}
}
@@ -2894,7 +3140,9 @@ RTLFUNC(FileAttr)
// already opened files and the name doesn't matter there.
if ( rPar.Count() != 3 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_Int16 nChannel = rPar.Get(1)->GetInteger();
@@ -2907,10 +3155,13 @@ RTLFUNC(FileAttr)
}
sal_Int16 nRet;
if ( rPar.Get(2)->GetInteger() == 1 )
+ {
nRet = (sal_Int16)(pSbStrm->GetMode());
+ }
else
+ {
nRet = 0; // System file handle not supported
-
+ }
rPar.Get(0)->PutInteger( nRet );
}
}
@@ -2921,7 +3172,9 @@ RTLFUNC(Loc)
// No changes for UCB
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_Int16 nChannel = rPar.Get(1)->GetInteger();
@@ -2941,13 +3194,21 @@ RTLFUNC(Loc)
nPos++; // block positions starting at 1
}
else if ( pSbStrm->IsText() )
+ {
nPos = pSbStrm->GetLine();
+ }
else if( pSbStrm->IsBinary() )
+ {
nPos = pSvStrm->Tell();
+ }
else if ( pSbStrm->IsSeq() )
+ {
nPos = ( pSvStrm->Tell()+1 ) / 128;
+ }
else
+ {
nPos = pSvStrm->Tell();
+ }
rPar.Get(0)->PutLong( (sal_Int32)nPos );
}
}
@@ -2959,7 +3220,9 @@ RTLFUNC(Lof)
// No changes for UCB
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_Int16 nChannel = rPar.Get(1)->GetInteger();
@@ -3005,7 +3268,9 @@ RTLFUNC(Seek)
{
sal_uIntPtr nPos = pStrm->Tell();
if( pSbStrm->IsRandom() )
+ {
nPos = nPos / pSbStrm->GetBlockLen();
+ }
nPos++; // Basic counts from 1
rPar.Get(0)->PutLong( (sal_Int32)nPos );
}
@@ -3020,7 +3285,9 @@ RTLFUNC(Seek)
nPos--; // Basic counts from 1, SvStreams count from 0
pSbStrm->SetExpandOnWriteTo( 0 );
if ( pSbStrm->IsRandom() )
+ {
nPos *= pSbStrm->GetBlockLen();
+ }
pStrm->Seek( (sal_uIntPtr)nPos );
pSbStrm->SetExpandOnWriteTo( nPos );
}
@@ -3033,15 +3300,19 @@ RTLFUNC(Format)
sal_uInt16 nArgCount = (sal_uInt16)rPar.Count();
if ( nArgCount < 2 || nArgCount > 3 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- String aResult;
+ OUString aResult;
if( nArgCount == 2 )
+ {
rPar.Get(1)->Format( aResult );
+ }
else
{
- String aFmt( rPar.Get(2)->GetString() );
+ OUString aFmt( rPar.Get(2)->GetOUString() );
rPar.Get(1)->Format( aResult, &aFmt );
}
rPar.Get(0)->PutString( aResult );
@@ -3054,12 +3325,18 @@ RTLFUNC(Randomize)
(void)bWrite;
if ( rPar.Count() > 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
sal_Int16 nSeed;
if( rPar.Count() == 2 )
+ {
nSeed = (sal_Int16)rPar.Get(1)->GetInteger();
+ }
else
+ {
nSeed = (sal_Int16)rand();
+ }
srand( nSeed );
}
@@ -3069,7 +3346,9 @@ RTLFUNC(Rnd)
(void)bWrite;
if ( rPar.Count() > 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double nRand = (double)rand();
@@ -3110,64 +3389,66 @@ RTLFUNC(Shell)
{
oslProcessOption nOptions = osl_Process_SEARCHPATH | osl_Process_DETACHED;
- String aCmdLine = rPar.Get(1)->GetString();
+ OUString aCmdLine = rPar.Get(1)->GetOUString();
// attach additional parameters - everything must be parsed anyway
if( nArgCount >= 4 )
{
- aCmdLine.AppendAscii( " " );
- aCmdLine += rPar.Get(3)->GetString();
+ aCmdLine += " ";
+ aCmdLine += rPar.Get(3)->GetOUString();
}
- else if( !aCmdLine.Len() )
+ else if( aCmdLine.isEmpty() )
{
// avaoid special treatment (empty list)
- aCmdLine.AppendAscii( " " );
+ aCmdLine += " ";
}
- sal_uInt16 nLen = aCmdLine.Len();
+ sal_Int32 nLen = aCmdLine.getLength();
// #55735 if there are parameters, they have to be seperated
// #72471 also seperate the single parameters
std::list<String> aTokenList;
- String aToken;
- sal_uInt16 i = 0;
+ OUString aToken;
+ sal_Int32 i = 0;
sal_Unicode c;
while( i < nLen )
{
for ( ;; ++i )
{
- c = aCmdLine.GetBuffer()[ i ];
+ c = aCmdLine[ i ];
if ( c != ' ' && c != '\t' )
+ {
break;
+ }
}
if( c == '\"' || c == '\'' )
{
- sal_uInt16 iFoundPos = aCmdLine.Search( c, i + 1 );
+ sal_Int32 iFoundPos = aCmdLine.indexOf( c, i + 1 );
- if( iFoundPos == STRING_NOTFOUND )
+ if( iFoundPos < 0 )
{
- aToken = aCmdLine.Copy( i, STRING_LEN );
+ aToken = aCmdLine.copy( i);
i = nLen;
}
else
{
- aToken = aCmdLine.Copy( i + 1, (iFoundPos - i - 1) );
+ aToken = aCmdLine.copy( i + 1, (iFoundPos - i - 1) );
i = iFoundPos + 1;
}
}
else
{
- sal_uInt16 iFoundSpacePos = aCmdLine.Search( ' ', i );
- sal_uInt16 iFoundTabPos = aCmdLine.Search( '\t', i );
- sal_uInt16 iFoundPos = Min( iFoundSpacePos, iFoundTabPos );
+ sal_Int32 iFoundSpacePos = aCmdLine.indexOf( ' ', i );
+ sal_Int32 iFoundTabPos = aCmdLine.indexOf( '\t', i );
+ sal_Int32 iFoundPos = iFoundSpacePos >= 0 ? iFoundTabPos >= 0 ? Min( iFoundSpacePos, iFoundTabPos ) : iFoundSpacePos : -1;
- if( iFoundPos == STRING_NOTFOUND )
+ if( iFoundPos < 0 )
{
- aToken = aCmdLine.Copy( i, STRING_LEN );
+ aToken = aCmdLine.copy( i );
i = nLen;
}
else
{
- aToken = aCmdLine.Copy( i, (iFoundPos - i) );
+ aToken = aCmdLine.copy( i, (iFoundPos - i) );
i = iFoundPos;
}
}
@@ -3196,29 +3477,32 @@ RTLFUNC(Shell)
sal_Bool bSync = sal_False;
if( nArgCount >= 5 )
+ {
bSync = rPar.Get(4)->GetBool();
+ }
if( bSync )
+ {
nOptions |= osl_Process_WAIT;
+ }
}
// #72471 work parameter(s) up
std::list<String>::const_iterator iter = aTokenList.begin();
- const String& rStr = *iter;
- ::rtl::OUString aOUStrProg( rStr.GetBuffer(), rStr.Len() );
- ::rtl::OUString aOUStrProgUNC = getFullPathUNC( aOUStrProg );
+ const OUString& rStr = *iter;
+ OUString aOUStrProg( rStr.getStr(), rStr.getLength() );
+ OUString aOUStrProgUNC = getFullPathUNC( aOUStrProg );
++iter;
- sal_uInt16 nParamCount = sal::static_int_cast< sal_uInt16 >(
- aTokenList.size() - 1 );
+ sal_uInt16 nParamCount = sal::static_int_cast< sal_uInt16 >(aTokenList.size() - 1 );
rtl_uString** pParamList = NULL;
if( nParamCount )
{
pParamList = new rtl_uString*[nParamCount];
for(int iList = 0; iter != aTokenList.end(); ++iList, ++iter)
{
- const String& rParamStr = (*iter);
- const ::rtl::OUString aTempStr( rParamStr.GetBuffer(), rParamStr.Len());
+ const OUString& rParamStr = (*iter);
+ const OUString aTempStr( rParamStr.getStr(), rParamStr.getLength());
pParamList[iList] = NULL;
rtl_uString_assign(&(pParamList[iList]), aTempStr.pData);
}
@@ -3244,9 +3528,13 @@ RTLFUNC(Shell)
}
if( !bSucc )
+ {
StarBASIC::Error( SbERR_FILE_NOT_FOUND );
+ }
else
+ {
rPar.Get(0)->PutLong( 0 );
+ }
}
}
@@ -3256,7 +3544,9 @@ RTLFUNC(VarType)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxDataType eType = rPar.Get(1)->GetType();
@@ -3265,7 +3555,7 @@ RTLFUNC(VarType)
}
// Exported function
-rtl::OUString getBasicTypeName( SbxDataType eType )
+OUString getBasicTypeName( SbxDataType eType )
{
static const char* pTypeNames[] =
{
@@ -3312,25 +3602,31 @@ rtl::OUString getBasicTypeName( SbxDataType eType )
int nPos = ((int)eType) & 0x0FFF;
sal_uInt16 nTypeNameCount = sizeof( pTypeNames ) / sizeof( char* );
if ( nPos < 0 || nPos >= nTypeNameCount )
+ {
nPos = nTypeNameCount - 1;
+ }
return rtl::OUString::createFromAscii(pTypeNames[nPos]);
}
String getObjectTypeName( SbxVariable* pVar )
{
- rtl::OUString sRet( "Object" );
+ OUString sRet( "Object" );
if ( pVar )
{
SbxBase* pObj = pVar->GetObject();
if( !pObj )
- sRet = String( RTL_CONSTASCII_USTRINGPARAM("Nothing") );
+ {
+ sRet = OUString("Nothing");
+ }
else
{
SbUnoObject* pUnoObj = PTR_CAST(SbUnoObject,pVar );
if ( !pUnoObj )
{
if ( SbxBase* pBaseObj = pVar->GetObject() )
+ {
pUnoObj = PTR_CAST(SbUnoObject, pBaseObj );
+ }
}
if ( pUnoObj )
{
@@ -3346,7 +3642,9 @@ String getObjectTypeName( SbxVariable* pVar )
uno::Reference< ooo::vba::XHelperInterface > xVBA( aObj, uno::UNO_QUERY );
Sequence< rtl::OUString > sServices = xServInfo->getSupportedServiceNames();
if ( sServices.getLength() )
+ {
sRet = sServices[ 0 ];
+ }
}
else
{
@@ -3368,7 +3666,9 @@ String getObjectTypeName( SbxVariable* pVar )
}
sal_Int32 nDot = sRet.lastIndexOf( '.' );
if ( nDot != -1 && nDot < sRet.getLength() )
- sRet = sRet.copy( nDot + 1 );
+ {
+ sRet = sRet.copy( nDot + 1 );
+ }
}
}
}
@@ -3381,19 +3681,27 @@ RTLFUNC(TypeName)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxDataType eType = rPar.Get(1)->GetType();
bool bIsArray = ( ( eType & SbxARRAY ) != 0 );
- String aRetStr;
+ OUString aRetStr;
if ( SbiRuntime::isVBAEnabled() && eType == SbxOBJECT )
+ {
aRetStr = getObjectTypeName( rPar.Get(1) );
+ }
else
+ {
aRetStr = getBasicTypeName( eType );
+ }
if( bIsArray )
- aRetStr.AppendAscii( "()" );
+ {
+ aRetStr += "()";
+ }
rPar.Get(0)->PutString( aRetStr );
}
}
@@ -3404,11 +3712,13 @@ RTLFUNC(Len)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- const String& rStr = rPar.Get(1)->GetString();
- rPar.Get(0)->PutLong( (sal_Int32)rStr.Len() );
+ const OUString& rStr = rPar.Get(1)->GetOUString();
+ rPar.Get(0)->PutLong( rStr.getLength() );
}
}
@@ -3430,16 +3740,20 @@ RTLFUNC(DDEInitiate)
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
- const String& rApp = rPar.Get(1)->GetString();
- const String& rTopic = rPar.Get(2)->GetString();
+ const OUString& rApp = rPar.Get(1)->GetOUString();
+ const OUString& rTopic = rPar.Get(2)->GetOUString();
SbiDdeControl* pDDE = GetSbData()->pInst->GetDdeControl();
- sal_Int16 nChannel;
+ size_t nChannel;
SbError nDdeErr = pDDE->Initiate( rApp, rTopic, nChannel );
if( nDdeErr )
+ {
StarBASIC::Error( nDdeErr );
+ }
else
- rPar.Get(0)->PutInteger( nChannel );
+ {
+ rPar.Get(0)->PutInteger( (int)nChannel );
+ }
}
RTLFUNC(DDETerminate)
@@ -3461,11 +3775,13 @@ RTLFUNC(DDETerminate)
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
- sal_Int16 nChannel = rPar.Get(1)->GetInteger();
+ size_t nChannel = rPar.Get(1)->GetInteger();
SbiDdeControl* pDDE = GetSbData()->pInst->GetDdeControl();
SbError nDdeErr = pDDE->Terminate( nChannel );
if( nDdeErr )
+ {
StarBASIC::Error( nDdeErr );
+ }
}
RTLFUNC(DDETerminateAll)
@@ -3491,8 +3807,9 @@ RTLFUNC(DDETerminateAll)
SbiDdeControl* pDDE = GetSbData()->pInst->GetDdeControl();
SbError nDdeErr = pDDE->TerminateAll();
if( nDdeErr )
+ {
StarBASIC::Error( nDdeErr );
-
+ }
}
RTLFUNC(DDERequest)
@@ -3513,15 +3830,19 @@ RTLFUNC(DDERequest)
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
- sal_Int16 nChannel = rPar.Get(1)->GetInteger();
- const String& rItem = rPar.Get(2)->GetString();
+ size_t nChannel = rPar.Get(1)->GetInteger();
+ const OUString& rItem = rPar.Get(2)->GetOUString();
SbiDdeControl* pDDE = GetSbData()->pInst->GetDdeControl();
- String aResult;
+ OUString aResult;
SbError nDdeErr = pDDE->Request( nChannel, rItem, aResult );
if( nDdeErr )
+ {
StarBASIC::Error( nDdeErr );
+ }
else
+ {
rPar.Get(0)->PutString( aResult );
+ }
}
RTLFUNC(DDEExecute)
@@ -3543,12 +3864,14 @@ RTLFUNC(DDEExecute)
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
- sal_Int16 nChannel = rPar.Get(1)->GetInteger();
- const String& rCommand = rPar.Get(2)->GetString();
+ size_t nChannel = rPar.Get(1)->GetInteger();
+ const OUString& rCommand = rPar.Get(2)->GetOUString();
SbiDdeControl* pDDE = GetSbData()->pInst->GetDdeControl();
SbError nDdeErr = pDDE->Execute( nChannel, rCommand );
if( nDdeErr )
+ {
StarBASIC::Error( nDdeErr );
+ }
}
RTLFUNC(DDEPoke)
@@ -3570,13 +3893,15 @@ RTLFUNC(DDEPoke)
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
- sal_Int16 nChannel = rPar.Get(1)->GetInteger();
- const String& rItem = rPar.Get(2)->GetString();
- const String& rData = rPar.Get(3)->GetString();
+ size_t nChannel = rPar.Get(1)->GetInteger();
+ const OUString& rItem = rPar.Get(2)->GetOUString();
+ const OUString& rData = rPar.Get(3)->GetOUString();
SbiDdeControl* pDDE = GetSbData()->pInst->GetDdeControl();
SbError nDdeErr = pDDE->Poke( nChannel, rItem, rData );
if( nDdeErr )
+ {
StarBASIC::Error( nDdeErr );
+ }
}
@@ -3741,12 +4066,12 @@ RTLFUNC(StrConv)
return;
}
- String aOldStr = rPar.Get(1)->GetString();
+ OUString aOldStr = rPar.Get(1)->GetOUString();
sal_Int32 nConversion = rPar.Get(2)->GetLong();
sal_uInt16 nLanguage = LANGUAGE_SYSTEM;
- sal_uInt16 nOldLen = aOldStr.Len();
+ sal_Int32 nOldLen = aOldStr.getLength();
if( nOldLen == 0 )
{
// null string,return
@@ -3758,28 +4083,37 @@ RTLFUNC(StrConv)
if ( (nConversion & 0x03) == 3 ) // vbProperCase
{
const CharClass& rCharClass = GetCharClass();
- aOldStr = rCharClass.titlecase( aOldStr.ToLowerAscii(), 0, nOldLen );
+ aOldStr = rCharClass.titlecase( aOldStr.toAsciiLowerCase(), 0, nOldLen );
}
else if ( (nConversion & 0x01) == 1 ) // vbUpperCase
+ {
nType |= i18n::TransliterationModules_LOWERCASE_UPPERCASE;
+ }
else if ( (nConversion & 0x02) == 2 ) // vbLowerCase
+ {
nType |= i18n::TransliterationModules_UPPERCASE_LOWERCASE;
-
+ }
if ( (nConversion & 0x04) == 4 ) // vbWide
+ {
nType |= i18n::TransliterationModules_HALFWIDTH_FULLWIDTH;
+ }
else if ( (nConversion & 0x08) == 8 ) // vbNarrow
+ {
nType |= i18n::TransliterationModules_FULLWIDTH_HALFWIDTH;
-
+ }
if ( (nConversion & 0x10) == 16) // vbKatakana
+ {
nType |= i18n::TransliterationModules_HIRAGANA_KATAKANA;
+ }
else if ( (nConversion & 0x20) == 32 ) // vbHiragana
+ {
nType |= i18n::TransliterationModules_KATAKANA_HIRAGANA;
-
- String aNewStr( aOldStr );
+ }
+ OUString aNewStr( aOldStr );
if( nType != 0 )
{
- uno::Reference< lang::XMultiServiceFactory > xSMgr = getProcessServiceFactory();
- ::utl::TransliterationWrapper aTransliterationWrapper( xSMgr,nType );
+ uno::Reference< uno::XComponentContext > xContext = getProcessComponentContext();
+ ::utl::TransliterationWrapper aTransliterationWrapper( xContext, nType );
uno::Sequence<sal_Int32> aOffsets;
aTransliterationWrapper.loadModuleIfNeeded( nLanguage );
aNewStr = aTransliterationWrapper.transliterate( aOldStr, nLanguage, 0, nOldLen, &aOffsets );
@@ -3788,47 +4122,52 @@ RTLFUNC(StrConv)
if ( (nConversion & 0x40) == 64 ) // vbUnicode
{
// convert the string to byte string, preserving unicode (2 bytes per character)
- sal_uInt16 nSize = aNewStr.Len()*2;
- const sal_Unicode* pSrc = aNewStr.GetBuffer();
+ sal_Int32 nSize = aNewStr.getLength()*2;
+ const sal_Unicode* pSrc = aNewStr.getStr();
sal_Char* pChar = new sal_Char[nSize+1];
- for( sal_uInt16 i=0; i < nSize; i++ )
+ for( sal_Int32 i=0; i < nSize; i++ )
{
pChar[i] = static_cast< sal_Char >( (i%2) ? ((*pSrc) >> 8) & 0xff : (*pSrc) & 0xff );
if( i%2 )
+ {
pSrc++;
+ }
}
pChar[nSize] = '\0';
::rtl::OString aOStr(pChar);
delete[] pChar;
// there is no concept about default codepage in unix. so it is incorrectly in unix
- ::rtl::OUString aOUStr = ::rtl::OStringToOUString(aOStr, osl_getThreadTextEncoding());
- aNewStr = String(aOUStr);
- rPar.Get(0)->PutString( aNewStr );
+ OUString aOUStr = ::rtl::OStringToOUString(aOStr, osl_getThreadTextEncoding());
+ rPar.Get(0)->PutString( aOUStr );
return;
}
else if ( (nConversion & 0x80) == 128 ) // vbFromUnicode
{
- ::rtl::OUString aOUStr(aNewStr);
+ OUString aOUStr(aNewStr);
// there is no concept about default codepage in unix. so it is incorrectly in unix
::rtl::OString aOStr = ::rtl::OUStringToOString(aNewStr,osl_getThreadTextEncoding());
const sal_Char* pChar = aOStr.getStr();
- sal_uInt16 nArraySize = static_cast< sal_uInt16 >( aOStr.getLength() );
+ sal_Int32 nArraySize = aOStr.getLength();
SbxDimArray* pArray = new SbxDimArray(SbxBYTE);
bool bIncIndex = (IsBaseIndexOne() && SbiRuntime::isVBAEnabled() );
if(nArraySize)
{
if( bIncIndex )
+ {
pArray->AddDim( 1, nArraySize );
+ }
else
+ {
pArray->AddDim( 0, nArraySize-1 );
+ }
}
else
{
pArray->unoAddDim( 0, -1 );
}
- for( sal_uInt16 i=0; i< nArraySize; i++)
+ for( sal_Int32 i=0; i< nArraySize; i++)
{
SbxVariable* pNew = new SbxVariable( SbxBYTE );
pNew->PutByte(*pChar);
@@ -3836,7 +4175,9 @@ RTLFUNC(StrConv)
pNew->SetFlag( SBX_WRITE );
short index = i;
if( bIncIndex )
+ {
++index;
+ }
pArray->Put( pNew, &index );
}
@@ -3846,9 +4187,8 @@ RTLFUNC(StrConv)
refVar->PutObject( pArray );
refVar->SetFlags( nFlags );
refVar->SetParameters( NULL );
- return;
+ return;
}
-
rPar.Get(0)->PutString(aNewStr);
}
@@ -3886,10 +4226,11 @@ RTLFUNC(Load)
}
else if( pObj->IsA( TYPE( SbxObject ) ) )
{
- SbxVariable* pVar = ((SbxObject*)pObj)->
- Find( String( RTL_CONSTASCII_USTRINGPARAM("Load") ), SbxCLASS_METHOD );
+ SbxVariable* pVar = ((SbxObject*)pObj)->Find( OUString("Load"), SbxCLASS_METHOD );
if( pVar )
+ {
pVar->GetInteger();
+ }
}
}
}
@@ -3917,10 +4258,11 @@ RTLFUNC(Unload)
}
else if( pObj->IsA( TYPE( SbxObject ) ) )
{
- SbxVariable* pVar = ((SbxObject*)pObj)->
- Find( String( RTL_CONSTASCII_USTRINGPARAM("Unload") ), SbxCLASS_METHOD );
+ SbxVariable* pVar = ((SbxObject*)pObj)->Find( OUString("Unload"), SbxCLASS_METHOD );
if( pVar )
+ {
pVar->GetInteger();
+ }
}
}
}
@@ -3936,7 +4278,7 @@ RTLFUNC(LoadPicture)
return;
}
- String aFileURL = getFullPath( rPar.Get(1)->GetString() );
+ OUString aFileURL = getFullPath( rPar.Get(1)->GetOUString() );
SvStream* pStream = utl::UcbStreamHelper::CreateStream( aFileURL, STREAM_READ );
if( pStream != NULL )
{
@@ -3966,7 +4308,7 @@ RTLFUNC(SavePicture)
SbxBase* pObj = (SbxObject*)rPar.Get(1)->GetObject();
if( pObj->IsA( TYPE( SbStdPicture ) ) )
{
- SvFileStream aOStream( rPar.Get(2)->GetString(), STREAM_WRITE | STREAM_TRUNC );
+ SvFileStream aOStream( rPar.Get(2)->GetOUString(), STREAM_WRITE | STREAM_TRUNC );
Graphic aGraphic = ((SbStdPicture*)pObj)->GetGraphic();
aOStream << aGraphic;
}
@@ -4019,8 +4361,9 @@ RTLFUNC(MsgBox)
WinBits nStyle = nType;
nStyle &= 15; // delete bits 4-16
if( nStyle > 5 )
+ {
nStyle = 0;
-
+ }
nWinBits = nStyleMap[ nStyle ];
WinBits nWinDefBits;
@@ -4028,65 +4371,85 @@ RTLFUNC(MsgBox)
if( nType & 256 )
{
if( nStyle == 5 )
+ {
nWinDefBits = WB_DEF_CANCEL;
+ }
else if( nStyle == 2 )
+ {
nWinDefBits = WB_DEF_RETRY;
+ }
else
+ {
nWinDefBits = (WB_DEF_CANCEL | WB_DEF_RETRY | WB_DEF_NO);
+ }
}
else if( nType & 512 )
{
if( nStyle == 2)
+ {
nWinDefBits = WB_DEF_IGNORE;
+ }
else
+ {
nWinDefBits = WB_DEF_CANCEL;
+ }
}
else if( nStyle == 2)
+ {
nWinDefBits = WB_DEF_CANCEL;
+ }
nWinBits |= nWinDefBits;
- String aMsg = rPar.Get(1)->GetString();
- String aTitle;
+ OUString aMsg = rPar.Get(1)->GetOUString();
+ OUString aTitle;
if( nArgCount >= 4 )
- aTitle = rPar.Get(3)->GetString();
+ {
+ aTitle = rPar.Get(3)->GetOUString();
+ }
else
+ {
aTitle = GetpApp()->GetAppName();
+ }
nType &= (16+32+64);
MessBox* pBox = 0;
Window* pParent = GetpApp()->GetDefDialogParent();
switch( nType )
{
- case 16:
- pBox = new ErrorBox( pParent, nWinBits, aMsg );
- break;
- case 32:
- pBox = new QueryBox( pParent, nWinBits, aMsg );
- break;
- case 48:
- pBox = new WarningBox( pParent, nWinBits, aMsg );
- break;
- case 64:
- pBox = new InfoBox( pParent, aMsg );
- break;
- default:
- pBox = new MessBox( pParent, nWinBits, aTitle, aMsg );
+ case 16:
+ pBox = new ErrorBox( pParent, nWinBits, aMsg );
+ break;
+ case 32:
+ pBox = new QueryBox( pParent, nWinBits, aMsg );
+ break;
+ case 48:
+ pBox = new WarningBox( pParent, nWinBits, aMsg );
+ break;
+ case 64:
+ pBox = new InfoBox( pParent, aMsg );
+ break;
+ default:
+ pBox = new MessBox( pParent, nWinBits, aTitle, aMsg );
}
pBox->SetText( aTitle );
sal_uInt16 nRet = (sal_uInt16)pBox->Execute();
if( nRet == sal_True )
+ {
nRet = 1;
-
+ }
sal_Int16 nMappedRet;
if( nStyle == 2 )
{
nMappedRet = nRet;
if( nMappedRet == 0 )
+ {
nMappedRet = 3; // Abort
+ }
}
else
+ {
nMappedRet = nButtonMap[ nRet ];
-
+ }
rPar.Get(0)->PutInteger( nMappedRet );
delete pBox;
}
@@ -4099,7 +4462,7 @@ RTLFUNC(SetAttr)
rPar.Get(0)->PutEmpty();
if ( rPar.Count() == 3 )
{
- String aStr = rPar.Get(1)->GetString();
+ OUString aStr = rPar.Get(1)->GetOUString();
sal_Int16 nFlags = rPar.Get(2)->GetInteger();
if( hasUno() )
@@ -4122,7 +4485,9 @@ RTLFUNC(SetAttr)
}
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(Reset)
@@ -4133,7 +4498,9 @@ RTLFUNC(Reset)
SbiIoSystem* pIO = GetSbData()->pInst->GetIoSystem();
if (pIO)
+ {
pIO->CloseAll();
+ }
}
RTLFUNC(DumpAllObjects)
@@ -4143,20 +4510,28 @@ RTLFUNC(DumpAllObjects)
sal_uInt16 nArgCount = (sal_uInt16)rPar.Count();
if( nArgCount < 2 || nArgCount > 3 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else if( !pBasic )
+ {
StarBASIC::Error( SbERR_INTERNAL_ERROR );
+ }
else
{
SbxObject* p = pBasic;
while( p->GetParent() )
+ {
p = p->GetParent();
- SvFileStream aStrm( rPar.Get( 1 )->GetString(),
+ }
+ SvFileStream aStrm( rPar.Get( 1 )->GetOUString(),
STREAM_WRITE | STREAM_TRUNC );
p->Dump( aStrm, rPar.Get( 2 )->GetBool() );
aStrm.Close();
if( aStrm.GetError() != SVSTREAM_OK )
+ {
StarBASIC::Error( SbERR_IO_ERROR );
+ }
}
}
@@ -4168,7 +4543,7 @@ RTLFUNC(FileExists)
if ( rPar.Count() == 2 )
{
- String aStr = rPar.Get(1)->GetString();
+ OUString aStr = rPar.Get(1)->GetOUString();
sal_Bool bExists = sal_False;
if( hasUno() )
@@ -4195,7 +4570,9 @@ RTLFUNC(FileExists)
rPar.Get(0)->PutBool( bExists );
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(Partition)
@@ -4227,15 +4604,15 @@ RTLFUNC(Partition)
// will be handled properly during any subsequent sort operation.
// calculate the maximun number of characters before lowervalue and uppervalue
- ::rtl::OUString aBeforeStart = ::rtl::OUString::valueOf( nStart - 1 );
- ::rtl::OUString aAfterStop = ::rtl::OUString::valueOf( nStop + 1 );
+ OUString aBeforeStart = ::rtl::OUString::valueOf( nStart - 1 );
+ OUString aAfterStop = ::rtl::OUString::valueOf( nStop + 1 );
sal_Int32 nLen1 = aBeforeStart.getLength();
sal_Int32 nLen2 = aAfterStop.getLength();
sal_Int32 nLen = nLen1 >= nLen2 ? nLen1:nLen2;
- ::rtl::OUStringBuffer aRetStr( nLen * 2 + 1);
- ::rtl::OUString aLowerValue;
- ::rtl::OUString aUpperValue;
+ OUStringBuffer aRetStr( nLen * 2 + 1);
+ OUString aLowerValue;
+ OUString aUpperValue;
if( nNumber < nStart )
{
aUpperValue = aBeforeStart;
@@ -4253,7 +4630,6 @@ RTLFUNC(Partition)
nLowerValue = ((( nNumber - nStart ) / nInterval ) * nInterval ) + nStart;
nUpperValue = nLowerValue + nInterval - 1;
}
-
aLowerValue = ::rtl::OUString::valueOf( nLowerValue );
aUpperValue = ::rtl::OUString::valueOf( nUpperValue );
}
@@ -4265,17 +4641,21 @@ RTLFUNC(Partition)
{
// appending the leading spaces for the lowervalue
for ( sal_Int32 i= (nLen - nLen1) ; i > 0; --i )
+ {
aRetStr.appendAscii(" ");
+ }
}
aRetStr.append( aLowerValue ).appendAscii(":");
if( nLen > nLen2 )
{
// appending the leading spaces for the uppervalue
for ( sal_Int32 i= (nLen - nLen2) ; i > 0; --i )
+ {
aRetStr.appendAscii(" ");
+ }
}
aRetStr.append( aUpperValue );
- rPar.Get(0)->PutString( String(aRetStr.makeStringAndClear()) );
+ rPar.Get(0)->PutString( aRetStr.makeStringAndClear());
}
#endif
@@ -4290,7 +4670,9 @@ static long GetDayDiff( const Date& rDate )
nDiffDays *= -1;
}
else
+ {
nDiffDays = (long)(rDate - aRefDate);
+ }
nDiffDays += 2; // adjustment VisualBasic: 1.Jan.1900 == 2
return nDiffDays;
}
@@ -4309,11 +4691,17 @@ bool implDateSerial( sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay, double&
{
#ifndef DISABLE_SCRIPTING
if ( nYear < 30 && SbiRuntime::isVBAEnabled() )
+ {
nYear += 2000;
+ }
else
#endif
+ {
if ( nYear < 100 )
+ {
nYear += 1900;
+ }
+ }
Date aCurDate( nDay, nMonth, nYear );
if ((nYear < 100 || nYear > 9999) )
{
@@ -4328,7 +4716,7 @@ bool implDateSerial( sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay, double&
#endif
{
if ( (nMonth < 1 || nMonth > 12 )||
- (nDay < 1 || nDay > 31 ) )
+ (nDay < 1 || nDay > 31 ) )
{
#ifndef DISABLE_SCRIPTING
StarBASIC::Error( SbERR_BAD_ARGUMENT );
@@ -4351,7 +4739,9 @@ bool implDateSerial( sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay, double&
// just modify the months directory
sal_Int16 nYearAdj = ( nMonth /12 ); // default to positive months inputed
if ( nMonth <=0 )
+ {
nYearAdj = ( ( nMonth -12 ) / 12 );
+ }
aCurDate.SetYear( aCurDate.GetYear() + nYearAdj );
}
@@ -4359,9 +4749,13 @@ bool implDateSerial( sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay, double&
// e.g. 2000, 2, 0 = 2000, 1, 31 or the last day of the previous month
// 2000, 1, 32 = 2000, 2, 1 or the first day of the following month
if( ( nDay < 1 ) || ( nDay > aCurDate.GetDaysInMonth() ) )
+ {
aCurDate += nDay - 1;
+ }
else
+ {
aCurDate.SetDay( nDay );
+ }
}
#endif
@@ -4373,7 +4767,9 @@ bool implDateSerial( sal_Int16 nYear, sal_Int16 nMonth, sal_Int16 nDay, double&
sal_Int16 implGetMinute( double dDate )
{
if( dDate < 0.0 )
+ {
dDate *= -1.0;
+ }
double nFrac = dDate - floor( dDate );
nFrac *= 86400.0;
sal_Int32 nSeconds = (sal_Int32)(nFrac + 0.5);
diff --git a/basic/source/runtime/methods1.cxx b/basic/source/runtime/methods1.cxx
index 7072c09cb3d7..e12a69f0e94a 100644
--- a/basic/source/runtime/methods1.cxx
+++ b/basic/source/runtime/methods1.cxx
@@ -48,7 +48,7 @@
#include <com/sun/star/uno/Sequence.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/i18n/XCalendar3.hpp>
+#include <com/sun/star/i18n/LocaleCalendar.hpp>
#include <com/sun/star/sheet/XFunctionAccess.hpp>
using namespace comphelper;
@@ -64,12 +64,8 @@ static Reference< XCalendar3 > getLocaleCalendar( void )
static Reference< XCalendar3 > xCalendar;
if( !xCalendar.is() )
{
- Reference< XMultiServiceFactory > xSMgr = getProcessServiceFactory();
- if( xSMgr.is() )
- {
- xCalendar = Reference< XCalendar3 >( xSMgr->createInstance
- ( ::rtl::OUString("com.sun.star.i18n.LocaleCalendar" ) ), UNO_QUERY );
- }
+ Reference< XComponentContext > xContext = getProcessComponentContext();
+ xCalendar = LocaleCalendar::create(xContext);
}
static com::sun::star::lang::Locale aLastLocale;
@@ -132,7 +128,7 @@ RTLFUNC(CallByName)
}
// 2. parameter is ProcedureName
- String aNameStr = rPar.Get(2)->GetString();
+ OUString aNameStr = rPar.Get(2)->GetOUString();
// 3. parameter is CallType
sal_Int16 nCallType = rPar.Get(3)->GetInteger();
@@ -147,74 +143,76 @@ RTLFUNC(CallByName)
switch( nCallType )
{
- case vbGet:
+ case vbGet:
+ {
+ SbxValues aVals;
+ aVals.eType = SbxVARIANT;
+ pFindVar->Get( aVals );
+
+ SbxVariableRef refVar = rPar.Get(0);
+ refVar->Put( aVals );
+ }
+ break;
+ case vbLet:
+ case vbSet:
+ {
+ if ( nParCount != 5 )
+ {
+ StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ return;
+ }
+ SbxVariableRef pValVar = rPar.Get(4);
+ if( nCallType == vbLet )
{
SbxValues aVals;
aVals.eType = SbxVARIANT;
- pFindVar->Get( aVals );
-
- SbxVariableRef refVar = rPar.Get(0);
- refVar->Put( aVals );
+ pValVar->Get( aVals );
+ pFindVar->Put( aVals );
}
- break;
- case vbLet:
- case vbSet:
+ else
{
- if ( nParCount != 5 )
- {
- StarBASIC::Error( SbERR_BAD_ARGUMENT );
- return;
- }
- SbxVariableRef pValVar = rPar.Get(4);
- if( nCallType == vbLet )
- {
- SbxValues aVals;
- aVals.eType = SbxVARIANT;
- pValVar->Get( aVals );
- pFindVar->Put( aVals );
- }
- else
+ SbxVariableRef rFindVar = pFindVar;
+ SbiInstance* pInst = GetSbData()->pInst;
+ SbiRuntime* pRT = pInst ? pInst->pRun : NULL;
+ if( pRT != NULL )
{
- SbxVariableRef rFindVar = pFindVar;
- SbiInstance* pInst = GetSbData()->pInst;
- SbiRuntime* pRT = pInst ? pInst->pRun : NULL;
- if( pRT != NULL )
- pRT->StepSET_Impl( pValVar, rFindVar, false );
+ pRT->StepSET_Impl( pValVar, rFindVar, false );
}
}
- break;
- case vbMethod:
+ }
+ break;
+ case vbMethod:
+ {
+ SbMethod* pMeth = PTR_CAST(SbMethod,pFindVar);
+ if( pMeth == NULL )
{
- SbMethod* pMeth = PTR_CAST(SbMethod,pFindVar);
- if( pMeth == NULL )
- {
- StarBASIC::Error( SbERR_PROC_UNDEFINED );
- return;
- }
+ StarBASIC::Error( SbERR_PROC_UNDEFINED );
+ return;
+ }
- // Setup parameters
- SbxArrayRef xArray;
- sal_uInt16 nMethParamCount = nParCount - 4;
- if( nMethParamCount > 0 )
+ // Setup parameters
+ SbxArrayRef xArray;
+ sal_uInt16 nMethParamCount = nParCount - 4;
+ if( nMethParamCount > 0 )
+ {
+ xArray = new SbxArray;
+ for( sal_uInt16 i = 0 ; i < nMethParamCount ; i++ )
{
- xArray = new SbxArray;
- for( sal_uInt16 i = 0 ; i < nMethParamCount ; i++ )
- {
- SbxVariable* pPar = rPar.Get( i + 4 );
- xArray->Put( pPar, i + 1 );
- }
+ SbxVariable* pPar = rPar.Get( i + 4 );
+ xArray->Put( pPar, i + 1 );
}
-
- // Call method
- SbxVariableRef refVar = rPar.Get(0);
- if( xArray.Is() )
- pMeth->SetParameters( xArray );
- pMeth->Call( refVar );
- pMeth->SetParameters( NULL );
}
- break;
- default:
- StarBASIC::Error( SbERR_PROC_UNDEFINED );
+
+ // Call method
+ SbxVariableRef refVar = rPar.Get(0);
+ if( xArray.Is() )
+ pMeth->SetParameters( xArray );
+ pMeth->Call( refVar );
+ pMeth->SetParameters( NULL );
+ }
+ break;
+ default:
+ StarBASIC::Error( SbERR_PROC_UNDEFINED );
}
}
@@ -230,8 +228,9 @@ RTLFUNC(CBool) // JSM
bVal = pSbxVariable->GetBool();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutBool(bVal);
}
@@ -247,8 +246,9 @@ RTLFUNC(CByte) // JSM
nByte = pSbxVariable->GetByte();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutByte(nByte);
}
@@ -264,8 +264,9 @@ RTLFUNC(CCur)
nCur = pSbxVariable->GetCurrency();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutCurrency( nCur );
}
@@ -282,8 +283,9 @@ RTLFUNC(CDec)
pDec = pSbxVariable->GetDecimal();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutDecimal( pDec );
#else
rPar.Get(0)->PutEmpty();
@@ -303,8 +305,9 @@ RTLFUNC(CDate) // JSM
nVal = pSbxVariable->GetDate();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutDate(nVal);
}
@@ -320,10 +323,12 @@ RTLFUNC(CDbl) // JSM
if( pSbxVariable->GetType() == SbxSTRING )
{
// #41690
- String aScanStr = pSbxVariable->GetString();
+ OUString aScanStr = pSbxVariable->GetOUString();
SbError Error = SbxValue::ScanNumIntnl( aScanStr, nVal );
if( Error != SbxERR_OK )
+ {
StarBASIC::Error( Error );
+ }
}
else
{
@@ -331,7 +336,9 @@ RTLFUNC(CDbl) // JSM
}
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
rPar.Get(0)->PutDouble(nVal);
}
@@ -348,8 +355,9 @@ RTLFUNC(CInt) // JSM
nVal = pSbxVariable->GetInteger();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutInteger(nVal);
}
@@ -365,8 +373,9 @@ RTLFUNC(CLng) // JSM
nVal = pSbxVariable->GetLong();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutLong(nVal);
}
@@ -383,10 +392,12 @@ RTLFUNC(CSng) // JSM
{
// #41690
double dVal = 0.0;
- String aScanStr = pSbxVariable->GetString();
+ OUString aScanStr = pSbxVariable->GetOUString();
SbError Error = SbxValue::ScanNumIntnl( aScanStr, dVal, /*bSingle=*/true );
if( SbxBase::GetError() == SbxERR_OK && Error != SbxERR_OK )
+ {
StarBASIC::Error( Error );
+ }
nVal = (float)dVal;
}
else
@@ -395,8 +406,9 @@ RTLFUNC(CSng) // JSM
}
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutSingle(nVal);
}
@@ -405,15 +417,16 @@ RTLFUNC(CStr) // JSM
(void)pBasic;
(void)bWrite;
- String aString;
+ OUString aString;
if ( rPar.Count() == 2 )
{
SbxVariable *pSbxVariable = rPar.Get(1);
- aString = pSbxVariable->GetString();
+ aString = pSbxVariable->GetOUString();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutString(aString);
}
@@ -429,8 +442,9 @@ RTLFUNC(CVar) // JSM
pSbxVariable->Get( aVals );
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->Put( aVals );
}
@@ -446,8 +460,9 @@ RTLFUNC(CVErr)
nErrCode = pSbxVariable->GetInteger();
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
-
+ }
rPar.Get(0)->PutErr( nErrCode );
}
@@ -459,12 +474,18 @@ RTLFUNC(Iif) // JSM
if ( rPar.Count() == 4 )
{
if (rPar.Get(1)->GetBool())
+ {
*rPar.Get(0) = *rPar.Get(2);
+ }
else
+ {
*rPar.Get(0) = *rPar.Get(3);
+ }
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(GetSystemType)
@@ -473,10 +494,14 @@ RTLFUNC(GetSystemType)
(void)bWrite;
if ( rPar.Count() != 1 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
+ {
// Removed for SRC595
rPar.Get(0)->PutInteger( -1 );
+ }
}
RTLFUNC(GetGUIType)
@@ -485,7 +510,9 @@ RTLFUNC(GetGUIType)
(void)bWrite;
if ( rPar.Count() != 1 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
// 17.7.2000 Make simple solution for testtool / fat office
@@ -505,7 +532,9 @@ RTLFUNC(Red)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_uIntPtr nRGB = (sal_uIntPtr)rPar.Get(1)->GetLong();
@@ -521,7 +550,9 @@ RTLFUNC(Green)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_uIntPtr nRGB = (sal_uIntPtr)rPar.Get(1)->GetLong();
@@ -537,7 +568,9 @@ RTLFUNC(Blue)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
sal_uIntPtr nRGB = (sal_uIntPtr)rPar.Get(1)->GetLong();
@@ -554,8 +587,10 @@ RTLFUNC(Switch)
sal_uInt16 nCount = rPar.Count();
if( !(nCount & 0x0001 ))
+ {
// number of arguments must be odd
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
sal_uInt16 nCurExpr = 1;
while( nCurExpr < (nCount-1) )
{
@@ -587,7 +622,9 @@ void Wait_Impl( bool bDurationBased, SbxArray& rPar )
nWait = (long)( dSecs * 1000 ); // wait in thousands of sec
}
else
+ {
nWait = rPar.Get(1)->GetLong();
+ }
if( nWait < 0 )
{
StarBASIC::Error( SbERR_BAD_ARGUMENT );
@@ -598,7 +635,9 @@ void Wait_Impl( bool bDurationBased, SbxArray& rPar )
aTimer.SetTimeout( nWait );
aTimer.Start();
while ( aTimer.IsActive() )
+ {
Application::Yield();
+ }
}
//i#64882#
@@ -637,7 +676,9 @@ RTLFUNC(GetGUIVersion)
(void)bWrite;
if ( rPar.Count() != 1 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
// Removed for SRC595
@@ -651,7 +692,9 @@ RTLFUNC(Choose)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
sal_Int16 nIndex = rPar.Get(1)->GetInteger();
sal_uInt16 nCount = rPar.Count();
nCount--;
@@ -670,10 +713,12 @@ RTLFUNC(Trim)
(void)bWrite;
if ( rPar.Count() < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
- rtl::OUString aStr(comphelper::string::strip(rPar.Get(1)->GetString(), ' '));
+ rtl::OUString aStr(comphelper::string::strip(rPar.Get(1)->GetOUString(), ' '));
rPar.Get(0)->PutString(aStr);
}
}
@@ -727,8 +772,10 @@ RTLFUNC(FreeLibrary)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
- GetSbData()->pInst->GetDllMgr()->FreeDll( rPar.Get(1)->GetString() );
+ }
+ GetSbData()->pInst->GetDllMgr()->FreeDll( rPar.Get(1)->GetOUString() );
}
bool IsBaseIndexOne()
{
@@ -737,7 +784,9 @@ bool IsBaseIndexOne()
{
sal_uInt16 res = GetSbData()->pInst->pRun->GetBase();
if ( res )
+ {
result = true;
+ }
}
return result;
}
@@ -755,9 +804,13 @@ RTLFUNC(Array)
if( nArraySize )
{
if ( bIncIndex )
+ {
pArray->AddDim( 1, nArraySize );
+ }
else
+ {
pArray->AddDim( 0, nArraySize-1 );
+ }
}
else
{
@@ -775,7 +828,9 @@ RTLFUNC(Array)
pNew->SetFlag( SBX_WRITE );
short index = static_cast< short >(i);
if ( bIncIndex )
+ {
++index;
+ }
pArray->Put( pNew, &index );
}
@@ -817,8 +872,9 @@ RTLFUNC(DimArray)
}
}
else
+ {
pArray->unoAddDim( 0, -1 );
-
+ }
SbxVariableRef refVar = rPar.Get(0);
sal_uInt16 nFlags = refVar->GetFlags();
refVar->ResetFlag( SBX_FIXED );
@@ -862,13 +918,14 @@ RTLFUNC(FindObject)
return;
}
- String aNameStr = rPar.Get(1)->GetString();
+ OUString aNameStr = rPar.Get(1)->GetOUString();
SbxBase* pFind = StarBASIC::FindSBXInCurrentScope( aNameStr );
SbxObject* pFindObj = NULL;
if( pFind )
+ {
pFindObj = PTR_CAST(SbxObject,pFind);
-
+ }
SbxVariableRef refVar = rPar.Get(0);
refVar->PutObject( pFindObj );
}
@@ -890,14 +947,16 @@ RTLFUNC(FindPropertyObject)
SbxBase* pObjVar = (SbxObject*)rPar.Get(1)->GetObject();
SbxObject* pObj = NULL;
if( pObjVar )
+ {
pObj = PTR_CAST(SbxObject,pObjVar);
+ }
if( !pObj && pObjVar && pObjVar->ISA(SbxVariable) )
{
SbxBase* pObjVarObj = ((SbxVariable*)pObjVar)->GetObject();
pObj = PTR_CAST(SbxObject,pObjVarObj);
}
- String aNameStr = rPar.Get(2)->GetString();
+ OUString aNameStr = rPar.Get(2)->GetOUString();
SbxObject* pFindObj = NULL;
if( pObj )
@@ -906,8 +965,9 @@ RTLFUNC(FindPropertyObject)
pFindObj = PTR_CAST(SbxObject,pFindVar);
}
else
+ {
StarBASIC::Error( SbERR_BAD_PARAMETER );
-
+ }
SbxVariableRef refVar = rPar.Get(0);
refVar->PutObject( pFindObj );
@@ -916,7 +976,7 @@ RTLFUNC(FindPropertyObject)
static sal_Bool lcl_WriteSbxVariable( const SbxVariable& rVar, SvStream* pStrm,
- sal_Bool bBinary, short nBlockLen, sal_Bool bIsArray )
+ sal_Bool bBinary, short nBlockLen, sal_Bool bIsArray )
{
sal_uIntPtr nFPos = pStrm->Tell();
@@ -925,84 +985,100 @@ static sal_Bool lcl_WriteSbxVariable( const SbxVariable& rVar, SvStream* pStrm,
switch( eType )
{
- case SbxBOOL:
- case SbxCHAR:
- case SbxBYTE:
- if( bIsVariant )
- *pStrm << (sal_uInt16)SbxBYTE; // VarType Id
- *pStrm << rVar.GetByte();
- break;
+ case SbxBOOL:
+ case SbxCHAR:
+ case SbxBYTE:
+ if( bIsVariant )
+ {
+ *pStrm << (sal_uInt16)SbxBYTE; // VarType Id
+ }
+ *pStrm << rVar.GetByte();
+ break;
+
+ case SbxEMPTY:
+ case SbxNULL:
+ case SbxVOID:
+ case SbxINTEGER:
+ case SbxUSHORT:
+ case SbxINT:
+ case SbxUINT:
+ if( bIsVariant )
+ {
+ *pStrm << (sal_uInt16)SbxINTEGER; // VarType Id
+ }
+ *pStrm << rVar.GetInteger();
+ break;
- case SbxEMPTY:
- case SbxNULL:
- case SbxVOID:
- case SbxINTEGER:
- case SbxUSHORT:
- case SbxINT:
- case SbxUINT:
- if( bIsVariant )
- *pStrm << (sal_uInt16)SbxINTEGER; // VarType Id
- *pStrm << rVar.GetInteger();
- break;
+ case SbxLONG:
+ case SbxULONG:
+ if( bIsVariant )
+ {
+ *pStrm << (sal_uInt16)SbxLONG; // VarType Id
+ }
+ *pStrm << rVar.GetLong();
+ break;
+ case SbxSALINT64:
+ case SbxSALUINT64:
+ if( bIsVariant )
+ {
+ *pStrm << (sal_uInt16)SbxSALINT64; // VarType Id
+ }
+ *pStrm << (sal_uInt64)rVar.GetInt64();
+ break;
+ case SbxSINGLE:
+ if( bIsVariant )
+ {
+ *pStrm << (sal_uInt16)eType; // VarType Id
+ }
+ *pStrm << rVar.GetSingle();
+ break;
- case SbxLONG:
- case SbxULONG:
- if( bIsVariant )
- *pStrm << (sal_uInt16)SbxLONG; // VarType Id
- *pStrm << rVar.GetLong();
- break;
- case SbxSALINT64:
- case SbxSALUINT64:
- if( bIsVariant )
- *pStrm << (sal_uInt16)SbxSALINT64; // VarType Id
- *pStrm << (sal_uInt64)rVar.GetInt64();
- break;
- case SbxSINGLE:
- if( bIsVariant )
- *pStrm << (sal_uInt16)eType; // VarType Id
- *pStrm << rVar.GetSingle();
- break;
+ case SbxDOUBLE:
+ case SbxCURRENCY:
+ case SbxDATE:
+ if( bIsVariant )
+ {
+ *pStrm << (sal_uInt16)eType; // VarType Id
+ }
+ *pStrm << rVar.GetDouble();
+ break;
- case SbxDOUBLE:
- case SbxCURRENCY:
- case SbxDATE:
+ case SbxSTRING:
+ case SbxLPSTR:
+ {
+ const OUString& rStr = rVar.GetOUString();
+ if( !bBinary || bIsArray )
+ {
if( bIsVariant )
- *pStrm << (sal_uInt16)eType; // VarType Id
- *pStrm << rVar.GetDouble();
- break;
-
- case SbxSTRING:
- case SbxLPSTR:
{
- const String& rStr = rVar.GetString();
- if( !bBinary || bIsArray )
- {
- if( bIsVariant )
- *pStrm << (sal_uInt16)SbxSTRING;
- pStrm->WriteUniOrByteString( rStr, osl_getThreadTextEncoding() );
+ *pStrm << (sal_uInt16)SbxSTRING;
}
- else
- {
- // without any length information! without end-identifier!
- // What does that mean for Unicode?! Choosing conversion to ByteString...
- rtl::OString aByteStr(rtl::OUStringToOString(rStr, osl_getThreadTextEncoding()));
- *pStrm << (const char*)aByteStr.getStr();
- }
- }
- break;
+ pStrm->WriteUniOrByteString( rStr, osl_getThreadTextEncoding() );
+ }
+ else
+ {
+ // without any length information! without end-identifier!
+ // What does that mean for Unicode?! Choosing conversion to ByteString...
+ rtl::OString aByteStr(rtl::OUStringToOString(rStr, osl_getThreadTextEncoding()));
+ *pStrm << (const char*)aByteStr.getStr();
+ }
+ }
+ break;
- default:
- StarBASIC::Error( SbERR_BAD_ARGUMENT );
- return sal_False;
+ default:
+ StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ return sal_False;
}
if( nBlockLen )
+ {
pStrm->Seek( nFPos + nBlockLen );
+ }
return pStrm->GetErrorCode() ? sal_False : sal_True;
}
static sal_Bool lcl_ReadSbxVariable( SbxVariable& rVar, SvStream* pStrm,
- sal_Bool bBinary, short nBlockLen, sal_Bool bIsArray )
+ sal_Bool bBinary, short nBlockLen, sal_Bool bIsArray )
{
(void)bBinary;
(void)bIsArray;
@@ -1024,88 +1100,91 @@ static sal_Bool lcl_ReadSbxVariable( SbxVariable& rVar, SvStream* pStrm,
switch( eSrcType )
{
- case SbxBOOL:
- case SbxCHAR:
- case SbxBYTE:
- {
- sal_uInt8 aByte;
- *pStrm >> aByte;
-
- if( bBinary && SbiRuntime::isVBAEnabled() && aByte == 1 && pStrm->IsEof() )
- aByte = 0;
-
- rVar.PutByte( aByte );
- }
- break;
+ case SbxBOOL:
+ case SbxCHAR:
+ case SbxBYTE:
+ {
+ sal_uInt8 aByte;
+ *pStrm >> aByte;
- case SbxEMPTY:
- case SbxNULL:
- case SbxVOID:
- case SbxINTEGER:
- case SbxUSHORT:
- case SbxINT:
- case SbxUINT:
- {
- sal_Int16 aInt;
- *pStrm >> aInt;
- rVar.PutInteger( aInt );
- }
- break;
+ if( bBinary && SbiRuntime::isVBAEnabled() && aByte == 1 && pStrm->IsEof() )
+ {
+ aByte = 0;
+ }
+ rVar.PutByte( aByte );
+ }
+ break;
+
+ case SbxEMPTY:
+ case SbxNULL:
+ case SbxVOID:
+ case SbxINTEGER:
+ case SbxUSHORT:
+ case SbxINT:
+ case SbxUINT:
+ {
+ sal_Int16 aInt;
+ *pStrm >> aInt;
+ rVar.PutInteger( aInt );
+ }
+ break;
- case SbxLONG:
- case SbxULONG:
- {
- sal_Int32 aInt;
- *pStrm >> aInt;
- rVar.PutLong( aInt );
- }
- break;
- case SbxSALINT64:
- case SbxSALUINT64:
- {
- sal_uInt32 aInt;
- *pStrm >> aInt;
- rVar.PutInt64( (sal_Int64)aInt );
- }
- break;
- case SbxSINGLE:
- {
- float nS;
- *pStrm >> nS;
- rVar.PutSingle( nS );
- }
- break;
+ case SbxLONG:
+ case SbxULONG:
+ {
+ sal_Int32 aInt;
+ *pStrm >> aInt;
+ rVar.PutLong( aInt );
+ }
+ break;
+ case SbxSALINT64:
+ case SbxSALUINT64:
+ {
+ sal_uInt32 aInt;
+ *pStrm >> aInt;
+ rVar.PutInt64( (sal_Int64)aInt );
+ }
+ break;
+ case SbxSINGLE:
+ {
+ float nS;
+ *pStrm >> nS;
+ rVar.PutSingle( nS );
+ }
+ break;
- case SbxDOUBLE:
- case SbxCURRENCY:
- {
- *pStrm >> aDouble;
- rVar.PutDouble( aDouble );
- }
- break;
+ case SbxDOUBLE:
+ case SbxCURRENCY:
+ {
+ *pStrm >> aDouble;
+ rVar.PutDouble( aDouble );
+ }
+ break;
- case SbxDATE:
- {
- *pStrm >> aDouble;
- rVar.PutDate( aDouble );
- }
- break;
+ case SbxDATE:
+ {
+ *pStrm >> aDouble;
+ rVar.PutDate( aDouble );
+ }
+ break;
- case SbxSTRING:
- case SbxLPSTR:
- {
- String aStr = pStrm->ReadUniOrByteString(osl_getThreadTextEncoding());
- rVar.PutString( aStr );
- }
- break;
+ case SbxSTRING:
+ case SbxLPSTR:
+ {
+ OUString aStr = pStrm->ReadUniOrByteString(osl_getThreadTextEncoding());
+ rVar.PutString( aStr );
+ }
+ break;
- default:
- StarBASIC::Error( SbERR_BAD_ARGUMENT );
- return sal_False;
+ default:
+ StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ return sal_False;
}
if( nBlockLen )
+ {
pStrm->Seek( nFPos + nBlockLen );
+ }
return pStrm->GetErrorCode() ? sal_False : sal_True;
}
@@ -1237,13 +1316,15 @@ RTLFUNC(Environ)
StarBASIC::Error( SbERR_BAD_ARGUMENT );
return;
}
- String aResult;
+ OUString aResult;
// should be ANSI but that's not possible under Win16 in the DLL
- rtl::OString aByteStr(rtl::OUStringToOString(rPar.Get(1)->GetString(),
- osl_getThreadTextEncoding()));
+ rtl::OString aByteStr(rtl::OUStringToOString(rPar.Get(1)->GetOUString(),
+ osl_getThreadTextEncoding()));
const char* pEnvStr = getenv(aByteStr.getStr());
if ( pEnvStr )
+ {
aResult = rtl::OUString::createFromAscii( pEnvStr );
+ }
rPar.Get(0)->PutString( aResult );
}
@@ -1349,12 +1430,14 @@ RTLFUNC(ResolvePath)
if ( rPar.Count() == 2 )
{
- String aStr = rPar.Get(1)->GetString();
+ OUString aStr = rPar.Get(1)->GetOUString();
DirEntry aEntry( aStr );
rPar.Get(0)->PutString( aStr );
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(TypeLen)
@@ -1363,70 +1446,73 @@ RTLFUNC(TypeLen)
(void)bWrite;
if ( rPar.Count() != 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
SbxDataType eType = rPar.Get(1)->GetType();
sal_Int16 nLen = 0;
switch( eType )
{
- case SbxEMPTY:
- case SbxNULL:
- case SbxVECTOR:
- case SbxARRAY:
- case SbxBYREF:
- case SbxVOID:
- case SbxHRESULT:
- case SbxPOINTER:
- case SbxDIMARRAY:
- case SbxCARRAY:
- case SbxUSERDEF:
- nLen = 0;
- break;
+ case SbxEMPTY:
+ case SbxNULL:
+ case SbxVECTOR:
+ case SbxARRAY:
+ case SbxBYREF:
+ case SbxVOID:
+ case SbxHRESULT:
+ case SbxPOINTER:
+ case SbxDIMARRAY:
+ case SbxCARRAY:
+ case SbxUSERDEF:
+ nLen = 0;
+ break;
- case SbxINTEGER:
- case SbxERROR:
- case SbxUSHORT:
- case SbxINT:
- case SbxUINT:
- nLen = 2;
- break;
+ case SbxINTEGER:
+ case SbxERROR:
+ case SbxUSHORT:
+ case SbxINT:
+ case SbxUINT:
+ nLen = 2;
+ break;
- case SbxLONG:
- case SbxSINGLE:
- case SbxULONG:
- nLen = 4;
- break;
+ case SbxLONG:
+ case SbxSINGLE:
+ case SbxULONG:
+ nLen = 4;
+ break;
- case SbxDOUBLE:
- case SbxCURRENCY:
- case SbxDATE:
- case SbxSALINT64:
- case SbxSALUINT64:
- nLen = 8;
- break;
+ case SbxDOUBLE:
+ case SbxCURRENCY:
+ case SbxDATE:
+ case SbxSALINT64:
+ case SbxSALUINT64:
+ nLen = 8;
+ break;
- case SbxOBJECT:
- case SbxVARIANT:
- case SbxDATAOBJECT:
- nLen = 0;
- break;
+ case SbxOBJECT:
+ case SbxVARIANT:
+ case SbxDATAOBJECT:
+ nLen = 0;
+ break;
- case SbxCHAR:
- case SbxBYTE:
- case SbxBOOL:
- nLen = 1;
+ case SbxCHAR:
+ case SbxBYTE:
+ case SbxBOOL:
+ nLen = 1;
break;
- case SbxLPSTR:
- case SbxLPWSTR:
- case SbxCoreSTRING:
- case SbxSTRING:
- nLen = (sal_Int16)rPar.Get(1)->GetString().Len();
- break;
+ case SbxLPSTR:
+ case SbxLPWSTR:
+ case SbxCoreSTRING:
+ case SbxSTRING:
+ nLen = (sal_Int16)rPar.Get(1)->GetOUString().getLength();
+ break;
- default:
- nLen = 0;
+ default:
+ nLen = 0;
+ break;
}
rPar.Get(0)->PutInteger( nLen );
}
@@ -1538,8 +1624,9 @@ RTLFUNC(GlobalScope)
SbxObject* p = pBasic;
while( p->GetParent() )
+ {
p = p->GetParent();
-
+ }
SbxVariableRef refVar = rPar.Get(0);
refVar->PutObject( p );
}
@@ -1552,17 +1639,23 @@ RTLFUNC(ConvertToUrl)
if ( rPar.Count() == 2 )
{
- String aStr = rPar.Get(1)->GetString();
+ OUString aStr = rPar.Get(1)->GetOUString();
INetURLObject aURLObj( aStr, INET_PROT_FILE );
- ::rtl::OUString aFileURL = aURLObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aFileURL = aURLObj.GetMainURL( INetURLObject::NO_DECODE );
if( aFileURL.isEmpty() )
+ {
::osl::File::getFileURLFromSystemPath( aFileURL, aFileURL );
+ }
if( aFileURL.isEmpty() )
+ {
aFileURL = aStr;
- rPar.Get(0)->PutString( String(aFileURL) );
+ }
+ rPar.Get(0)->PutString(aFileURL);
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
RTLFUNC(ConvertFromUrl)
@@ -1572,15 +1665,19 @@ RTLFUNC(ConvertFromUrl)
if ( rPar.Count() == 2 )
{
- String aStr = rPar.Get(1)->GetString();
- ::rtl::OUString aSysPath;
+ OUString aStr = rPar.Get(1)->GetOUString();
+ OUString aSysPath;
::osl::File::getSystemPathFromFileURL( aStr, aSysPath );
if( aSysPath.isEmpty() )
+ {
aSysPath = aStr;
- rPar.Get(0)->PutString( String(aSysPath) );
+ }
+ rPar.Get(0)->PutString(aSysPath);
}
else
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
}
@@ -1616,28 +1713,36 @@ RTLFUNC(Join)
if( pArr )
{
if( pArr->GetDims() != 1 )
+ {
StarBASIC::Error( SbERR_WRONG_DIMS ); // Syntax Error?!
-
- String aDelim;
+ }
+ OUString aDelim;
if( nParCount == 3 )
- aDelim = rPar.Get(2)->GetString();
+ {
+ aDelim = rPar.Get(2)->GetOUString();
+ }
else
- aDelim = rtl::OUString(" ");
-
- String aRetStr;
+ {
+ aDelim = " ";
+ }
+ OUString aRetStr;
short nLower, nUpper;
pArr->GetDim( 1, nLower, nUpper );
for( short i = nLower ; i <= nUpper ; ++i )
{
- String aStr = pArr->Get( &i )->GetString();
+ OUString aStr = pArr->Get( &i )->GetOUString();
aRetStr += aStr;
if( i != nUpper )
+ {
aRetStr += aDelim;
+ }
}
rPar.Get(0)->PutString( aRetStr );
}
else
+ {
StarBASIC::Error( SbERR_MUST_HAVE_DIMS );
+ }
}
@@ -1653,50 +1758,58 @@ RTLFUNC(Split)
return;
}
- String aExpression = rPar.Get(1)->GetString();
+ OUString aExpression = rPar.Get(1)->GetOUString();
short nArraySize = 0;
StringVector vRet;
- if( aExpression.Len() )
+ if( !aExpression.isEmpty() )
{
- String aDelim;
+ OUString aDelim;
if( nParCount >= 3 )
- aDelim = rPar.Get(2)->GetString();
+ {
+ aDelim = rPar.Get(2)->GetOUString();
+ }
else
- aDelim = rtl::OUString(" ");
+ {
+ aDelim = " ";
+ }
sal_Int32 nCount = -1;
if( nParCount == 4 )
+ {
nCount = rPar.Get(3)->GetLong();
-
- xub_StrLen nDelimLen = aDelim.Len();
+ }
+ sal_Int32 nDelimLen = aDelim.getLength();
if( nDelimLen )
{
- xub_StrLen iSearch = STRING_NOTFOUND;
- xub_StrLen iStart = 0;
+ sal_Int32 iSearch = -1;
+ sal_Int32 iStart = 0;
do
{
bool bBreak = false;
if( nCount >= 0 && nArraySize == nCount - 1 )
+ {
bBreak = true;
-
- iSearch = aExpression.Search( aDelim, iStart );
- String aSubStr;
- if( iSearch != STRING_NOTFOUND && !bBreak )
+ }
+ iSearch = aExpression.indexOf( aDelim, iStart );
+ OUString aSubStr;
+ if( iSearch >= 0 && !bBreak )
{
- aSubStr = aExpression.Copy( iStart, iSearch - iStart );
+ aSubStr = aExpression.copy( iStart, iSearch - iStart );
iStart = iSearch + nDelimLen;
}
else
{
- aSubStr = aExpression.Copy( iStart );
+ aSubStr = aExpression.copy( iStart );
}
vRet.push_back( aSubStr );
nArraySize++;
if( bBreak )
+ {
break;
+ }
}
- while( iSearch != STRING_NOTFOUND );
+ while( iSearch >= 0 );
}
else
{
@@ -1761,8 +1874,8 @@ RTLFUNC(MonthName)
const CalendarItem2* pCalendarItems = aMonthSeq.getConstArray();
const CalendarItem2& rItem = pCalendarItems[nVal - 1];
- ::rtl::OUString aRetStr = ( bAbbreviate ? rItem.AbbrevName : rItem.FullName );
- rPar.Get(0)->PutString( String(aRetStr) );
+ OUString aRetStr = ( bAbbreviate ? rItem.AbbrevName : rItem.FullName );
+ rPar.Get(0)->PutString(aRetStr);
}
// WeekdayName(weekday, abbreviate, firstdayofweek)
@@ -1799,8 +1912,9 @@ RTLFUNC(WeekdayName)
}
}
if( nFirstDay == 0 )
+ {
nFirstDay = sal_Int16( xCalendar->getFirstDayOfWeek() + 1 );
-
+ }
nDay = 1 + (nDay + nDayCount + nFirstDay - 2) % nDayCount;
if( nDay < 1 || nDay > nDayCount )
{
@@ -1813,14 +1927,16 @@ RTLFUNC(WeekdayName)
{
SbxVariable* pPar2 = rPar.Get(2);
if( !pPar2->IsErr() )
+ {
bAbbreviate = pPar2->GetBool();
+ }
}
const CalendarItem2* pCalendarItems = aDaySeq.getConstArray();
const CalendarItem2& rItem = pCalendarItems[nDay - 1];
- ::rtl::OUString aRetStr = ( bAbbreviate ? rItem.AbbrevName : rItem.FullName );
- rPar.Get(0)->PutString( String(aRetStr) );
+ OUString aRetStr = ( bAbbreviate ? rItem.AbbrevName : rItem.FullName );
+ rPar.Get(0)->PutString( aRetStr );
}
RTLFUNC(Weekday)
@@ -1830,7 +1946,9 @@ RTLFUNC(Weekday)
sal_uInt16 nParCount = rPar.Count();
if ( nParCount < 2 )
+ {
StarBASIC::Error( SbERR_BAD_ARGUMENT );
+ }
else
{
double aDate = rPar.Get(1)->GetDate();
@@ -1866,13 +1984,13 @@ enum Interval
struct IntervalInfo
{
Interval meInterval;
- const char* mpStringCode;
+ const OUString mStringCode;
double mdValue;
bool mbSimple;
- IntervalInfo( Interval eInterval, const char* pStringCode, double dValue, bool bSimple )
+ IntervalInfo( Interval eInterval, const OUString sStringCode, double dValue, bool bSimple )
: meInterval( eInterval )
- , mpStringCode( pStringCode )
+ , mStringCode( sStringCode )
, mdValue( dValue )
, mbSimple( bSimple )
{}
@@ -1890,17 +2008,19 @@ static IntervalInfo pIntervalTable[] =
IntervalInfo( INTERVAL_H, "h", (1.0 / 24.0), true ), // Hour
IntervalInfo( INTERVAL_N, "n", (1.0 / 1440.0), true), // Minute
IntervalInfo( INTERVAL_S, "s", (1.0 / 86400.0), true ), // Second
- IntervalInfo( INTERVAL_NONE, NULL, 0.0, false )
+ IntervalInfo( INTERVAL_NONE, "", 0.0, false )
};
-IntervalInfo* getIntervalInfo( const String& rStringCode )
+IntervalInfo* getIntervalInfo( const OUString& rStringCode )
{
IntervalInfo* pInfo = NULL;
sal_Int16 i = 0;
- while( (pInfo = pIntervalTable + i)->mpStringCode != NULL )
+ while( !(pInfo = pIntervalTable + i)->mStringCode.isEmpty() )
{
- if( rStringCode.EqualsIgnoreCaseAscii( pInfo->mpStringCode ) )
+ if( rStringCode.equalsIgnoreAsciiCase( pInfo->mStringCode ) )
+ {
break;
+ }
i++;
}
return pInfo;
@@ -1916,9 +2036,13 @@ inline void implGetDayMonthYear( sal_Int16& rnYear, sal_Int16& rnMonth, sal_Int1
inline sal_Int16 limitToINT16( sal_Int32 n32 )
{
if( n32 > 32767 )
+ {
n32 = 32767;
+ }
else if( n32 < -32768 )
+ {
n32 = -32768;
+ }
return (sal_Int16)n32;
}
@@ -1934,7 +2058,7 @@ RTLFUNC(DateAdd)
return;
}
- String aStringCode = rPar.Get(1)->GetString();
+ OUString aStringCode = rPar.Get(1)->GetOUString();
IntervalInfo* pInfo = getIntervalInfo( aStringCode );
if( !pInfo )
{
@@ -2059,7 +2183,7 @@ RTLFUNC(DateDiff)
return;
}
- String aStringCode = rPar.Get(1)->GetString();
+ OUString aStringCode = rPar.Get(1)->GetOUString();
IntervalInfo* pInfo = getIntervalInfo( aStringCode );
if( !pInfo )
{
@@ -2259,7 +2383,7 @@ RTLFUNC(DatePart)
return;
}
- String aStringCode = rPar.Get(1)->GetString();
+ OUString aStringCode = rPar.Get(1)->GetOUString();
IntervalInfo* pInfo = getIntervalInfo( aStringCode );
if( !pInfo )
{
@@ -2399,7 +2523,7 @@ RTLFUNC(FormatDateTime)
return;
}
- String aRetStr;
+ OUString aRetStr;
SbxVariableRef pSbxVar = new SbxVariable( SbxSTRING );
switch( nNamedFormat )
{
@@ -2410,20 +2534,22 @@ RTLFUNC(FormatDateTime)
// 12/21/2004 11:24:50 AM
// 21.12.2004 12:13:51
- case 0:
- pSbxVar->PutDate( dDate );
- aRetStr = pSbxVar->GetString();
- break;
+ case 0:
+ pSbxVar->PutDate( dDate );
+ aRetStr = pSbxVar->GetOUString();
+ break;
// LongDate: Display a date using the long date format specified
// in your computer's regional settings.
// Tuesday, December 21, 2004
// Dienstag, 21. December 2004
- case 1:
+ case 1:
{
SvNumberFormatter* pFormatter = NULL;
if( GetSbData()->pInst )
+ {
pFormatter = GetSbData()->pInst->GetNumberFormatter();
+ }
else
{
sal_uInt32 n; // Dummy
@@ -2436,35 +2562,40 @@ RTLFUNC(FormatDateTime)
pFormatter->GetOutputString( dDate, nIndex, aRetStr, &pCol );
if( !GetSbData()->pInst )
+ {
delete pFormatter;
-
+ }
break;
}
// ShortDate: Display a date using the short date format specified
// in your computer's regional settings.
// 21.12.2004
- case 2:
- pSbxVar->PutDate( floor(dDate) );
- aRetStr = pSbxVar->GetString();
- break;
+ case 2:
+ pSbxVar->PutDate( floor(dDate) );
+ aRetStr = pSbxVar->GetOUString();
+ break;
// LongTime: Display a time using the time format specified
// in your computer's regional settings.
// 11:24:50 AM
// 12:13:51
- case 3:
+ case 3:
// ShortTime: Display a time using the 24-hour format (hh:mm).
// 11:24
- case 4:
- double n;
- double dTime = modf( dDate, &n );
- pSbxVar->PutDate( dTime );
- if( nNamedFormat == 3 )
- aRetStr = pSbxVar->GetString();
- else
- aRetStr = pSbxVar->GetString().Copy( 0, 5 );
- break;
+ case 4:
+ double n;
+ double dTime = modf( dDate, &n );
+ pSbxVar->PutDate( dTime );
+ if( nNamedFormat == 3 )
+ {
+ aRetStr = pSbxVar->GetOUString();
+ }
+ else
+ {
+ aRetStr = pSbxVar->GetOUString().copy( 0, 5 );
+ }
+ break;
}
rPar.Get(0)->PutString( aRetStr );
@@ -2554,7 +2685,7 @@ void CallFunctionAccessFunction( const Sequence< Any >& aArgs, const rtl::OUStri
Reference< XMultiServiceFactory > xFactory( getProcessServiceFactory() );
if( xFactory.is() )
{
- xFunc.set( xFactory->createInstance(::rtl::OUString("com.sun.star.sheet.FunctionAccess")), UNO_QUERY_THROW);
+ xFunc.set( xFactory->createInstance(OUString("com.sun.star.sheet.FunctionAccess")), UNO_QUERY_THROW);
}
}
Any aRet = xFunc->callFunction( sFuncName, aArgs );
@@ -2589,7 +2720,7 @@ RTLFUNC(SYD)
aParams[ 2 ] <<= makeAny( rPar.Get(3)->GetDouble() );
aParams[ 3 ] <<= makeAny( rPar.Get(4)->GetDouble() );
- CallFunctionAccessFunction( aParams, rtl::OUString( "SYD" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "SYD" ), rPar.Get( 0 ) );
}
RTLFUNC(SLN)
@@ -2612,7 +2743,7 @@ RTLFUNC(SLN)
aParams[ 1 ] <<= makeAny( rPar.Get(2)->GetDouble() );
aParams[ 2 ] <<= makeAny( rPar.Get(3)->GetDouble() );
- CallFunctionAccessFunction( aParams, rtl::OUString( "SLN" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "SLN" ), rPar.Get( 0 ) );
}
RTLFUNC(Pmt)
@@ -2657,7 +2788,7 @@ RTLFUNC(Pmt)
aParams[ 3 ] <<= fv;
aParams[ 4 ] <<= type;
- CallFunctionAccessFunction( aParams, rtl::OUString( "Pmt" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "Pmt" ), rPar.Get( 0 ) );
}
RTLFUNC(PPmt)
@@ -2704,7 +2835,7 @@ RTLFUNC(PPmt)
aParams[ 4 ] <<= fv;
aParams[ 5 ] <<= type;
- CallFunctionAccessFunction( aParams, rtl::OUString( "PPmt" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "PPmt" ), rPar.Get( 0 ) );
}
RTLFUNC(PV)
@@ -2749,7 +2880,7 @@ RTLFUNC(PV)
aParams[ 3 ] <<= fv;
aParams[ 4 ] <<= type;
- CallFunctionAccessFunction( aParams, rtl::OUString( "PV" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "PV" ), rPar.Get( 0 ) );
}
RTLFUNC(NPV)
@@ -2777,7 +2908,7 @@ RTLFUNC(NPV)
aParams[ 1 ] <<= aValues;
- CallFunctionAccessFunction( aParams, rtl::OUString( "NPV" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "NPV" ), rPar.Get( 0 ) );
}
RTLFUNC(NPer)
@@ -2822,7 +2953,7 @@ RTLFUNC(NPer)
aParams[ 3 ] <<= fv;
aParams[ 4 ] <<= type;
- CallFunctionAccessFunction( aParams, rtl::OUString( "NPer" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "NPer" ), rPar.Get( 0 ) );
}
RTLFUNC(MIRR)
@@ -2853,7 +2984,7 @@ RTLFUNC(MIRR)
aParams[ 1 ] <<= makeAny( rPar.Get(2)->GetDouble() );
aParams[ 2 ] <<= makeAny( rPar.Get(3)->GetDouble() );
- CallFunctionAccessFunction( aParams, rtl::OUString( "MIRR" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "MIRR" ), rPar.Get( 0 ) );
}
RTLFUNC(IRR)
@@ -2890,7 +3021,7 @@ RTLFUNC(IRR)
aParams[ 0 ] <<= aValues;
aParams[ 1 ] <<= guess;
- CallFunctionAccessFunction( aParams, rtl::OUString( "IRR" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "IRR" ), rPar.Get( 0 ) );
}
RTLFUNC(IPmt)
@@ -2937,7 +3068,7 @@ RTLFUNC(IPmt)
aParams[ 4 ] <<= fv;
aParams[ 5 ] <<= type;
- CallFunctionAccessFunction( aParams, rtl::OUString( "IPmt" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "IPmt" ), rPar.Get( 0 ) );
}
RTLFUNC(FV)
@@ -2982,7 +3113,7 @@ RTLFUNC(FV)
aParams[ 3 ] <<= pv;
aParams[ 4 ] <<= type;
- CallFunctionAccessFunction( aParams, rtl::OUString( "FV" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "FV" ), rPar.Get( 0 ) );
}
RTLFUNC(DDB)
@@ -3021,7 +3152,7 @@ RTLFUNC(DDB)
aParams[ 3 ] <<= period;
aParams[ 4 ] <<= factor;
- CallFunctionAccessFunction( aParams, rtl::OUString( "DDB" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "DDB" ), rPar.Get( 0 ) );
}
RTLFUNC(Rate)
@@ -3080,7 +3211,7 @@ RTLFUNC(Rate)
aParams[ 4 ] <<= type;
aParams[ 5 ] <<= guess;
- CallFunctionAccessFunction( aParams, rtl::OUString( "Rate" ), rPar.Get( 0 ) );
+ CallFunctionAccessFunction( aParams, OUString( "Rate" ), rPar.Get( 0 ) );
}
RTLFUNC(StrReverse)
@@ -3101,7 +3232,7 @@ RTLFUNC(StrReverse)
return;
}
- rtl::OUString aStr = comphelper::string::reverseString(pSbxVariable->GetString());
+ rtl::OUString aStr = comphelper::string::reverseString(pSbxVariable->GetOUString());
rPar.Get(0)->PutString( aStr );
}
@@ -3119,8 +3250,9 @@ RTLFUNC(CompatibilityMode)
if( pInst )
{
if ( nCount == 2 )
+ {
pInst->EnableCompatibility( rPar.Get(1)->GetBool() );
-
+ }
bEnabled = pInst->IsCompatibility();
}
rPar.Get(0)->PutBool( bEnabled );
diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx
index 0a19676debf9..3c2c661cc9fc 100644
--- a/basic/source/runtime/runtime.cxx
+++ b/basic/source/runtime/runtime.cxx
@@ -241,19 +241,19 @@ void SbiInstance::CalcBreakCallLevel( sal_uInt16 nFlags )
sal_uInt16 nRet;
switch( nFlags )
{
- case SbDEBUG_STEPINTO:
- nRet = nCallLvl + 1; // CallLevel+1 is also stopped
- break;
- case SbDEBUG_STEPOVER | SbDEBUG_STEPINTO:
- nRet = nCallLvl; // current CallLevel is stopped
- break;
- case SbDEBUG_STEPOUT:
- nRet = nCallLvl - 1; // smaller CallLevel is stopped
- break;
- case SbDEBUG_CONTINUE:
+ case SbDEBUG_STEPINTO:
+ nRet = nCallLvl + 1; // CallLevel+1 is also stopped
+ break;
+ case SbDEBUG_STEPOVER | SbDEBUG_STEPINTO:
+ nRet = nCallLvl; // current CallLevel is stopped
+ break;
+ case SbDEBUG_STEPOUT:
+ nRet = nCallLvl - 1; // smaller CallLevel is stopped
+ break;
+ case SbDEBUG_CONTINUE:
// Basic-IDE returns 0 instead of SbDEBUG_CONTINUE, so also default=continue
- default:
- nRet = 0; // CallLevel is always > 0 -> no StepPoint
+ default:
+ nRet = 0; // CallLevel is always > 0 -> no StepPoint
}
nBreakCallLvl = nRet; // take result
}
@@ -312,7 +312,9 @@ SbiInstance::~SbiInstance()
SbiDllMgr* SbiInstance::GetDllMgr()
{
if( !pDllMgr )
+ {
pDllMgr = new SbiDllMgr;
+ }
return pDllMgr;
}
@@ -334,8 +336,10 @@ SvNumberFormatter* SbiInstance::GetNumberFormatter()
meFormatterLangType = eLangType;
meFormatterDateFormat = eDate;
if( !pNumberFormatter )
+ {
PrepareNumberFormatter( pNumberFormatter, nStdDateIdx, nStdTimeIdx, nStdDateTimeIdx,
&meFormatterLangType, &meFormatterDateFormat );
+ }
return pNumberFormatter;
}
@@ -349,13 +353,18 @@ void SbiInstance::PrepareNumberFormatter( SvNumberFormatter*& rpNumberFormatter,
LanguageType eLangType;
if( peFormatterLangType )
+ {
eLangType = *peFormatterLangType;
+ }
else
+ {
eLangType = GetpApp()->GetSettings().GetLanguage();
-
+ }
DateFormat eDate;
if( peFormatterDateFormat )
+ {
eDate = *peFormatterDateFormat;
+ }
else
{
SvtSysLocale aSysLocale;
@@ -364,7 +373,7 @@ void SbiInstance::PrepareNumberFormatter( SvNumberFormatter*& rpNumberFormatter,
rpNumberFormatter = new SvNumberFormatter( xFactory, eLangType );
- xub_StrLen nCheckPos = 0; short nType;
+ sal_uInt16 nCheckPos = 0; short nType;
rnStdTimeIdx = rpNumberFormatter->GetStandardFormat( NUMBERFORMAT_TIME, eLangType );
// the formatter's standard templates have only got a two-digit date
@@ -375,33 +384,32 @@ void SbiInstance::PrepareNumberFormatter( SvNumberFormatter*& rpNumberFormatter,
// Problem: Print Year(Date) under engl. BS
// also have a look at: svtools\source\sbx\sbxdate.cxx
- String aDateStr;
+ OUString aDateStr;
switch( eDate )
{
- case MDY: aDateStr = String( RTL_CONSTASCII_USTRINGPARAM("MM.TT.JJJJ") ); break;
- case DMY: aDateStr = String( RTL_CONSTASCII_USTRINGPARAM("TT.MM.JJJJ") ); break;
- case YMD: aDateStr = String( RTL_CONSTASCII_USTRINGPARAM("JJJJ.MM.TT") ); break;
- default: aDateStr = String( RTL_CONSTASCII_USTRINGPARAM("MM.TT.JJJJ") );
+ case MDY: aDateStr = "MM.TT.JJJJ"; break;
+ case DMY: aDateStr = "TT.MM.JJJJ"; break;
+ case YMD: aDateStr = "JJJJ.MM.TT"; break;
+ default: aDateStr = "MM.TT.JJJJ"; break;
}
- String aStr( aDateStr );
- rpNumberFormatter->PutandConvertEntry( aStr, nCheckPos, nType,
+ rpNumberFormatter->PutandConvertEntry( aDateStr, nCheckPos, nType,
rnStdDateIdx, LANGUAGE_GERMAN, eLangType );
nCheckPos = 0;
- String aStrHHMMSS( RTL_CONSTASCII_USTRINGPARAM(" HH:MM:SS") );
- aStr = aDateStr;
- aStr += aStrHHMMSS;
- rpNumberFormatter->PutandConvertEntry( aStr, nCheckPos, nType,
+ OUString aStrHHMMSS(" HH:MM:SS");
+ aDateStr += aStrHHMMSS;
+ rpNumberFormatter->PutandConvertEntry( aDateStr, nCheckPos, nType,
rnStdDateTimeIdx, LANGUAGE_GERMAN, eLangType );
}
-
// Let engine run. If Flags == SbDEBUG_CONTINUE, take Flags over
void SbiInstance::Stop()
{
for( SbiRuntime* p = pRun; p; p = p->pNext )
+ {
p->Stop();
+ }
}
// Allows Basic IDE to set watch mode to suppress errors
@@ -414,10 +422,10 @@ void setBasicWatchMode( bool bOn )
void SbiInstance::Error( SbError n )
{
- Error( n, String() );
+ Error( n, OUString() );
}
-void SbiInstance::Error( SbError n, const String& rMsg )
+void SbiInstance::Error( SbError n, const OUString& rMsg )
{
if( !bWatchMode )
{
@@ -426,14 +434,15 @@ void SbiInstance::Error( SbError n, const String& rMsg )
}
}
-void SbiInstance::ErrorVB( sal_Int32 nVBNumber, const String& rMsg )
+void SbiInstance::ErrorVB( sal_Int32 nVBNumber, const OUString& rMsg )
{
if( !bWatchMode )
{
SbError n = StarBASIC::GetSfxFromVBError( static_cast< sal_uInt16 >( nVBNumber ) );
if ( !n )
+ {
n = nVBNumber; // force orig number, probably should have a specific table of vb ( localized ) errors
-
+ }
aErrorMsg = rMsg;
SbiRuntime::translateErrorToVba( n, aErrorMsg );
@@ -442,12 +451,13 @@ void SbiInstance::ErrorVB( sal_Int32 nVBNumber, const String& rMsg )
}
}
-void SbiInstance::setErrorVB( sal_Int32 nVBNumber, const String& rMsg )
+void SbiInstance::setErrorVB( sal_Int32 nVBNumber, const OUString& rMsg )
{
SbError n = StarBASIC::GetSfxFromVBError( static_cast< sal_uInt16 >( nVBNumber ) );
if( !n )
+ {
n = nVBNumber; // force orig number, probably should have a specific table of vb ( localized ) errors
-
+ }
aErrorMsg = rMsg;
SbiRuntime::translateErrorToVba( n, aErrorMsg );
@@ -460,7 +470,7 @@ void SbiInstance::FatalError( SbError n )
pRun->FatalError( n );
}
-void SbiInstance::FatalError( SbError _errCode, const String& _details )
+void SbiInstance::FatalError( SbError _errCode, const OUString& _details )
{
pRun->FatalError( _errCode, _details );
}
@@ -481,7 +491,9 @@ StarBASIC* GetCurrentBasic( StarBASIC* pRTBasic )
{
SbxObject* pParent = pActiveModule->GetParent();
if( pParent && pParent->ISA(StarBASIC) )
+ {
pCurBasic = (StarBASIC*)pParent;
+ }
}
return pCurBasic;
}
@@ -489,20 +501,23 @@ StarBASIC* GetCurrentBasic( StarBASIC* pRTBasic )
SbModule* SbiInstance::GetActiveModule()
{
if( pRun )
+ {
return pRun->GetModule();
+ }
else
+ {
return NULL;
+ }
}
SbMethod* SbiInstance::GetCaller( sal_uInt16 nLevel )
{
SbiRuntime* p = pRun;
while( nLevel-- && p )
+ {
p = p->pNext;
- if( p )
- return p->GetCaller();
- else
- return NULL;
+ }
+ return p ? p->GetCaller() : NULL;
}
// SbiInstance //
@@ -571,10 +586,14 @@ void SbiRuntime::SetVBAEnabled(bool bEnabled )
if ( bVBAEnabled )
{
if ( pMeth )
+ {
mpExtCaller = pMeth->mCaller;
+ }
}
else
+ {
mpExtCaller = 0;
+ }
}
// Construction of the parameter list. All ByRef-parameters are directly
@@ -629,14 +648,18 @@ void SbiRuntime::SetParameters( SbxArray* pParams )
if( !bByVal && t != SbxVARIANT &&
(!v->IsFixed() || (SbxDataType)(v->GetType() & 0x0FFF ) != t) )
- bByVal = sal_True;
+ {
+ bByVal = sal_True;
+ }
bTargetTypeIsArray = (p->nUserData & PARAM_INFO_WITHBRACKETS) != 0;
}
if( bByVal )
{
if( bTargetTypeIsArray )
+ {
t = SbxOBJECT;
+ }
SbxVariable* v2 = new SbxVariable( t );
v2->SetFlag( SBX_READWRITE );
*v2 = *v;
@@ -647,14 +670,20 @@ void SbiRuntime::SetParameters( SbxArray* pParams )
if( t != SbxVARIANT && t != ( v->GetType() & 0x0FFF ) )
{
if( p && (p->eType & SbxARRAY) )
+ {
Error( SbERR_CONVERSION );
+ }
else
+ {
v->Convert( t );
+ }
}
refParams->Put( v, i );
}
if( p )
+ {
refParams->PutAlias( p->aName, i );
+ }
}
}
@@ -697,7 +726,9 @@ bool SbiRuntime::Step()
while( bBlocked )
{
if( pInst->IsReschedule() )
+ {
Application::Reschedule();
+ }
}
SbiOpcode eOp = (SbiOpcode ) ( *pCode++ );
@@ -719,8 +750,9 @@ bool SbiRuntime::Step()
(this->*( aStep2[ eOp - SbOP2_START ] ) )( nOp1, nOp2 );
}
else
+ {
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
-
+ }
SbError nSbError = SbxBase::GetError();
Error( ERRCODE_TOERROR(nSbError) );
@@ -730,7 +762,9 @@ bool SbiRuntime::Step()
// since nError can now also be set from other RT-instances
if( nError )
+ {
SbxBase::ResetError();
+ }
// from 15.3.96: display errors only if BASIC is still active
// (especially not after compiler errors at the runtime)
@@ -754,11 +788,17 @@ bool SbiRuntime::Step()
bInError = true;
if( !bError ) // On Error Resume Next
+ {
StepRESUME( 1 );
+ }
else if( pError ) // On Error Goto ...
+ {
pCode = pError;
+ }
else
+ {
bLetParentHandleThis = true;
+ }
}
else
{
@@ -791,9 +831,13 @@ bool SbiRuntime::Step()
{
pRt->nError = err;
if( pRt != pRtErrHdl )
+ {
pRt->bRun = false;
+ }
else
+ {
break;
+ }
pRt = pRt->pNext;
}
while( pRt );
@@ -803,7 +847,6 @@ bool SbiRuntime::Step()
{
pInst->Abort();
}
-
}
}
}
@@ -817,20 +860,21 @@ void SbiRuntime::Error( SbError n, bool bVBATranslationAlreadyDone )
nError = n;
if( isVBAEnabled() && !bVBATranslationAlreadyDone )
{
- String aMsg = pInst->GetErrorMsg();
+ OUString aMsg = pInst->GetErrorMsg();
sal_Int32 nVBAErrorNumber = translateErrorToVba( nError, aMsg );
SbxVariable* pSbxErrObjVar = SbxErrObject::getErrObject();
SbxErrObject* pGlobErr = static_cast< SbxErrObject* >( pSbxErrObjVar );
if( pGlobErr != NULL )
+ {
pGlobErr->setNumberAndDescription( nVBAErrorNumber, aMsg );
-
+ }
pInst->aErrorMsg = aMsg;
nError = SbERR_BASIC_COMPAT;
}
}
}
-void SbiRuntime::Error( SbError _errCode, const String& _details )
+void SbiRuntime::Error( SbError _errCode, const OUString& _details )
{
if ( _errCode )
{
@@ -854,20 +898,20 @@ void SbiRuntime::FatalError( SbError n )
Error( n );
}
-void SbiRuntime::FatalError( SbError _errCode, const String& _details )
+void SbiRuntime::FatalError( SbError _errCode, const OUString& _details )
{
StepSTDERROR();
Error( _errCode, _details );
}
-sal_Int32 SbiRuntime::translateErrorToVba( SbError nError, String& rMsg )
+sal_Int32 SbiRuntime::translateErrorToVba( SbError nError, OUString& rMsg )
{
// If a message is defined use that ( in preference to
// the defined one for the error ) NB #TODO
// if there is an error defined it more than likely
// is not the one you want ( some are the same though )
// we really need a new vba compatible error list
- if ( !rMsg.Len() )
+ if ( rMsg.isEmpty() )
{
// TEST, has to be vb here always
#ifdef DBG_UTIL
@@ -877,8 +921,10 @@ sal_Int32 SbiRuntime::translateErrorToVba( SbError nError, String& rMsg )
StarBASIC::MakeErrorText( nError, rMsg );
rMsg = StarBASIC::GetErrorText();
- if ( !rMsg.Len() ) // no message for err no, need localized resource here
- rMsg = String( RTL_CONSTASCII_USTRINGPARAM("Internal Object Error:") );
+ if ( rMsg.isEmpty() ) // no message for err no, need localized resource here
+ {
+ rMsg = "Internal Object Error:";
+ }
}
// no num? most likely then it *is* really a vba err
sal_uInt16 nVBErrorCode = StarBASIC::GetVBErrorCode( nError );
@@ -901,7 +947,9 @@ SbMethod* SbiRuntime::GetCaller()
void SbiRuntime::PushVar( SbxVariable* pVar )
{
if( pVar )
+ {
refExprStk->Put( pVar, nExprLvl++ );
+ }
}
SbxVariableRef SbiRuntime::PopVar()
@@ -915,12 +963,14 @@ SbxVariableRef SbiRuntime::PopVar()
#endif
SbxVariableRef xVar = refExprStk->Get( --nExprLvl );
#ifdef DBG_UTIL
- if ( xVar->GetName().EqualsAscii( "Cells" ) )
+ if ( xVar->GetName().equalsAscii( "Cells" ) )
OSL_TRACE( "" );
#endif
// methods hold themselves in parameter 0
if( xVar->IsA( TYPE(SbxMethod) ) )
+ {
xVar->SetParameters(0);
+ }
return xVar;
}
@@ -956,7 +1006,9 @@ void SbiRuntime::TOSMakeTemp()
{
SbxVariable* p = refExprStk->Get( nExprLvl - 1 );
if ( p->GetType() == SbxEMPTY )
+ {
p->Broadcast( SBX_HINT_DATAWANTED );
+ }
SbxVariable* pDflt = NULL;
if ( bVBAEnabled && ( p->GetType() == SbxOBJECT || p->GetType() == SbxVARIANT ) && ((pDflt = getDefaultProp(p)) != NULL) )
@@ -971,7 +1023,6 @@ void SbiRuntime::TOSMakeTemp()
p->SetFlag( SBX_READWRITE );
refExprStk->Put( p, nExprLvl - 1 );
}
-
else if( p->GetRefCount() != 1 )
{
SbxVariable* pNew = new SbxVariable( *p );
@@ -984,7 +1035,9 @@ void SbiRuntime::TOSMakeTemp()
void SbiRuntime::PushGosub( const sal_uInt8* pc )
{
if( ++nGosubLvl > MAXRECURSION )
+ {
StarBASIC::FatalError( SbERR_STACK_OVERFLOW );
+ }
SbiGosubStack* p = new SbiGosubStack;
p->pCode = pc;
p->pNext = pGosubStk;
@@ -995,7 +1048,9 @@ void SbiRuntime::PushGosub( const sal_uInt8* pc )
void SbiRuntime::PopGosub()
{
if( !pGosubStk )
+ {
Error( SbERR_NO_GOSUB );
+ }
else
{
SbiGosubStack* p = pGosubStk;
@@ -1011,7 +1066,9 @@ void SbiRuntime::ClearGosubStack()
{
SbiGosubStack* p;
while(( p = pGosubStk ) != NULL )
+ {
pGosubStk = p->pNext, delete p;
+ }
nGosubLvl = 0;
}
@@ -1044,7 +1101,9 @@ void SbiRuntime::PopArgv()
void SbiRuntime::ClearArgvStack()
{
while( pArgvStk )
+ {
PopArgv();
+ }
}
// Push of the for-stack. The stack has increment, end, begin and variable.
@@ -1129,9 +1188,10 @@ void SbiRuntime::PushForEach()
catch(const uno::Exception& )
{}
}
-
if ( !p->xEnumeration.is() )
+ {
bError_ = true;
+ }
}
else
{
@@ -1170,7 +1230,9 @@ void SbiRuntime::PopFor()
void SbiRuntime::ClearForStack()
{
while( pForStk )
+ {
PopFor();
+ }
}
SbiForStack* SbiRuntime::FindForStackItemForCollection( class BasicCollection* pCollection )
@@ -1194,8 +1256,8 @@ SbiForStack* SbiRuntime::FindForStackItemForCollection( class BasicCollection* p
// DLL-calls
void SbiRuntime::DllCall
- ( const String& aFuncName,
- const String& aDLLName,
+ ( const OUString& aFuncName,
+ const OUString& aDLLName,
SbxArray* pArgs, // parameter (from index 1, can be NULL)
SbxDataType eResType, // return value
bool bCDecl ) // true: according to C-conventions
@@ -1213,7 +1275,9 @@ void SbiRuntime::DllCall
SbiDllMgr* pDllMgr = pInst->GetDllMgr();
SbError nErr = pDllMgr->Call( aFuncName, aDLLName, pArgs, *pRes, bCDecl );
if( nErr )
+ {
Error( nErr );
+ }
PushVar( pRes );
}
diff --git a/basic/source/runtime/sbdiagnose.cxx b/basic/source/runtime/sbdiagnose.cxx
index 95d2332e9900..2168c04956f2 100644
--- a/basic/source/runtime/sbdiagnose.cxx
+++ b/basic/source/runtime/sbdiagnose.cxx
@@ -31,7 +31,7 @@
static DbgChannelId nRestoreChannelId = 0;
static DbgChannelId nAssertionChannelId = 0;
static StarBASICRef xAssertionChannelBasic;
-static String sCaptureFunctionName;
+static OUString sCaptureFunctionName;
static bool bReportingAssertion = false;
void ResetCapturedAssertions()
@@ -42,7 +42,7 @@ void ResetCapturedAssertions()
}
nRestoreChannelId = 0;
xAssertionChannelBasic = NULL;
- sCaptureFunctionName = String();
+ sCaptureFunctionName = OUString();
bReportingAssertion = false;
}
@@ -56,7 +56,9 @@ void DbgReportAssertion( const sal_Char* i_assertionMessage )
// prevent infinite recursion
if ( bReportingAssertion )
+ {
return;
+ }
::comphelper::FlagRestorationGuard aGuard( bReportingAssertion, true );
SbxArrayRef const xArguments( new SbxArray( SbxVARIANT ) );
@@ -66,7 +68,9 @@ void DbgReportAssertion( const sal_Char* i_assertionMessage )
ErrCode const nError = xAssertionChannelBasic->Call( sCaptureFunctionName, xArguments );
if ( ( nError & SbERR_METHOD_NOT_FOUND ) != 0 )
+ {
ResetCapturedAssertions();
+ }
}
#endif
@@ -86,8 +90,8 @@ RTLFUNC(CaptureAssertions)
#ifdef DBG_UTIL
DBG_TESTSOLARMUTEX();
- String const sFunctionName = rPar.Get(1)->GetString();
- if ( sFunctionName.Len() == 0 )
+ OUString const sFunctionName = rPar.Get(1)->GetOUString();
+ if ( sFunctionName.isEmpty() )
{
ResetCapturedAssertions();
return;
diff --git a/basic/source/runtime/stdobj.cxx b/basic/source/runtime/stdobj.cxx
index 8182afff7977..2a69f445d513 100644
--- a/basic/source/runtime/stdobj.cxx
+++ b/basic/source/runtime/stdobj.cxx
@@ -72,9 +72,9 @@ struct Methods {
struct StringHashCode
{
- size_t operator()( const String& rStr ) const
+ size_t operator()( const OUString& rStr ) const
{
- return rtl_ustr_hashCode_WithLength( rStr.GetBuffer(), rStr.Len() );
+ return rtl_ustr_hashCode_WithLength( rStr.getStr(), rStr.getLength() );
}
};
@@ -715,21 +715,21 @@ static Methods aMethods[] = {
{ NULL, SbxNULL, -1,NULL,0 }}; // end of the table
-SbiStdObject::SbiStdObject( const String& r, StarBASIC* pb ) : SbxObject( r )
+SbiStdObject::SbiStdObject( const OUString& r, StarBASIC* pb ) : SbxObject( r )
{
// do we have to initialize the hashcodes?
Methods* p = aMethods;
if( !p->nHash )
while( p->nArgs != -1 )
{
- String aName_ = rtl::OUString::createFromAscii( p->pName );
+ OUString aName_ = rtl::OUString::createFromAscii( p->pName );
p->nHash = SbxVariable::MakeHashCode( aName_ );
p += ( p->nArgs & _ARGSMASK ) + 1;
}
// #i92642: Remove default properties
- Remove( rtl::OUString("Name"), SbxCLASS_DONTCARE );
- Remove( rtl::OUString("Parent"), SbxCLASS_DONTCARE );
+ Remove( OUString("Name"), SbxCLASS_DONTCARE );
+ Remove( OUString("Parent"), SbxCLASS_DONTCARE );
SetParent( pb );
@@ -753,7 +753,7 @@ SbiStdObject::~SbiStdObject()
// return NULL without error code, so that a whole chain of
// objects can be asked for the method/property.
-SbxVariable* SbiStdObject::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbiStdObject::Find( const OUString& rName, SbxClassType t )
{
// entered already?
SbxVariable* pVar = SbxObject::Find( rName, t );
@@ -798,12 +798,16 @@ SbxVariable* SbiStdObject::Find( const rtl::OUString& rName, SbxClassType t )
short nType = ( p->nArgs & _TYPEMASK );
if( p->nArgs & _CONST )
nAccess |= SBX_CONST;
- String aName_ = rtl::OUString::createFromAscii( p->pName );
+ OUString aName_ = rtl::OUString::createFromAscii( p->pName );
SbxClassType eCT = SbxCLASS_OBJECT;
if( nType & _PROPERTY )
+ {
eCT = SbxCLASS_PROPERTY;
+ }
else if( nType & _METHOD )
+ {
eCT = SbxCLASS_METHOD;
+ }
pVar = Make( aName_, eCT, p->eType );
pVar->SetUserData( nIndex + 1 );
pVar->SetFlags( nAccess );
@@ -869,10 +873,12 @@ SbxInfo* SbiStdObject::GetInfo( short nIdx )
for( short i = 0; i < nPar; i++ )
{
p++;
- String aName_ = rtl::OUString::createFromAscii( p->pName );
+ OUString aName_ = rtl::OUString::createFromAscii( p->pName );
sal_uInt16 nFlags_ = ( p->nArgs >> 8 ) & 0x03;
if( p->nArgs & _OPT )
+ {
nFlags_ |= SBX_OPTIONAL;
+ }
pInfo_->AddParam( aName_, p->eType, nFlags_ );
}
return pInfo_;
diff --git a/basic/source/runtime/stdobj1.cxx b/basic/source/runtime/stdobj1.cxx
index 0cd55efb3a6f..6b8f6a9bf7c6 100644
--- a/basic/source/runtime/stdobj1.cxx
+++ b/basic/source/runtime/stdobj1.cxx
@@ -46,7 +46,7 @@ SbStdFactory::SbStdFactory()
{
}
-SbxObject* SbStdFactory::CreateObject( const rtl::OUString& rClassName )
+SbxObject* SbStdFactory::CreateObject( const OUString& rClassName )
{
if( rClassName.equalsIgnoreAsciiCase("Picture") )
return new SbStdPicture;
@@ -115,16 +115,16 @@ void SbStdPicture::PropHeight( SbxVariable* pVar, SbxArray*, sal_Bool bWrite )
TYPEINIT1( SbStdPicture, SbxObject );
SbStdPicture::SbStdPicture() :
- SbxObject( String( RTL_CONSTASCII_USTRINGPARAM("Picture") ) )
+ SbxObject( OUString("Picture"))
{
// Properties
- SbxVariable* p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Type") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ SbxVariable* p = Make( OUString("Type"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READ | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_TYPE );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Width") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ p = Make( OUString("Width"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READ | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_WIDTH );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Height") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ p = Make( OUString("Height"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READ | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_HEIGHT );
}
@@ -134,7 +134,7 @@ SbStdPicture::~SbStdPicture()
}
-SbxVariable* SbStdPicture::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbStdPicture::Find( const OUString& rName, SbxClassType t )
{
// entered already?
return SbxObject::Find( rName, t );
@@ -218,36 +218,40 @@ void SbStdFont::PropSize( SbxVariable* pVar, SbxArray*, sal_Bool bWrite )
void SbStdFont::PropName( SbxVariable* pVar, SbxArray*, sal_Bool bWrite )
{
if( bWrite )
- SetFontName( pVar->GetString() );
+ {
+ SetFontName( pVar->GetOUString() );
+ }
else
+ {
pVar->PutString( GetFontName() );
+ }
}
TYPEINIT1( SbStdFont, SbxObject );
SbStdFont::SbStdFont() :
- SbxObject( String( RTL_CONSTASCII_USTRINGPARAM("Font") ) )
+ SbxObject( OUString("Font") )
{
// Properties
- SbxVariable* p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Bold") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ SbxVariable* p = Make( OUString("Bold"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READWRITE | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_BOLD );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Italic") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ p = Make( OUString("Italic"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READWRITE | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_ITALIC );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("StrikeThrough") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ p = Make( OUString("StrikeThrough"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READWRITE | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_STRIKETHROUGH );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Underline") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ p = Make( OUString("Underline"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READWRITE | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_UNDERLINE );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Size") ), SbxCLASS_PROPERTY, SbxVARIANT );
+ p = Make( OUString("Size"), SbxCLASS_PROPERTY, SbxVARIANT );
p->SetFlags( SBX_READWRITE | SBX_DONTSTORE );
p->SetUserData( ATTR_IMP_SIZE );
// handle name property yourself
- p = Find( String( RTL_CONSTASCII_USTRINGPARAM("Name") ), SbxCLASS_PROPERTY );
+ p = Find( OUString("Name"), SbxCLASS_PROPERTY );
DBG_ASSERT( p, "Keine Name Property" );
p->SetUserData( ATTR_IMP_NAME );
}
@@ -257,7 +261,7 @@ SbStdFont::~SbStdFont()
}
-SbxVariable* SbStdFont::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbStdFont::Find( const OUString& rName, SbxClassType t )
{
return SbxObject::Find( rName, t );
}
@@ -356,7 +360,7 @@ void SbStdClipboard::MethGetText( SbxVariable* pVar, SbxArray* pPar_, sal_Bool )
return;
}
- pVar->PutString( String() );
+ pVar->PutString( OUString() );
}
void SbStdClipboard::MethSetData( SbxVariable* pVar, SbxArray* pPar_, sal_Bool )
@@ -394,29 +398,29 @@ void SbStdClipboard::MethSetText( SbxVariable* pVar, SbxArray* pPar_, sal_Bool )
TYPEINIT1( SbStdClipboard, SbxObject );
SbStdClipboard::SbStdClipboard() :
- SbxObject( String( RTL_CONSTASCII_USTRINGPARAM("Clipboard") ) )
+ SbxObject( OUString("Clipboard") )
{
- SbxVariable* p = Find( String( RTL_CONSTASCII_USTRINGPARAM("Name") ), SbxCLASS_PROPERTY );
+ SbxVariable* p = Find( OUString("Name"), SbxCLASS_PROPERTY );
DBG_ASSERT( p, "Keine Name Property" );
p->SetUserData( ATTR_IMP_NAME );
// register methods
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("Clear") ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString("Clear"), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
p->SetUserData( METH_CLEAR );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("GetData") ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString("GetData"), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
p->SetUserData( METH_GETDATA );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("GetFormat") ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString("GetFormat"), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
p->SetUserData( METH_GETFORMAT );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("GetText") ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString("GetText"), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
p->SetUserData( METH_GETTEXT );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("SetData") ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString("SetData"), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
p->SetUserData( METH_SETDATA );
- p = Make( String( RTL_CONSTASCII_USTRINGPARAM("SetText") ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( OUString("SetText"), SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
p->SetUserData( METH_SETTEXT );
}
@@ -426,7 +430,7 @@ SbStdClipboard::~SbStdClipboard()
}
-SbxVariable* SbStdClipboard::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbStdClipboard::Find( const OUString& rName, SbxClassType t )
{
return SbxObject::Find( rName, t );
}
diff --git a/basic/source/runtime/step0.cxx b/basic/source/runtime/step0.cxx
index 05a2759af4ef..dc0798499e74 100644
--- a/basic/source/runtime/step0.cxx
+++ b/basic/source/runtime/step0.cxx
@@ -35,8 +35,8 @@
#include <vcl/svapp.hxx>
#include <unotools/textsearch.hxx>
-Reference< XInterface > createComListener( const Any& aControlAny, const ::rtl::OUString& aVBAType,
- const ::rtl::OUString& aPrefix, SbxObjectRef xScopeObj );
+Reference< XInterface > createComListener( const Any& aControlAny, const OUString& aVBAType,
+ const OUString& aPrefix, SbxObjectRef xScopeObj );
#include <algorithm>
#include <boost/unordered_map.hpp>
@@ -179,79 +179,101 @@ namespace
{
bool NeedEsc(sal_Unicode cCode)
{
- String sEsc(RTL_CONSTASCII_USTRINGPARAM(".^$+\\|{}()"));
- return (STRING_NOTFOUND != sEsc.Search(cCode));
+ if((cCode & 0xFF80))
+ {
+ return false;
+ }
+ switch((sal_uInt8)(cCode & 0x07F))
+ {
+ case '.':
+ case '^':
+ case '$':
+ case '+':
+ case '\\':
+ case '|':
+ case '{':
+ case '}':
+ case '(':
+ case ')':
+ return true;
+ default:
+ return false;
+ }
}
- String VBALikeToRegexp(const String &rIn)
+ OUString VBALikeToRegexp(const OUString &rIn)
{
- String sResult;
- const sal_Unicode *start = rIn.GetBuffer();
- const sal_Unicode *end = start + rIn.Len();
+ OUStringBuffer sResult;
+ const sal_Unicode *start = rIn.getStr();
+ const sal_Unicode *end = start + rIn.getLength();
int seenright = 0;
- sResult.Append('^');
+ sResult.append('^');
while (start < end)
{
switch (*start)
{
- case '?':
- sResult.Append('.');
- start++;
- break;
- case '*':
- sResult.Append(String(RTL_CONSTASCII_USTRINGPARAM(".*")));
- start++;
- break;
- case '#':
- sResult.Append(String(RTL_CONSTASCII_USTRINGPARAM("[0-9]")));
- start++;
- break;
- case ']':
- sResult.Append('\\');
- sResult.Append(*start++);
- break;
- case '[':
- sResult.Append(*start++);
- seenright = 0;
- while (start < end && !seenright)
+ case '?':
+ sResult.append('.');
+ start++;
+ break;
+ case '*':
+ sResult.append(".*");
+ start++;
+ break;
+ case '#':
+ sResult.append("[0-9]");
+ start++;
+ break;
+ case ']':
+ sResult.append('\\');
+ sResult.append(*start++);
+ break;
+ case '[':
+ sResult.append(*start++);
+ seenright = 0;
+ while (start < end && !seenright)
+ {
+ switch (*start)
{
- switch (*start)
+ case '[':
+ case '?':
+ case '*':
+ sResult.append('\\');
+ sResult.append(*start);
+ break;
+ case ']':
+ sResult.append(*start);
+ seenright = 1;
+ break;
+ case '!':
+ sResult.append('^');
+ break;
+ default:
+ if (NeedEsc(*start))
{
- case '[':
- case '?':
- case '*':
- sResult.Append('\\');
- sResult.Append(*start);
- break;
- case ']':
- sResult.Append(*start);
- seenright = 1;
- break;
- case '!':
- sResult.Append('^');
- break;
- default:
- if (NeedEsc(*start))
- sResult.Append('\\');
- sResult.Append(*start);
- break;
+ sResult.append('\\');
}
- start++;
+ sResult.append(*start);
+ break;
}
- break;
- default:
- if (NeedEsc(*start))
- sResult.Append('\\');
- sResult.Append(*start++);
+ start++;
+ }
+ break;
+ default:
+ if (NeedEsc(*start))
+ {
+ sResult.append('\\');
+ }
+ sResult.append(*start++);
}
}
- sResult.Append('$');
+ sResult.append('$');
- return sResult;
+ return sResult.makeStringAndClear();
}
}
@@ -260,8 +282,8 @@ void SbiRuntime::StepLIKE()
SbxVariableRef refVar1 = PopVar();
SbxVariableRef refVar2 = PopVar();
- String pattern = VBALikeToRegexp(refVar1->GetString());
- String value = refVar2->GetString();
+ OUString pattern = VBALikeToRegexp(refVar1->GetOUString());
+ OUString value = refVar2->GetOUString();
com::sun::star::util::SearchOptions aSearchOpt;
@@ -273,14 +295,16 @@ void SbiRuntime::StepLIKE()
int bTextMode(1);
bool bCompatibility = ( GetSbData()->pInst && GetSbData()->pInst->IsCompatibility() );
if( bCompatibility )
+ {
bTextMode = GetImageFlag( SBIMG_COMPARETEXT );
-
+ }
if( bTextMode )
+ {
aSearchOpt.transliterateFlags |= com::sun::star::i18n::TransliterationModules_IGNORE_CASE;
-
+ }
SbxVariable* pRes = new SbxVariable;
utl::TextSearch aSearch(aSearchOpt);
- xub_StrLen nStart=0, nEnd=value.Len();
+ sal_uInt16 nStart=0, nEnd=value.getLength();
int bRes = aSearch.SearchFrwrd(value, &nStart, &nEnd);
pRes->PutBool( bRes != 0 );
@@ -309,7 +333,9 @@ void SbiRuntime::StepIS()
sal_Bool bRes = sal_Bool( eType1 == SbxOBJECT && eType2 == SbxOBJECT );
if ( bVBAEnabled && !bRes )
+ {
Error( SbERR_INVALID_USAGE_OBJECT );
+ }
bRes = ( bRes && refVar1->GetObject() == refVar2->GetObject() );
SbxVariable* pRes = new SbxVariable;
pRes->PutBool( bRes );
@@ -368,8 +394,8 @@ inline bool checkUnoStructCopy( bool bVBA, SbxVariableRef& refVal, SbxVariableRe
if ( ( !pUnoVal && !pUnoStructVal ) )
return false;
- String sClassName = pUnoVal ? pUnoVal->GetClassName() : pUnoStructVal->GetClassName();
- String sName = pUnoVal ? pUnoVal->GetName() : pUnoStructVal->GetName();
+ OUString sClassName = pUnoVal ? pUnoVal->GetClassName() : pUnoStructVal->GetClassName();
+ OUString sName = pUnoVal ? pUnoVal->GetName() : pUnoStructVal->GetName();
if ( pUnoStructObj )
{
@@ -437,8 +463,8 @@ void SbiRuntime::StepPUT()
// VBA Dim As New behavior handling, save init object information
struct DimAsNewRecoverItem
{
- String m_aObjClass;
- String m_aObjName;
+ OUString m_aObjClass;
+ OUString m_aObjName;
SbxObject* m_pObjParent;
SbModule* m_pClassModule;
@@ -447,8 +473,8 @@ struct DimAsNewRecoverItem
, m_pClassModule( NULL )
{}
- DimAsNewRecoverItem( const String& rObjClass, const String& rObjName,
- SbxObject* pObjParent, SbModule* pClassModule )
+ DimAsNewRecoverItem( const OUString& rObjClass, const OUString& rObjName,
+ SbxObject* pObjParent, SbModule* pClassModule )
: m_aObjClass( rObjClass )
, m_aObjName( rObjName )
, m_pObjParent( pObjParent )
@@ -474,7 +500,9 @@ void removeDimAsNewRecoverItem( SbxVariable* pVar )
DimAsNewRecoverHash &rDimAsNewRecoverHash = GaDimAsNewRecoverHash::get();
DimAsNewRecoverHash::iterator it = rDimAsNewRecoverHash.find( pVar );
if( it != rDimAsNewRecoverHash.end() )
+ {
rDimAsNewRecoverHash.erase( it );
+ }
}
@@ -514,9 +542,13 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
SbxVariableRef refObjVal = PTR_CAST(SbxObject,pObjVarObj);
if( refObjVal )
+ {
refVal = refObjVal;
+ }
else if( !(eValType & SbxARRAY) )
+ {
refVal = NULL;
+ }
}
}
@@ -539,8 +571,9 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
}
SbProcedureProperty* pProcProperty = PTR_CAST(SbProcedureProperty,(SbxVariable*)refVar);
if( pProcProperty )
+ {
pProcProperty->setSet( true );
-
+ }
if ( bHandleDefaultProp )
{
// get default properties for lhs & rhs where necessary
@@ -575,10 +608,14 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
}
SbxVariable* pDflt = NULL;
if ( pObj || bLHSHasDefaultProp )
+ {
// lhs is either a valid object || or has a defaultProp
pDflt = getDefaultProp( refVal );
+ }
if ( pDflt )
+ {
refVal = pDflt;
+ }
}
}
@@ -586,8 +623,9 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
bool bDimAsNew = bVBAEnabled && refVar->IsSet( SBX_DIM_AS_NEW );
SbxBaseRef xPrevVarObj;
if( bDimAsNew )
+ {
xPrevVarObj = refVar->GetObject();
-
+ }
// Handle withevents
sal_Bool bWithEvents = refVar->IsSet( SBX_WITH_EVENTS );
if ( bWithEvents )
@@ -599,9 +637,9 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
if( pUnoObj != NULL )
{
Any aControlAny = pUnoObj->getUnoAny();
- String aDeclareClassName = refVar->GetDeclareClassName();
- ::rtl::OUString aVBAType = aDeclareClassName;
- ::rtl::OUString aPrefix = refVar->GetName();
+ OUString aDeclareClassName = refVar->GetDeclareClassName();
+ OUString aVBAType = aDeclareClassName;
+ OUString aPrefix = refVar->GetName();
SbxObjectRef xScopeObj = refVar->GetParent();
xComListener = createComListener( aControlAny, aVBAType, aPrefix, xScopeObj );
@@ -617,8 +655,9 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
// in this case we do not want to call checkUnoStructCopy 'cause that will
// cause an error also
if ( !checkUnoStructCopy( bHandleDefaultProp, refVal, refVar ) )
+ {
*refVar = *refVal;
-
+ }
if ( bDimAsNew )
{
if( !refVar->ISA(SbxObject) )
@@ -641,9 +680,9 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
pNewObj->SetParent( rItem.m_pObjParent );
refVar->PutObject( pNewObj );
}
- else if( rItem.m_aObjClass.EqualsIgnoreCaseAscii( pCollectionStr ) )
+ else if( rItem.m_aObjClass.equalsIgnoreAsciiCaseAscii( pCollectionStr ) )
{
- BasicCollection* pNewCollection = new BasicCollection( String( RTL_CONSTASCII_USTRINGPARAM(pCollectionStr) ) );
+ BasicCollection* pNewCollection = new BasicCollection( OUString(pCollectionStr) );
pNewCollection->SetName( rItem.m_aObjName );
pNewCollection->SetParent( rItem.m_pObjParent );
refVar->PutObject( pNewCollection );
@@ -661,7 +700,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
SbxObject* pValObj = PTR_CAST(SbxObject,pValObjBase);
if( pValObj != NULL )
{
- String aObjClass = pValObj->GetClassName();
+ OUString aObjClass = pValObj->GetClassName();
SbClassModuleObject* pClassModuleObj = PTR_CAST(SbClassModuleObject,pValObjBase);
DimAsNewRecoverHash &rDimAsNewRecoverHash = GaDimAsNewRecoverHash::get();
@@ -671,7 +710,7 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
rDimAsNewRecoverHash[refVar] =
DimAsNewRecoverItem( aObjClass, pValObj->GetName(), pValObj->GetParent(), pClassModule );
}
- else if( aObjClass.EqualsIgnoreCaseAscii( "Collection" ) )
+ else if( aObjClass.equalsIgnoreAsciiCase( "Collection" ) )
{
rDimAsNewRecoverHash[refVar] =
DimAsNewRecoverItem( aObjClass, pValObj->GetName(), pValObj->GetParent(), NULL );
@@ -682,9 +721,10 @@ void SbiRuntime::StepSET_Impl( SbxVariableRef& refVal, SbxVariableRef& refVar, b
}
}
-
if( bFlagsChanged )
+ {
refVar->SetFlags( n );
+ }
}
}
@@ -708,32 +748,35 @@ void SbiRuntime::StepLSET()
{
SbxVariableRef refVal = PopVar();
SbxVariableRef refVar = PopVar();
- if( refVar->GetType() != SbxSTRING
- || refVal->GetType() != SbxSTRING )
+ if( refVar->GetType() != SbxSTRING ||
+ refVal->GetType() != SbxSTRING )
+ {
Error( SbERR_INVALID_USAGE_OBJECT );
+ }
else
{
sal_uInt16 n = refVar->GetFlags();
if( (SbxVariable*) refVar == (SbxVariable*) pMeth )
+ {
refVar->SetFlag( SBX_WRITE );
- String aRefVarString = refVar->GetString();
- String aRefValString = refVal->GetString();
+ }
+ OUString aRefVarString = refVar->GetOUString();
+ OUString aRefValString = refVal->GetOUString();
- sal_uInt16 nVarStrLen = aRefVarString.Len();
- sal_uInt16 nValStrLen = aRefValString.Len();
- String aNewStr;
+ sal_Int32 nVarStrLen = aRefVarString.getLength();
+ sal_Int32 nValStrLen = aRefValString.getLength();
+ OUStringBuffer aNewStr;
if( nVarStrLen > nValStrLen )
{
- aRefVarString.Fill(nVarStrLen,' ');
- aNewStr = aRefValString.Copy( 0, nValStrLen );
- aNewStr += aRefVarString.Copy( nValStrLen, nVarStrLen - nValStrLen );
+ aNewStr.append(aRefValString);
+ comphelper::string::padToLength(aNewStr, nVarStrLen, ' ');
}
else
{
- aNewStr = aRefValString.Copy( 0, nVarStrLen );
+ aNewStr = aRefValString.copy( 0, nVarStrLen );
}
- refVar->PutString( aNewStr );
+ refVar->PutString(aNewStr.makeStringAndClear());
refVar->SetFlags( n );
}
}
@@ -742,27 +785,33 @@ void SbiRuntime::StepRSET()
{
SbxVariableRef refVal = PopVar();
SbxVariableRef refVar = PopVar();
- if( refVar->GetType() != SbxSTRING
- || refVal->GetType() != SbxSTRING )
+ if( refVar->GetType() != SbxSTRING || refVal->GetType() != SbxSTRING )
+ {
Error( SbERR_INVALID_USAGE_OBJECT );
+ }
else
{
sal_uInt16 n = refVar->GetFlags();
if( (SbxVariable*) refVar == (SbxVariable*) pMeth )
+ {
refVar->SetFlag( SBX_WRITE );
- String aRefVarString = refVar->GetString();
- String aRefValString = refVal->GetString();
+ }
+ OUString aRefVarString = refVar->GetOUString();
+ OUString aRefValString = refVal->GetOUString();
+ sal_Int32 nVarStrLen = aRefVarString.getLength();
+ sal_Int32 nValStrLen = aRefValString.getLength();
- sal_uInt16 nPos = 0;
- sal_uInt16 nVarStrLen = aRefVarString.Len();
- if( nVarStrLen > aRefValString.Len() )
+ OUStringBuffer aNewStr(nVarStrLen);
+ if (nVarStrLen > nValStrLen)
+ {
+ comphelper::string::padToLength(aNewStr, nVarStrLen - nValStrLen, ' ');
+ aNewStr.append(aRefValString);
+ }
+ else
{
- aRefVarString.Fill(nVarStrLen,' ');
- nPos = nVarStrLen - aRefValString.Len();
+ aNewStr.append(aRefValString.copy(0, nVarStrLen));
}
- aRefVarString = aRefVarString.Copy( 0, nPos );
- aRefVarString += aRefValString.Copy( 0, nVarStrLen - nPos );
- refVar->PutString(aRefVarString);
+ refVar->PutString(aNewStr.makeStringAndClear());
refVar->SetFlags( n );
}
@@ -798,7 +847,9 @@ void SbiRuntime::DimImpl( SbxVariableRef refVar )
if ( refRedim )
{
if ( !refRedimpArray ) // only erase the array not ReDim Preserve
+ {
lcl_eraseImpl( refVar, bVBAEnabled );
+ }
SbxDataType eType = refVar->GetType();
lcl_clearImpl( refVar, eType );
refRedim = NULL;
@@ -807,7 +858,9 @@ void SbiRuntime::DimImpl( SbxVariableRef refVar )
// must have an even number of arguments
// have in mind that Arg[0] does not count!
if( pDims && !( pDims->Count() & 1 ) )
+ {
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
+ }
else
{
SbxDataType eType = refVar->IsFixed() ? refVar->GetType() : SbxVARIANT;
@@ -822,10 +875,14 @@ void SbiRuntime::DimImpl( SbxVariableRef refVar )
sal_Int32 lb = pDims->Get( i++ )->GetLong();
sal_Int32 ub = pDims->Get( i++ )->GetLong();
if( ub < lb )
+ {
Error( SbERR_OUT_OF_RANGE ), ub = lb;
+ }
pArray->AddDim32( lb, ub );
if ( lb != ub )
+ {
pArray->setHasFixedSize( true );
+ }
}
}
else
@@ -871,7 +928,9 @@ void implCopyDimArray( SbxDimArray* pNewArray, SbxDimArray* pOldArray, short nMa
SbxVariable* pSource = pOldArray->Get32( pActualIndices );
SbxVariable* pDest = pNewArray->Get32( pActualIndices );
if( pSource && pDest )
+ {
*pDest = *pSource;
+ }
}
}
}
@@ -934,7 +993,7 @@ void SbiRuntime::StepREDIMP()
// (It would be faster to work on the flat internal data array of an
// SbyArray but this solution is clearer and easier)
implCopyDimArray( pNewArray, pOldArray, nDims - 1,
- 0, pActualIndices, pLowerBounds, pUpperBounds );
+ 0, pActualIndices, pLowerBounds, pUpperBounds );
}
delete[] pUpperBounds;
@@ -965,11 +1024,14 @@ void SbiRuntime::StepREDIMP_ERASE()
}
}
- else
- if( refVar->IsFixed() )
+ else if( refVar->IsFixed() )
+ {
refVar->Clear();
+ }
else
+ {
refVar->SetType( SbxEMPTY );
+ }
}
static void lcl_clearImpl( SbxVariableRef& refVar, SbxDataType& eType )
@@ -1000,28 +1062,37 @@ static void lcl_eraseImpl( SbxVariableRef& refVar, bool bVBAEnabled )
bClearValues = false;
}
else
+ {
pDimArray->Clear(); // clear Dims
+ }
}
if ( bClearValues )
{
SbxArray* pArray = PTR_CAST(SbxArray,pElemObj);
if ( pArray )
+ {
pArray->Clear();
+ }
}
}
else
- // Arrays have on an erase to VB quite a complex behaviour. Here are
- // only the type problems at REDIM (#26295) removed at first:
- // Set type hard onto the array-type, because a variable with array is
- // SbxOBJECT. At REDIM there's an SbxOBJECT-array generated then and
- // the original type is lost -> runtime error
+ {
+ // Arrays have on an erase to VB quite a complex behaviour. Here are
+ // only the type problems at REDIM (#26295) removed at first:
+ // Set type hard onto the array-type, because a variable with array is
+ // SbxOBJECT. At REDIM there's an SbxOBJECT-array generated then and
+ // the original type is lost -> runtime error
lcl_clearImpl( refVar, eType );
+ }
}
- else
- if( refVar->IsFixed() )
+ else if( refVar->IsFixed() )
+ {
refVar->Clear();
+ }
else
+ {
refVar->SetType( SbxEMPTY );
+ }
}
// delete variable
@@ -1041,7 +1112,9 @@ void SbiRuntime::StepERASE_CLEAR()
void SbiRuntime::StepARRAYACCESS()
{
if( !refArgv )
+ {
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
+ }
SbxVariableRef refVar = PopVar();
refVar->SetParameters( refArgv );
PopArgv();
@@ -1076,7 +1149,9 @@ void SbiRuntime::StepARGC()
void SbiRuntime::StepARGV()
{
if( !refArgv )
+ {
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
+ }
else
{
SbxVariableRef pVal = PopVar();
@@ -1094,10 +1169,10 @@ void SbiRuntime::StepARGV()
// Input to Variable. The variable is on TOS and is
// is removed afterwards.
-
void SbiRuntime::StepINPUT()
{
- String s;
+ OUStringBuffer sin = "";
+ OUString s;
char ch = 0;
SbError err;
// Skip whitespace
@@ -1105,37 +1180,51 @@ void SbiRuntime::StepINPUT()
{
ch = pIosys->Read();
if( ch != ' ' && ch != '\t' && ch != '\n' )
+ {
break;
+ }
}
if( !err )
{
// Scan until comma or whitespace
char sep = ( ch == '"' ) ? ch : 0;
- if( sep ) ch = pIosys->Read();
+ if( sep )
+ {
+ ch = pIosys->Read();
+ }
while( ( err = pIosys->GetError() ) == 0 )
{
if( ch == sep )
{
ch = pIosys->Read();
if( ch != sep )
+ {
break;
+ }
}
else if( !sep && (ch == ',' || ch == '\n') )
+ {
break;
- s += ch;
+ }
+ sin.append( ch );
ch = pIosys->Read();
}
// skip whitespace
if( ch == ' ' || ch == '\t' )
- while( ( err = pIosys->GetError() ) == 0 )
{
- if( ch != ' ' && ch != '\t' && ch != '\n' )
- break;
- ch = pIosys->Read();
+ while( ( err = pIosys->GetError() ) == 0 )
+ {
+ if( ch != ' ' && ch != '\t' && ch != '\n' )
+ {
+ break;
+ }
+ ch = pIosys->Read();
+ }
}
}
if( !err )
{
+ s = sin.makeStringAndClear();
SbxVariableRef pVar = GetTOS();
// try to fill the variable with a numeric value first,
// then with a string value
@@ -1148,17 +1237,19 @@ void SbiRuntime::StepINPUT()
SbxBase::ResetError();
}
// the value has to be scanned in completely
- else if( nLen != s.Len() && !pVar->PutString( s ) )
+ else if( nLen != s.getLength() && !pVar->PutString( s ) )
{
err = SbxBase::GetError();
SbxBase::ResetError();
}
- else if( nLen != s.Len() && pVar->IsNumeric() )
+ else if( nLen != s.getLength() && pVar->IsNumeric() )
{
err = SbxBase::GetError();
SbxBase::ResetError();
if( !err )
+ {
err = SbERR_CONVERSION;
+ }
}
}
else
@@ -1169,13 +1260,19 @@ void SbiRuntime::StepINPUT()
}
}
if( err == SbERR_USER_ABORT )
+ {
Error( err );
+ }
else if( err )
{
if( pRestart && !pIosys->GetChannel() )
+ {
pCode = pRestart;
+ }
else
+ {
Error( err );
+ }
}
else
{
@@ -1188,7 +1285,7 @@ void SbiRuntime::StepINPUT()
void SbiRuntime::StepLINPUT()
{
- rtl::OString aInput;
+ OString aInput;
pIosys->Read( aInput );
Error( pIosys->GetError() );
SbxVariableRef p = PopVar();
@@ -1223,7 +1320,9 @@ void SbiRuntime::StepNEXT()
return;
}
if( pForStk->eForType == FOR_TO )
+ {
pForStk->refVar->Compute( SbxPLUS, *pForStk->refInc );
+ }
}
// beginning CASE: TOS in CASE-stack
@@ -1231,7 +1330,9 @@ void SbiRuntime::StepNEXT()
void SbiRuntime::StepCASE()
{
if( !refCaseStk.Is() )
+ {
refCaseStk = new SbxArray;
+ }
SbxVariableRef xVar = PopVar();
refCaseStk->Put( xVar, refCaseStk->Count() );
}
@@ -1241,16 +1342,20 @@ void SbiRuntime::StepCASE()
void SbiRuntime::StepENDCASE()
{
if( !refCaseStk || !refCaseStk->Count() )
+ {
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
+ }
else
+ {
refCaseStk->Remove( refCaseStk->Count() - 1 );
+ }
}
void SbiRuntime::StepSTDERROR()
{
pError = NULL; bError = true;
- pInst->aErrorMsg = String();
+ pInst->aErrorMsg = OUString();
pInst->nErr = 0L;
pInst->nErl = 0;
nError = 0L;
@@ -1259,7 +1364,7 @@ void SbiRuntime::StepSTDERROR()
void SbiRuntime::StepNOERROR()
{
- pInst->aErrorMsg = String();
+ pInst->aErrorMsg = OUString();
pInst->nErr = 0L;
pInst->nErl = 0;
nError = 0L;
@@ -1274,7 +1379,9 @@ void SbiRuntime::StepLEAVE()
bRun = false;
// If VBA and we are leaving an ErrorHandler then clear the error ( it's been processed )
if ( bInError && pError )
+ {
SbxErrObject::getUnoErrObject()->Clear();
+ }
}
void SbiRuntime::StepCHANNEL() // TOS = channel number
@@ -1293,12 +1400,14 @@ void SbiRuntime::StepCHANNEL0()
void SbiRuntime::StepPRINT() // print TOS
{
SbxVariableRef p = PopVar();
- String s1 = p->GetString();
- String s;
+ OUString s1 = p->GetOUString();
+ OUString s;
if( p->GetType() >= SbxINTEGER && p->GetType() <= SbxDOUBLE )
- s = ' '; // one blank before
+ {
+ s = " "; // one blank before
+ }
s += s1;
- rtl::OString aByteStr(rtl::OUStringToOString(s, osl_getThreadTextEncoding()));
+ OString aByteStr(rtl::OUStringToOString(s, osl_getThreadTextEncoding()));
pIosys->Write( aByteStr );
Error( pIosys->GetError() );
}
@@ -1306,10 +1415,12 @@ void SbiRuntime::StepPRINT() // print TOS
void SbiRuntime::StepPRINTF() // print TOS in field
{
SbxVariableRef p = PopVar();
- OUString s1 = p->GetString();
+ OUString s1 = p->GetOUString();
OUStringBuffer s;
if( p->GetType() >= SbxINTEGER && p->GetType() <= SbxDOUBLE )
+ {
s.append(' ');
+ }
s.append(s1);
comphelper::string::padToLength(s, 14, ' ');
OString aByteStr(OUStringToOString(s.makeStringAndClear(), osl_getThreadTextEncoding()));
@@ -1324,19 +1435,23 @@ void SbiRuntime::StepWRITE() // write TOS
char ch = 0;
switch (p->GetType() )
{
- case SbxSTRING: ch = '"'; break;
- case SbxCURRENCY:
- case SbxBOOL:
- case SbxDATE: ch = '#'; break;
- default: break;
+ case SbxSTRING: ch = '"'; break;
+ case SbxCURRENCY:
+ case SbxBOOL:
+ case SbxDATE: ch = '#'; break;
+ default: break;
}
- String s;
+ OUString s;
if( ch )
- s += ch;
- s += p->GetString();
+ {
+ s += OUString(ch);
+ }
+ s += p->GetOUString();
if( ch )
- s += ch;
- rtl::OString aByteStr(rtl::OUStringToOString(s, osl_getThreadTextEncoding()));
+ {
+ s += OUString(ch);
+ }
+ OString aByteStr(rtl::OUStringToOString(s, osl_getThreadTextEncoding()));
pIosys->Write( aByteStr );
Error( pIosys->GetError() );
}
@@ -1345,8 +1460,8 @@ void SbiRuntime::StepRENAME() // Rename Tos+1 to Tos
{
SbxVariableRef pTos1 = PopVar();
SbxVariableRef pTos = PopVar();
- String aDest = pTos1->GetString();
- String aSource = pTos->GetString();
+ OUString aDest = pTos1->GetOUString();
+ OUString aSource = pTos->GetOUString();
if( hasUno() )
{
@@ -1363,7 +1478,7 @@ void SbiRuntime::StepRENAME() // Rename Tos+1 to Tos
void SbiRuntime::StepPROMPT()
{
SbxVariableRef p = PopVar();
- rtl::OString aStr(rtl::OUStringToOString(p->GetString(), osl_getThreadTextEncoding()));
+ rtl::OString aStr(rtl::OUStringToOString(p->GetOUString(), osl_getThreadTextEncoding()));
pIosys->SetPrompt( aStr );
}
@@ -1395,9 +1510,13 @@ void SbiRuntime::StepERROR()
sal_uInt16 n = refCode->GetUShort();
SbError error = StarBASIC::GetSfxFromVBError( n );
if ( bVBAEnabled )
+ {
pInst->Error( error );
+ }
else
+ {
Error( error );
+ }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/runtime/step1.cxx b/basic/source/runtime/step1.cxx
index a9466faae69b..feee72c0db8c 100644
--- a/basic/source/runtime/step1.cxx
+++ b/basic/source/runtime/step1.cxx
@@ -19,7 +19,9 @@
#include <stdlib.h>
+#include <comphelper/string.hxx>
#include <rtl/math.hxx>
+#include <rtl/ustrbuf.hxx>
#include <basic/sbuno.hxx>
#include "runtime.hxx"
#include "sbintern.hxx"
@@ -28,7 +30,7 @@
#include "sbunoobj.hxx"
#include "errobject.hxx"
-bool checkUnoObjectType( SbUnoObject* refVal, const ::rtl::OUString& aClass );
+bool checkUnoObjectType( SbUnoObject* refVal, const OUString& aClass );
// loading a numeric constant (+ID)
@@ -37,16 +39,12 @@ void SbiRuntime::StepLOADNC( sal_uInt32 nOp1 )
SbxVariable* p = new SbxVariable( SbxDOUBLE );
// #57844 use localized function
- String aStr = pImg->GetString( static_cast<short>( nOp1 ) );
+ OUString aStr = pImg->GetString( static_cast<short>( nOp1 ) );
// also allow , !!!
- sal_uInt16 iComma = aStr.Search( ',' );
- if( iComma != STRING_NOTFOUND )
+ sal_Int32 iComma = aStr.indexOf((sal_Unicode)',');
+ if( iComma >= 0 )
{
- String aStr1 = aStr.Copy( 0, iComma );
- String aStr2 = aStr.Copy( iComma + 1 );
- aStr = aStr1;
- aStr += '.';
- aStr += aStr2;
+ aStr = aStr.replaceAt(iComma, 1, OUString("."));
}
double n = ::rtl::math::stringToDouble( aStr, '.', ',', NULL, NULL );
@@ -80,7 +78,7 @@ void SbiRuntime::StepARGN( sal_uInt32 nOp1 )
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
else
{
- String aAlias( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aAlias( pImg->GetString( static_cast<short>( nOp1 ) ) );
SbxVariableRef pVal = PopVar();
if( bVBAEnabled && ( pVal->ISA(SbxMethod) || pVal->ISA(SbUnoProperty) || pVal->ISA(SbProcedureProperty) ) )
{
@@ -146,11 +144,21 @@ void SbiRuntime::StepARGTYP( sal_uInt32 nOp1 )
void SbiRuntime::StepPAD( sal_uInt32 nOp1 )
{
SbxVariable* p = GetTOS();
- String& s = (String&)(const String&) *p;
- if( s.Len() > nOp1 )
- s.Erase( static_cast<xub_StrLen>( nOp1 ) );
- else
- s.Expand( static_cast<xub_StrLen>( nOp1 ), ' ' );
+ OUString s = p->GetOUString();
+ sal_Int32 nLen(nOp1);
+ if( s.getLength() != nLen )
+ {
+ rtl::OUStringBuffer aBuf(s);
+ if (aBuf.getLength() > nLen)
+ {
+ comphelper::string::truncateToLength(aBuf, nLen);
+ }
+ else
+ {
+ comphelper::string::padToLength(aBuf, nLen, ' ');
+ }
+ s = aBuf.makeStringAndClear();
+ }
}
// jump (+target)
@@ -353,7 +361,7 @@ void SbiRuntime::StepERRHDL( sal_uInt32 nOp1 )
StepJUMP( nOp1 );
pError = pCode;
pCode = p;
- pInst->aErrorMsg = String();
+ pInst->aErrorMsg = OUString();
pInst->nErr = 0;
pInst->nErl = 0;
nError = 0;
@@ -383,7 +391,7 @@ void SbiRuntime::StepRESUME( sal_uInt32 nOp1 )
if( nOp1 > 1 )
StepJUMP( nOp1 );
- pInst->aErrorMsg = String();
+ pInst->aErrorMsg = OUString();
pInst->nErr = 0;
pInst->nErl = 0;
nError = 0;
@@ -412,14 +420,14 @@ void SbiRuntime::StepCLOSE( sal_uInt32 nOp1 )
void SbiRuntime::StepPRCHAR( sal_uInt32 nOp1 )
{
- rtl::OString s(static_cast<sal_Char>(nOp1));
+ OString s(static_cast<sal_Char>(nOp1));
pIosys->Write( s );
Error( pIosys->GetError() );
}
// check whether TOS is a certain object class (+StringID)
-bool SbiRuntime::implIsClass( SbxObject* pObj, const ::rtl::OUString& aClass )
+bool SbiRuntime::implIsClass( SbxObject* pObj, const OUString& aClass )
{
bool bRet = true;
@@ -430,13 +438,12 @@ bool SbiRuntime::implIsClass( SbxObject* pObj, const ::rtl::OUString& aClass )
bRet = aClass.equalsIgnoreAsciiCaseAsciiL( RTL_CONSTASCII_STRINGPARAM("object") );
if( !bRet )
{
- String aObjClass = pObj->GetClassName();
+ OUString aObjClass = pObj->GetClassName();
SbModule* pClassMod = GetSbData()->pClassFac->FindClass( aObjClass );
SbClassData* pClassData;
if( pClassMod && (pClassData=pClassMod->pClassData) != NULL )
{
- SbxVariable* pClassVar =
- pClassData->mxIfaces->Find( aClass, SbxCLASS_DONTCARE );
+ SbxVariable* pClassVar = pClassData->mxIfaces->Find( aClass, SbxCLASS_DONTCARE );
bRet = (pClassVar != NULL);
}
}
@@ -445,7 +452,7 @@ bool SbiRuntime::implIsClass( SbxObject* pObj, const ::rtl::OUString& aClass )
}
bool SbiRuntime::checkClass_Impl( const SbxVariableRef& refVal,
- const ::rtl::OUString& aClass, bool bRaiseErrors, bool bDefault )
+ const OUString& aClass, bool bRaiseErrors, bool bDefault )
{
bool bOk = bDefault;
@@ -511,11 +518,13 @@ void SbiRuntime::StepSETCLASS_impl( sal_uInt32 nOp1, bool bHandleDflt )
{
SbxVariableRef refVal = PopVar();
SbxVariableRef refVar = PopVar();
- String aClass( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aClass( pImg->GetString( static_cast<short>( nOp1 ) ) );
bool bOk = checkClass_Impl( refVal, aClass, true );
if( bOk )
+ {
StepSET_Impl( refVal, refVar, bHandleDflt ); // don't do handle dflt prop for a "proper" set
+ }
}
void SbiRuntime::StepVBASETCLASS( sal_uInt32 nOp1 )
@@ -531,7 +540,7 @@ void SbiRuntime::StepSETCLASS( sal_uInt32 nOp1 )
void SbiRuntime::StepTESTCLASS( sal_uInt32 nOp1 )
{
SbxVariableRef xObjVal = PopVar();
- String aClass( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aClass( pImg->GetString( static_cast<short>( nOp1 ) ) );
bool bDefault = !bVBAEnabled;
bool bOk = checkClass_Impl( xObjVal, aClass, false, bDefault );
diff --git a/basic/source/runtime/step2.cxx b/basic/source/runtime/step2.cxx
index ad151a72b07d..0f6c07bd2b67 100644
--- a/basic/source/runtime/step2.cxx
+++ b/basic/source/runtime/step2.cxx
@@ -30,6 +30,8 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/uno/Any.hxx>
#include <comphelper/processfactory.hxx>
+#include <comphelper/string.hxx>
+#include <rtl/ustrbuf.hxx>
using namespace com::sun::star::uno;
using namespace com::sun::star::container;
@@ -39,21 +41,23 @@ using namespace com::sun::star::script;
using com::sun::star::uno::Reference;
-SbxVariable* getVBAConstant( const String& rName );
+SbxVariable* getVBAConstant( const OUString& rName );
// the bits in the String-ID:
// 0x8000 - Argv is reserved
-SbxVariable* SbiRuntime::FindElement
- ( SbxObject* pObj, sal_uInt32 nOp1, sal_uInt32 nOp2, SbError nNotFound, bool bLocal, bool bStatic )
+SbxVariable* SbiRuntime::FindElement( SbxObject* pObj, sal_uInt32 nOp1, sal_uInt32 nOp2,
+ SbError nNotFound, bool bLocal, bool bStatic )
{
bool bIsVBAInterOp = SbiRuntime::isVBAEnabled();
if( bIsVBAInterOp )
{
StarBASIC* pMSOMacroRuntimeLib = GetSbData()->pMSOMacroRuntimLib;
if( pMSOMacroRuntimeLib != NULL )
+ {
pMSOMacroRuntimeLib->ResetFlag( SBX_EXTSEARCH );
+ }
}
SbxVariable* pElem = NULL;
@@ -66,32 +70,36 @@ SbxVariable* SbiRuntime::FindElement
{
bool bFatalError = false;
SbxDataType t = (SbxDataType) nOp2;
- String aName( pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) ) );
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) ) );
// Hacky capture of Evaluate [] syntax
// this should be tackled I feel at the pcode level
- if ( bIsVBAInterOp && aName.Search('[') == 0 )
+ if ( bIsVBAInterOp && aName.indexOf((sal_Unicode)'[') == 0 )
{
// emulate pcode here
StepARGC();
// psuedo StepLOADSC
- String sArg = aName.Copy( 1, aName.Len() - 2 );
+ OUString sArg = aName.copy( 1, aName.getLength() - 2 );
SbxVariable* p = new SbxVariable;
p->PutString( sArg );
PushVar( p );
StepARGV();
nOp1 = nOp1 | 0x8000; // indicate params are present
- aName = rtl::OUString("Evaluate");
+ aName = OUString("Evaluate");
}
if( bLocal )
{
if ( bStatic )
{
if ( pMeth )
+ {
pElem = pMeth->GetStatics()->Find( aName, SbxCLASS_DONTCARE );
+ }
}
if ( !pElem )
+ {
pElem = refLocals->Find( aName, SbxCLASS_DONTCARE );
+ }
}
if( !pElem )
{
@@ -106,8 +114,9 @@ SbxVariable* SbiRuntime::FindElement
{
SbiInstance* pInst_ = GetSbData()->pInst;
if( pInst_ && pInst_->IsCompatibility() && pObj != pElem->GetParent() )
+ {
pElem = NULL; // Found but in wrong module!
-
+ }
// Interfaces: Use SBX_EXTFOUND
}
}
@@ -125,9 +134,13 @@ SbxVariable* SbiRuntime::FindElement
// Try Find in VBA symbols space
pElem = rBasic.VBAFind( aName, SbxCLASS_DONTCARE );
if ( pElem )
+ {
bSetName = false; // don't overwrite uno name
+ }
else
+ {
pElem = VBAConstantHelper::instance().getVBAConstant( aName );
+ }
}
if( !pElem )
@@ -157,7 +170,9 @@ SbxVariable* SbiRuntime::FindElement
// #72382 save locally, all variables that have been declared
// implicit would become global automatically otherwise!
if ( bSetName )
+ {
pElem->SetName( aName );
+ }
refLocals->Put( pElem, refLocals->Count() );
}
}
@@ -167,7 +182,9 @@ SbxVariable* SbiRuntime::FindElement
// not there and not in the object?
// don't establish if that thing has parameters!
if( nOp1 & 0x8000 )
+ {
bFatalError = true;
+ }
// else, if there are parameters, use different error code
if( !bLocal || pImg->GetFlag( SBIMG_EXPLICIT ) )
@@ -177,13 +194,17 @@ SbxVariable* SbiRuntime::FindElement
if( !( nOp1 & 0x8000 ) && nNotFound == SbERR_PROC_UNDEFINED )
+ {
nNotFound = SbERR_VAR_UNDEFINED;
+ }
}
if( bFatalError )
{
// #39108 use dummy variable instead of fatal error
if( !xDummyVar.Is() )
+ {
xDummyVar = new SbxVariable( SbxVARIANT );
+ }
pElem = xDummyVar;
ClearArgvStack();
@@ -193,12 +214,16 @@ SbxVariable* SbiRuntime::FindElement
else
{
if ( bStatic )
+ {
pElem = StepSTATIC_Impl( aName, t );
+ }
if ( !pElem )
{
pElem = new SbxVariable( t );
if( t != SbxVARIANT )
+ {
pElem->SetFlag( SBX_FIXED );
+ }
pElem->SetName( aName );
refLocals->Put( pElem, refLocals->Count() );
}
@@ -207,8 +232,9 @@ SbxVariable* SbiRuntime::FindElement
}
// #39108 Args can already be deleted!
if( !bFatalError )
+ {
SetupArgs( pElem, nOp1 );
-
+ }
// because a particular call-type is requested
if( pElem->IsA( TYPE(SbxMethod) ) )
{
@@ -219,7 +245,9 @@ SbxVariable* SbiRuntime::FindElement
{
if( t != SbxVARIANT && t != t2 &&
t >= SbxINTEGER && t <= SbxSTRING )
+ {
pElem->SetType( t ), bSet = true;
+ }
}
// assign pElem to a Ref, to delete a temp-var if applicable
SbxVariableRef refTemp = pElem;
@@ -242,7 +270,9 @@ SbxVariable* SbiRuntime::FindElement
pNew->SetFlag( SBX_READWRITE );
if( bSet )
+ {
pElem->SetType( t2 );
+ }
pElem = pNew;
}
// consider index-access for UnoObjects
@@ -263,23 +293,25 @@ SbxVariable* SbiRuntime::FindElement
}
// for current scope (e. g. query from BASIC-IDE)
-SbxBase* SbiRuntime::FindElementExtern( const String& rName )
+SbxBase* SbiRuntime::FindElementExtern( const OUString& rName )
{
// don't expect pMeth to be != 0, as there are none set
// in the RunInit yet
SbxVariable* pElem = NULL;
- if( !pMod || !rName.Len() )
+ if( !pMod || !rName.getLength() )
+ {
return NULL;
-
+ }
if( refLocals )
+ {
pElem = refLocals->Find( rName, SbxCLASS_DONTCARE );
-
+ }
if ( !pElem && pMeth )
{
// for statics, set the method's name in front
- String aMethName = pMeth->GetName();
- aMethName += ':';
+ OUString aMethName = pMeth->GetName();
+ aMethName += ":";
aMethName += rName;
pElem = pMod->Find(aMethName, SbxCLASS_DONTCARE);
}
@@ -295,13 +327,13 @@ SbxBase* SbiRuntime::FindElementExtern( const String& rName )
const SbxParamInfo* pParam = pInfo->GetParam( j );
while( pParam )
{
- if( pParam->aName.EqualsIgnoreCaseAscii( rName ) )
+ if( pParam->aName.equalsIgnoreAsciiCase( rName ) )
{
if( j >= nParamCount )
{
// Parameter is missing
pElem = new SbxVariable( SbxSTRING );
- pElem->PutString( String( RTL_CONSTASCII_USTRINGPARAM("<missing parameter>" ) ) );
+ pElem->PutString( OUString("<missing parameter>"));
}
else
{
@@ -332,13 +364,15 @@ void SbiRuntime::SetupArgs( SbxVariable* p, sal_uInt32 nOp1 )
if( nOp1 & 0x8000 )
{
if( !refArgv )
+ {
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
+ }
bool bHasNamed = false;
sal_uInt16 i;
sal_uInt16 nArgCount = refArgv->Count();
for( i = 1 ; i < nArgCount ; i++ )
{
- if( refArgv->GetAlias( i ).Len() )
+ if( !refArgv->GetAlias(i).isEmpty() )
{
bHasNamed = true; break;
}
@@ -367,13 +401,15 @@ void SbiRuntime::SetupArgs( SbxVariable* p, sal_uInt32 nOp1 )
sal_uInt16 nCurPar = 1;
AutomationNamedArgsSbxArray* pArg =
new AutomationNamedArgsSbxArray( nArgCount );
- ::rtl::OUString* pNames = pArg->getNames().getArray();
+ OUString* pNames = pArg->getNames().getArray();
for( i = 1 ; i < nArgCount ; i++ )
{
SbxVariable* pVar = refArgv->Get( i );
- const String& rName = refArgv->GetAlias( i );
- if( rName.Len() )
+ const OUString& rName = refArgv->GetAlias( i );
+ if( rName.getLength() )
+ {
pNames[i] = rName;
+ }
pArg->Put( pVar, nCurPar++ );
}
refArgv = pArg;
@@ -394,22 +430,30 @@ void SbiRuntime::SetupArgs( SbxVariable* p, sal_uInt32 nOp1 )
Reference< XInterface > x = *(Reference< XInterface >*)aAny.getValue();
Reference< XDefaultMethod > xDfltMethod( x, UNO_QUERY );
- rtl::OUString sDefaultMethod;
+ OUString sDefaultMethod;
if ( xDfltMethod.is() )
+ {
sDefaultMethod = xDfltMethod->getDefaultMethodName();
+ }
if ( !sDefaultMethod.isEmpty() )
{
SbxVariable* meth = pUnoObj->Find( sDefaultMethod, SbxCLASS_METHOD );
if( meth != NULL )
+ {
pInfo = meth->GetInfo();
+ }
if( pInfo )
+ {
bError_ = false;
+ }
}
}
}
}
if( bError_ )
+ {
Error( SbERR_NO_NAMED_ARGS );
+ }
}
else
{
@@ -418,15 +462,15 @@ void SbiRuntime::SetupArgs( SbxVariable* p, sal_uInt32 nOp1 )
for( i = 1 ; i < nArgCount ; i++ )
{
SbxVariable* pVar = refArgv->Get( i );
- const String& rName = refArgv->GetAlias( i );
- if( rName.Len() )
+ const OUString& rName = refArgv->GetAlias( i );
+ if( rName.getLength() )
{
// nCurPar is set to the found parameter
sal_uInt16 j = 1;
const SbxParamInfo* pParam = pInfo->GetParam( j );
while( pParam )
{
- if( pParam->aName.EqualsIgnoreCaseAscii( rName ) )
+ if( pParam->aName.equalsIgnoreAsciiCase( rName ) )
{
nCurPar = j;
break;
@@ -449,7 +493,9 @@ void SbiRuntime::SetupArgs( SbxVariable* p, sal_uInt32 nOp1 )
PopArgv();
}
else
+ {
p->SetParameters( NULL );
+ }
}
// getting an array element
@@ -480,13 +526,17 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem )
pElem = new SbxVariable;
}
else
+ {
pElem = pArray->Get( pPar->Get( 1 )->GetInteger() );
+ }
}
}
// #42940, set parameter 0 to NULL so that var doesn't contain itself
if( pPar )
+ {
pPar->Put( NULL, 0 );
+ }
}
// consider index-access for UnoObjects
else if( pElem->GetType() == SbxOBJECT && !pElem->ISA(SbxMethod) && ( !bVBAEnabled || ( bVBAEnabled && !pElem->ISA(SbxProperty) ) ) )
@@ -526,7 +576,9 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem )
Any aAny2 = xIndexAccess->getByIndex( nIndex );
TypeClass eType = aAny2.getValueType().getTypeClass();
if( eType == TypeClass_INTERFACE )
+ {
xRet = *(Reference< XInterface >*)aAny2.getValue();
+ }
}
catch (const IndexOutOfBoundsException&)
{
@@ -542,7 +594,7 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem )
aAny <<= xRet;
// #67173 don't specify a name so that the real class name is entered
- String aName;
+ OUString aName;
SbxObjectRef xWrapper = (SbxObject*)new SbUnoObject( aName, aAny );
pElem->PutObject( xWrapper );
}
@@ -554,15 +606,18 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem )
}
else
{
- rtl::OUString sDefaultMethod;
+ OUString sDefaultMethod;
Reference< XDefaultMethod > xDfltMethod( x, UNO_QUERY );
if ( xDfltMethod.is() )
+ {
sDefaultMethod = xDfltMethod->getDefaultMethodName();
+ }
else if( xIndexAccess.is() )
- sDefaultMethod = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "getByIndex" ) );
-
+ {
+ sDefaultMethod = OUString( RTL_CONSTASCII_USTRINGPARAM( "getByIndex" ) );
+ }
if ( !sDefaultMethod.isEmpty() )
{
SbxVariable* meth = pUnoObj->Find( sDefaultMethod, SbxCLASS_METHOD );
@@ -592,7 +647,9 @@ SbxVariable* SbiRuntime::CheckArray( SbxVariable* pElem )
{
SbxArray* pParam = pElem->GetParameters();
if( pParam != NULL && !pElem->IsSet( SBX_VAR_TO_DIM ) )
+ {
Error( SbERR_NO_OBJECT );
+ }
}
}
}
@@ -607,11 +664,13 @@ void SbiRuntime::StepRTL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
PushVar( FindElement( rBasic.pRtl, nOp1, nOp2, SbERR_PROC_UNDEFINED, false ) );
}
-void
-SbiRuntime::StepFIND_Impl( SbxObject* pObj, sal_uInt32 nOp1, sal_uInt32 nOp2, SbError nNotFound, bool bLocal, bool bStatic )
+void SbiRuntime::StepFIND_Impl( SbxObject* pObj, sal_uInt32 nOp1, sal_uInt32 nOp2,
+ SbError nNotFound, bool bLocal, bool bStatic )
{
if( !refLocals )
+ {
refLocals = new SbxArray;
+ }
PushVar( FindElement( pObj, nOp1, nOp2, nNotFound, bLocal, bStatic ) );
}
// loading a local/global variable (+StringID+type)
@@ -627,12 +686,15 @@ void SbiRuntime::StepFIND_CM( sal_uInt32 nOp1, sal_uInt32 nOp2 )
SbClassModuleObject* pClassModuleObject = PTR_CAST(SbClassModuleObject,pMod);
if( pClassModuleObject )
+ {
pMod->SetFlag( SBX_GBLSEARCH );
-
+ }
StepFIND_Impl( pMod, nOp1, nOp2, SbERR_PROC_UNDEFINED, true );
if( pClassModuleObject )
+ {
pMod->ResetFlag( SBX_GBLSEARCH );
+ }
}
void SbiRuntime::StepFIND_STATIC( sal_uInt32 nOp1, sal_uInt32 nOp2 )
@@ -659,8 +721,9 @@ void SbiRuntime::StepELEM( sal_uInt32 nOp1, sal_uInt32 nOp2 )
// ActiveComponent.Selection(0).Text
// #74254 now per list
if( pObj )
+ {
SaveRef( (SbxVariable*)pObj );
-
+ }
PushVar( FindElement( pObj, nOp1, nOp2, SbERR_NO_METHOD, false ) );
}
@@ -688,13 +751,18 @@ void SbiRuntime::StepPARAM( sal_uInt32 nOp1, sal_uInt32 nOp2 )
(t == SbxOBJECT || t == SbxSTRING) )
{
if( t == SbxOBJECT )
+ {
p->PutObject( NULL );
+ }
else
- p->PutString( String() );
+ {
+ p->PutString( OUString() );
+ }
}
else
+ {
p->PutErr( 448 ); // like in VB: Error-Code 448 (SbERR_NAMED_NOT_FOUND)
-
+ }
refParams->Put( p, iLoop );
iLoop--;
}
@@ -714,11 +782,10 @@ void SbiRuntime::StepPARAM( sal_uInt32 nOp1, sal_uInt32 nOp2 )
if( pParam && ( (pParam->nFlags & SBX_OPTIONAL) != 0 ) )
{
// Default value?
- sal_uInt16 nDefaultId = sal::static_int_cast< sal_uInt16 >(
- pParam->nUserData & 0xffff );
+ sal_uInt16 nDefaultId = (sal_uInt16)(pParam->nUserData & 0x0ffff);
if( nDefaultId > 0 )
{
- String aDefaultStr = pImg->GetString( nDefaultId );
+ OUString aDefaultStr = pImg->GetString( nDefaultId );
p = new SbxVariable();
p->PutString( aDefaultStr );
refParams->Put( p, i );
@@ -728,7 +795,9 @@ void SbiRuntime::StepPARAM( sal_uInt32 nOp1, sal_uInt32 nOp2 )
}
}
if( !bOpt )
+ {
Error( SbERR_NOT_OPTIONAL );
+ }
}
else if( t != SbxVARIANT && (SbxDataType)(p->GetType() & 0x0FFF ) != t )
{
@@ -737,7 +806,9 @@ void SbiRuntime::StepPARAM( sal_uInt32 nOp1, sal_uInt32 nOp2 )
*q = *p;
p = q;
if ( i )
+ {
refParams->Put( p, i );
+ }
}
SetupArgs( p, nOp1 );
PushVar( CheckArray( p ) );
@@ -748,13 +819,17 @@ void SbiRuntime::StepPARAM( sal_uInt32 nOp1, sal_uInt32 nOp2 )
void SbiRuntime::StepCASEIS( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
if( !refCaseStk || !refCaseStk->Count() )
+ {
StarBASIC::FatalError( SbERR_INTERNAL_ERROR );
+ }
else
{
SbxVariableRef xComp = PopVar();
SbxVariableRef xCase = refCaseStk->Get( refCaseStk->Count() - 1 );
if( xCase->Compare( (SbxOperator) nOp2, *xComp ) )
+ {
StepJUMP( nOp1 );
+ }
}
}
@@ -763,28 +838,36 @@ void SbiRuntime::StepCASEIS( sal_uInt32 nOp1, sal_uInt32 nOp2 )
void SbiRuntime::StepCALL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
- String aName = pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) );
+ OUString aName = pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) );
SbxArray* pArgs = NULL;
if( nOp1 & 0x8000 )
+ {
pArgs = refArgv;
+ }
DllCall( aName, aLibName, pArgs, (SbxDataType) nOp2, false );
- aLibName = String();
+ aLibName = OUString();
if( nOp1 & 0x8000 )
+ {
PopArgv();
+ }
}
// call of a DLL-procedure after CDecl (+StringID+type)
void SbiRuntime::StepCALLC( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
- String aName = pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) );
+ OUString aName = pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) );
SbxArray* pArgs = NULL;
if( nOp1 & 0x8000 )
+ {
pArgs = refArgv;
+ }
DllCall( aName, aLibName, pArgs, (SbxDataType) nOp2, true );
- aLibName = String();
+ aLibName = OUString();
if( nOp1 & 0x8000 )
+ {
PopArgv();
+ }
}
@@ -795,14 +878,16 @@ void SbiRuntime::StepSTMNT( sal_uInt32 nOp1, sal_uInt32 nOp2 )
// If the Expr-Stack at the beginning of a statement constains a variable,
// some fool has called X as a function, although it's a variable!
bool bFatalExpr = false;
- String sUnknownMethodName;
+ OUString sUnknownMethodName;
if( nExprLvl > 1 )
+ {
bFatalExpr = true;
+ }
else if( nExprLvl )
{
SbxVariable* p = refExprStk->Get( 0 );
- if( p->GetRefCount() > 1
- && refLocals.Is() && refLocals->Find( p->GetName(), p->GetClass() ) )
+ if( p->GetRefCount() > 1 &&
+ refLocals.Is() && refLocals->Find( p->GetName(), p->GetClass() ) )
{
sUnknownMethodName = p->GetName();
bFatalExpr = true;
@@ -848,12 +933,16 @@ void SbiRuntime::StepSTMNT( sal_uInt32 nOp1, sal_uInt32 nOp2 )
// (there's a difference here in case of a jump out of a loop)
sal_uInt16 nExspectedForLevel = static_cast<sal_uInt16>( nOp2 / 0x100 );
if( pGosubStk )
+ {
nExspectedForLevel = nExspectedForLevel + pGosubStk->nStartForLvl;
+ }
// if the actual for-level is too small it'd jump out
// of a loop -> corrected
while( nForLvl > nExspectedForLevel )
+ {
PopFor();
+ }
}
// 16.10.96: #31460 new concept for StepInto/Over/Out
@@ -890,9 +979,9 @@ void SbiRuntime::StepOPEN( sal_uInt32 nOp1, sal_uInt32 nOp2 )
SbxVariableRef pLen = PopVar();
short nBlkLen = pLen->GetInteger();
short nChan = pChan->GetInteger();
- rtl::OString aName(rtl::OUStringToOString(pName->GetString(), osl_getThreadTextEncoding()));
+ OString aName(rtl::OUStringToOString(pName->GetOUString(), osl_getThreadTextEncoding()));
pIosys->Open( nChan, aName, static_cast<short>( nOp1 ),
- static_cast<short>( nOp2 ), nBlkLen );
+ static_cast<short>( nOp2 ), nBlkLen );
Error( pIosys->GetError() );
}
@@ -900,15 +989,17 @@ void SbiRuntime::StepOPEN( sal_uInt32 nOp1, sal_uInt32 nOp2 )
void SbiRuntime::StepCREATE( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
- String aClass( pImg->GetString( static_cast<short>( nOp2 ) ) );
+ OUString aClass( pImg->GetString( static_cast<short>( nOp2 ) ) );
SbxObject *pObj = SbxBase::CreateObject( aClass );
if( !pObj )
+ {
Error( SbERR_INVALID_OBJECT );
+ }
else
{
- String aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
pObj->SetName( aName );
- // the object must be able to call the BASIC
+ // the object must be able to call the BASIC
pObj->SetParent( &rBasic );
SbxVariable* pNew = new SbxVariable;
pNew->PutObject( pObj );
@@ -979,13 +1070,17 @@ void SbiRuntime::StepDCREATE_IMPL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
pArray->GetDim32( i+1, nLower, nUpper );
nSize = nUpper - nLower + 1;
if( i == 0 )
+ {
nTotalSize = nSize;
+ }
else
+ {
nTotalSize *= nSize;
+ }
}
// create objects and insert them into the array
- String aClass( pImg->GetString( static_cast<short>( nOp2 ) ) );
+ OUString aClass( pImg->GetString( static_cast<short>( nOp2 ) ) );
for( i = 0 ; i < nTotalSize ; i++ )
{
SbxObject *pClassObj = SbxBase::CreateObject( aClass );
@@ -996,7 +1091,7 @@ void SbiRuntime::StepDCREATE_IMPL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
}
else
{
- String aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
pClassObj->SetName( aName );
// the object must be able to call the basic
pClassObj->SetParent( &rBasic );
@@ -1060,16 +1155,18 @@ void SbiRuntime::StepDCREATE_IMPL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
// create object from user-type (+StringID+StringID)
-SbxObject* createUserTypeImpl( const String& rClassName ); // sb.cxx
+SbxObject* createUserTypeImpl( const OUString& rClassName ); // sb.cxx
void SbiRuntime::StepTCREATE( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
- String aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
- String aClass( pImg->GetString( static_cast<short>( nOp2 ) ) );
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aClass( pImg->GetString( static_cast<short>( nOp2 ) ) );
SbxObject* pCopyObj = createUserTypeImpl( aClass );
if( pCopyObj )
+ {
pCopyObj->SetName( aName );
+ }
SbxVariable* pNew = new SbxVariable;
pNew->PutObject( pCopyObj );
pNew->SetDeclareClassName( aClass );
@@ -1080,24 +1177,28 @@ void SbiRuntime::implHandleSbxFlags( SbxVariable* pVar, SbxDataType t, sal_uInt3
{
bool bWithEvents = ((t & 0xff) == SbxOBJECT && (nOp2 & SBX_TYPE_WITH_EVENTS_FLAG) != 0);
if( bWithEvents )
+ {
pVar->SetFlag( SBX_WITH_EVENTS );
-
+ }
bool bDimAsNew = ((nOp2 & SBX_TYPE_DIM_AS_NEW_FLAG) != 0);
if( bDimAsNew )
+ {
pVar->SetFlag( SBX_DIM_AS_NEW );
-
+ }
bool bFixedString = ((t & 0xff) == SbxSTRING && (nOp2 & SBX_FIXED_LEN_STRING_FLAG) != 0);
if( bFixedString )
{
sal_uInt16 nCount = static_cast<sal_uInt16>( nOp2 >> 17 ); // len = all bits above 0x10000
- String aStr;
- aStr.Fill( nCount, 0 );
- pVar->PutString( aStr );
+ OUStringBuffer aBuf;
+ comphelper::string::padToLength(aBuf, nCount, 0);
+ pVar->PutString(aBuf.makeStringAndClear());
}
bool bVarToDim = ((nOp2 & SBX_TYPE_VAR_TO_DIM_FLAG) != 0);
if( bVarToDim )
+ {
pVar->SetFlag( SBX_VAR_TO_DIM );
+ }
}
// establishing a local variable (+StringID+type)
@@ -1105,8 +1206,10 @@ void SbiRuntime::implHandleSbxFlags( SbxVariable* pVar, SbxDataType t, sal_uInt3
void SbiRuntime::StepLOCAL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
if( !refLocals.Is() )
+ {
refLocals = new SbxArray;
- String aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ }
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
if( refLocals->Find( aName, SbxCLASS_DONTCARE ) == NULL )
{
SbxDataType t = (SbxDataType)(nOp2 & 0xffff);
@@ -1121,18 +1224,24 @@ void SbiRuntime::StepLOCAL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
void SbiRuntime::StepPUBLIC_Impl( sal_uInt32 nOp1, sal_uInt32 nOp2, bool bUsedForClassModule )
{
- String aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
SbxDataType t = (SbxDataType)(SbxDataType)(nOp2 & 0xffff);;
sal_Bool bFlag = pMod->IsSet( SBX_NO_MODIFY );
pMod->SetFlag( SBX_NO_MODIFY );
SbxVariableRef p = pMod->Find( aName, SbxCLASS_PROPERTY );
if( p.Is() )
+ {
pMod->Remove (p);
+ }
SbProperty* pProp = pMod->GetProperty( aName, t );
if( !bUsedForClassModule )
+ {
pProp->SetFlag( SBX_PRIVATE );
+ }
if( !bFlag )
+ {
pMod->ResetFlag( SBX_NO_MODIFY );
+ }
if( pProp )
{
pProp->SetFlag( SBX_DONTSTORE );
@@ -1164,9 +1273,10 @@ void SbiRuntime::StepPUBLIC_P( sal_uInt32 nOp1, sal_uInt32 nOp2 )
void SbiRuntime::StepGLOBAL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
if( pImg->GetFlag( SBIMG_CLASSMODULE ) )
+ {
StepPUBLIC_Impl( nOp1, nOp2, true );
-
- String aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ }
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
SbxDataType t = (SbxDataType)(nOp2 & 0xffff);
// Store module scope variables at module scope
@@ -1183,10 +1293,14 @@ void SbiRuntime::StepGLOBAL( sal_uInt32 nOp1, sal_uInt32 nOp2 )
rBasic.SetFlag( SBX_NO_MODIFY );
SbxVariableRef p = pStorage->Find( aName, SbxCLASS_PROPERTY );
if( p.Is() )
+ {
pStorage->Remove (p);
+ }
p = pStorage->Make( aName, SbxCLASS_PROPERTY, t );
if( !bFlag )
+ {
pStorage->ResetFlag( SBX_NO_MODIFY );
+ }
if( p )
{
p->SetFlag( SBX_DONTSTORE );
@@ -1222,7 +1336,7 @@ void SbiRuntime::StepFIND_G( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
// Return dummy variable
SbxDataType t = (SbxDataType) nOp2;
- String aName( pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) ) );
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 & 0x7FFF ) ) );
SbxVariable* pDummyVar = new SbxVariable( t );
pDummyVar->SetName( aName );
@@ -1231,7 +1345,7 @@ void SbiRuntime::StepFIND_G( sal_uInt32 nOp1, sal_uInt32 nOp2 )
}
-SbxVariable* SbiRuntime::StepSTATIC_Impl( String& aName, SbxDataType& t )
+SbxVariable* SbiRuntime::StepSTATIC_Impl( OUString& aName, SbxDataType& t )
{
SbxVariable* p = NULL;
if ( pMeth )
@@ -1241,7 +1355,9 @@ SbxVariable* SbiRuntime::StepSTATIC_Impl( String& aName, SbxDataType& t )
{
p = new SbxVariable( t );
if( t != SbxVARIANT )
+ {
p->SetFlag( SBX_FIXED );
+ }
p->SetName( aName );
pStatics->Put( p, pStatics->Count() );
}
@@ -1251,7 +1367,7 @@ SbxVariable* SbiRuntime::StepSTATIC_Impl( String& aName, SbxDataType& t )
// establishing a static variable (+StringID+type)
void SbiRuntime::StepSTATIC( sal_uInt32 nOp1, sal_uInt32 nOp2 )
{
- String aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
+ OUString aName( pImg->GetString( static_cast<short>( nOp1 ) ) );
SbxDataType t = (SbxDataType) nOp2;
StepSTATIC_Impl( aName, t );
}
diff --git a/basic/source/sbx/sbxarray.cxx b/basic/source/sbx/sbxarray.cxx
index e1725a893fd2..9a68c1379c80 100644
--- a/basic/source/sbx/sbxarray.cxx
+++ b/basic/source/sbx/sbxarray.cxx
@@ -31,7 +31,7 @@ struct SbxDim { // an array-dimension:
class SbxVarEntry : public SbxVariableRef {
public:
- XubString* pAlias;
+ OUString* pAlias;
SbxVarEntry() : SbxVariableRef(), pAlias( NULL ) {}
~SbxVarEntry() { delete pAlias; }
};
@@ -83,11 +83,17 @@ SbxArray& SbxArray::operator=( const SbxArray& rArray )
SbxVarEntryPtr pDstRef = new SbxVarEntry;
*((SbxVariableRef*) pDstRef) = *((SbxVariableRef*) pSrcRef);
if( pSrcRef->pAlias )
- pDstRef->pAlias = new XubString( *pSrcRef->pAlias );
+ {
+ pDstRef->pAlias = new OUString( *pSrcRef->pAlias );
+ }
if( eType != SbxVARIANT )
+ {
// Convert no objects
if( eType != SbxOBJECT || pSrc_->GetClass() != SbxCLASS_OBJECT )
+ {
((SbxVariable*) pSrc_)->Convert( eType );
+ }
+ }
pData->push_back( pDstRef );
}
}
@@ -247,36 +253,48 @@ void SbxArray::Put( SbxVariable* pVar, sal_uInt16 nIdx )
}
}
-const XubString& SbxArray::GetAlias( sal_uInt16 nIdx )
+const OUString& SbxArray::GetAlias( sal_uInt16 nIdx )
{
+static const OUString sEmpty("");
+
if( !CanRead() )
{
SetError( SbxERR_PROP_WRITEONLY );
- return String::EmptyString();
+ return sEmpty;
}
SbxVarEntry& rRef = (SbxVarEntry&) GetRef( nIdx );
if ( !rRef.pAlias )
- return String::EmptyString();
+ {
+ return sEmpty;
+ }
#ifdef DBG_UTIL
else
+ {
DBG_CHKOBJ( rRef, SbxBase, 0 );
+ }
#endif
return *rRef.pAlias;
}
-void SbxArray::PutAlias( const XubString& rAlias, sal_uInt16 nIdx )
+void SbxArray::PutAlias( const OUString& rAlias, sal_uInt16 nIdx )
{
if( !CanWrite() )
+ {
SetError( SbxERR_PROP_READONLY );
+ }
else
{
SbxVarEntry& rRef = (SbxVarEntry&) GetRef( nIdx );
if( !rRef.pAlias )
- rRef.pAlias = new XubString( rAlias );
+ {
+ rRef.pAlias = new OUString( rAlias );
+ }
else
+ {
*rRef.pAlias = rAlias;
+ }
}
}
@@ -284,14 +302,20 @@ void SbxArray::Insert32( SbxVariable* pVar, sal_uInt32 nIdx )
{
DBG_ASSERT( pData->size() <= SBX_MAXINDEX32, "SBX: Array wird zu gross" );
if( pData->size() > SBX_MAXINDEX32 )
+ {
return;
+ }
SbxVarEntryPtr p = new SbxVarEntry;
*((SbxVariableRef*) p) = pVar;
SbxVarEntryPtrVector::size_type nSize = pData->size();
if( nIdx > nSize )
+ {
nIdx = nSize;
+ }
if( eType != SbxVARIANT && pVar )
+ {
(*p)->Convert( eType );
+ }
if( nIdx == nSize )
{
pData->push_back( p );
@@ -307,7 +331,9 @@ void SbxArray::Insert( SbxVariable* pVar, sal_uInt16 nIdx )
{
DBG_ASSERT( pData->size() <= 0x3FF0, "SBX: Array wird zu gross" );
if( pData->size() > 0x3FF0 )
- return;
+ {
+ return;
+ }
Insert32( pVar, nIdx );
}
@@ -364,13 +390,13 @@ void SbxArray::Merge( SbxArray* p )
SbxVariable* pVar = *pRef1;
if( pVar )
{
- XubString aName = pVar->GetName();
+ OUString aName = pVar->GetName();
sal_uInt16 nHash = pVar->GetHashCode();
for( sal_uInt32 j = 0; j < pData->size(); j++ )
{
SbxVariableRef* pRef2 = (*pData)[j];
if( (*pRef2)->GetHashCode() == nHash
- && (*pRef2)->GetName().EqualsIgnoreCaseAscii( aName ) )
+ && (*pRef2)->GetName().equalsIgnoreAsciiCase( aName ) )
{
*pRef2 = pVar; pRef1 = NULL;
break;
@@ -383,7 +409,9 @@ void SbxArray::Merge( SbxArray* p )
pData->push_back( pTemp );
*((SbxVariableRef*) pRef) = *((SbxVariableRef*) pRef1);
if( pRef1->pAlias )
- pRef->pAlias = new XubString( *pRef1->pAlias );
+ {
+ pRef->pAlias = new OUString( *pRef1->pAlias );
+ }
}
}
}
@@ -441,7 +469,7 @@ SbxVariable* SbxArray::FindUserData( sal_uInt32 nData )
// Search of an element by his name and type. If an element is an object,
// it will also be scanned..
-SbxVariable* SbxArray::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbxArray::Find( const OUString& rName, SbxClassType t )
{
SbxVariable* p = NULL;
sal_uInt32 nCount = pData->size();
@@ -459,7 +487,7 @@ SbxVariable* SbxArray::Find( const rtl::OUString& rName, SbxClassType t )
sal_uInt16 nVarHash = pVar->GetHashCode();
if( ( !nVarHash || nVarHash == nHash )
&& ( t == SbxCLASS_DONTCARE || pVar->GetClass() == t )
- && ( pVar->GetName().EqualsIgnoreCaseAscii( rName ) ) )
+ && ( pVar->GetName().equalsIgnoreAsciiCase( rName ) ) )
{
p = pVar;
p->ResetFlag( SBX_EXTFOUND );
diff --git a/basic/source/sbx/sbxbool.cxx b/basic/source/sbx/sbxbool.cxx
index c843f1689273..1716037b36ca 100644
--- a/basic/source/sbx/sbxbool.cxx
+++ b/basic/source/sbx/sbxbool.cxx
@@ -142,7 +142,7 @@ void ImpPutBool( SbxValues* p, sal_Int16 n )
switch( +p->eType )
{
case SbxCHAR:
- p->nChar = (xub_Unicode) n; break;
+ p->nChar = (sal_Unicode) n; break;
case SbxUINT:
p->nByte = (sal_uInt8) n; break;
case SbxINTEGER:
@@ -189,7 +189,7 @@ void ImpPutBool( SbxValues* p, sal_Int16 n )
break;
}
case SbxBYREF | SbxCHAR:
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
*p->pByte = (sal_uInt8) n; break;
case SbxBYREF | SbxINTEGER:
diff --git a/basic/source/sbx/sbxbyte.cxx b/basic/source/sbx/sbxbyte.cxx
index c6310e647e09..bcfebdaaf97d 100644
--- a/basic/source/sbx/sbxbyte.cxx
+++ b/basic/source/sbx/sbxbyte.cxx
@@ -253,7 +253,7 @@ void ImpPutByte( SbxValues* p, sal_uInt8 n )
break;
case SbxCHAR:
- p->nChar = (xub_Unicode) n; break;
+ p->nChar = (sal_Unicode) n; break;
case SbxBYREF | SbxSTRING:
case SbxSTRING:
@@ -272,7 +272,7 @@ void ImpPutByte( SbxValues* p, sal_uInt8 n )
break;
}
case SbxBYREF | SbxCHAR:
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
*p->pByte = n; break;
case SbxBYREF | SbxINTEGER:
diff --git a/basic/source/sbx/sbxchar.cxx b/basic/source/sbx/sbxchar.cxx
index b699246b44c5..6ab71a64524a 100644
--- a/basic/source/sbx/sbxchar.cxx
+++ b/basic/source/sbx/sbxchar.cxx
@@ -21,10 +21,10 @@
#include <basic/sbx.hxx>
#include "sbxconv.hxx"
-xub_Unicode ImpGetChar( const SbxValues* p )
+sal_Unicode ImpGetChar( const SbxValues* p )
{
SbxValues aTmp;
- xub_Unicode nRes = 0;
+ sal_Unicode nRes = 0;
start:
switch( +p->eType )
{
@@ -35,7 +35,7 @@ start:
case SbxCHAR:
nRes = p->nChar; break;
case SbxBYTE:
- nRes = (xub_Unicode) p->nByte;
+ nRes = (sal_Unicode) p->nByte;
break;
case SbxINTEGER:
case SbxBOOL:
@@ -44,11 +44,11 @@ start:
SbxBase::SetError( SbxERR_OVERFLOW ); nRes = SbxMINCHAR;
}
else
- nRes = (xub_Unicode) p->nInteger;
+ nRes = (sal_Unicode) p->nInteger;
break;
case SbxERROR:
case SbxUSHORT:
- nRes = (xub_Unicode) p->nUShort;
+ nRes = (sal_Unicode) p->nUShort;
break;
case SbxLONG:
if( p->nLong > SbxMAXCHAR )
@@ -60,7 +60,7 @@ start:
SbxBase::SetError( SbxERR_OVERFLOW ); nRes = SbxMINCHAR;
}
else
- nRes = (xub_Unicode) p->nLong;
+ nRes = (sal_Unicode) p->nLong;
break;
case SbxULONG:
if( p->nULong > SbxMAXCHAR )
@@ -68,7 +68,7 @@ start:
SbxBase::SetError( SbxERR_OVERFLOW ); nRes = SbxMAXCHAR;
}
else
- nRes = (xub_Unicode) p->nULong;
+ nRes = (sal_Unicode) p->nULong;
break;
case SbxCURRENCY:
case SbxSALINT64:
@@ -87,7 +87,7 @@ start:
SbxBase::SetError( SbxERR_OVERFLOW ); nRes = SbxMINCHAR;
}
else
- nRes = (xub_Unicode) val;
+ nRes = (sal_Unicode) val;
break;
}
case SbxSALUINT64:
@@ -96,7 +96,7 @@ start:
SbxBase::SetError( SbxERR_OVERFLOW ); nRes = SbxMAXCHAR;
}
else
- nRes = (xub_Unicode) p->uInt64;
+ nRes = (sal_Unicode) p->uInt64;
break;
case SbxSINGLE:
if( p->nSingle > SbxMAXCHAR )
@@ -108,7 +108,7 @@ start:
SbxBase::SetError( SbxERR_OVERFLOW ); nRes = SbxMINCHAR;
}
else
- nRes = (xub_Unicode) ImpRound( p->nSingle );
+ nRes = (sal_Unicode) ImpRound( p->nSingle );
break;
case SbxDATE:
case SbxDOUBLE:
@@ -155,7 +155,7 @@ start:
SbxBase::SetError( SbxERR_OVERFLOW ); nRes = SbxMINCHAR;
}
else
- nRes = (xub_Unicode) ImpRound( d );
+ nRes = (sal_Unicode) ImpRound( d );
}
break;
case SbxOBJECT:
@@ -205,7 +205,7 @@ start:
return nRes;
}
-void ImpPutChar( SbxValues* p, xub_Unicode n )
+void ImpPutChar( SbxValues* p, sal_Unicode n )
{
SbxValues aTmp;
start:
diff --git a/basic/source/sbx/sbxcoll.cxx b/basic/source/sbx/sbxcoll.cxx
index 968c791f2926..40b4a9fb2fd7 100644
--- a/basic/source/sbx/sbxcoll.cxx
+++ b/basic/source/sbx/sbxcoll.cxx
@@ -25,26 +25,26 @@
TYPEINIT1(SbxCollection,SbxObject)
TYPEINIT1(SbxStdCollection,SbxCollection)
-static const char* pCount;
-static const char* pAdd;
-static const char* pItem;
-static const char* pRemove;
+static OUString pCount;
+static OUString pAdd;
+static OUString pItem;
+static OUString pRemove;
static sal_uInt16 nCountHash = 0, nAddHash, nItemHash, nRemoveHash;
-SbxCollection::SbxCollection( const XubString& rClass )
+SbxCollection::SbxCollection( const OUString& rClass )
: SbxObject( rClass )
{
if( !nCountHash )
{
- pCount = GetSbxRes( STRING_COUNTPROP );
- pAdd = GetSbxRes( STRING_ADDMETH );
- pItem = GetSbxRes( STRING_ITEMMETH );
- pRemove = GetSbxRes( STRING_REMOVEMETH );
- nCountHash = MakeHashCode( rtl::OUString::createFromAscii( pCount ) );
- nAddHash = MakeHashCode( rtl::OUString::createFromAscii( pAdd ) );
- nItemHash = MakeHashCode( rtl::OUString::createFromAscii( pItem ) );
- nRemoveHash = MakeHashCode( rtl::OUString::createFromAscii( pRemove ) );
+ pCount = rtl::OUString::createFromAscii(GetSbxRes( STRING_COUNTPROP ));
+ pAdd = rtl::OUString::createFromAscii(GetSbxRes( STRING_ADDMETH ));
+ pItem = rtl::OUString::createFromAscii(GetSbxRes( STRING_ITEMMETH ));
+ pRemove = rtl::OUString::createFromAscii(GetSbxRes( STRING_REMOVEMETH ));
+ nCountHash = MakeHashCode( pCount );
+ nAddHash = MakeHashCode( pAdd );
+ nItemHash = MakeHashCode( pItem );
+ nRemoveHash = MakeHashCode( pRemove );
}
Initialize();
// For Access on itself
@@ -77,14 +77,14 @@ void SbxCollection::Initialize()
SetFlag( SBX_FIXED );
ResetFlag( SBX_WRITE );
SbxVariable* p;
- p = Make( rtl::OUString::createFromAscii( pCount ), SbxCLASS_PROPERTY, SbxINTEGER );
+ p = Make( pCount , SbxCLASS_PROPERTY, SbxINTEGER );
p->ResetFlag( SBX_WRITE );
p->SetFlag( SBX_DONTSTORE );
- p = Make( rtl::OUString::createFromAscii( pAdd ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( pAdd, SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
- p = Make( rtl::OUString::createFromAscii( pItem ), SbxCLASS_METHOD, SbxOBJECT );
+ p = Make( pItem , SbxCLASS_METHOD, SbxOBJECT );
p->SetFlag( SBX_DONTSTORE );
- p = Make( rtl::OUString::createFromAscii( pRemove ), SbxCLASS_METHOD, SbxEMPTY );
+ p = Make( pRemove, SbxCLASS_METHOD, SbxEMPTY );
p->SetFlag( SBX_DONTSTORE );
}
@@ -96,7 +96,9 @@ SbxVariable* SbxCollection::FindUserData( sal_uInt32 nData )
return pObj ? pObj->FindUserData( nData ) : NULL;
}
else
+ {
return SbxObject::FindUserData( nData );
+ }
}
SbxVariable* SbxCollection::Find( const rtl::OUString& rName, SbxClassType t )
@@ -107,7 +109,9 @@ SbxVariable* SbxCollection::Find( const rtl::OUString& rName, SbxClassType t )
return pObj ? pObj->Find( rName, t ) : NULL;
}
else
+ {
return SbxObject::Find( rName, t );
+ }
}
void SbxCollection::SFX_NOTIFY( SfxBroadcaster& rCst, const TypeId& rId1,
@@ -123,23 +127,35 @@ void SbxCollection::SFX_NOTIFY( SfxBroadcaster& rCst, const TypeId& rId1,
SbxArray* pArg = pVar->GetParameters();
if( bRead || bWrite )
{
- XubString aVarName( pVar->GetName() );
+ OUString aVarName( pVar->GetName() );
if( pVar == this )
+ {
CollItem( pArg );
+ }
else if( pVar->GetHashCode() == nCountHash
- && aVarName.EqualsIgnoreCaseAscii( pCount ) )
+ && aVarName.equalsIgnoreAsciiCase( pCount ) )
+ {
pVar->PutLong( pObjs->Count() );
+ }
else if( pVar->GetHashCode() == nAddHash
- && aVarName.EqualsIgnoreCaseAscii( pAdd ) )
+ && aVarName.equalsIgnoreAsciiCase( pAdd ) )
+ {
CollAdd( pArg );
+ }
else if( pVar->GetHashCode() == nItemHash
- && aVarName.EqualsIgnoreCaseAscii( pItem ) )
+ && aVarName.equalsIgnoreAsciiCase( pItem ) )
+ {
CollItem( pArg );
+ }
else if( pVar->GetHashCode() == nRemoveHash
- && aVarName.EqualsIgnoreCaseAscii( pRemove ) )
+ && aVarName.equalsIgnoreAsciiCase( pRemove ) )
+ {
CollRemove( pArg );
+ }
else
+ {
SbxObject::SFX_NOTIFY( rCst, rId1, rHint, rId2 );
+ }
return;
}
}
@@ -151,14 +167,20 @@ void SbxCollection::SFX_NOTIFY( SfxBroadcaster& rCst, const TypeId& rId1,
void SbxCollection::CollAdd( SbxArray* pPar_ )
{
if( pPar_->Count() != 2 )
+ {
SetError( SbxERR_WRONG_ARGS );
+ }
else
{
SbxBase* pObj = pPar_->Get( 1 )->GetObject();
if( !pObj || !( pObj->ISA(SbxObject) ) )
+ {
SetError( SbxERR_NOTIMP );
+ }
else
+ {
Insert( (SbxObject*) pObj );
+ }
}
}
@@ -167,21 +189,29 @@ void SbxCollection::CollAdd( SbxArray* pPar_ )
void SbxCollection::CollItem( SbxArray* pPar_ )
{
if( pPar_->Count() != 2 )
+ {
SetError( SbxERR_WRONG_ARGS );
+ }
else
{
SbxVariable* pRes = NULL;
SbxVariable* p = pPar_->Get( 1 );
if( p->GetType() == SbxSTRING )
- pRes = Find( p->GetString(), SbxCLASS_OBJECT );
+ {
+ pRes = Find( p->GetOUString(), SbxCLASS_OBJECT );
+ }
else
{
short n = p->GetInteger();
if( n >= 1 && n <= (short) pObjs->Count() )
+ {
pRes = pObjs->Get( (sal_uInt16) n - 1 );
+ }
}
if( !pRes )
+ {
SetError( SbxERR_BAD_INDEX );
+ }
pPar_->Get( 0 )->PutObject( pRes );
}
}
@@ -211,7 +241,7 @@ sal_Bool SbxCollection::LoadData( SvStream& rStrm, sal_uInt16 nVer )
SbxStdCollection::SbxStdCollection
- ( const XubString& rClass, const XubString& rElem, sal_Bool b )
+ ( const OUString& rClass, const OUString& rElem, sal_Bool b )
: SbxCollection( rClass ), aElemClass( rElem ),
bAddRemoveOk( b )
{}
@@ -225,10 +255,14 @@ SbxStdCollection& SbxStdCollection::operator=( const SbxStdCollection& r )
{
if( &r != this )
{
- if( !r.aElemClass.EqualsIgnoreCaseAscii( aElemClass ) )
+ if( !r.aElemClass.equalsIgnoreAsciiCase( aElemClass ) )
+ {
SetError( SbxERR_CONVERSION );
+ }
else
+ {
SbxCollection::operator=( r );
+ }
}
return *this;
}
diff --git a/basic/source/sbx/sbxdate.cxx b/basic/source/sbx/sbxdate.cxx
index f168437552bb..cc6aedc5cb04 100644
--- a/basic/source/sbx/sbxdate.cxx
+++ b/basic/source/sbx/sbxdate.cxx
@@ -31,143 +31,175 @@
double ImpGetDate( const SbxValues* p )
{
double nRes;
+ SbxValue* pVal;
+
switch( +p->eType )
{
- case SbxNULL:
- SbxBase::SetError( SbxERR_CONVERSION );
- case SbxEMPTY:
- nRes = 0; break;
- case SbxCHAR:
- nRes = p->nChar; break;
- case SbxBYTE:
- nRes = p->nByte; break;
- case SbxINTEGER:
- case SbxBOOL:
- nRes = p->nInteger; break;
- case SbxERROR:
- case SbxUSHORT:
- nRes = p->nUShort; break;
- case SbxLONG:
- nRes = (double) p->nLong; break;
- case SbxULONG:
- nRes = (double) p->nULong; break;
- case SbxSINGLE:
- nRes = p->nSingle; break;
- case SbxDATE:
- case SbxDOUBLE:
- nRes = p->nDouble; break;
- case SbxCURRENCY:
- nRes = ImpCurrencyToDouble( p->nInt64 ); break;
- case SbxSALINT64:
- nRes = static_cast< double >(p->nInt64); break;
- case SbxSALUINT64:
- nRes = ImpSalUInt64ToDouble( p->uInt64 ); break;
- case SbxDECIMAL:
- case SbxBYREF | SbxDECIMAL:
- if( p->pDecimal )
- p->pDecimal->getDouble( nRes );
- else
- nRes = 0.0;
- break;
- case SbxBYREF | SbxSTRING:
- case SbxSTRING:
- case SbxLPSTR:
- if( !p->pOUString )
- nRes = 0;
- else
- {
- LanguageType eLangType = GetpApp()->GetSettings().GetLanguage();
-
- SvNumberFormatter* pFormatter;
- com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >
- xFactory = comphelper::getProcessServiceFactory();
- pFormatter = new SvNumberFormatter( xFactory, eLangType );
+ case SbxNULL:
+ SbxBase::SetError( SbxERR_CONVERSION );
+ case SbxEMPTY:
+ nRes = 0;
+ break;
+ case SbxCHAR:
+ nRes = p->nChar;
+ break;
+ case SbxBYTE:
+ nRes = p->nByte;
+ break;
+ case SbxINTEGER:
+ case SbxBOOL:
+ nRes = p->nInteger;
+ break;
+ case SbxERROR:
+ case SbxUSHORT:
+ nRes = p->nUShort;
+ break;
+ case SbxLONG:
+ nRes = (double) p->nLong;
+ break;
+ case SbxULONG:
+ nRes = (double) p->nULong;
+ break;
+ case SbxSINGLE:
+ nRes = p->nSingle;
+ break;
+ case SbxDATE:
+ case SbxDOUBLE:
+ nRes = p->nDouble;
+ break;
+ case SbxCURRENCY:
+ nRes = ImpCurrencyToDouble( p->nInt64 );
+ break;
+ case SbxSALINT64:
+ nRes = static_cast< double >(p->nInt64);
+ break;
+ case SbxSALUINT64:
+ nRes = ImpSalUInt64ToDouble( p->uInt64 );
+ break;
+ case SbxDECIMAL:
+ case SbxBYREF | SbxDECIMAL:
+ if( p->pDecimal )
+ {
+ p->pDecimal->getDouble( nRes );
+ }
+ else
+ {
+ nRes = 0.0;
+ }
+ break;
+ case SbxBYREF | SbxSTRING:
+ case SbxSTRING:
+ case SbxLPSTR:
+ if( !p->pOUString )
+ {
+ nRes = 0;
+ }
+ else
+ {
+ LanguageType eLangType = GetpApp()->GetSettings().GetLanguage();
- sal_uInt32 nIndex;
- xub_StrLen nCheckPos = 0;
- short nType = 127;
+ SvNumberFormatter* pFormatter;
+ com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >
+ xFactory = comphelper::getProcessServiceFactory();
+ pFormatter = new SvNumberFormatter( xFactory, eLangType );
- // Default templates of the formatter have only two-digit
- // date. Therefore register an own format.
+ sal_uInt32 nIndex;
+ sal_uInt16 nCheckPos = 0;
+ short nType = 127;
- // HACK, because the number formatter in PutandConvertEntry replace the wildcard
- // for month, day, year not according to the configuration.
- // Problem: Print Year(Date) under Engl. OS
- // quod vide basic\source\runtime\runtime.cxx
+ // Default templates of the formatter have only two-digit
+ // date. Therefore register an own format.
- SvtSysLocale aSysLocale;
- DateFormat eDate = aSysLocale.GetLocaleData().getDateFormat();
- String aDateStr;
- switch( eDate )
- {
- case MDY: aDateStr.AssignAscii( "MM.TT.JJJJ" ); break;
- case DMY: aDateStr.AssignAscii( "TT.MM.JJJJ" ); break;
- case YMD: aDateStr.AssignAscii( "JJJJ.MM.TT" ); break;
- default: aDateStr.AssignAscii( "MM.TT.JJJJ" );
- }
+ // HACK, because the number formatter in PutandConvertEntry replace the wildcard
+ // for month, day, year not according to the configuration.
+ // Problem: Print Year(Date) under Engl. OS
+ // quod vide basic\source\runtime\runtime.cxx
- String aStr( aDateStr );
- aStr.AppendAscii( " HH:MM:SS" );
+ SvtSysLocale aSysLocale;
+ DateFormat eDate = aSysLocale.GetLocaleData().getDateFormat();
+ OUString aDateStr;
+ switch( eDate )
+ {
+ case MDY: aDateStr = "MM.TT.JJJJ"; break;
+ case DMY: aDateStr = "TT.MM.JJJJ"; break;
+ case YMD: aDateStr = "JJJJ.MM.TT"; break;
+ default: aDateStr = "MM.TT.JJJJ";
+ }
- pFormatter->PutandConvertEntry( aStr, nCheckPos, nType,
- nIndex, LANGUAGE_GERMAN, eLangType );
- sal_Bool bSuccess = pFormatter->IsNumberFormat( *p->pOUString, nIndex, nRes );
- if ( bSuccess )
- {
- short nType_ = pFormatter->GetType( nIndex );
- if(!(nType_ & ( NUMBERFORMAT_DATETIME | NUMBERFORMAT_DATE |
- NUMBERFORMAT_TIME | NUMBERFORMAT_DEFINED )))
- bSuccess = sal_False;
- }
+ OUString aStr( aDateStr );
+ aStr += " HH:MM:SS";
- if ( !bSuccess )
+ pFormatter->PutandConvertEntry( aStr, nCheckPos, nType,
+ nIndex, LANGUAGE_GERMAN, eLangType );
+ sal_Bool bSuccess = pFormatter->IsNumberFormat( *p->pOUString, nIndex, nRes );
+ if ( bSuccess )
+ {
+ short nType_ = pFormatter->GetType( nIndex );
+ if(!(nType_ & ( NUMBERFORMAT_DATETIME | NUMBERFORMAT_DATE |
+ NUMBERFORMAT_TIME | NUMBERFORMAT_DEFINED )))
{
- SbxBase::SetError( SbxERR_CONVERSION ); nRes = 0;
+ bSuccess = sal_False;
}
-
- delete pFormatter;
}
- break;
- case SbxOBJECT:
- {
- SbxValue* pVal = PTR_CAST(SbxValue,p->pObj);
- if( pVal )
- nRes = pVal->GetDate();
- else
+
+ if ( !bSuccess )
{
- SbxBase::SetError( SbxERR_NO_OBJECT ); nRes = 0;
+ SbxBase::SetError( SbxERR_CONVERSION ); nRes = 0;
}
- break;
- }
-
- case SbxBYREF | SbxCHAR:
- nRes = *p->pChar; break;
- case SbxBYREF | SbxBYTE:
- nRes = *p->pByte; break;
- case SbxBYREF | SbxINTEGER:
- case SbxBYREF | SbxBOOL:
- nRes = *p->pInteger; break;
- case SbxBYREF | SbxLONG:
- nRes = *p->pLong; break;
- case SbxBYREF | SbxULONG:
- nRes = *p->pULong; break;
- case SbxBYREF | SbxERROR:
- case SbxBYREF | SbxUSHORT:
- nRes = *p->pUShort; break;
- case SbxBYREF | SbxSINGLE:
- nRes = *p->pSingle; break;
- case SbxBYREF | SbxDATE:
- case SbxBYREF | SbxDOUBLE:
- nRes = *p->pDouble; break;
- case SbxBYREF | SbxCURRENCY:
- nRes = ImpCurrencyToDouble( *p->pnInt64 ); break;
- case SbxBYREF | SbxSALINT64:
- nRes = static_cast< double >(*p->pnInt64); break;
- case SbxBYREF | SbxSALUINT64:
- nRes = ImpSalUInt64ToDouble( *p->puInt64 ); break;
- default:
- SbxBase::SetError( SbxERR_CONVERSION ); nRes = 0;
+ delete pFormatter;
+ }
+ break;
+ case SbxOBJECT:
+ pVal = PTR_CAST(SbxValue,p->pObj);
+ if( pVal )
+ {
+ nRes = pVal->GetDate();
+ }
+ else
+ {
+ SbxBase::SetError( SbxERR_NO_OBJECT ); nRes = 0;
+ }
+ break;
+ case SbxBYREF | SbxCHAR:
+ nRes = *p->pChar;
+ break;
+ case SbxBYREF | SbxBYTE:
+ nRes = *p->pByte;
+ break;
+ case SbxBYREF | SbxINTEGER:
+ case SbxBYREF | SbxBOOL:
+ nRes = *p->pInteger;
+ break;
+ case SbxBYREF | SbxLONG:
+ nRes = *p->pLong;
+ break;
+ case SbxBYREF | SbxULONG:
+ nRes = *p->pULong;
+ break;
+ case SbxBYREF | SbxERROR:
+ case SbxBYREF | SbxUSHORT:
+ nRes = *p->pUShort;
+ break;
+ case SbxBYREF | SbxSINGLE:
+ nRes = *p->pSingle;
+ break;
+ case SbxBYREF | SbxDATE:
+ case SbxBYREF | SbxDOUBLE:
+ nRes = *p->pDouble;
+ break;
+ case SbxBYREF | SbxCURRENCY:
+ nRes = ImpCurrencyToDouble( *p->pnInt64 );
+ break;
+ case SbxBYREF | SbxSALINT64:
+ nRes = static_cast< double >(*p->pnInt64);
+ break;
+ case SbxBYREF | SbxSALUINT64:
+ nRes = ImpSalUInt64ToDouble( *p->puInt64 );
+ break;
+ default:
+ SbxBase::SetError( SbxERR_CONVERSION ); nRes = 0;
+ break;
}
return nRes;
}
@@ -175,54 +207,67 @@ double ImpGetDate( const SbxValues* p )
void ImpPutDate( SbxValues* p, double n )
{
SbxValues aTmp;
+ SbxDecimal* pDec;
+ SbxValue* pVal;
start:
switch( +p->eType )
{
- case SbxDATE:
- case SbxDOUBLE:
- p->nDouble = n; break;
-
+ case SbxDATE:
+ case SbxDOUBLE:
+ p->nDouble = n;
+ break;
// from here will be tested
- case SbxCHAR:
- aTmp.pChar = &p->nChar; goto direct;
- case SbxBYTE:
- aTmp.pByte = &p->nByte; goto direct;
- case SbxINTEGER:
- case SbxBOOL:
- aTmp.pInteger = &p->nInteger; goto direct;
- case SbxLONG:
- aTmp.pLong = &p->nLong; goto direct;
- case SbxULONG:
- aTmp.pULong = &p->nULong; goto direct;
- case SbxERROR:
- case SbxUSHORT:
- aTmp.pUShort = &p->nUShort; goto direct;
- case SbxSINGLE:
- aTmp.pSingle = &p->nSingle; goto direct;
- case SbxCURRENCY:
- case SbxSALINT64:
- aTmp.pnInt64 = &p->nInt64; goto direct;
- case SbxSALUINT64:
- aTmp.puInt64 = &p->uInt64; goto direct;
- case SbxDECIMAL:
- case SbxBYREF | SbxDECIMAL:
- {
- SbxDecimal* pDec = ImpCreateDecimal( p );
- if( !pDec->setDouble( n ) )
- SbxBase::SetError( SbxERR_OVERFLOW );
- break;
- }
- direct:
- aTmp.eType = SbxDataType( p->eType | SbxBYREF );
- p = &aTmp; goto start;
+ case SbxCHAR:
+ aTmp.pChar = &p->nChar;
+ goto direct;
+ case SbxBYTE:
+ aTmp.pByte = &p->nByte;
+ goto direct;
+ case SbxINTEGER:
+ case SbxBOOL:
+ aTmp.pInteger = &p->nInteger;
+ goto direct;
+ case SbxLONG:
+ aTmp.pLong = &p->nLong;
+ goto direct;
+ case SbxULONG:
+ aTmp.pULong = &p->nULong;
+ goto direct;
+ case SbxERROR:
+ case SbxUSHORT:
+ aTmp.pUShort = &p->nUShort;
+ goto direct;
+ case SbxSINGLE:
+ aTmp.pSingle = &p->nSingle;
+ goto direct;
+ case SbxCURRENCY:
+ case SbxSALINT64:
+ aTmp.pnInt64 = &p->nInt64;
+ goto direct;
+ case SbxSALUINT64:
+ aTmp.puInt64 = &p->uInt64;
+ goto direct;
+ case SbxDECIMAL:
+ case SbxBYREF | SbxDECIMAL:
+ pDec = ImpCreateDecimal( p );
+ if( !pDec->setDouble( n ) )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW );
+ }
+ break;
+ direct:
+ aTmp.eType = SbxDataType( p->eType | SbxBYREF );
+ p = &aTmp; goto start;
- case SbxBYREF | SbxSTRING:
- case SbxSTRING:
- case SbxLPSTR:
+ case SbxBYREF | SbxSTRING:
+ case SbxSTRING:
+ case SbxLPSTR:
{
if( !p->pOUString )
- p->pOUString = new ::rtl::OUString;
+ {
+ p->pOUString = new OUString;
+ }
Color* pColor;
LanguageType eLangType = GetpApp()->GetSettings().GetLanguage();
@@ -232,12 +277,12 @@ start:
pFormatter = new SvNumberFormatter( xFactory, eLangType );
sal_uInt32 nIndex;
- xub_StrLen nCheckPos = 0;
+ sal_uInt16 nCheckPos = 0;
short nType;
SvtSysLocale aSysLocale;
DateFormat eDate = aSysLocale.GetLocaleData().getDateFormat();
- String aStr;
+ OUString aStr;
// if the whole-number part is 0, we want no year!
if( n <= -1.0 || n >= 1.0 )
{
@@ -246,139 +291,153 @@ start:
{
switch( eDate )
{
- case MDY: aStr.AssignAscii( "MM.TT.JJJJ" ); break;
- case DMY: aStr.AssignAscii( "TT.MM.JJJJ" ); break;
- case YMD: aStr.AssignAscii( "JJJJ.MM.TT" ); break;
- default: aStr.AssignAscii( "MM.TT.JJJJ" );
+ case MDY: aStr = "MM.TT.JJJJ"; break;
+ case DMY: aStr = "TT.MM.JJJJ"; break;
+ case YMD: aStr = "JJJJ.MM.TT"; break;
+ default: aStr = "MM.TT.JJJJ";
}
}
else
{
switch( eDate )
{
- case MDY: aStr.AssignAscii( "MM.TT.JJJJ HH:MM:SS" ); break;
- case DMY: aStr.AssignAscii( "TT.MM.JJJJ HH:MM:SS" ); break;
- case YMD: aStr.AssignAscii( "JJJJ.MM.TT HH:MM:SS" ); break;
- default: aStr.AssignAscii( "MM.TT.JJJJ HH:MM:SS" );
+ case MDY: aStr = "MM.TT.JJJJ HH:MM:SS"; break;
+ case DMY: aStr = "TT.MM.JJJJ HH:MM:SS"; break;
+ case YMD: aStr = "JJJJ.MM.TT HH:MM:SS"; break;
+ default: aStr = "MM.TT.JJJJ HH:MM:SS";
}
}
}
else
- aStr.AppendAscii( "HH:MM:SS" );
-
+ {
+ aStr = "HH:MM:SS";
+ }
pFormatter->PutandConvertEntry( aStr,
- nCheckPos,
- nType,
- nIndex,
- LANGUAGE_GERMAN,
- eLangType );
- String aTmpString;
+ nCheckPos,
+ nType,
+ nIndex,
+ LANGUAGE_GERMAN,
+ eLangType );
+ OUString aTmpString;
pFormatter->GetOutputString( n, nIndex, aTmpString, &pColor );
*p->pOUString = aTmpString;
delete pFormatter;
break;
}
- case SbxOBJECT:
+ case SbxOBJECT:
+ pVal = PTR_CAST(SbxValue,p->pObj);
+ if( pVal )
{
- SbxValue* pVal = PTR_CAST(SbxValue,p->pObj);
- if( pVal )
- pVal->PutDate( n );
- else
- SbxBase::SetError( SbxERR_NO_OBJECT );
- break;
+ pVal->PutDate( n );
}
- case SbxBYREF | SbxCHAR:
- if( n > SbxMAXCHAR )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXCHAR;
- }
- else if( n < SbxMINCHAR )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCHAR;
- }
- *p->pChar = (xub_Unicode) n; break;
- case SbxBYREF | SbxBYTE:
- if( n > SbxMAXBYTE )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXBYTE;
- }
- else if( n < 0 )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = 0;
- }
- *p->pByte = (sal_uInt8) n; break;
- case SbxBYREF | SbxINTEGER:
- case SbxBYREF | SbxBOOL:
- if( n > SbxMAXINT )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXINT;
- }
- else if( n < SbxMININT )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMININT;
- }
- *p->pInteger = (sal_Int16) n; break;
- case SbxBYREF | SbxERROR:
- case SbxBYREF | SbxUSHORT:
- if( n > SbxMAXUINT )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXUINT;
- }
- else if( n < 0 )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = 0;
- }
- *p->pUShort = (sal_uInt16) n; break;
- case SbxBYREF | SbxLONG:
- if( n > SbxMAXLNG )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXLNG;
- }
- else if( n < SbxMINLNG )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINLNG;
- }
- *p->pLong = (sal_Int32) n; break;
- case SbxBYREF | SbxULONG:
- if( n > SbxMAXULNG )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXULNG;
- }
- else if( n < 0 )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = 0;
- }
- *p->pULong = (sal_uInt32) n; break;
- case SbxBYREF | SbxSINGLE:
- if( n > SbxMAXSNG )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXSNG;
- }
- else if( n < SbxMINSNG )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINSNG;
- }
- *p->pSingle = (float) n; break;
- case SbxBYREF | SbxSALINT64:
- *p->pnInt64 = ImpDoubleToSalInt64( n ); break;
- case SbxBYREF | SbxSALUINT64:
- *p->puInt64 = ImpDoubleToSalUInt64( n ); break;
- case SbxBYREF | SbxDATE:
- case SbxBYREF | SbxDOUBLE:
- *p->pDouble = (double) n; break;
- case SbxBYREF | SbxCURRENCY:
- if( n > SbxMAXCURR )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXCURR;
- }
- else if( n < SbxMINCURR )
- {
- SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCURR;
- }
- *p->pnInt64 = ImpDoubleToCurrency( n ); break;
-
- default:
- SbxBase::SetError( SbxERR_CONVERSION );
+ else
+ {
+ SbxBase::SetError( SbxERR_NO_OBJECT );
+ }
+ break;
+ case SbxBYREF | SbxCHAR:
+ if( n > SbxMAXCHAR )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXCHAR;
+ }
+ else if( n < SbxMINCHAR )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCHAR;
+ }
+ *p->pChar = (sal_Unicode) n;
+ break;
+ case SbxBYREF | SbxBYTE:
+ if( n > SbxMAXBYTE )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXBYTE;
+ }
+ else if( n < 0 )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = 0;
+ }
+ *p->pByte = (sal_uInt8) n;
+ break;
+ case SbxBYREF | SbxINTEGER:
+ case SbxBYREF | SbxBOOL:
+ if( n > SbxMAXINT )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXINT;
+ }
+ else if( n < SbxMININT )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMININT;
+ }
+ *p->pInteger = (sal_Int16) n;
+ break;
+ case SbxBYREF | SbxERROR:
+ case SbxBYREF | SbxUSHORT:
+ if( n > SbxMAXUINT )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXUINT;
+ }
+ else if( n < 0 )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = 0;
+ }
+ *p->pUShort = (sal_uInt16) n;
+ break;
+ case SbxBYREF | SbxLONG:
+ if( n > SbxMAXLNG )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXLNG;
+ }
+ else if( n < SbxMINLNG )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINLNG;
+ }
+ *p->pLong = (sal_Int32) n;
+ break;
+ case SbxBYREF | SbxULONG:
+ if( n > SbxMAXULNG )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXULNG;
+ }
+ else if( n < 0 )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = 0;
+ }
+ *p->pULong = (sal_uInt32) n;
+ break;
+ case SbxBYREF | SbxSINGLE:
+ if( n > SbxMAXSNG )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXSNG;
+ }
+ else if( n < SbxMINSNG )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINSNG;
+ }
+ *p->pSingle = (float) n;
+ break;
+ case SbxBYREF | SbxSALINT64:
+ *p->pnInt64 = ImpDoubleToSalInt64( n );
+ break;
+ case SbxBYREF | SbxSALUINT64:
+ *p->puInt64 = ImpDoubleToSalUInt64( n );
+ break;
+ case SbxBYREF | SbxDATE:
+ case SbxBYREF | SbxDOUBLE:
+ *p->pDouble = (double) n;
+ break;
+ case SbxBYREF | SbxCURRENCY:
+ if( n > SbxMAXCURR )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXCURR;
+ }
+ else if( n < SbxMINCURR )
+ {
+ SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCURR;
+ }
+ *p->pnInt64 = ImpDoubleToCurrency( n );
+ break;
+ default:
+ SbxBase::SetError( SbxERR_CONVERSION );
+ break;
}
}
diff --git a/basic/source/sbx/sbxdbl.cxx b/basic/source/sbx/sbxdbl.cxx
index 5fa87d437686..4add26a22a8a 100644
--- a/basic/source/sbx/sbxdbl.cxx
+++ b/basic/source/sbx/sbxdbl.cxx
@@ -215,7 +215,7 @@ start:
{
SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCHAR;
}
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
if( n > SbxMAXBYTE )
{
diff --git a/basic/source/sbx/sbxexec.cxx b/basic/source/sbx/sbxexec.cxx
index ef7952f97786..3eaaecf8b7c2 100644
--- a/basic/source/sbx/sbxexec.cxx
+++ b/basic/source/sbx/sbxexec.cxx
@@ -46,10 +46,10 @@ public:
static SbxVariable* Element
- ( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode** ppBuf,
+ ( SbxObject* pObj, SbxObject* pGbl, const sal_Unicode** ppBuf,
SbxClassType, const SbxSimpleCharClass& rCharClass );
-static const xub_Unicode* SkipWhitespace( const xub_Unicode* p )
+static const sal_Unicode* SkipWhitespace( const sal_Unicode* p )
{
while( *p && ( *p == ' ' || *p == '\t' ) )
p++;
@@ -59,7 +59,7 @@ static const xub_Unicode* SkipWhitespace( const xub_Unicode* p )
// Scanning of a symbol. The symbol were inserted in rSym, the return value
// is the new scan position. The symbol is at errors empty.
-static const xub_Unicode* Symbol( const xub_Unicode* p, XubString& rSym, const SbxSimpleCharClass& rCharClass )
+static const sal_Unicode* Symbol( const sal_Unicode* p, OUString& rSym, const SbxSimpleCharClass& rCharClass )
{
sal_uInt16 nLen = 0;
// Did we have a nonstandard symbol?
@@ -67,38 +67,46 @@ static const xub_Unicode* Symbol( const xub_Unicode* p, XubString& rSym, const S
{
rSym = ++p;
while( *p && *p != ']' )
+ {
p++, nLen++;
+ }
p++;
}
else
{
// A symbol had to begin with a alphabetic character or an underline
if( !rCharClass.isAlpha( *p ) && *p != '_' )
+ {
SbxBase::SetError( SbxERR_SYNTAX );
+ }
else
{
rSym = p;
// The it can contain alphabetic characters, numbers or underlines
while( *p && (rCharClass.isAlphaNumeric( *p ) || *p == '_') )
+ {
p++, nLen++;
+ }
// BASIC-Standard-Suffixes were ignored
if( *p && (*p == '%' || *p == '&' || *p == '!' || *p == '#' || *p == '$' ) )
+ {
p++;
+ }
}
}
- rSym.Erase( nLen );
+ rSym = rSym.copy( 0, nLen );
return p;
}
// Qualified name. Element.Element....
static SbxVariable* QualifiedName
- ( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode** ppBuf, SbxClassType t )
+ ( SbxObject* pObj, SbxObject* pGbl, const sal_Unicode** ppBuf, SbxClassType t )
{
static SbxSimpleCharClass aCharClass;
SbxVariableRef refVar;
- const xub_Unicode* p = SkipWhitespace( *ppBuf );
+ const sal_Unicode* p = SkipWhitespace( *ppBuf );
if( aCharClass.isAlpha( *p ) || *p == '_' || *p == '[' )
{
// Read in the element
@@ -131,44 +139,56 @@ static SbxVariable* QualifiedName
// a function (with optional parameters).
static SbxVariable* Operand
- ( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode** ppBuf, bool bVar )
+ ( SbxObject* pObj, SbxObject* pGbl, const sal_Unicode** ppBuf, bool bVar )
{
static SbxSimpleCharClass aCharClass;
SbxVariableRef refVar( new SbxVariable );
- const xub_Unicode* p = SkipWhitespace( *ppBuf );
+ const sal_Unicode* p = SkipWhitespace( *ppBuf );
if( !bVar && ( aCharClass.isDigit( *p )
- || ( *p == '.' && aCharClass.isDigit( *( p+1 ) ) )
- || *p == '-'
- || *p == '&' ) )
+ || ( *p == '.' && aCharClass.isDigit( *( p+1 ) ) )
+ || *p == '-'
+ || *p == '&' ) )
{
// A number could be scanned in directly!
sal_uInt16 nLen;
- if( !refVar->Scan( rtl::OUString( p ), &nLen ) )
+ if( !refVar->Scan( OUString( p ), &nLen ) )
+ {
refVar.Clear();
+ }
else
+ {
p += nLen;
+ }
}
else if( !bVar && *p == '"' )
{
// A string
- XubString aString;
+ OUString aString;
p++;
for( ;; )
{
// This is perhaps an error
if( !*p )
+ {
return NULL;
+ }
// Double quotes are OK
if( *p == '"' )
+ {
if( *++p != '"' )
+ {
break;
- aString += *p++;
+ }
+ }
+ aString += OUString(*p++);
}
refVar->PutString( aString );
}
else
+ {
refVar = QualifiedName( pObj, pGbl, &p, SbxCLASS_DONTCARE );
+ }
*ppBuf = p;
if( refVar.Is() )
refVar->AddRef();
@@ -178,14 +198,14 @@ static SbxVariable* Operand
// Read in of a simple term. The operands +, -, * and /
// are supported.
-static SbxVariable* MulDiv( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode** ppBuf )
+static SbxVariable* MulDiv( SbxObject* pObj, SbxObject* pGbl, const sal_Unicode** ppBuf )
{
- const xub_Unicode* p = *ppBuf;
+ const sal_Unicode* p = *ppBuf;
SbxVariableRef refVar( Operand( pObj, pGbl, &p, false ) );
p = SkipWhitespace( p );
while( refVar.Is() && ( *p == '*' || *p == '/' ) )
{
- xub_Unicode cOp = *p++;
+ sal_Unicode cOp = *p++;
SbxVariableRef refVar2( Operand( pObj, pGbl, &p, false ) );
if( refVar2.Is() )
{
@@ -210,14 +230,14 @@ static SbxVariable* MulDiv( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode*
return refVar;
}
-static SbxVariable* PlusMinus( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode** ppBuf )
+static SbxVariable* PlusMinus( SbxObject* pObj, SbxObject* pGbl, const sal_Unicode** ppBuf )
{
- const xub_Unicode* p = *ppBuf;
+ const sal_Unicode* p = *ppBuf;
SbxVariableRef refVar( MulDiv( pObj, pGbl, &p ) );
p = SkipWhitespace( p );
while( refVar.Is() && ( *p == '+' || *p == '-' ) )
{
- xub_Unicode cOp = *p++;
+ sal_Unicode cOp = *p++;
SbxVariableRef refVar2( MulDiv( pObj, pGbl, &p ) );
if( refVar2.Is() )
{
@@ -242,9 +262,9 @@ static SbxVariable* PlusMinus( SbxObject* pObj, SbxObject* pGbl, const xub_Unico
return refVar;
}
-static SbxVariable* Assign( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode** ppBuf )
+static SbxVariable* Assign( SbxObject* pObj, SbxObject* pGbl, const sal_Unicode** ppBuf )
{
- const xub_Unicode* p = *ppBuf;
+ const sal_Unicode* p = *ppBuf;
SbxVariableRef refVar( Operand( pObj, pGbl, &p, true ) );
p = SkipWhitespace( p );
if( refVar.Is() )
@@ -285,17 +305,19 @@ static SbxVariable* Assign( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode*
// specified object and the parameter list will be attached if necessary.
static SbxVariable* Element
- ( SbxObject* pObj, SbxObject* pGbl, const xub_Unicode** ppBuf,
+ ( SbxObject* pObj, SbxObject* pGbl, const sal_Unicode** ppBuf,
SbxClassType t, const SbxSimpleCharClass& rCharClass )
{
- XubString aSym;
- const xub_Unicode* p = Symbol( *ppBuf, aSym, rCharClass );
+ OUString aSym;
+ const sal_Unicode* p = Symbol( *ppBuf, aSym, rCharClass );
SbxVariableRef refVar;
- if( aSym.Len() )
+ if( !aSym.isEmpty() )
{
sal_uInt16 nOld = pObj->GetFlags();
if( pObj == pGbl )
+ {
pObj->SetFlag( SBX_GBLSEARCH );
+ }
refVar = pObj->Find( aSym, t );
pObj->SetFlags( nOld );
if( refVar.Is() )
@@ -348,22 +370,26 @@ static SbxVariable* Element
// Mainroutine
-SbxVariable* SbxObject::Execute( const XubString& rTxt )
+SbxVariable* SbxObject::Execute( const OUString& rTxt )
{
SbxVariable* pVar = NULL;
- const xub_Unicode* p = rTxt.GetBuffer();
+ const sal_Unicode* p = rTxt.getStr();
for( ;; )
{
p = SkipWhitespace( p );
if( !*p )
+ {
break;
+ }
if( *p++ != '[' )
{
SetError( SbxERR_SYNTAX ); break;
}
pVar = Assign( this, this, &p );
if( !pVar )
+ {
break;
+ }
p = SkipWhitespace( p );
if( *p++ != ']' )
{
@@ -373,17 +399,21 @@ SbxVariable* SbxObject::Execute( const XubString& rTxt )
return pVar;
}
-SbxVariable* SbxObject::FindQualified( const XubString& rName, SbxClassType t )
+SbxVariable* SbxObject::FindQualified( const OUString& rName, SbxClassType t )
{
SbxVariable* pVar = NULL;
- const xub_Unicode* p = rName.GetBuffer();
+ const sal_Unicode* p = rName.getStr();
p = SkipWhitespace( p );
if( !*p )
+ {
return NULL;;
+ }
pVar = QualifiedName( this, this, &p, t );
p = SkipWhitespace( p );
if( *p )
+ {
SetError( SbxERR_SYNTAX );
+ }
return pVar;
}
diff --git a/basic/source/sbx/sbxform.cxx b/basic/source/sbx/sbxform.cxx
index 29cd1a9f8573..0661861f4694 100644
--- a/basic/source/sbx/sbxform.cxx
+++ b/basic/source/sbx/sbxform.cxx
@@ -21,6 +21,7 @@
#include <stdlib.h>
#include <basic/sbxform.hxx>
+#include <rtl/ustrbuf.hxx>
/*
TODO: are there any Star-Basic characteristics unconsidered?
@@ -107,14 +108,14 @@ double get_number_of_digits( double dNumber )
//=================================================================
SbxBasicFormater::SbxBasicFormater( sal_Unicode _cDecPoint, sal_Unicode _cThousandSep,
- String _sOnStrg,
- String _sOffStrg,
- String _sYesStrg,
- String _sNoStrg,
- String _sTrueStrg,
- String _sFalseStrg,
- String _sCurrencyStrg,
- String _sCurrencyFormatStrg )
+ OUString _sOnStrg,
+ OUString _sOffStrg,
+ OUString _sYesStrg,
+ OUString _sNoStrg,
+ OUString _sTrueStrg,
+ OUString _sFalseStrg,
+ OUString _sCurrencyStrg,
+ OUString _sCurrencyFormatStrg )
{
cDecPoint = _cDecPoint;
cThousandSep = _cThousandSep;
@@ -133,46 +134,50 @@ SbxBasicFormater::SbxBasicFormater( sal_Unicode _cDecPoint, sal_Unicode _cThousa
// for one position to larger indexes, i. e. place for a new
// character (which is to be inserted) is created.
// ATTENTION: the string MUST be long enough!
-inline void SbxBasicFormater::ShiftString( String& sStrg, sal_uInt16 nStartPos )
+inline void SbxBasicFormater::ShiftString( OUStringBuffer& sStrg, sal_uInt16 nStartPos )
{
- sStrg.Erase( nStartPos,1 );
+ sStrg.remove(nStartPos,1);
}
-inline void SbxBasicFormater::StrAppendChar( String& sStrg, sal_Unicode ch )
-{
- sStrg.Insert( ch );
-}
-
-void SbxBasicFormater::AppendDigit( String& sStrg, short nDigit )
+void SbxBasicFormater::AppendDigit( OUStringBuffer& sStrg, short nDigit )
{
if( nDigit>=0 && nDigit<=9 )
- StrAppendChar( sStrg, (sal_Unicode)(nDigit+ASCII_0) );
+ {
+ sStrg.append((sal_Unicode)(nDigit+ASCII_0));
+ }
}
-void SbxBasicFormater::LeftShiftDecimalPoint( String& sStrg )
+void SbxBasicFormater::LeftShiftDecimalPoint( OUStringBuffer& sStrg )
{
- sal_uInt16 nPos = sStrg.Search( cDecPoint );
+ sal_Int32 nPos = -1;
- if( nPos!=STRING_NOTFOUND )
+ for(sal_Int32 i = 0; i < sStrg.getLength(); i++)
{
- // swap decimal point
- sStrg.SetChar( nPos, sStrg.GetChar( nPos - 1 ) );
- sStrg.SetChar( nPos-1, cDecPoint );
+ if(sStrg[i] == cDecPoint)
+ {
+ nPos = i;
+ break;
+ }
+ }
+ if( nPos >= 0 )
+ {
+ sStrg[nPos] = sStrg[nPos - 1];
+ sStrg[nPos - 1] = cDecPoint;
}
}
// returns a flag if rounding a 9
-void SbxBasicFormater::StrRoundDigit( String& sStrg, short nPos, sal_Bool& bOverflow )
+void SbxBasicFormater::StrRoundDigit( OUStringBuffer& sStrg, short nPos, sal_Bool& bOverflow )
{
if( nPos<0 )
+ {
return;
-
+ }
bOverflow = sal_False;
-
- sal_Unicode c = sStrg.GetChar( nPos );
- if( nPos>0 && (c == cDecPoint || c == cThousandSep) )
+ sal_Unicode c = sStrg[nPos];
+ if( nPos > 0 && (c == cDecPoint || c == cThousandSep) )
{
- StrRoundDigit( sStrg,nPos-1,bOverflow );
+ StrRoundDigit( sStrg, nPos - 1, bOverflow );
// CHANGE from 9.3.1997: end the method immediately after recursive call!
return;
}
@@ -182,52 +187,56 @@ void SbxBasicFormater::StrRoundDigit( String& sStrg, short nPos, sal_Bool& bOver
// in one piece, i. e. special characters should ONLY be in
// front OR behind the number and not right in the middle of
// the format information for the number
- while( nPos>=0 && (sStrg.GetChar( nPos )<ASCII_0 || sStrg.GetChar( nPos )>ASCII_9) )
+ while( nPos >= 0 && ( sStrg[nPos] < ASCII_0 || sStrg[nPos] > ASCII_9 ))
+ {
nPos--;
-
+ }
if( nPos==-1 )
{
- ShiftString( sStrg,0 );
- sStrg.SetChar( 0, '1' );
+ ShiftString( sStrg, 0 );
+ sStrg[0] = (sal_Unicode)'1';
bOverflow = sal_True;
}
else
{
- sal_Unicode c2 = sStrg.GetChar( nPos );
+ sal_Unicode c2 = sStrg[nPos];
if( c2 >= ASCII_0 && c2 <= ASCII_9 )
{
if( c2 == ASCII_9 )
{
- sStrg.SetChar( nPos, '0' );
- StrRoundDigit( sStrg,nPos-1,bOverflow );
+ sStrg[nPos] = (sal_Unicode)'0';
+ StrRoundDigit( sStrg, nPos - 1, bOverflow );
}
else
- sStrg.SetChar( nPos, c2+1 );
+ {
+ sStrg[nPos] = c2 + 1;
+ }
}
else
{
ShiftString( sStrg,nPos+1 );
- sStrg.SetChar( nPos+1, '1' );
+ sStrg[nPos + 1] = (sal_Unicode)'1';
bOverflow = sal_True;
}
}
}
-
-void SbxBasicFormater::StrRoundDigit( String& sStrg, short nPos )
+void SbxBasicFormater::StrRoundDigit( OUStringBuffer& sStrg, short nPos )
{
sal_Bool bOverflow;
- StrRoundDigit( sStrg,nPos,bOverflow );
+ StrRoundDigit( sStrg, nPos, bOverflow );
}
-void SbxBasicFormater::ParseBack( String& sStrg, const String& sFormatStrg,
+void SbxBasicFormater::ParseBack( OUStringBuffer& sStrg, const OUString& sFormatStrg,
short nFormatPos )
{
- for( short i=nFormatPos;
- i>0 && sFormatStrg.GetChar( i ) == '#' && sStrg.GetChar( (sStrg.Len()-1) ) == '0';
+ for( sal_Int32 i = nFormatPos;
+ i>0 && sFormatStrg[ i ] == (sal_Unicode)'#' && sStrg[sStrg.getLength() - 1] == (sal_Unicode)'0';
i-- )
- { sStrg.Erase( sStrg.Len()-1 ); }
+ {
+ sStrg.setLength(sStrg.getLength() - 1 );
+ }
}
#ifdef _with_sprintf
@@ -241,7 +250,7 @@ void SbxBasicFormater::InitScan( double _dNum )
InitExp( get_number_of_digits( dNum ) );
// maximum of 15 positions behind the decimal point, example: -1.234000000000000E-001
/*int nCount =*/ sprintf( sBuffer,"%+22.15lE",dNum );
- sSciNumStrg.AssignAscii( sBuffer );
+ sSciNumStrg = rtl::OUString::createFromAscii( sBuffer );
}
@@ -250,7 +259,7 @@ void SbxBasicFormater::InitExp( double _dNewExp )
char sBuffer[ MAX_DOUBLE_BUFFER_LENGTH ];
nNumExp = (short)_dNewExp;
/*int nCount =*/ sprintf( sBuffer,"%+i",nNumExp );
- sNumExpStrg.AssignAscii( sBuffer );
+ sNumExpStrg = rtl::OUString::createFromAscii( sBuffer );
nExpExp = (short)get_number_of_digits( (double)nNumExp );
}
@@ -262,7 +271,9 @@ short SbxBasicFormater::GetDigitAtPosScan( short nPos, sal_Bool& bFoundFirstDigi
// or to read a digit outside of the
// number's dissolution (double)
if( nPos>nNumExp || abs(nNumExp-nPos)>MAX_NO_OF_DIGITS )
+ {
return _NO_DIGIT;
+ }
// determine the index of the position in the number-string:
// skip the leading sign
sal_uInt16 no = 1;
@@ -273,7 +284,7 @@ short SbxBasicFormater::GetDigitAtPosScan( short nPos, sal_Bool& bFoundFirstDigi
// query of the number's first valid digit --> set flag
if( nPos==nNumExp )
bFoundFirstDigit = sal_True;
- return (short)(sSciNumStrg.GetChar( no ) - ASCII_0);
+ return (short)(sSciNumStrg[ no ] - ASCII_0);
}
short SbxBasicFormater::GetDigitAtPosExpScan( short nPos, sal_Bool& bFoundFirstDigit )
@@ -286,7 +297,7 @@ short SbxBasicFormater::GetDigitAtPosExpScan( short nPos, sal_Bool& bFoundFirstD
if( nPos==nExpExp )
bFoundFirstDigit = sal_True;
- return (short)(sNumExpStrg.GetChar( no ) - ASCII_0);
+ return (short)(sNumExpStrg[ no ] - ASCII_0);
}
// a value for the exponent can be given because the number maybe shall
@@ -365,108 +376,115 @@ short SbxBasicFormater::RoundDigit( double dNumber )
// Copies the respective part of the format-string, if existing, and returns it.
// So a new string is created, which has to be freed by the caller later.
-String SbxBasicFormater::GetPosFormatString( const String& sFormatStrg, sal_Bool & bFound )
+OUString SbxBasicFormater::GetPosFormatString( const OUString& sFormatStrg, sal_Bool & bFound )
{
bFound = sal_False; // default...
- sal_uInt16 nPos = sFormatStrg.Search( FORMAT_SEPARATOR );
+ sal_Int32 nPos = sFormatStrg.indexOf( FORMAT_SEPARATOR );
- if( nPos!=STRING_NOTFOUND )
+ if( nPos >= 0 )
{
bFound = sal_True;
// the format-string for positive numbers is
// everything before the first ';'
- return sFormatStrg.Copy( 0,nPos );
+ return sFormatStrg.copy( 0,nPos );
}
- String aRetStr;
- aRetStr.AssignAscii( EMPTYFORMATSTRING );
+ OUString aRetStr;
+ aRetStr = rtl::OUString::createFromAscii( EMPTYFORMATSTRING );
return aRetStr;
}
// see also GetPosFormatString()
-String SbxBasicFormater::GetNegFormatString( const String& sFormatStrg, sal_Bool & bFound )
+OUString SbxBasicFormater::GetNegFormatString( const OUString& sFormatStrg, sal_Bool & bFound )
{
bFound = sal_False; // default...
- sal_uInt16 nPos = sFormatStrg.Search( FORMAT_SEPARATOR );
+ sal_Int32 nPos = sFormatStrg.indexOf( FORMAT_SEPARATOR );
- if( nPos!=STRING_NOTFOUND )
+ if( nPos >= 0)
{
// the format-string for negative numbers is
// everything between the first and the second ';'
- String sTempStrg = sFormatStrg.Copy( nPos+1 );
- nPos = sTempStrg.Search( FORMAT_SEPARATOR );
+ OUString sTempStrg = sFormatStrg.copy( nPos+1 );
+ nPos = sTempStrg.indexOf( FORMAT_SEPARATOR );
bFound = sal_True;
- if( nPos==STRING_NOTFOUND )
+ if( nPos < 0 )
+ {
return sTempStrg;
+ }
else
- return sTempStrg.Copy( 0,nPos );
+ {
+ return sTempStrg.copy( 0,nPos );
+ }
}
- String aRetStr;
- aRetStr.AssignAscii( EMPTYFORMATSTRING );
+ OUString aRetStr;
+ aRetStr = rtl::OUString::createFromAscii( EMPTYFORMATSTRING );
return aRetStr;
}
// see also GetPosFormatString()
-String SbxBasicFormater::Get0FormatString( const String& sFormatStrg, sal_Bool & bFound )
+OUString SbxBasicFormater::Get0FormatString( const OUString& sFormatStrg, sal_Bool & bFound )
{
bFound = sal_False; // default...
- sal_uInt16 nPos = sFormatStrg.Search( FORMAT_SEPARATOR );
+ sal_Int32 nPos = sFormatStrg.indexOf( FORMAT_SEPARATOR );
- if( nPos!=STRING_NOTFOUND )
+ if( nPos >= 0 )
{
// the format string for the zero is
// everything after the second ';'
- String sTempStrg = sFormatStrg.Copy( nPos+1 );
- nPos = sTempStrg.Search( FORMAT_SEPARATOR );
- if( nPos!=STRING_NOTFOUND )
+ OUString sTempStrg = sFormatStrg.copy( nPos+1 );
+ nPos = sTempStrg.indexOf( FORMAT_SEPARATOR );
+ if( nPos >= 0 )
{
bFound = sal_True;
- sTempStrg = sTempStrg.Copy( nPos+1 );
- nPos = sTempStrg.Search( FORMAT_SEPARATOR );
- if( nPos==STRING_NOTFOUND )
+ sTempStrg = sTempStrg.copy( nPos+1 );
+ nPos = sTempStrg.indexOf( FORMAT_SEPARATOR );
+ if( nPos < 0 )
+ {
return sTempStrg;
+ }
else
- return sTempStrg.Copy( 0,nPos );
+ {
+ return sTempStrg.copy( 0,nPos );
+ }
}
}
- String aRetStr;
- aRetStr.AssignAscii( EMPTYFORMATSTRING );
+ OUString aRetStr;
+ aRetStr = rtl::OUString::createFromAscii( EMPTYFORMATSTRING );
return aRetStr;
}
// see also GetPosFormatString()
-String SbxBasicFormater::GetNullFormatString( const String& sFormatStrg, sal_Bool & bFound )
+OUString SbxBasicFormater::GetNullFormatString( const OUString& sFormatStrg, sal_Bool & bFound )
{
bFound = sal_False; // default...
- sal_uInt16 nPos = sFormatStrg.Search( FORMAT_SEPARATOR );
+ sal_Int32 nPos = sFormatStrg.indexOf( FORMAT_SEPARATOR );
- if( nPos!=STRING_NOTFOUND )
+ if( nPos >= 0 )
{
// the format-string for the Null is
// everything after the third ';'
- String sTempStrg = sFormatStrg.Copy( nPos+1 );
- nPos = sTempStrg.Search( FORMAT_SEPARATOR );
- if( nPos!=STRING_NOTFOUND )
+ OUString sTempStrg = sFormatStrg.copy( nPos+1 );
+ nPos = sTempStrg.indexOf( FORMAT_SEPARATOR );
+ if( nPos >= 0 )
{
- sTempStrg = sTempStrg.Copy( nPos+1 );
- nPos = sTempStrg.Search( FORMAT_SEPARATOR );
- if( nPos!=STRING_NOTFOUND )
+ sTempStrg = sTempStrg.copy( nPos+1 );
+ nPos = sTempStrg.indexOf( FORMAT_SEPARATOR );
+ if( nPos >= 0 )
{
bFound = sal_True;
- return sTempStrg.Copy( nPos+1 );
+ return sTempStrg.copy( nPos+1 );
}
}
}
- String aRetStr;
- aRetStr.AssignAscii( EMPTYFORMATSTRING );
+ OUString aRetStr;
+ aRetStr = rtl::OUString::createFromAscii( EMPTYFORMATSTRING );
return aRetStr;
}
-
// returns value <> 0 in case of an error
-short SbxBasicFormater::AnalyseFormatString( const String& sFormatStrg,
+short SbxBasicFormater::AnalyseFormatString( const OUString& sFormatStrg,
short& nNoOfDigitsLeft, short& nNoOfDigitsRight,
short& nNoOfOptionalDigitsLeft,
short& nNoOfExponentDigits, short& nNoOfOptionalExponentDigits,
@@ -474,10 +492,10 @@ short SbxBasicFormater::AnalyseFormatString( const String& sFormatStrg,
sal_Bool& bGenerateThousandSeparator,
short& nMultipleThousandSeparators )
{
- sal_uInt16 nLen;
+ sal_Int32 nLen;
short nState = 0;
- nLen = sFormatStrg.Len();
+ nLen = sFormatStrg.getLength();
nNoOfDigitsLeft = 0;
nNoOfDigitsRight = 0;
nNoOfOptionalDigitsLeft = 0;
@@ -488,81 +506,93 @@ short SbxBasicFormater::AnalyseFormatString( const String& sFormatStrg,
bScientific = sal_False;
// from 11.7.97: as soon as a comma (point?) is found in the format string,
// all three decimal powers are marked (i. e. thousand, million, ...)
- bGenerateThousandSeparator = sFormatStrg.Search( ',' ) != STRING_NOTFOUND;
+ bGenerateThousandSeparator = sFormatStrg.indexOf( ',' ) >= 0;
nMultipleThousandSeparators = 0;
- for( sal_uInt16 i=0; i<nLen; i++ )
+ for( sal_Int32 i = 0; i < nLen; i++ )
{
- sal_Unicode c = sFormatStrg.GetChar( i );
- switch( c ) {
- case '#':
- case '0':
- if( nState==0 )
- {
- nNoOfDigitsLeft++;
+ sal_Unicode c = sFormatStrg[ i ];
+ switch( c )
+ {
+ case '#':
+ case '0':
+ if( nState==0 )
+ {
+ nNoOfDigitsLeft++;
// TODO here maybe better error inspection of the mantissa for valid syntax (see grammar)h
- // ATTENTION: 'undefined' behaviour if # and 0 are combined!
- // REMARK: #-placeholders are actually useless for
- // scientific display before the decimal point!
- if( c=='#' )
- nNoOfOptionalDigitsLeft++;
- }
- else if( nState==1 )
- nNoOfDigitsRight++;
- else if( nState==-1 ) // search 0 in the exponent
+ // ATTENTION: 'undefined' behaviour if # and 0 are combined!
+ // REMARK: #-placeholders are actually useless for
+ // scientific display before the decimal point!
+ if( c=='#' )
{
- if( c=='#' ) // # switches on the condition
- {
- nNoOfOptionalExponentDigits++;
- nState = -2;
- }
- nNoOfExponentDigits++;
+ nNoOfOptionalDigitsLeft++;
}
- else if( nState==-2 ) // search # in the exponent
+ }
+ else if( nState==1 )
+ {
+ nNoOfDigitsRight++;
+ }
+ else if( nState==-1 ) // search 0 in the exponent
+ {
+ if( c=='#' ) // # switches on the condition
{
- if( c=='0' )
- // ERROR: 0 after # in the exponent is NOT allowed!!
- return -4;
nNoOfOptionalExponentDigits++;
- nNoOfExponentDigits++;
+ nState = -2;
}
- break;
- case '.':
- nState++;
- if( nState>1 )
- return -1; // ERROR: too many decimal points
- break;
- case '%':
- bPercent = sal_True;
- break;
- case '(':
- bCurrency = sal_True;
- break;
- case ',':
+ nNoOfExponentDigits++;
+ }
+ else if( nState==-2 ) // search # in the exponent
+ {
+ if( c=='0' )
+ {
+ // ERROR: 0 after # in the exponent is NOT allowed!!
+ return -4;
+ }
+ nNoOfOptionalExponentDigits++;
+ nNoOfExponentDigits++;
+ }
+ break;
+ case '.':
+ nState++;
+ if( nState>1 )
+ {
+ return -1; // ERROR: too many decimal points
+ }
+ break;
+ case '%':
+ bPercent = sal_True;
+ break;
+ case '(':
+ bCurrency = sal_True;
+ break;
+ case ',':
{
- sal_Unicode ch = sFormatStrg.GetChar( i+1 );
+ sal_Unicode ch = sFormatStrg[ i+1 ];
if( ch!=0 && (ch==',' || ch=='.') )
- nMultipleThousandSeparators++;
- } break;
- case 'e':
- case 'E':
- // #i13821 not when no digits before
- if( nNoOfDigitsLeft > 0 || nNoOfDigitsRight > 0 )
{
- nState = -1; // abort counting digits
- bScientific = sal_True;
+ nMultipleThousandSeparators++;
}
- break;
+ }
+ break;
+ case 'e':
+ case 'E':
+ // #i13821 not when no digits before
+ if( nNoOfDigitsLeft > 0 || nNoOfDigitsRight > 0 )
+ {
+ nState = -1; // abort counting digits
+ bScientific = sal_True;
+ }
+ break;
// OWN command-character which turns on
// the creation of thousand-separators
- case '\\':
- // Ignore next char
- i++;
- break;
- case CREATE_1000SEP_CHAR:
- bGenerateThousandSeparator = sal_True;
- break;
+ case '\\':
+ // Ignore next char
+ i++;
+ break;
+ case CREATE_1000SEP_CHAR:
+ bGenerateThousandSeparator = sal_True;
+ break;
}
}
return 0;
@@ -571,15 +601,15 @@ short SbxBasicFormater::AnalyseFormatString( const String& sFormatStrg,
// the flag bCreateSign says that at the mantissa a leading sign
// shall be created
void SbxBasicFormater::ScanFormatString( double dNumber,
- const String& sFormatStrg, String& sReturnStrg,
- sal_Bool bCreateSign )
+ const OUString& sFormatStrg, OUString& sReturnStrgFinal,
+ sal_Bool bCreateSign )
{
short /*nErr,*/nNoOfDigitsLeft,nNoOfDigitsRight,nNoOfOptionalDigitsLeft,
- nNoOfExponentDigits,nNoOfOptionalExponentDigits,
- nMultipleThousandSeparators;
+ nNoOfExponentDigits,nNoOfOptionalExponentDigits,
+ nMultipleThousandSeparators;
sal_Bool bPercent,bCurrency,bScientific,bGenerateThousandSeparator;
- sReturnStrg = String();
+ OUStringBuffer sReturnStrg = OUStringBuffer();
// analyse the format-string, i. e. determine the following values:
/*
@@ -598,356 +628,411 @@ void SbxBasicFormater::ScanFormatString( double dNumber,
- other errors? multiple decimal points, E's, etc.
--> errors are simply ignored at the moment
*/
- AnalyseFormatString( sFormatStrg,nNoOfDigitsLeft,nNoOfDigitsRight,
- nNoOfOptionalDigitsLeft,nNoOfExponentDigits,
- nNoOfOptionalExponentDigits,
- bPercent,bCurrency,bScientific,bGenerateThousandSeparator,
- nMultipleThousandSeparators );
- // special handling for special characters
- if( bPercent )
- dNumber *= 100.0;
+ AnalyseFormatString( sFormatStrg, nNoOfDigitsLeft, nNoOfDigitsRight,
+ nNoOfOptionalDigitsLeft, nNoOfExponentDigits,
+ nNoOfOptionalExponentDigits,
+ bPercent, bCurrency, bScientific,
+ bGenerateThousandSeparator, nMultipleThousandSeparators );
+ // special handling for special characters
+ if( bPercent )
+ {
+ dNumber *= 100.0;
+ }
// TODO: this condition (,, or ,.) is NOT Visual-Basic compatible!
// Question: shall this stay here (requirements)?
- if( nMultipleThousandSeparators )
- dNumber /= 1000.0;
-
- double dExponent;
- short i,nLen;
- short nState,nDigitPos,nExponentPos,nMaxDigit,nMaxExponentDigit;
- sal_Bool bFirstDigit,bFirstExponentDigit,bFoundFirstDigit,
- bIsNegative,bZeroSpaceOn, bSignHappend,bDigitPosNegative;
-
- bSignHappend = sal_False;
- bFoundFirstDigit = sal_False;
- bIsNegative = dNumber<0.0;
- nLen = sFormatStrg.Len();
- dExponent = get_number_of_digits( dNumber );
- nExponentPos = 0;
- nMaxExponentDigit = 0;
- nMaxDigit = (short)dExponent;
- bDigitPosNegative = false;
- if( bScientific )
+ if( nMultipleThousandSeparators )
+ {
+ dNumber /= 1000.0;
+ }
+ double dExponent;
+ short i,nLen;
+ short nState,nDigitPos,nExponentPos,nMaxDigit,nMaxExponentDigit;
+ sal_Bool bFirstDigit,bFirstExponentDigit,bFoundFirstDigit,
+ bIsNegative,bZeroSpaceOn, bSignHappend,bDigitPosNegative;
+
+ bSignHappend = sal_False;
+ bFoundFirstDigit = sal_False;
+ bIsNegative = dNumber < 0.0;
+ nLen = sFormatStrg.getLength();
+ dExponent = get_number_of_digits( dNumber );
+ nExponentPos = 0;
+ nMaxExponentDigit = 0;
+ nMaxDigit = (short)dExponent;
+ bDigitPosNegative = false;
+ if( bScientific )
+ {
+ dExponent = dExponent - (double)(nNoOfDigitsLeft-1);
+ nDigitPos = nMaxDigit;
+ nMaxExponentDigit = (short)get_number_of_digits( dExponent );
+ nExponentPos = nNoOfExponentDigits - 1 - nNoOfOptionalExponentDigits;
+ }
+ else
+ {
+ nDigitPos = nNoOfDigitsLeft - 1; // counting starts at 0, 10^0
+ // no exponent-data is needed here!
+ bDigitPosNegative = (nDigitPos < 0);
+ }
+ bFirstDigit = sal_True;
+ bFirstExponentDigit = sal_True;
+ nState = 0; // 0 --> mantissa; 1 --> exponent
+ bZeroSpaceOn = 0;
+
+
+#ifdef _with_sprintf
+ InitScan( dNumber );
+#endif
+ // scanning the format-string:
+ sal_Unicode cForce = 0;
+ for( i = 0; i < nLen; i++ )
+ {
+ sal_Unicode c;
+ if( cForce )
{
- dExponent = dExponent - (double)(nNoOfDigitsLeft-1);
- nDigitPos = nMaxDigit;
- nMaxExponentDigit = (short)get_number_of_digits( dExponent );
- nExponentPos = nNoOfExponentDigits-1 - nNoOfOptionalExponentDigits;
+ c = cForce;
+ cForce = 0;
}
else
{
- nDigitPos = nNoOfDigitsLeft-1; // counting starts at 0, 10^0
- // no exponent-data is needed here!
- bDigitPosNegative = (nDigitPos < 0);
+ c = sFormatStrg[ i ];
}
- bFirstDigit = sal_True;
- bFirstExponentDigit = sal_True;
- nState = 0; // 0 --> mantissa; 1 --> exponent
- bZeroSpaceOn = 0;
-
-
-#ifdef _with_sprintf
- InitScan( dNumber );
-#endif
- // scanning the format-string:
- sal_Unicode cForce = 0;
- for( i=0; i<nLen; i++ )
+ switch( c )
{
- sal_Unicode c;
- if( cForce )
+ case '0':
+ case '#':
+ if( nState==0 )
{
- c = cForce;
- cForce = 0;
- }
- else
- {
- c = sFormatStrg.GetChar( i );
- }
- switch( c ) {
- case '0':
- case '#':
- if( nState==0 )
+ // handling of the mantissa
+ if( bFirstDigit )
+ {
+ // remark: at bCurrency the negative
+ // leading sign shall be shown with ()
+ if( bIsNegative && !bCreateSign && !bSignHappend )
+ {
+ bSignHappend = sal_True;
+ sReturnStrg.append('-');
+ }
+ // output redundant positions, i. e. those which
+ // are undocumented by the format-string
+ if( nMaxDigit > nDigitPos )
{
- // handling of the mantissa
- if( bFirstDigit )
+ for( short j = nMaxDigit; j > nDigitPos; j-- )
{
- // remark: at bCurrency the negative
- // leading sign shall be shown with ()
- if( bIsNegative && !bCreateSign && !bSignHappend )
- {
- bSignHappend = sal_True;
- StrAppendChar( sReturnStrg,'-' );
- }
- // output redundant positions, i. e. those which
- // are undocumented by the format-string
- if( nMaxDigit>nDigitPos )
- {
- for( short j=nMaxDigit; j>nDigitPos; j-- )
- {
- short nTempDigit;
+ short nTempDigit;
#ifdef _with_sprintf
- AppendDigit( sReturnStrg,nTempDigit = GetDigitAtPosScan( j,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg, nTempDigit = GetDigitAtPosScan( j, bFoundFirstDigit ) );
#else
- AppendDigit( sReturnStrg,nTempDigit = GetDigitAtPos( dNumber,j,dNumber,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg, nTempDigit = GetDigitAtPos( dNumber, j, dNumber, bFoundFirstDigit ) );
#endif
-
- if( nTempDigit!=_NO_DIGIT )
- bFirstDigit = sal_False;
-
- if( bGenerateThousandSeparator && ( c=='0' || nMaxDigit>=nDigitPos ) && j>0 && (j % 3 == 0) )
- StrAppendChar( sReturnStrg,cThousandSep );
- }
+ if( nTempDigit!=_NO_DIGIT )
+ {
+ bFirstDigit = sal_False;
+ }
+ if( bGenerateThousandSeparator && ( c=='0' || nMaxDigit >= nDigitPos ) && j > 0 && (j % 3 == 0) )
+ {
+ sReturnStrg.append(cThousandSep );
}
}
+ }
+ }
- if( nMaxDigit<nDigitPos && ( c=='0' || bZeroSpaceOn ) )
- {
- AppendDigit( sReturnStrg,0 );
-
- bFirstDigit = sal_False;
- bZeroSpaceOn = 1;
- // Remark: in Visual-Basic the first 0 turns on the 0 for
- // all the following # (up to the decimal point),
- // this behaviour is simulated here with the flag.
-
- if( bGenerateThousandSeparator && ( c=='0' || nMaxDigit>=nDigitPos ) && nDigitPos>0 && (nDigitPos % 3 == 0) )
- StrAppendChar( sReturnStrg,cThousandSep );
- }
- else
- {
- short nTempDigit;
+ if( nMaxDigit<nDigitPos && ( c=='0' || bZeroSpaceOn ) )
+ {
+ AppendDigit( sReturnStrg, 0 );
+ bFirstDigit = sal_False;
+ bZeroSpaceOn = 1;
+ // Remark: in Visual-Basic the first 0 turns on the 0 for
+ // all the following # (up to the decimal point),
+ // this behaviour is simulated here with the flag.
+ if( bGenerateThousandSeparator && ( c=='0' || nMaxDigit >= nDigitPos ) && nDigitPos > 0 && (nDigitPos % 3 == 0) )
+ {
+ sReturnStrg.append(cThousandSep);
+ }
+ }
+ else
+ {
+ short nTempDigit;
#ifdef _with_sprintf
- AppendDigit( sReturnStrg,nTempDigit = GetDigitAtPosScan( nDigitPos,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg, nTempDigit = GetDigitAtPosScan( nDigitPos, bFoundFirstDigit ) );
#else
- AppendDigit( sReturnStrg,nTempDigit = GetDigitAtPos( dNumber,nDigitPos,dNumber,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg, nTempDigit = GetDigitAtPos( dNumber, nDigitPos, dNumber, bFoundFirstDigit ) );
#endif
- if( nTempDigit!=_NO_DIGIT )
- bFirstDigit = sal_False;
-
- if( bGenerateThousandSeparator && ( c=='0' || nMaxDigit>=nDigitPos ) && nDigitPos>0 && (nDigitPos % 3 == 0) )
- StrAppendChar( sReturnStrg,cThousandSep );
- }
-
- nDigitPos--;
+ if( nTempDigit != _NO_DIGIT )
+ {
+ bFirstDigit = sal_False;
}
- else
+ if( bGenerateThousandSeparator && ( c=='0' || nMaxDigit>=nDigitPos ) && nDigitPos>0 && (nDigitPos % 3 == 0) )
{
- // handling the exponent
- if( bFirstExponentDigit )
+ sReturnStrg.append(cThousandSep);
+ }
+ }
+ nDigitPos--;
+ }
+ else
+ {
+ // handling the exponent
+ if( bFirstExponentDigit )
+ {
+ // leading sign has been given out at e/E already
+ bFirstExponentDigit = sal_False;
+ if( nMaxExponentDigit > nExponentPos )
+ // output redundant positions, i. e. those which
+ // are undocumented by the format-string
+ {
+ for( short j = nMaxExponentDigit; j > nExponentPos; j-- )
{
- // leading sign has been given out at e/E already
- bFirstExponentDigit = sal_False;
- if( nMaxExponentDigit>nExponentPos )
- // output redundant positions, i. e. those which
- // are undocumented by the format-string
- {
- for( short j=nMaxExponentDigit; j>nExponentPos; j-- )
- {
#ifdef _with_sprintf
- AppendDigit( sReturnStrg,GetDigitAtPosExpScan( dExponent,j,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg, GetDigitAtPosExpScan( dExponent, j, bFoundFirstDigit ) );
#else
- AppendDigit( sReturnStrg,GetDigitAtPos( dExponent,j,dExponent,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg,GetDigitAtPos( dExponent, j, dExponent, bFoundFirstDigit ) );
#endif
- }
- }
}
+ }
+ }
- if( nMaxExponentDigit<nExponentPos && c=='0' )
- AppendDigit( sReturnStrg,0 );
- else
+ if( nMaxExponentDigit < nExponentPos && c=='0' )
+ {
+ AppendDigit( sReturnStrg, 0 );
+ }
+ else
+ {
#ifdef _with_sprintf
- AppendDigit( sReturnStrg,GetDigitAtPosExpScan( dExponent,nExponentPos,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg, GetDigitAtPosExpScan( dExponent, nExponentPos, bFoundFirstDigit ) );
#else
- AppendDigit( sReturnStrg,GetDigitAtPos( dExponent,nExponentPos,dExponent,bFoundFirstDigit ) );
+ AppendDigit( sReturnStrg, GetDigitAtPos( dExponent, nExponentPos, dExponent, bFoundFirstDigit ) );
#endif
- nExponentPos--;
- }
- break;
- case '.':
- if( bDigitPosNegative ) // #i13821: If no digits before .
- {
- bDigitPosNegative = false;
- nDigitPos = 0;
- cForce = '#';
- i-=2;
- break;
- }
- StrAppendChar( sReturnStrg,cDecPoint );
- break;
- case '%':
- // maybe remove redundant 0s, e. g. 4.500e4 in 0.0##e-00
- ParseBack( sReturnStrg,sFormatStrg,i-1 );
- sReturnStrg.Insert('%');
- break;
- case 'e':
- case 'E':
- // does mantissa have to be rounded, before the exponent is displayed?
- {
- // is there a mantissa at all?
- if( bFirstDigit )
- {
- // apparently not, i. e. invalid format string, e. g. E000.00
- // so ignore these e and E characters
- // maybe output an error (like in Visual Basic)?
+ }
+ nExponentPos--;
+ }
+ break;
+ case '.':
+ if( bDigitPosNegative ) // #i13821: If no digits before .
+ {
+ bDigitPosNegative = false;
+ nDigitPos = 0;
+ cForce = '#';
+ i-=2;
+ break;
+ }
+ sReturnStrg.append(cDecPoint);
+ break;
+ case '%':
+ // maybe remove redundant 0s, e. g. 4.500e4 in 0.0##e-00
+ ParseBack( sReturnStrg, sFormatStrg, i-1 );
+ sReturnStrg.insert(0,'%');
+ break;
+ case 'e':
+ case 'E':
+ // does mantissa have to be rounded, before the exponent is displayed?
+ {
+ // is there a mantissa at all?
+ if( bFirstDigit )
+ {
+ // apparently not, i. e. invalid format string, e. g. E000.00
+ // so ignore these e and E characters
+ // maybe output an error (like in Visual Basic)?
- // #i13821: VB 6 behaviour
- StrAppendChar( sReturnStrg,c );
- break;
- }
+ // #i13821: VB 6 behaviour
+ sReturnStrg.append(c);
+ break;
+ }
- sal_Bool bOverflow = sal_False;
+ sal_Bool bOverflow = sal_False;
#ifdef _with_sprintf
- short nNextDigit = GetDigitAtPosScan( nDigitPos,bFoundFirstDigit );
+ short nNextDigit = GetDigitAtPosScan( nDigitPos, bFoundFirstDigit );
#else
- short nNextDigit = GetDigitAtPos( dNumber,nDigitPos,dNumber,bFoundFirstDigit );
+ short nNextDigit = GetDigitAtPos( dNumber, nDigitPos, dNumber, bFoundFirstDigit );
#endif
- if( nNextDigit>=5 )
- StrRoundDigit( sReturnStrg,sReturnStrg.Len()-1,bOverflow );
- if( bOverflow )
- {
- // a leading 9 has been rounded
- LeftShiftDecimalPoint( sReturnStrg );
- sReturnStrg.SetChar( sReturnStrg.Len()-1 , 0 );
- dExponent += 1.0;
- }
- // maybe remove redundant 0s, e. g. 4.500e4 in 0.0##e-00
- ParseBack( sReturnStrg,sFormatStrg,i-1 );
+ if( nNextDigit>=5 )
+ {
+ StrRoundDigit( sReturnStrg, sReturnStrg.getLength() - 1, bOverflow );
+ }
+ if( bOverflow )
+ {
+ // a leading 9 has been rounded
+ LeftShiftDecimalPoint( sReturnStrg );
+ sReturnStrg[sReturnStrg.getLength() - 1] = 0;
+ dExponent += 1.0;
+ }
+ // maybe remove redundant 0s, e. g. 4.500e4 in 0.0##e-00
+ ParseBack( sReturnStrg, sFormatStrg, i-1 );
+ }
+ // change the scanner's condition
+ nState++;
+ // output exponent character
+ sReturnStrg.append(c);
+ // i++; // MANIPULATION of the loop-variable!
+ c = sFormatStrg[ ++i ];
+ // output leading sign / exponent
+ if( c != 0 )
+ {
+ if( c == '-' )
+ {
+ if( dExponent < 0.0 )
+ {
+ sReturnStrg.append('-');
}
- // change the scanner's condition
- nState++;
- // output exponent character
- StrAppendChar( sReturnStrg,c );
- // i++; // MANIPULATION of the loop-variable!
- c = sFormatStrg.GetChar( ++i );
- // output leading sign / exponent
- if( c!=0 )
+ }
+ else if( c == '+' )
+ {
+ if( dExponent < 0.0 )
{
- if( c=='-' )
- {
- if( dExponent<0.0 )
- StrAppendChar( sReturnStrg,'-' );
- }
- else if( c=='+' )
- {
- if( dExponent<0.0 )
- StrAppendChar( sReturnStrg,'-' );
- else
- StrAppendChar( sReturnStrg,'+' );
- }
+ sReturnStrg.append('-');
}
- break;
- case ',':
- break;
- case ';':
- break;
- case '(':
- case ')':
- // maybe remove redundant 0s, e. g. 4.500e4 in 0.0##e-00
- ParseBack( sReturnStrg,sFormatStrg,i-1 );
- if( bIsNegative )
- StrAppendChar( sReturnStrg,c );
- break;
- case '$':
- // append the string for the currency:
- sReturnStrg += sCurrencyStrg;
- break;
- case ' ':
- case '-':
- case '+':
- ParseBack( sReturnStrg,sFormatStrg,i-1 );
- StrAppendChar( sReturnStrg,c );
- break;
- case '\\':
- ParseBack( sReturnStrg,sFormatStrg,i-1 );
- // special character found, output next
- // character directly (if existing)
- c = sFormatStrg.GetChar( ++i );
- if( c!=0 )
- StrAppendChar( sReturnStrg,c );
- break;
- case CREATE_1000SEP_CHAR:
- // ignore here, action has already been
- // executed in AnalyseFormatString
- break;
- default:
- // output characters and digits, too (like in Visual-Basic)
- if( ( c>='a' && c<='z' ) ||
- ( c>='A' && c<='Z' ) ||
- ( c>='1' && c<='9' ) )
- StrAppendChar( sReturnStrg,c );
+ else
+ {
+ sReturnStrg.append('+');
+ }
+ }
+ }
+ break;
+ case ',':
+ break;
+ case ';':
+ break;
+ case '(':
+ case ')':
+ // maybe remove redundant 0s, e. g. 4.500e4 in 0.0##e-00
+ ParseBack( sReturnStrg, sFormatStrg, i-1 );
+ if( bIsNegative )
+ {
+ sReturnStrg.append(c);
+ }
+ break;
+ case '$':
+ // append the string for the currency:
+ sReturnStrg.append(sCurrencyStrg);
+ break;
+ case ' ':
+ case '-':
+ case '+':
+ ParseBack( sReturnStrg, sFormatStrg, i-1 );
+ sReturnStrg.append(c);
+ break;
+ case '\\':
+ ParseBack( sReturnStrg, sFormatStrg, i-1 );
+ // special character found, output next
+ // character directly (if existing)
+ c = sFormatStrg[ ++i ];
+ if( c!=0 )
+ {
+ sReturnStrg.append(c);
+ }
+ break;
+ case CREATE_1000SEP_CHAR:
+ // ignore here, action has already been
+ // executed in AnalyseFormatString
+ break;
+ default:
+ // output characters and digits, too (like in Visual-Basic)
+ if( ( c>='a' && c<='z' ) ||
+ ( c>='A' && c<='Z' ) ||
+ ( c>='1' && c<='9' ) )
+ {
+ sReturnStrg.append(c);
}
}
+ }
- // scan completed - rounding necessary?
- if( !bScientific )
- {
+ // scan completed - rounding necessary?
+ if( !bScientific )
+ {
#ifdef _with_sprintf
- short nNextDigit = GetDigitAtPosScan( nDigitPos,bFoundFirstDigit );
+ short nNextDigit = GetDigitAtPosScan( nDigitPos, bFoundFirstDigit );
#else
- short nNextDigit = GetDigitAtPos( dNumber,nDigitPos,dNumber,bFoundFirstDigit );
+ short nNextDigit = GetDigitAtPos( dNumber, nDigitPos, dNumber, bFoundFirstDigit );
#endif
- if( nNextDigit>=5 )
- StrRoundDigit( sReturnStrg,sReturnStrg.Len()-1 );
+ if( nNextDigit>=5 )
+ {
+ StrRoundDigit( sReturnStrg, sReturnStrg.getLength() - 1 );
}
+ }
- if( nNoOfDigitsRight>0 )
- ParseBack( sReturnStrg,sFormatStrg,sFormatStrg.Len()-1 );
+ if( nNoOfDigitsRight>0 )
+ {
+ ParseBack( sReturnStrg, sFormatStrg, sFormatStrg.getLength()-1 );
+ }
+ sReturnStrgFinal = sReturnStrg.makeStringAndClear();
}
-String SbxBasicFormater::BasicFormatNull( String sFormatStrg )
+OUString SbxBasicFormater::BasicFormatNull( OUString sFormatStrg )
{
sal_Bool bNullFormatFound;
- String sNullFormatStrg = GetNullFormatString( sFormatStrg,bNullFormatFound );
+ OUString sNullFormatStrg = GetNullFormatString( sFormatStrg, bNullFormatFound );
if( bNullFormatFound )
+ {
return sNullFormatStrg;
- String aRetStr;
- aRetStr.AssignAscii( "null" );
+ }
+ OUString aRetStr;
+ aRetStr = rtl::OUString::createFromAscii( "null" );
return aRetStr;
}
-String SbxBasicFormater::BasicFormat( double dNumber, String sFormatStrg )
+OUString SbxBasicFormater::BasicFormat( double dNumber, OUString sFormatStrg )
{
sal_Bool bPosFormatFound,bNegFormatFound,b0FormatFound;
// analyse format-string concerning predefined formats:
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_GENERALNUMBER ) )
- sFormatStrg.AssignAscii( GENERALNUMBER_FORMAT );
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_CURRENCY ) )
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_GENERALNUMBER ) )
+ {
+ sFormatStrg = rtl::OUString::createFromAscii( GENERALNUMBER_FORMAT );
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_CURRENCY ) )
+ {
sFormatStrg = sCurrencyFormatStrg; // old: CURRENCY_FORMAT;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_FIXED ) )
- sFormatStrg.AssignAscii( FIXED_FORMAT );
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_STANDARD ) )
- sFormatStrg.AssignAscii( STANDARD_FORMAT );
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_PERCENT ) )
- sFormatStrg.AssignAscii( PERCENT_FORMAT );
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_SCIENTIFIC ) )
- sFormatStrg.AssignAscii( SCIENTIFIC_FORMAT );
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_YESNO ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_FIXED ) )
+ {
+ sFormatStrg = rtl::OUString::createFromAscii( FIXED_FORMAT );
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_STANDARD ) )
+ {
+ sFormatStrg = rtl::OUString::createFromAscii( STANDARD_FORMAT );
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_PERCENT ) )
+ {
+ sFormatStrg = rtl::OUString::createFromAscii( PERCENT_FORMAT );
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_SCIENTIFIC ) )
+ {
+ sFormatStrg = rtl::OUString::createFromAscii( SCIENTIFIC_FORMAT );
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_YESNO ) )
+ {
return ( dNumber==0.0 ) ? sNoStrg : sYesStrg ;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_TRUEFALSE ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_TRUEFALSE ) )
+ {
return ( dNumber==0.0 ) ? sFalseStrg : sTrueStrg ;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_ONOFF ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_ONOFF ) )
+ {
return ( dNumber==0.0 ) ? sOffStrg : sOnStrg ;
+ }
// analyse format-string concerning ';', i. e. format-strings for
// positive-, negative- and 0-values
- String sPosFormatStrg = GetPosFormatString( sFormatStrg, bPosFormatFound );
- String sNegFormatStrg = GetNegFormatString( sFormatStrg, bNegFormatFound );
- String s0FormatStrg = Get0FormatString( sFormatStrg, b0FormatFound );
+ OUString sPosFormatStrg = GetPosFormatString( sFormatStrg, bPosFormatFound );
+ OUString sNegFormatStrg = GetNegFormatString( sFormatStrg, bNegFormatFound );
+ OUString s0FormatStrg = Get0FormatString( sFormatStrg, b0FormatFound );
- String sReturnStrg;
- String sTempStrg;
+ OUString sReturnStrg;
+ OUString sTempStrg;
if( dNumber==0.0 )
{
sTempStrg = sFormatStrg;
if( b0FormatFound )
{
- if( s0FormatStrg.Len() == 0 && bPosFormatFound )
+ if( s0FormatStrg.isEmpty() && bPosFormatFound )
+ {
sTempStrg = sPosFormatStrg;
+ }
else
+ {
sTempStrg = s0FormatStrg;
+ }
}
else if( bPosFormatFound )
{
@@ -961,16 +1046,20 @@ String SbxBasicFormater::BasicFormat( double dNumber, String sFormatStrg )
{
if( bNegFormatFound )
{
- if( sNegFormatStrg.Len() == 0 && bPosFormatFound )
+ if( sNegFormatStrg.isEmpty() && bPosFormatFound )
{
- sTempStrg = rtl::OUString("-");
+ sTempStrg = "-";
sTempStrg += sPosFormatStrg;
}
else
+ {
sTempStrg = sNegFormatStrg;
- }
+ }
+ }
else
+ {
sTempStrg = sFormatStrg;
+ }
// if NO format-string especially for negative
// values is given, output the leading sign
ScanFormatString( dNumber, sTempStrg, sReturnStrg,/*bCreateSign=*/bNegFormatFound/*sNegFormatStrg!=EMPTYFORMATSTRING*/ );
@@ -985,26 +1074,44 @@ String SbxBasicFormater::BasicFormat( double dNumber, String sFormatStrg )
return sReturnStrg;
}
-sal_Bool SbxBasicFormater::isBasicFormat( String sFormatStrg )
+sal_Bool SbxBasicFormater::isBasicFormat( OUString sFormatStrg )
{
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_GENERALNUMBER ) )
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_GENERALNUMBER ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_CURRENCY ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_CURRENCY ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_FIXED ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_FIXED ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_STANDARD ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_STANDARD ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_PERCENT ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_PERCENT ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_SCIENTIFIC ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_SCIENTIFIC ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_YESNO ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_YESNO ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_TRUEFALSE ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_TRUEFALSE ) )
+ {
return sal_True;
- if( sFormatStrg.EqualsIgnoreCaseAscii( BASICFORMAT_ONOFF ) )
+ }
+ if( sFormatStrg.equalsIgnoreAsciiCase( BASICFORMAT_ONOFF ) )
+ {
return sal_True;
+ }
return sal_False;
}
diff --git a/basic/source/sbx/sbxint.cxx b/basic/source/sbx/sbxint.cxx
index 4966d24e1837..61b601e3aec8 100644
--- a/basic/source/sbx/sbxint.cxx
+++ b/basic/source/sbx/sbxint.cxx
@@ -566,7 +566,7 @@ start:
{
SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCHAR;
}
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
if( n > SbxMAXBYTE )
{
@@ -840,7 +840,7 @@ start:
{
SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXCHAR;
}
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
if( n > SbxMAXBYTE )
{
diff --git a/basic/source/sbx/sbxlng.cxx b/basic/source/sbx/sbxlng.cxx
index 00613d25737a..90cf5f9e0038 100644
--- a/basic/source/sbx/sbxlng.cxx
+++ b/basic/source/sbx/sbxlng.cxx
@@ -246,7 +246,7 @@ start:
{
SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCHAR;
}
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
if( n > SbxMAXBYTE )
{
diff --git a/basic/source/sbx/sbxobj.cxx b/basic/source/sbx/sbxobj.cxx
index bdf2200c6722..e72a2821c5f0 100644
--- a/basic/source/sbx/sbxobj.cxx
+++ b/basic/source/sbx/sbxobj.cxx
@@ -26,23 +26,23 @@ TYPEINIT1(SbxMethod,SbxVariable)
TYPEINIT1(SbxProperty,SbxVariable)
TYPEINIT2(SbxObject,SbxVariable,SfxListener)
-static const char* pNameProp; // Name-Property
-static const char* pParentProp; // Parent-Property
+static OUString pNameProp; // Name-Property
+static OUString pParentProp; // Parent-Property
static sal_uInt16 nNameHash = 0, nParentHash = 0;
-SbxObject::SbxObject( const XubString& rClass )
+SbxObject::SbxObject( const OUString& rClass )
: SbxVariable( SbxOBJECT ), aClassName( rClass )
{
aData.pObj = this;
if( !nNameHash )
{
- pNameProp = GetSbxRes( STRING_NAMEPROP );
- pParentProp = GetSbxRes( STRING_PARENTPROP );
- nNameHash = MakeHashCode( rtl::OUString::createFromAscii( pNameProp ) );
- nParentHash = MakeHashCode( rtl::OUString::createFromAscii( pParentProp ) );
+ pNameProp = ::rtl::OUString::createFromAscii(GetSbxRes( STRING_NAMEPROP ));
+ pParentProp = ::rtl::OUString::createFromAscii(GetSbxRes( STRING_PARENTPROP ));
+ nNameHash = MakeHashCode( pNameProp );
+ nParentHash = MakeHashCode( pParentProp );
}
SbxObject::Clear();
SbxObject::SetName( rClass );
@@ -83,7 +83,9 @@ static void CheckParentsOnDelete( SbxObject* pObj, SbxArray* p )
{
SbxVariableRef& rRef = p->GetRef( i );
if( rRef->IsBroadcaster() )
+ {
pObj->EndListening( rRef->GetBroadcaster(), sal_True );
+ }
// Did the element have more then one reference and still a Listener?
if( rRef->GetRefCount() > 1 )
{
@@ -119,9 +121,9 @@ void SbxObject::Clear()
pProps = new SbxArray;
pObjs = new SbxArray( SbxOBJECT );
SbxVariable* p;
- p = Make( rtl::OUString::createFromAscii( pNameProp ), SbxCLASS_PROPERTY, SbxSTRING );
+ p = Make( pNameProp, SbxCLASS_PROPERTY, SbxSTRING );
p->SetFlag( SBX_DONTSTORE );
- p = Make( rtl::OUString::createFromAscii( pParentProp ), SbxCLASS_PROPERTY, SbxOBJECT );
+ p = Make( pParentProp, SbxCLASS_PROPERTY, SbxOBJECT );
p->ResetFlag( SBX_WRITE );
p->SetFlag( SBX_DONTSTORE );
pDfltProp = NULL;
@@ -140,43 +142,52 @@ void SbxObject::SFX_NOTIFY( SfxBroadcaster&, const TypeId&,
SbxVariable* pVar = p->GetVar();
if( bRead || bWrite )
{
- XubString aVarName( pVar->GetName() );
+ OUString aVarName( pVar->GetName() );
sal_uInt16 nHash_ = MakeHashCode( aVarName );
- if( nHash_ == nNameHash
- && aVarName.EqualsIgnoreCaseAscii( pNameProp ) )
+ if( nHash_ == nNameHash && aVarName.equalsIgnoreAsciiCase( pNameProp ) )
{
if( bRead )
+ {
pVar->PutString( GetName() );
+ }
else
- SetName( pVar->GetString() );
+ {
+ SetName( pVar->GetOUString() );
+ }
}
- else if( nHash_ == nParentHash
- && aVarName.EqualsIgnoreCaseAscii( pParentProp ) )
+ else if( nHash_ == nParentHash && aVarName.equalsIgnoreAsciiCase( pParentProp ) )
{
SbxObject* p_ = GetParent();
if( !p_ )
+ {
p_ = this;
+ }
pVar->PutObject( p_ );
}
}
}
}
-sal_Bool SbxObject::IsClass( const rtl::OUString& rName ) const
+sal_Bool SbxObject::IsClass( const OUString& rName ) const
{
- return sal_Bool( aClassName.EqualsIgnoreCaseAscii( rName ) );
+ return sal_Bool( aClassName.equalsIgnoreAsciiCase( rName ) );
}
SbxVariable* SbxObject::FindUserData( sal_uInt32 nData )
{
if( !GetAll( SbxCLASS_DONTCARE ) )
+ {
return NULL;
-
+ }
SbxVariable* pRes = pMethods->FindUserData( nData );
if( !pRes )
+ {
pRes = pProps->FindUserData( nData );
+ }
if( !pRes )
+ {
pRes = pObjs->FindUserData( nData );
+ }
// Search in the parents?
if( !pRes && IsSet( SBX_GBLSEARCH ) )
{
@@ -198,46 +209,52 @@ SbxVariable* SbxObject::FindUserData( sal_uInt32 nData )
return pRes;
}
-SbxVariable* SbxObject::Find( const rtl::OUString& rName, SbxClassType t )
+SbxVariable* SbxObject::Find( const OUString& rName, SbxClassType t )
{
#ifdef DBG_UTIL
static sal_uInt16 nLvl = 0;
- static const char* pCls[] =
- { "DontCare","Array","Value","Variable","Method","Property","Object" };
+ static const char* pCls[] = { "DontCare","Array","Value","Variable","Method","Property","Object" };
rtl::OString aNameStr1(rtl::OUStringToOString(rName, RTL_TEXTENCODING_ASCII_US));
rtl::OString aNameStr2(rtl::OUStringToOString(SbxVariable::GetName(), RTL_TEXTENCODING_ASCII_US));
DbgOutf( "SBX: Search %.*s %s %s in %s",
- nLvl++, " ",
- ( t >= SbxCLASS_DONTCARE && t <= SbxCLASS_OBJECT )
- ? pCls[ t-1 ] : "Unknown class", aNameStr1.getStr(), aNameStr1.getStr() );
+ nLvl++, " ",
+ ( t >= SbxCLASS_DONTCARE && t <= SbxCLASS_OBJECT )
+ ? pCls[ t-1 ] : "Unknown class", aNameStr1.getStr(), aNameStr1.getStr() );
#endif
if( !GetAll( t ) )
+ {
return NULL;
+ }
SbxVariable* pRes = NULL;
pObjs->SetFlag( SBX_EXTSEARCH );
if( t == SbxCLASS_DONTCARE )
{
pRes = pMethods->Find( rName, SbxCLASS_METHOD );
if( !pRes )
+ {
pRes = pProps->Find( rName, SbxCLASS_PROPERTY );
+ }
if( !pRes )
+ {
pRes = pObjs->Find( rName, t );
+ }
}
else
{
SbxArray* pArray = NULL;
switch( t )
{
- case SbxCLASS_VARIABLE:
- case SbxCLASS_PROPERTY: pArray = pProps; break;
- case SbxCLASS_METHOD: pArray = pMethods; break;
- case SbxCLASS_OBJECT: pArray = pObjs; break;
- default:
- DBG_ASSERT( !this, "Ungueltige SBX-Klasse" );
+ case SbxCLASS_VARIABLE:
+ case SbxCLASS_PROPERTY: pArray = pProps; break;
+ case SbxCLASS_METHOD: pArray = pMethods; break;
+ case SbxCLASS_OBJECT: pArray = pObjs; break;
+ default: DBG_ASSERT( !this, "Ungueltige SBX-Klasse" ); break;
}
if( pArray )
+ {
pRes = pArray->Find( rName, t );
+ }
}
// ExtendedsSearch in the Object-Array?
// For objects and DontCare is the array of objects already
@@ -279,14 +296,16 @@ SbxVariable* SbxObject::Find( const rtl::OUString& rName, SbxClassType t )
// The whole thing recursive, because Call() might be overloaded
// Qualified names are allowed
-sal_Bool SbxObject::Call( const XubString& rName, SbxArray* pParam )
+sal_Bool SbxObject::Call( const OUString& rName, SbxArray* pParam )
{
SbxVariable* pMeth = FindQualified( rName, SbxCLASS_DONTCARE);
if( pMeth && pMeth->ISA(SbxMethod) )
{
// FindQualified() might have been stroked!
if( pParam )
+ {
pMeth->SetParameters( pParam );
+ }
pMeth->Broadcast( SBX_HINT_DATAWANTED );
pMeth->SetParameters( NULL );
return sal_True;
@@ -297,18 +316,22 @@ sal_Bool SbxObject::Call( const XubString& rName, SbxArray* pParam )
SbxProperty* SbxObject::GetDfltProperty()
{
- if ( !pDfltProp && aDfltPropName.Len() )
+ if ( !pDfltProp && !aDfltPropName.isEmpty() )
{
pDfltProp = (SbxProperty*) Find( aDfltPropName, SbxCLASS_PROPERTY );
if( !pDfltProp )
+ {
pDfltProp = (SbxProperty*) Make( aDfltPropName, SbxCLASS_PROPERTY, SbxVARIANT );
+ }
}
return pDfltProp;
}
-void SbxObject::SetDfltProperty( const XubString& rName )
+void SbxObject::SetDfltProperty( const OUString& rName )
{
if ( rName != aDfltPropName )
+ {
pDfltProp = NULL;
+ }
aDfltPropName = rName;
SetModified( sal_True );
}
@@ -322,12 +345,11 @@ SbxArray* SbxObject::FindVar( SbxVariable* pVar, sal_uInt16& nArrayIdx )
SbxArray* pArray = NULL;
if( pVar ) switch( pVar->GetClass() )
{
- case SbxCLASS_VARIABLE:
- case SbxCLASS_PROPERTY: pArray = pProps; break;
- case SbxCLASS_METHOD: pArray = pMethods; break;
- case SbxCLASS_OBJECT: pArray = pObjs; break;
- default:
- DBG_ASSERT( !this, "Ungueltige SBX-Klasse" );
+ case SbxCLASS_VARIABLE:
+ case SbxCLASS_PROPERTY: pArray = pProps; break;
+ case SbxCLASS_METHOD: pArray = pMethods; break;
+ case SbxCLASS_OBJECT: pArray = pObjs; break;
+ default: DBG_ASSERT( !this, "Ungueltige SBX-Klasse" ); break;
}
if( pArray )
{
@@ -336,12 +358,14 @@ SbxArray* SbxObject::FindVar( SbxVariable* pVar, sal_uInt16& nArrayIdx )
pArray->ResetFlag( SBX_EXTSEARCH );
SbxVariable* pOld = pArray->Find( pVar->GetName(), pVar->GetClass() );
if( pOld )
- for( sal_uInt16 i = 0; i < pArray->Count(); i++ )
{
- SbxVariableRef& rRef = pArray->GetRef( i );
- if( (SbxVariable*) rRef == pOld )
+ for( sal_uInt16 i = 0; i < pArray->Count(); i++ )
{
- nArrayIdx = i; break;
+ SbxVariableRef& rRef = pArray->GetRef( i );
+ if( (SbxVariable*) rRef == pOld )
+ {
+ nArrayIdx = i; break;
+ }
}
}
}
@@ -351,21 +375,22 @@ SbxArray* SbxObject::FindVar( SbxVariable* pVar, sal_uInt16& nArrayIdx )
// If a new object will be established, this object will be indexed,
// if an object of this name exists already.
-SbxVariable* SbxObject::Make( const XubString& rName, SbxClassType ct, SbxDataType dt )
+SbxVariable* SbxObject::Make( const OUString& rName, SbxClassType ct, SbxDataType dt )
{
// Is the object already available?
SbxArray* pArray = NULL;
switch( ct )
{
- case SbxCLASS_VARIABLE:
- case SbxCLASS_PROPERTY: pArray = pProps; break;
- case SbxCLASS_METHOD: pArray = pMethods; break;
- case SbxCLASS_OBJECT: pArray = pObjs; break;
- default:
- DBG_ASSERT( !this, "Ungueltige SBX-Klasse" );
+ case SbxCLASS_VARIABLE:
+ case SbxCLASS_PROPERTY: pArray = pProps; break;
+ case SbxCLASS_METHOD: pArray = pMethods; break;
+ case SbxCLASS_OBJECT: pArray = pObjs; break;
+ default: DBG_ASSERT( !this, "Ungueltige SBX-Klasse" ); break;
}
if( !pArray )
+ {
return NULL;
+ }
// Collections may contain objects of the same name
if( !( ct == SbxCLASS_OBJECT && ISA(SbxCollection) ) )
{
@@ -378,17 +403,18 @@ SbxVariable* SbxObject::Make( const XubString& rName, SbxClassType ct, SbxDataTy
SbxVariable* pVar = NULL;
switch( ct )
{
- case SbxCLASS_VARIABLE:
- case SbxCLASS_PROPERTY:
- pVar = new SbxProperty( rName, dt );
- break;
- case SbxCLASS_METHOD:
- pVar = new SbxMethod( rName, dt );
- break;
- case SbxCLASS_OBJECT:
- pVar = CreateObject( rName );
- break;
- default: break;
+ case SbxCLASS_VARIABLE:
+ case SbxCLASS_PROPERTY:
+ pVar = new SbxProperty( rName, dt );
+ break;
+ case SbxCLASS_METHOD:
+ pVar = new SbxMethod( rName, dt );
+ break;
+ case SbxCLASS_OBJECT:
+ pVar = CreateObject( rName );
+ break;
+ default:
+ break;
}
pVar->SetParent( this );
pArray->Put( pVar, pArray->Count() );
@@ -399,7 +425,7 @@ SbxVariable* SbxObject::Make( const XubString& rName, SbxClassType ct, SbxDataTy
return pVar;
}
-SbxObject* SbxObject::MakeObject( const XubString& rName, const XubString& rClass )
+SbxObject* SbxObject::MakeObject( const OUString& rName, const OUString& rClass )
{
// Is the object already available?
if( !ISA(SbxCollection) )
@@ -436,40 +462,49 @@ void SbxObject::Insert( SbxVariable* pVar )
// Then this element exists already
// There are objects of the same name allowed at collections
if( pArray == pObjs && ISA(SbxCollection) )
+ {
nIdx = pArray->Count();
+ }
else
{
SbxVariable* pOld = pArray->Get( nIdx );
// already inside: overwrite
if( pOld == pVar )
+ {
return;
-
+ }
EndListening( pOld->GetBroadcaster(), sal_True );
if( pVar->GetClass() == SbxCLASS_PROPERTY )
{
if( pOld == pDfltProp )
+ {
pDfltProp = (SbxProperty*) pVar;
+ }
}
}
}
StartListening( pVar->GetBroadcaster(), sal_True );
pArray->Put( pVar, nIdx );
if( pVar->GetParent() != this )
+ {
pVar->SetParent( this );
+ }
SetModified( sal_True );
Broadcast( SBX_HINT_OBJECTCHANGED );
#ifdef DBG_UTIL
- static const char* pCls[] =
- { "DontCare","Array","Value","Variable","Method","Property","Object" };
- XubString aVarName( pVar->GetName() );
- if ( !aVarName.Len() && pVar->ISA(SbxObject) )
- aVarName = PTR_CAST(SbxObject,pVar)->GetClassName();
- rtl::OString aNameStr1(rtl::OUStringToOString(aVarName, RTL_TEXTENCODING_ASCII_US));
- rtl::OString aNameStr2(rtl::OUStringToOString(SbxVariable::GetName(), RTL_TEXTENCODING_ASCII_US));
- DbgOutf( "SBX: Insert %s %s in %s",
- ( pVar->GetClass() >= SbxCLASS_DONTCARE &&
- pVar->GetClass() <= SbxCLASS_OBJECT )
- ? pCls[ pVar->GetClass()-1 ] : "Unknown class", aNameStr1.getStr(), aNameStr1.getStr() );
+ static const char* pCls[] =
+ { "DontCare","Array","Value","Variable","Method","Property","Object" };
+ OUString aVarName( pVar->GetName() );
+ if ( aVarName.isEmpty() && pVar->ISA(SbxObject) )
+ {
+ aVarName = PTR_CAST(SbxObject,pVar)->GetClassName();
+ }
+ rtl::OString aNameStr1(rtl::OUStringToOString(aVarName, RTL_TEXTENCODING_ASCII_US));
+ rtl::OString aNameStr2(rtl::OUStringToOString(SbxVariable::GetName(), RTL_TEXTENCODING_ASCII_US));
+ DbgOutf( "SBX: Insert %s %s in %s",
+ ( pVar->GetClass() >= SbxCLASS_DONTCARE &&
+ pVar->GetClass() <= SbxCLASS_OBJECT )
+ ? pCls[ pVar->GetClass()-1 ] : "Unknown class", aNameStr1.getStr(), aNameStr1.getStr() );
#endif
}
}
@@ -483,12 +518,11 @@ void SbxObject::QuickInsert( SbxVariable* pVar )
{
switch( pVar->GetClass() )
{
- case SbxCLASS_VARIABLE:
- case SbxCLASS_PROPERTY: pArray = pProps; break;
- case SbxCLASS_METHOD: pArray = pMethods; break;
- case SbxCLASS_OBJECT: pArray = pObjs; break;
- default:
- DBG_ASSERT( !this, "Ungueltige SBX-Klasse" );
+ case SbxCLASS_VARIABLE:
+ case SbxCLASS_PROPERTY: pArray = pProps; break;
+ case SbxCLASS_METHOD: pArray = pMethods; break;
+ case SbxCLASS_OBJECT: pArray = pObjs; break;
+ default: DBG_ASSERT( !this, "Ungueltige SBX-Klasse" ); break;
}
}
if( pArray )
@@ -496,25 +530,29 @@ void SbxObject::QuickInsert( SbxVariable* pVar )
StartListening( pVar->GetBroadcaster(), sal_True );
pArray->Put( pVar, pArray->Count() );
if( pVar->GetParent() != this )
+ {
pVar->SetParent( this );
+ }
SetModified( sal_True );
#ifdef DBG_UTIL
- static const char* pCls[] =
- { "DontCare","Array","Value","Variable","Method","Property","Object" };
- XubString aVarName( pVar->GetName() );
- if ( !aVarName.Len() && pVar->ISA(SbxObject) )
- aVarName = PTR_CAST(SbxObject,pVar)->GetClassName();
- rtl::OString aNameStr1(rtl::OUStringToOString(aVarName, RTL_TEXTENCODING_ASCII_US));
- rtl::OString aNameStr2(rtl::OUStringToOString(SbxVariable::GetName(), RTL_TEXTENCODING_ASCII_US));
- DbgOutf( "SBX: Insert %s %s in %s",
- ( pVar->GetClass() >= SbxCLASS_DONTCARE &&
- pVar->GetClass() <= SbxCLASS_OBJECT )
- ? pCls[ pVar->GetClass()-1 ] : "Unknown class", aNameStr1.getStr(), aNameStr1.getStr() );
+ static const char* pCls[] =
+ { "DontCare","Array","Value","Variable","Method","Property","Object" };
+ OUString aVarName( pVar->GetName() );
+ if ( aVarName.isEmpty() && pVar->ISA(SbxObject) )
+ {
+ aVarName = PTR_CAST(SbxObject,pVar)->GetClassName();
+ }
+ rtl::OString aNameStr1(rtl::OUStringToOString(aVarName, RTL_TEXTENCODING_ASCII_US));
+ rtl::OString aNameStr2(rtl::OUStringToOString(SbxVariable::GetName(), RTL_TEXTENCODING_ASCII_US));
+ DbgOutf( "SBX: Insert %s %s in %s",
+ ( pVar->GetClass() >= SbxCLASS_DONTCARE &&
+ pVar->GetClass() <= SbxCLASS_OBJECT )
+ ? pCls[ pVar->GetClass()-1 ] : "Unknown class", aNameStr1.getStr(), aNameStr1.getStr() );
#endif
}
}
-void SbxObject::Remove( const XubString& rName, SbxClassType t )
+void SbxObject::Remove( const OUString& rName, SbxClassType t )
{
Remove( SbxObject::Find( rName, t ) );
}
@@ -526,20 +564,28 @@ void SbxObject::Remove( SbxVariable* pVar )
if( pArray && nIdx < pArray->Count() )
{
#ifdef DBG_UTIL
- XubString aVarName( pVar->GetName() );
- if ( !aVarName.Len() && pVar->ISA(SbxObject) )
- aVarName = PTR_CAST(SbxObject,pVar)->GetClassName();
- rtl::OString aNameStr1(rtl::OUStringToOString(aVarName, RTL_TEXTENCODING_ASCII_US));
- rtl::OString aNameStr2(rtl::OUStringToOString(SbxVariable::GetName(), RTL_TEXTENCODING_ASCII_US));
+ OUString aVarName( pVar->GetName() );
+ if ( aVarName.isEmpty() && pVar->ISA(SbxObject) )
+ {
+ aVarName = PTR_CAST(SbxObject,pVar)->GetClassName();
+ }
+ rtl::OString aNameStr1(rtl::OUStringToOString(aVarName, RTL_TEXTENCODING_ASCII_US));
+ rtl::OString aNameStr2(rtl::OUStringToOString(SbxVariable::GetName(), RTL_TEXTENCODING_ASCII_US));
#endif
SbxVariableRef pVar_ = pArray->Get( nIdx );
if( pVar_->IsBroadcaster() )
+ {
EndListening( pVar_->GetBroadcaster(), sal_True );
+ }
if( (SbxVariable*) pVar_ == pDfltProp )
+ {
pDfltProp = NULL;
+ }
pArray->Remove( nIdx );
if( pVar_->GetParent() == this )
+ {
pVar_->SetParent( NULL );
+ }
SetModified( sal_True );
Broadcast( SBX_HINT_OBJECTCHANGED );
}
@@ -549,7 +595,9 @@ static sal_Bool LoadArray( SvStream& rStrm, SbxObject* pThis, SbxArray* pArray )
{
SbxArrayRef p = (SbxArray*) SbxBase::Load( rStrm );
if( !p.Is() )
+ {
return sal_False;
+ }
for( sal_uInt16 i = 0; i < p->Count(); i++ )
{
SbxVariableRef& r = p->GetRef( i );
@@ -571,36 +619,47 @@ sal_Bool SbxObject::LoadData( SvStream& rStrm, sal_uInt16 nVer )
// Help for the read in of old objects: just TRUE back,
// LoadPrivateData() had to set the default status up
if( !nVer )
+ {
return sal_True;
-
+ }
pDfltProp = NULL;
if( !SbxVariable::LoadData( rStrm, nVer ) )
+ {
return sal_False;
+ }
// If it contains no alien object, insert ourselves
if( aData.eType == SbxOBJECT && !aData.pObj )
+ {
aData.pObj = this;
+ }
sal_uInt32 nSize;
- XubString aDfltProp;
- aClassName = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
- RTL_TEXTENCODING_ASCII_US);
- aDfltProp = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
- RTL_TEXTENCODING_ASCII_US);
+ OUString aDfltProp;
+ aClassName = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm, RTL_TEXTENCODING_ASCII_US);
+ aDfltProp = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm, RTL_TEXTENCODING_ASCII_US);
sal_uIntPtr nPos = rStrm.Tell();
rStrm >> nSize;
if( !LoadPrivateData( rStrm, nVer ) )
+ {
return sal_False;
+ }
sal_uIntPtr nNewPos = rStrm.Tell();
nPos += nSize;
DBG_ASSERT( nPos >= nNewPos, "SBX: Zu viele Daten eingelesen" );
if( nPos != nNewPos )
+ {
rStrm.Seek( nPos );
- if( !LoadArray( rStrm, this, pMethods )
- || !LoadArray( rStrm, this, pProps )
- || !LoadArray( rStrm, this, pObjs ) )
+ }
+ if( !LoadArray( rStrm, this, pMethods ) ||
+ !LoadArray( rStrm, this, pProps ) ||
+ !LoadArray( rStrm, this, pObjs ) )
+ {
return sal_False;
+ }
// Set properties
- if( aDfltProp.Len() )
+ if( !aDfltProp.isEmpty() )
+ {
pDfltProp = (SbxProperty*) pProps->Find( aDfltProp, SbxCLASS_PROPERTY );
+ }
SetModified( sal_False );
return sal_True;
}
@@ -608,118 +667,137 @@ sal_Bool SbxObject::LoadData( SvStream& rStrm, sal_uInt16 nVer )
sal_Bool SbxObject::StoreData( SvStream& rStrm ) const
{
if( !SbxVariable::StoreData( rStrm ) )
+ {
return sal_False;
- XubString aDfltProp;
+ }
+ OUString aDfltProp;
if( pDfltProp )
+ {
aDfltProp = pDfltProp->GetName();
+ }
write_lenPrefixed_uInt8s_FromOUString<sal_uInt16>(rStrm, aClassName, RTL_TEXTENCODING_ASCII_US);
write_lenPrefixed_uInt8s_FromOUString<sal_uInt16>(rStrm, aDfltProp, RTL_TEXTENCODING_ASCII_US);
sal_uIntPtr nPos = rStrm.Tell();
rStrm << (sal_uInt32) 0L;
if( !StorePrivateData( rStrm ) )
+ {
return sal_False;
+ }
sal_uIntPtr nNew = rStrm.Tell();
rStrm.Seek( nPos );
rStrm << (sal_uInt32) ( nNew - nPos );
rStrm.Seek( nNew );
if( !pMethods->Store( rStrm ) )
+ {
return sal_False;
+ }
if( !pProps->Store( rStrm ) )
+ {
return sal_False;
+ }
if( !pObjs->Store( rStrm ) )
+ {
return sal_False;
+ }
((SbxObject*) this)->SetModified( sal_False );
return sal_True;
}
-XubString SbxObject::GenerateSource( const XubString &rLinePrefix,
- const SbxObject* )
+OUString SbxObject::GenerateSource( const OUString &rLinePrefix,
+ const SbxObject* )
{
// Collect the properties in a String
- XubString aSource;
+ OUString aSource;
SbxArrayRef xProps( GetProperties() );
bool bLineFeed = false;
for ( sal_uInt16 nProp = 0; nProp < xProps->Count(); ++nProp )
{
SbxPropertyRef xProp = (SbxProperty*) xProps->Get(nProp);
- XubString aPropName( xProp->GetName() );
- if ( xProp->CanWrite()
- && !( xProp->GetHashCode() == nNameHash
- && aPropName.EqualsIgnoreCaseAscii( pNameProp ) ) )
+ OUString aPropName( xProp->GetName() );
+ if ( xProp->CanWrite() &&
+ !( xProp->GetHashCode() == nNameHash &&
+ aPropName.equalsIgnoreAsciiCase(pNameProp)))
{
// Insert a break except in front of the first property
if ( bLineFeed )
- aSource.AppendAscii( "\n" );
+ {
+ aSource += "\n";
+ }
else
+ {
bLineFeed = true;
-
+ }
aSource += rLinePrefix;
- aSource += '.';
+ aSource += ".";
aSource += aPropName;
- aSource.AppendAscii( " = " );
+ aSource += " = ";
// Display the property value textual
switch ( xProp->GetType() )
{
- case SbxEMPTY:
- case SbxNULL:
- // no value
- break;
-
- case SbxSTRING:
- {
- // Strings in quotation mark
- aSource.AppendAscii( "\"" );
- aSource += xProp->GetString();
- aSource.AppendAscii( "\"" );
- break;
- }
+ case SbxEMPTY:
+ case SbxNULL:
+ // no value
+ break;
+
+ case SbxSTRING:
+ // Strings in quotation mark
+ aSource += "\"";
+ aSource += xProp->GetOUString();
+ aSource += "\"";
+ break;
- default:
- {
- // miscellaneous, such as e.g.numerary directly
- aSource += xProp->GetString();
- break;
- }
+ default:
+ // miscellaneous, such as e.g.numerary directly
+ aSource += xProp->GetOUString();
+ break;
}
}
}
return aSource;
}
-static sal_Bool CollectAttrs( const SbxBase* p, XubString& rRes )
+static sal_Bool CollectAttrs( const SbxBase* p, OUString& rRes )
{
- XubString aAttrs;
+ OUString aAttrs;
if( p->IsHidden() )
- aAttrs.AssignAscii( "Hidden" );
+ {
+ aAttrs = "Hidden";
+ }
if( p->IsSet( SBX_EXTSEARCH ) )
{
- if( aAttrs.Len() )
- aAttrs += ',';
- aAttrs.AppendAscii( "ExtSearch" );
+ if( !aAttrs.isEmpty() )
+ {
+ aAttrs += ",";
+ }
+ aAttrs += "ExtSearch";
}
if( !p->IsVisible() )
{
- if( aAttrs.Len() )
- aAttrs += ',';
- aAttrs.AppendAscii( "Invisible" );
+ if( !aAttrs.isEmpty() )
+ {
+ aAttrs += ",";
+ }
+ aAttrs += "Invisible";
}
if( p->IsSet( SBX_DONTSTORE ) )
{
- if( aAttrs.Len() )
- aAttrs += ',';
- aAttrs.AppendAscii( "DontStore" );
+ if( !aAttrs.isEmpty() )
+ {
+ aAttrs += ",";
+ }
+ aAttrs += "DontStore";
}
- if( aAttrs.Len() )
+ if( !aAttrs.isEmpty() )
{
- rRes.AssignAscii( " (" );
+ rRes = " (";
rRes += aAttrs;
- rRes += ')';
+ rRes += ")";
return sal_True;
}
else
{
- rRes.Erase();
+ rRes = "";
return sal_False;
}
}
@@ -734,14 +812,16 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
return;
}
++nLevel;
- String aIndent;
+ OUString aIndent("");
for ( sal_uInt16 n = 1; n < nLevel; ++n )
- aIndent.AppendAscii( " " );
-
+ {
+ aIndent += " ";
+ }
// if necessary complete the object
if ( bFill )
+ {
GetAll( SbxCLASS_DONTCARE );
-
+ }
// Output the data of the object itself
rtl::OString aNameStr(rtl::OUStringToOString(GetName(), RTL_TEXTENCODING_ASCII_US));
rtl::OString aClassNameStr(rtl::OUStringToOString(aClassName, RTL_TEXTENCODING_ASCII_US));
@@ -760,13 +840,15 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
<< "=='" << ( aParentNameStr.isEmpty() ? "<unnamed>" : aParentNameStr.getStr() ) << "'";
}
else
+ {
rStrm << "no parent ";
+ }
rStrm << " )" << endl;
rtl::OString aIndentNameStr(rtl::OUStringToOString(aIndent, RTL_TEXTENCODING_ASCII_US));
rStrm << aIndentNameStr.getStr() << "{" << endl;
// Flags
- XubString aAttrs;
+ OUString aAttrs;
if( CollectAttrs( this, aAttrs ) )
{
rtl::OString aAttrStr(rtl::OUStringToOString(aAttrs, RTL_TEXTENCODING_ASCII_US));
@@ -781,14 +863,18 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
SbxVariable* pVar = r;
if( pVar )
{
- XubString aLine( aIndent );
- aLine.AppendAscii( " - " );
+ OUString aLine( aIndent );
+ aLine += " - ";
aLine += pVar->GetName( SbxNAME_SHORT_TYPES );
- XubString aAttrs2;
+ OUString aAttrs2;
if( CollectAttrs( pVar, aAttrs2 ) )
+ {
aLine += aAttrs2;
+ }
if( !pVar->IsA( TYPE(SbxMethod) ) )
- aLine.AppendAscii( " !! Not a Method !!" );
+ {
+ aLine += " !! Not a Method !!";
+ }
write_lenPrefixed_uInt8s_FromOUString<sal_uInt16>(rStrm, aLine, RTL_TEXTENCODING_ASCII_US);
// Output also the object at object-methods
@@ -801,7 +887,9 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
((SbxObject*) pVar->GetValues_Impl().pObj)->Dump( rStrm, bFill );
}
else
+ {
rStrm << endl;
+ }
}
}
@@ -814,14 +902,18 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
SbxVariable* pVar = r;
if( pVar )
{
- XubString aLine( aIndent );
- aLine.AppendAscii( " - " );
+ OUString aLine( aIndent );
+ aLine += " - ";
aLine += pVar->GetName( SbxNAME_SHORT_TYPES );
- XubString aAttrs3;
+ OUString aAttrs3;
if( CollectAttrs( pVar, aAttrs3 ) )
+ {
aLine += aAttrs3;
+ }
if( !pVar->IsA( TYPE(SbxProperty) ) )
- aLine.AppendAscii( " !! Not a Property !!" );
+ {
+ aLine += " !! Not a Property !!";
+ }
write_lenPrefixed_uInt8s_FromOUString<sal_uInt16>(rStrm, aLine, RTL_TEXTENCODING_ASCII_US);
// output also the object at object properties
@@ -834,7 +926,9 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
((SbxObject*) pVar->GetValues_Impl().pObj)->Dump( rStrm, bFill );
}
else
+ {
rStrm << endl;
+ }
}
}
}
@@ -850,9 +944,13 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
{
rStrm << aIndentNameStr.getStr() << " - Sub";
if ( pVar->ISA(SbxObject) )
+ {
((SbxObject*) pVar)->Dump( rStrm, bFill );
+ }
else if ( pVar->ISA(SbxVariable) )
+ {
((SbxVariable*) pVar)->Dump( rStrm, bFill );
+ }
}
}
}
@@ -861,7 +959,7 @@ void SbxObject::Dump( SvStream& rStrm, sal_Bool bFill )
--nLevel;
}
-SbxMethod::SbxMethod( const String& r, SbxDataType t )
+SbxMethod::SbxMethod( const OUString& r, SbxDataType t )
: SbxVariable( t )
{
SetName( r );
@@ -881,7 +979,7 @@ SbxClassType SbxMethod::GetClass() const
return SbxCLASS_METHOD;
}
-SbxProperty::SbxProperty( const String& r, SbxDataType t )
+SbxProperty::SbxProperty( const OUString& r, SbxDataType t )
: SbxVariable( t )
{
SetName( r );
diff --git a/basic/source/sbx/sbxscan.cxx b/basic/source/sbx/sbxscan.cxx
index 7ea06b5e4fb5..3257354bfc74 100644
--- a/basic/source/sbx/sbxscan.cxx
+++ b/basic/source/sbx/sbxscan.cxx
@@ -229,16 +229,17 @@ SbxError ImpScan( const ::rtl::OUString& rWSrc, double& nVal, SbxDataType& rType
}
// port for CDbl in the Basic
-SbxError SbxValue::ScanNumIntnl( const String& rSrc, double& nVal, bool bSingle )
+SbxError SbxValue::ScanNumIntnl( const OUString& rSrc, double& nVal, bool bSingle )
{
SbxDataType t;
sal_uInt16 nLen = 0;
SbxError nRetError = ImpScan( rSrc, nVal, t, &nLen,
/*bAllowIntntl*/false, /*bOnlyIntntl*/true );
// read completely?
- if( nRetError == SbxERR_OK && nLen != rSrc.Len() )
+ if( nRetError == SbxERR_OK && nLen != rSrc.getLength() )
+ {
nRetError = SbxERR_CONVERSION;
-
+ }
if( bSingle )
{
SbxValues aValues( nVal );
@@ -469,7 +470,7 @@ bool ImpConvStringExt( ::rtl::OUString& rSrc, SbxDataType eTargetType )
#ifdef _old_format_code_
// leave the code provisionally to copy the previous implementation
-static sal_uInt16 printfmtnum( double nNum, XubString& rRes, const XubString& rWFmt )
+static sal_uInt16 printfmtnum( double nNum, OUString& rRes, const OUString& rWFmt )
{
const String& rFmt = rWFmt;
char cFill = ' '; // filling characters
@@ -545,10 +546,10 @@ static sal_uInt16 printfmtnum( double nNum, XubString& rRes, const XubString& rW
if( nLen > nWidth ) rRes += '%';
else {
nWidth -= nLen;
- while( nWidth-- ) rRes += (xub_Unicode)cFill;
- if( cPre ) rRes += (xub_Unicode)cPre;
+ while( nWidth-- ) rRes += (sal_Unicode)cFill;
+ if( cPre ) rRes += (sal_Unicode)cPre;
}
- rRes += (xub_Unicode*)&(cBuf[0]);
+ rRes += (sal_Unicode*)&(cBuf[0]);
if( bTrail )
rRes += bNeg ? '-' : ' ';
@@ -557,40 +558,47 @@ static sal_uInt16 printfmtnum( double nNum, XubString& rRes, const XubString& rW
#endif //_old_format_code_
-static sal_uInt16 printfmtstr( const XubString& rStr, XubString& rRes, const XubString& rFmt )
+static sal_uInt16 printfmtstr( const OUString& rStr, OUString& rRes, const OUString& rFmt )
{
- const xub_Unicode* pStr = rStr.GetBuffer();
- const xub_Unicode* pFmtStart = rFmt.GetBuffer();
- const xub_Unicode* pFmt = pFmtStart;
- rRes.Erase();
+ OUStringBuffer aTemp;
+ const sal_Unicode* pStr = rStr.getStr();
+ const sal_Unicode* pFmtStart = rFmt.getStr();
+ const sal_Unicode* pFmt = pFmtStart;
+
switch( *pFmt )
{
- case '!':
- rRes += *pStr++; pFmt++; break;
- case '\\':
- do
- {
- rRes += *pStr ? *pStr++ : static_cast< xub_Unicode >(' ');
- pFmt++;
- } while( *pFmt != '\\' );
- rRes += *pStr ? *pStr++ : static_cast< xub_Unicode >(' ');
- pFmt++; break;
- case '&':
- rRes = rStr;
- pFmt++; break;
- default:
- rRes = rStr;
- break;
+ case '!':
+ aTemp.append(*pStr++);
+ pFmt++;
+ break;
+ case '\\':
+ do
+ {
+ aTemp.append( *pStr ? *pStr++ : static_cast< sal_Unicode >(' '));
+ pFmt++;
+ }
+ while( *pFmt != '\\' );
+ aTemp.append(*pStr ? *pStr++ : static_cast< sal_Unicode >(' '));
+ pFmt++; break;
+ case '&':
+ aTemp = rStr;
+ pFmt++; break;
+ default:
+ aTemp = rStr;
+ break;
}
+ rRes = aTemp.makeStringAndClear();
return (sal_uInt16) ( pFmt - pFmtStart );
}
-sal_Bool SbxValue::Scan( const XubString& rSrc, sal_uInt16* pLen )
+sal_Bool SbxValue::Scan( const OUString& rSrc, sal_uInt16* pLen )
{
SbxError eRes = SbxERR_OK;
if( !CanWrite() )
+ {
eRes = SbxERR_PROP_READONLY;
+ }
else
{
double n;
@@ -599,7 +607,9 @@ sal_Bool SbxValue::Scan( const XubString& rSrc, sal_uInt16* pLen )
if( eRes == SbxERR_OK )
{
if( !IsFixed() )
+ {
SetType( t );
+ }
PutDouble( n );
}
}
@@ -608,7 +618,9 @@ sal_Bool SbxValue::Scan( const XubString& rSrc, sal_uInt16* pLen )
SetError( eRes ); return sal_False;
}
else
+ {
return sal_True;
+ }
}
@@ -690,7 +702,7 @@ VbaFormatInfo* getFormatInfo( const String& rFmt )
#define VBAFORMAT_LOWERCASE "<"
#define VBAFORMAT_UPPERCASE ">"
-void SbxValue::Format( XubString& rRes, const XubString* pFmt ) const
+void SbxValue::Format( OUString& rRes, const OUString* pFmt ) const
{
short nComma = 0;
double d = 0;
@@ -700,16 +712,16 @@ void SbxValue::Format( XubString& rRes, const XubString* pFmt ) const
// VBA output besides the OOo-basic output
if( pFmt && !SbxBasicFormater::isBasicFormat( *pFmt ) )
{
- String aStr = GetString();
+ OUString aStr = GetOUString();
- if( pFmt->EqualsIgnoreCaseAscii( VBAFORMAT_LOWERCASE ) )
+ if( pFmt->equalsIgnoreAsciiCase( VBAFORMAT_LOWERCASE ) )
{
- rRes = aStr.ToLowerAscii();
+ rRes = aStr.toAsciiLowerCase();
return;
}
- if( pFmt->EqualsIgnoreCaseAscii( VBAFORMAT_UPPERCASE ) )
+ if( pFmt->equalsIgnoreAsciiCase( VBAFORMAT_UPPERCASE ) )
{
- rRes = aStr.ToUpperAscii();
+ rRes = aStr.toAsciiUpperCase();
return;
}
@@ -727,74 +739,74 @@ void SbxValue::Format( XubString& rRes, const XubString* pFmt ) const
// number format, use SvNumberFormatter to handle it.
if( bSuccess )
{
- xub_StrLen nCheckPos = 0;
+ sal_uInt16 nCheckPos = 0;
short nType;
- String aFmtStr = *pFmt;
+ OUString aFmtStr = *pFmt;
VbaFormatInfo* pInfo = getFormatInfo( aFmtStr );
if( pInfo && pInfo->meType != VBA_FORMAT_TYPE_NULL )
- {
+ {
if( pInfo->meType == VBA_FORMAT_TYPE_OFFSET )
{
nIndex = aFormatter.GetFormatIndex( pInfo->meOffset, eLangType );
}
else
- {
- aFmtStr.AssignAscii( pInfo->mpOOoFormat );
+ {
+ aFmtStr = rtl::OUString::createFromAscii(pInfo->mpOOoFormat);
aFormatter.PutandConvertEntry( aFmtStr, nCheckPos, nType, nIndex, LANGUAGE_ENGLISH, eLangType );
}
aFormatter.GetOutputString( nNumber, nIndex, rRes, &pCol );
}
- else if( aFmtStr.EqualsIgnoreCaseAscii( VBAFORMAT_GENERALDATE )
- || aFmtStr.EqualsIgnoreCaseAscii( VBAFORMAT_C ))
+ else if( aFmtStr.equalsIgnoreAsciiCase( VBAFORMAT_GENERALDATE )
+ || aFmtStr.equalsIgnoreAsciiCase( VBAFORMAT_C ))
{
if( nNumber <=-1.0 || nNumber >= 1.0 )
{
// short date
nIndex = aFormatter.GetFormatIndex( NF_DATE_SYSTEM_SHORT, eLangType );
- aFormatter.GetOutputString( nNumber, nIndex, rRes, &pCol );
+ aFormatter.GetOutputString( nNumber, nIndex, rRes, &pCol );
// long time
if( floor( nNumber ) != nNumber )
{
- aFmtStr.AssignAscii( "H:MM:SS AM/PM" );
+ aFmtStr = "H:MM:SS AM/PM";
aFormatter.PutandConvertEntry( aFmtStr, nCheckPos, nType, nIndex, LANGUAGE_ENGLISH, eLangType );
- String aTime;
+ OUString aTime;
aFormatter.GetOutputString( nNumber, nIndex, aTime, &pCol );
- rRes.AppendAscii(" ");
+ rRes += " ";
rRes += aTime;
}
}
else
{
// long time only
- aFmtStr.AssignAscii( "H:MM:SS AM/PM" );
+ aFmtStr = "H:MM:SS AM/PM";
aFormatter.PutandConvertEntry( aFmtStr, nCheckPos, nType, nIndex, LANGUAGE_ENGLISH, eLangType );
aFormatter.GetOutputString( nNumber, nIndex, rRes, &pCol );
}
}
- else if( aFmtStr.EqualsIgnoreCaseAscii( VBAFORMAT_N )
- || aFmtStr.EqualsIgnoreCaseAscii( VBAFORMAT_NN ))
+ else if( aFmtStr.equalsIgnoreAsciiCase( VBAFORMAT_N ) ||
+ aFmtStr.equalsIgnoreAsciiCase( VBAFORMAT_NN ))
{
sal_Int32 nMin = implGetMinute( nNumber );
- if( nMin < 10 && aFmtStr.EqualsIgnoreCaseAscii( VBAFORMAT_NN ) )
+ if( nMin < 10 && aFmtStr.equalsIgnoreAsciiCase( VBAFORMAT_NN ))
{
// Minute in two digits
sal_Unicode aBuf[2];
aBuf[0] = '0';
aBuf[1] = '0' + nMin;
- rRes = rtl::OUString(aBuf, SAL_N_ELEMENTS(aBuf));
+ rRes = OUString(aBuf, SAL_N_ELEMENTS(aBuf));
}
else
{
rRes = rtl::OUString::valueOf(nMin);
}
}
- else if( aFmtStr.EqualsIgnoreCaseAscii( VBAFORMAT_W ))
+ else if( aFmtStr.equalsIgnoreAsciiCase( VBAFORMAT_W ))
{
sal_Int32 nWeekDay = implGetWeekDay( nNumber );
rRes = rtl::OUString::valueOf(nWeekDay);
}
- else if( aFmtStr.EqualsIgnoreCaseAscii( VBAFORMAT_Y ))
+ else if( aFmtStr.equalsIgnoreAsciiCase( VBAFORMAT_Y ))
{
sal_Int16 nYear = implGetDateYear( nNumber );
double dBaseDate;
@@ -815,120 +827,115 @@ void SbxValue::Format( XubString& rRes, const XubString* pFmt ) const
SbxDataType eType = GetType();
switch( eType )
{
- case SbxCHAR:
- case SbxBYTE:
- case SbxINTEGER:
- case SbxUSHORT:
- case SbxLONG:
- case SbxULONG:
- case SbxINT:
- case SbxUINT:
- case SbxNULL: // #45929 NULL with a little cheating
- nComma = 0; goto cvt;
- case SbxSINGLE:
- nComma = 6; goto cvt;
- case SbxDOUBLE:
- nComma = 14;
-
- cvt:
- if( eType != SbxNULL )
- d = GetDouble();
+ case SbxCHAR:
+ case SbxBYTE:
+ case SbxINTEGER:
+ case SbxUSHORT:
+ case SbxLONG:
+ case SbxULONG:
+ case SbxINT:
+ case SbxUINT:
+ case SbxNULL: // #45929 NULL with a little cheating
+ nComma = 0; goto cvt;
+ case SbxSINGLE:
+ nComma = 6; goto cvt;
+ case SbxDOUBLE:
+ nComma = 14;
+
+ cvt:
+ if( eType != SbxNULL )
+ {
+ d = GetDouble();
+ }
+ // #45355 another point to jump in for isnumeric-String
+ cvt2:
+ if( pFmt )
+ {
+ SbxAppData& rAppData = GetSbxData_Impl();
- // #45355 another point to jump in for isnumeric-String
- cvt2:
- if( pFmt )
+ LanguageType eLangType = GetpApp()->GetSettings().GetLanguage();
+ if( rAppData.pBasicFormater )
{
- SbxAppData& rAppData = GetSbxData_Impl();
-
- LanguageType eLangType = GetpApp()->GetSettings().GetLanguage();
- if( rAppData.pBasicFormater )
+ if( rAppData.eBasicFormaterLangType != eLangType )
{
- if( rAppData.eBasicFormaterLangType != eLangType )
- {
- delete rAppData.pBasicFormater;
- rAppData.pBasicFormater = NULL;
- }
+ delete rAppData.pBasicFormater;
+ rAppData.pBasicFormater = NULL;
}
- rAppData.eBasicFormaterLangType = eLangType;
-
+ }
+ rAppData.eBasicFormaterLangType = eLangType;
- if( !rAppData.pBasicFormater )
- {
- SvtSysLocale aSysLocale;
- const LocaleDataWrapper& rData = aSysLocale.GetLocaleData();
- sal_Unicode cComma = rData.getNumDecimalSep()[0];
- sal_Unicode c1000 = rData.getNumThousandSep()[0];
- String aCurrencyStrg = rData.getCurrSymbol();
-
- // initialize the Basic-formater help object:
- // get resources for predefined output
- // of the Format()-command, e. g. for "On/Off"
- rtl::OUString aOnStrg = SbxValueFormatResId(
- STR_BASICKEY_FORMAT_ON).toString();
- rtl::OUString aOffStrg = SbxValueFormatResId(
- STR_BASICKEY_FORMAT_OFF).toString();
- rtl::OUString aYesStrg = SbxValueFormatResId(
- STR_BASICKEY_FORMAT_YES).toString();
- rtl::OUString aNoStrg = SbxValueFormatResId(
- STR_BASICKEY_FORMAT_NO).toString();
- rtl::OUString aTrueStrg = SbxValueFormatResId(
- STR_BASICKEY_FORMAT_TRUE).toString();
- rtl::OUString aFalseStrg = SbxValueFormatResId(
- STR_BASICKEY_FORMAT_FALSE).toString();
- rtl::OUString aCurrencyFormatStrg = SbxValueFormatResId(
- STR_BASICKEY_FORMAT_CURRENCY).toString();
-
- rAppData.pBasicFormater
- = new SbxBasicFormater( cComma,c1000,aOnStrg,aOffStrg,
- aYesStrg,aNoStrg,aTrueStrg,aFalseStrg,
- aCurrencyStrg,aCurrencyFormatStrg );
- }
- // Remark: For performance reasons there's only ONE BasicFormater-
- // object created and 'stored', so that the expensive resource-
- // loading is saved (for country-specific predefined outputs,
- // e. g. "On/Off") and the continous string-creation
- // operations, too.
- // BUT: therefore this code is NOT multithreading capable!
-
- // here are problems with ;;;Null because this method is only
- // called, if SbxValue is a number!!!
- // in addition rAppData.pBasicFormater->BasicFormatNull( *pFmt ); could be called!
- if( eType != SbxNULL )
- {
- rRes = rAppData.pBasicFormater->BasicFormat( d ,*pFmt );
- }
- else
- {
- rRes = rAppData.pBasicFormater->BasicFormatNull( *pFmt );
- }
+ if( !rAppData.pBasicFormater )
+ {
+ SvtSysLocale aSysLocale;
+ const LocaleDataWrapper& rData = aSysLocale.GetLocaleData();
+ sal_Unicode cComma = rData.getNumDecimalSep()[0];
+ sal_Unicode c1000 = rData.getNumThousandSep()[0];
+ OUString aCurrencyStrg = rData.getCurrSymbol();
+
+ // initialize the Basic-formater help object:
+ // get resources for predefined output
+ // of the Format()-command, e. g. for "On/Off"
+ OUString aOnStrg = SbxValueFormatResId(STR_BASICKEY_FORMAT_ON).toString();
+ OUString aOffStrg = SbxValueFormatResId(STR_BASICKEY_FORMAT_OFF).toString();
+ OUString aYesStrg = SbxValueFormatResId(STR_BASICKEY_FORMAT_YES).toString();
+ OUString aNoStrg = SbxValueFormatResId(STR_BASICKEY_FORMAT_NO).toString();
+ OUString aTrueStrg = SbxValueFormatResId(STR_BASICKEY_FORMAT_TRUE).toString();
+ OUString aFalseStrg = SbxValueFormatResId(STR_BASICKEY_FORMAT_FALSE).toString();
+ OUString aCurrencyFormatStrg = SbxValueFormatResId(STR_BASICKEY_FORMAT_CURRENCY).toString();
+
+ rAppData.pBasicFormater = new SbxBasicFormater( cComma,c1000,aOnStrg,aOffStrg,
+ aYesStrg,aNoStrg,aTrueStrg,aFalseStrg,
+ aCurrencyStrg,aCurrencyFormatStrg );
+ }
+ // Remark: For performance reasons there's only ONE BasicFormater-
+ // object created and 'stored', so that the expensive resource-
+ // loading is saved (for country-specific predefined outputs,
+ // e. g. "On/Off") and the continous string-creation
+ // operations, too.
+ // BUT: therefore this code is NOT multithreading capable!
+
+ // here are problems with ;;;Null because this method is only
+ // called, if SbxValue is a number!!!
+ // in addition rAppData.pBasicFormater->BasicFormatNull( *pFmt ); could be called!
+ if( eType != SbxNULL )
+ {
+ rRes = rAppData.pBasicFormater->BasicFormat( d ,*pFmt );
}
else
{
- ::rtl::OUString aTmpString( rRes );
- ImpCvtNum( GetDouble(), nComma, aTmpString );
- rRes = aTmpString;
+ rRes = rAppData.pBasicFormater->BasicFormatNull( *pFmt );
}
- break;
- case SbxSTRING:
- if( pFmt )
+
+ }
+ else
+ {
+ OUString aTmpString( rRes );
+ ImpCvtNum( GetDouble(), nComma, aTmpString );
+ rRes = aTmpString;
+ }
+ break;
+ case SbxSTRING:
+ if( pFmt )
+ {
+ // #45355 converting if numeric
+ if( IsNumericRTL() )
{
- // #45355 converting if numeric
- if( IsNumericRTL() )
- {
- ScanNumIntnl( GetString(), d, /*bSingle*/false );
- goto cvt2;
- }
- else
- {
- printfmtstr( GetString(), rRes, *pFmt );
- }
+ ScanNumIntnl( GetOUString(), d, /*bSingle*/false );
+ goto cvt2;
}
else
- rRes = GetString();
- break;
- default:
- rRes = GetString();
+ {
+ printfmtstr( GetOUString(), rRes, *pFmt );
+ }
+ }
+ else
+ {
+ rRes = GetOUString();
+ }
+ break;
+ default:
+ rRes = GetOUString();
}
}
diff --git a/basic/source/sbx/sbxsng.cxx b/basic/source/sbx/sbxsng.cxx
index 0c88aa5bfb2c..f48d185e2829 100644
--- a/basic/source/sbx/sbxsng.cxx
+++ b/basic/source/sbx/sbxsng.cxx
@@ -239,7 +239,7 @@ start:
{
SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMINCHAR;
}
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
if( n > SbxMAXBYTE )
{
diff --git a/basic/source/sbx/sbxstr.cxx b/basic/source/sbx/sbxstr.cxx
index a17cb1690fb6..e0306fcfb6a3 100644
--- a/basic/source/sbx/sbxstr.cxx
+++ b/basic/source/sbx/sbxstr.cxx
@@ -70,23 +70,31 @@
case SbxSTRING:
case SbxLPSTR:
if ( p->pOUString )
+ {
*aTmp.pOUString = *p->pOUString;
+ }
break;
case SbxOBJECT:
{
SbxValue* pVal = PTR_CAST(SbxValue,p->pObj);
if( pVal )
- aRes = pVal->GetString();
+ {
+ aRes = pVal->GetOUString();
+ }
else if( p->pObj && p->pObj->IsFixed()
&& (p->pObj->GetType() == (SbxARRAY | SbxBYTE )) )
{
// convert byte array to string
SbxArray* pArr = PTR_CAST(SbxArray, p->pObj);
if( pArr )
+ {
aRes = ByteArrayToString( pArr );
+ }
}
else
+ {
SbxBase::SetError( SbxERR_NO_OBJECT );
+ }
break;
}
case SbxERROR:
diff --git a/basic/source/sbx/sbxuint.cxx b/basic/source/sbx/sbxuint.cxx
index 41710f911400..d9080c760069 100644
--- a/basic/source/sbx/sbxuint.cxx
+++ b/basic/source/sbx/sbxuint.cxx
@@ -272,7 +272,7 @@ start:
}
case SbxBYREF | SbxCHAR:
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
if( n > SbxMAXBYTE )
{
diff --git a/basic/source/sbx/sbxulng.cxx b/basic/source/sbx/sbxulng.cxx
index acbf6336c4e9..53b8958221c6 100644
--- a/basic/source/sbx/sbxulng.cxx
+++ b/basic/source/sbx/sbxulng.cxx
@@ -240,7 +240,7 @@ start:
{
SbxBase::SetError( SbxERR_OVERFLOW ); n = SbxMAXCHAR;
}
- *p->pChar = (xub_Unicode) n; break;
+ *p->pChar = (sal_Unicode) n; break;
case SbxBYREF | SbxBYTE:
if( n > SbxMAXBYTE )
{
diff --git a/basic/source/sbx/sbxvalue.cxx b/basic/source/sbx/sbxvalue.cxx
index 5d7f5179ad6c..1bd875bec702 100644
--- a/basic/source/sbx/sbxvalue.cxx
+++ b/basic/source/sbx/sbxvalue.cxx
@@ -127,7 +127,7 @@ SbxValue& SbxValue::operator=( const SbxValue& r )
&& aData.pObj && ( aData.pObj->GetType() == (SbxARRAY | SbxBYTE) )
&& (r.aData.eType == SbxSTRING) )
{
- ::rtl::OUString aStr = r.GetString();
+ OUString aStr = r.GetOUString();
SbxArray* pArr = StringToByteArray(aStr);
PutObject(pArr);
return *this;
@@ -405,38 +405,30 @@ sal_Bool SbxValue::Get( SbxValues& rRes ) const
return bRes;
}
-const XubString& SbxValue::GetString() const
-{
- SbxValues aRes;
- aRes.eType = SbxSTRING;
- if( Get( aRes ) )
- ((SbxValue*) this)->aToolString = *aRes.pOUString;
- else
- ((SbxValue*) this)->aToolString.Erase();
-
- return aToolString;
-}
-
-const XubString& SbxValue::GetCoreString() const
+const OUString& SbxValue::GetCoreString() const
{
SbxValues aRes;
aRes.eType = SbxCoreSTRING;
if( Get( aRes ) )
+ {
((SbxValue*) this)->aToolString = *aRes.pOUString;
+ }
else
- ((SbxValue*) this)->aToolString.Erase();
-
+ {
+ ((SbxValue*) this)->aToolString = "";
+ }
return aToolString;
}
-::rtl::OUString SbxValue::GetOUString() const
+OUString SbxValue::GetOUString() const
{
- ::rtl::OUString aResult;
+ OUString aResult;
SbxValues aRes;
aRes.eType = SbxSTRING;
if( Get( aRes ) )
+ {
aResult = *aRes.pOUString;
-
+ }
return aResult;
}
@@ -452,7 +444,7 @@ sal_Bool SbxValue::GetBool() const
t SbxValue::g() const { SbxValues aRes(e); Get( aRes ); return aRes.m; }
GET( GetByte, SbxBYTE, sal_uInt8, nByte )
-GET( GetChar, SbxCHAR, xub_Unicode, nChar )
+GET( GetChar, SbxCHAR, sal_Unicode, nChar )
GET( GetCurrency, SbxCURRENCY, sal_Int64, nInt64 )
GET( GetDate, SbxDATE, double, nDouble )
GET( GetDouble, SbxDOUBLE, double, nDouble )
@@ -815,7 +807,7 @@ sal_Bool SbxValue::SetType( SbxDataType t )
sal_uInt16 nSlotId = pThisVar
? ( (sal_Int16) ( pThisVar->GetUserData() & 0xFFFF ) )
: 0;
- DBG_ASSERT( nSlotId != 5345 || pThisVar->GetName().EqualsAscii("Parent"),
+ DBG_ASSERT( nSlotId != 5345 || pThisVar->GetName().equalsAscii("Parent"),
"SID_PARENTOBJECT heisst nicht 'Parent'" );
sal_Bool bParentProp = 5345 == nSlotId;
if ( !bParentProp )
diff --git a/basic/source/sbx/sbxvar.cxx b/basic/source/sbx/sbxvar.cxx
index 60e344840f42..f9148c75003f 100644
--- a/basic/source/sbx/sbxvar.cxx
+++ b/basic/source/sbx/sbxvar.cxx
@@ -43,7 +43,7 @@ static sal_uIntPtr nVar = 0;
class SbxVariableImpl
{
friend class SbxVariable;
- String m_aDeclareClassName;
+ OUString m_aDeclareClassName;
Reference< XInterface > m_xComListener;
StarBASIC* m_pComListenerParentBasic;
@@ -76,7 +76,10 @@ SbxVariable::SbxVariable() : SbxValue()
void registerComListenerVariableForBasic( SbxVariable* pVar, StarBASIC* pBasic );
SbxVariable::SbxVariable( const SbxVariable& r )
- : SvRefBase( r ), SbxValue( r ), mpPar( r.mpPar ), pInfo( r.pInfo )
+ : SvRefBase( r ),
+ SbxValue( r ),
+ mpPar( r.mpPar ),
+ pInfo( r.pInfo )
{
mpSbxVariableImpl = NULL;
if( r.mpSbxVariableImpl != NULL )
@@ -84,7 +87,9 @@ SbxVariable::SbxVariable( const SbxVariable& r )
mpSbxVariableImpl = new SbxVariableImpl( *r.mpSbxVariableImpl );
#ifndef DISABLE_SCRIPTING
if( mpSbxVariableImpl->m_xComListener.is() )
+ {
registerComListenerVariableForBasic( this, mpSbxVariableImpl->m_pComListenerParentBasic );
+ }
#endif
}
pCst = NULL;
@@ -102,9 +107,10 @@ SbxVariable::SbxVariable( const SbxVariable& r )
nHash = 0;
}
#ifdef DBG_UTIL
- static sal_Char const aCellsStr[] = "Cells";
- if ( maName.EqualsAscii( aCellsStr ) )
- maName.AssignAscii( aCellsStr, sizeof( aCellsStr )-1 );
+ if ( maName.equalsAscii( "Cells"))
+ {
+ maName = "Cells";
+ }
DbgOutf( "SbxVariable::Ctor %lx=%ld", (void*)this, ++nVar );
#endif
}
@@ -126,15 +132,18 @@ void removeDimAsNewRecoverItem( SbxVariable* pVar );
SbxVariable::~SbxVariable()
{
#ifdef DBG_UTIL
- rtl::OString aBStr(rtl::OUStringToOString(maName, RTL_TEXTENCODING_ASCII_US));
+ OString aBStr(rtl::OUStringToOString(maName, RTL_TEXTENCODING_ASCII_US));
DbgOutf( "SbxVariable::Dtor %lx (%s)", (void*)this, aBStr.getStr() );
- static sal_Char const aCellsStr[] = "Cells";
- if ( maName.EqualsAscii( aCellsStr ) )
- maName.AssignAscii( aCellsStr, sizeof( aCellsStr )-1 );
+ if ( maName.equalsAscii( "Cells"))
+ {
+ maName = "Cells";
+ }
#endif
#ifndef DISABLE_SCRIPTING
if( IsSet( SBX_DIM_AS_NEW ))
+ {
removeDimAsNewRecoverItem( this );
+ }
#endif
delete mpSbxVariableImpl;
delete pCst;
@@ -145,7 +154,9 @@ SbxVariable::~SbxVariable()
SfxBroadcaster& SbxVariable::GetBroadcaster()
{
if( !pCst )
+ {
pCst = new SfxBroadcaster;
+ }
return *pCst;
}
@@ -169,19 +180,29 @@ void SbxVariable::Broadcast( sal_uIntPtr nHintId )
// Because the method could be called from outside, check the
// rights here again
if( nHintId & SBX_HINT_DATAWANTED )
+ {
if( !CanRead() )
+ {
return;
+ }
+ }
if( nHintId & SBX_HINT_DATACHANGED )
+ {
if( !CanWrite() )
+ {
return;
+ }
+ }
// Avoid further broadcasting
SfxBroadcaster* pSave = pCst;
pCst = NULL;
sal_uInt16 nSaveFlags = GetFlags();
SetFlag( SBX_READWRITE );
if( mpPar.Is() )
+ {
// Register this as element 0, but don't change over the parent!
mpPar->GetRef( 0 ) = this;
+ }
pSave->Broadcast( SbxHint( nHintId, this ) );
delete pCst; // who knows already, onto which thoughts someone comes?
pCst = pSave;
@@ -195,7 +216,9 @@ SbxInfo* SbxVariable::GetInfo()
{
Broadcast( SBX_HINT_INFOWANTED );
if( pInfo.Is() )
+ {
SetModified( sal_True );
+ }
}
return pInfo;
}
@@ -213,84 +236,110 @@ void SbxVariable::SetParameters( SbxArray* p )
/////////////////////////// Name of the variables ///////////////////////////
-void SbxVariable::SetName( const XubString& rName )
+void SbxVariable::SetName( const OUString& rName )
{
maName = rName;
nHash = MakeHashCode( rName );
}
-const XubString& SbxVariable::GetName( SbxNameType t ) const
+const OUString& SbxVariable::GetName( SbxNameType t ) const
{
static char cSuffixes[] = " %&!#@ $";
if( t == SbxNAME_NONE )
+ {
return maName;
+ }
// Request parameter-information (not for objects)
((SbxVariable*)this)->GetInfo();
// Append nothing, if it is a simple property (no empty brackets)
- if( !pInfo
- || ( pInfo->aParams.empty() && GetClass() == SbxCLASS_PROPERTY ) )
+ if( !pInfo || ( pInfo->aParams.empty() && GetClass() == SbxCLASS_PROPERTY ))
+ {
return maName;
- xub_Unicode cType = ' ';
- XubString aTmp( maName );
+ }
+ sal_Unicode cType = ' ';
+ OUString aTmp( maName );
// short type? Then fetch it, posible this is 0.
SbxDataType et = GetType();
if( t == SbxNAME_SHORT_TYPES )
{
if( et <= SbxSTRING )
+ {
cType = cSuffixes[ et ];
+ }
if( cType != ' ' )
- aTmp += cType;
+ {
+ aTmp += OUString(sal_Unicode(cType));
+ }
}
- aTmp += '(';
+ aTmp += "(";
+
for(SbxParams::const_iterator i = pInfo->aParams.begin(); i != pInfo->aParams.end(); ++i)
{
int nt = i->eType & 0x0FFF;
if( i != pInfo->aParams.begin() )
- aTmp += ',';
+ {
+ aTmp += ",";
+ }
if( i->nFlags & SBX_OPTIONAL )
- aTmp += String( SbxRes( STRING_OPTIONAL ) );
+ {
+ aTmp += OUString( SbxRes( STRING_OPTIONAL ) );
+ }
if( i->eType & SbxBYREF )
- aTmp += String( SbxRes( STRING_BYREF ) );
+ {
+ aTmp += OUString( SbxRes( STRING_BYREF ) );
+ }
aTmp += i->aName;
cType = ' ';
// short type? Then fetch it, posible this is 0.
if( t == SbxNAME_SHORT_TYPES )
{
if( nt <= SbxSTRING )
+ {
cType = cSuffixes[ nt ];
+ }
}
if( cType != ' ' )
{
- aTmp += cType;
+ aTmp += OUString((sal_Unicode)cType);
if( i->eType & SbxARRAY )
- aTmp.AppendAscii( "()" );
+ {
+ aTmp += "()";
+ }
}
else
{
if( i->eType & SbxARRAY )
- aTmp.AppendAscii( "()" );
+ {
+ aTmp += "()";
+ }
// long type?
if( t != SbxNAME_SHORT )
{
- aTmp += String( SbxRes( STRING_AS ) );
+ aTmp += OUString( SbxRes( STRING_AS ) );
if( nt < 32 )
- aTmp += String( SbxRes(
- sal::static_int_cast< sal_uInt16 >( STRING_TYPES + nt ) ) );
+ {
+ aTmp += OUString( SbxRes( sal::static_int_cast< sal_uInt16 >( STRING_TYPES + nt ) ) );
+ }
else
- aTmp += String( SbxRes( STRING_ANY ) );
+ {
+ aTmp += OUString( SbxRes( STRING_ANY ) );
+ }
}
}
}
- aTmp += ')';
+ aTmp += ")";
// Long type? Then fetch it
if( t == SbxNAME_LONG_TYPES && et != SbxEMPTY )
{
- aTmp += String( SbxRes( STRING_AS ) );
+ aTmp += OUString( SbxRes( STRING_AS ) );
if( et < 32 )
- aTmp += String( SbxRes(
- sal::static_int_cast< sal_uInt16 >( STRING_TYPES + et ) ) );
+ {
+ aTmp += OUString( SbxRes( sal::static_int_cast< sal_uInt16 >( STRING_TYPES + et ) ) );
+ }
else
- aTmp += String( SbxRes( STRING_ANY ) );
+ {
+ aTmp += OUString( SbxRes( STRING_ANY ) );
+ }
}
((SbxVariable*) this)->aToolString = aTmp;
return aToolString;
@@ -298,20 +347,23 @@ const XubString& SbxVariable::GetName( SbxNameType t ) const
// Create a simple hashcode: the first six characters were evaluated.
-sal_uInt16 SbxVariable::MakeHashCode( const XubString& rName )
+sal_uInt16 SbxVariable::MakeHashCode( const OUString& rName )
{
sal_uInt16 n = 0;
- sal_uInt16 nLen = rName.Len();
+ sal_Int32 i = 0;
+ sal_uInt16 nLen = rName.getLength();
if( nLen > 6 )
+ {
nLen = 6;
- const xub_Unicode* p = rName.GetBuffer();
- while( nLen-- )
+ }
+ while( nLen-- )
{
- sal_uInt8 c = (sal_uInt8)*p;
- p++;
+ sal_uInt8 c = (sal_uInt8)rName[i++];
// If we have a commen sigen break!!
if( c >= 0x80 )
+ {
return 0;
+ }
n = sal::static_int_cast< sal_uInt16 >( ( n << 3 ) + toupper( c ) );
}
return n;
@@ -328,11 +380,15 @@ SbxVariable& SbxVariable::operator=( const SbxVariable& r )
mpSbxVariableImpl = new SbxVariableImpl( *r.mpSbxVariableImpl );
#ifndef DISABLE_SCRIPTING
if( mpSbxVariableImpl->m_xComListener.is() )
+ {
registerComListenerVariableForBasic( this, mpSbxVariableImpl->m_pComListenerParentBasic );
+ }
#endif
}
else
+ {
mpSbxVariableImpl = NULL;
+ }
return *this;
}
@@ -341,11 +397,17 @@ SbxVariable& SbxVariable::operator=( const SbxVariable& r )
SbxDataType SbxVariable::GetType() const
{
if( aData.eType == SbxOBJECT )
+ {
return aData.pObj ? aData.pObj->GetType() : SbxOBJECT;
+ }
else if( aData.eType == SbxVARIANT )
+ {
return aData.pObj ? aData.pObj->GetType() : SbxVARIANT;
+ }
else
+ {
return aData.eType;
+ }
}
SbxClassType SbxVariable::GetClass() const
@@ -356,10 +418,14 @@ SbxClassType SbxVariable::GetClass() const
void SbxVariable::SetModified( sal_Bool b )
{
if( IsSet( SBX_NO_MODIFY ) )
+ {
return;
+ }
SbxBase::SetModified( b );
if( pParent && pParent != this ) //??? HotFix: Recursion out here MM
+ {
pParent->SetModified( b );
+ }
}
void SbxVariable::SetParent( SbxObject* p )
@@ -374,15 +440,17 @@ void SbxVariable::SetParent( SbxObject* p )
if ( pChildren )
{
for ( sal_uInt16 nIdx = 0; !bFound && nIdx < pChildren->Count(); ++nIdx )
+ {
bFound = ( this == pChildren->Get(nIdx) );
+ }
}
if ( !bFound )
{
- String aMsg = rtl::OUString("dangling: [");
+ OUString aMsg = "dangling: [";
aMsg += GetName();
- aMsg.AppendAscii( "].SetParent([" );
+ aMsg += "].SetParent([";
aMsg += p->GetName();
- aMsg.AppendAscii( "])" );
+ aMsg += "])";
rtl::OString aBStr(rtl::OUStringToOString(aMsg, RTL_TEXTENCODING_ASCII_US));
DbgOut( aBStr.getStr(), DBG_OUT_WARNING, __FILE__, __LINE__);
}
@@ -395,17 +463,19 @@ void SbxVariable::SetParent( SbxObject* p )
SbxVariableImpl* SbxVariable::getImpl( void )
{
if( mpSbxVariableImpl == NULL )
+ {
mpSbxVariableImpl = new SbxVariableImpl();
+ }
return mpSbxVariableImpl;
}
-const String& SbxVariable::GetDeclareClassName( void )
+const OUString& SbxVariable::GetDeclareClassName( void )
{
SbxVariableImpl* pImpl = getImpl();
return pImpl->m_aDeclareClassName;
}
-void SbxVariable::SetDeclareClassName( const String& rDeclareClassName )
+void SbxVariable::SetDeclareClassName( const OUString& rDeclareClassName )
{
SbxVariableImpl* pImpl = getImpl();
pImpl->m_aDeclareClassName = rDeclareClassName;
@@ -439,9 +509,11 @@ sal_Bool SbxVariable::LoadData( SvStream& rStrm, sal_uInt16 nVer )
if( cMark == 0xFF )
{
if( !SbxValue::LoadData( rStrm, nVer ) )
+ {
return sal_False;
+ }
maName = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
- RTL_TEXTENCODING_ASCII_US);
+ RTL_TEXTENCODING_ASCII_US);
sal_uInt32 nTemp;
rStrm >> nTemp;
nUserData = nTemp;
@@ -451,70 +523,74 @@ sal_Bool SbxVariable::LoadData( SvStream& rStrm, sal_uInt16 nVer )
rStrm.SeekRel( -1L );
rStrm >> nType;
maName = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
- RTL_TEXTENCODING_ASCII_US);
+ RTL_TEXTENCODING_ASCII_US);
sal_uInt32 nTemp;
rStrm >> nTemp;
nUserData = nTemp;
// correction: old methods have instead of SbxNULL now SbxEMPTY
if( nType == SbxNULL && GetClass() == SbxCLASS_METHOD )
+ {
nType = SbxEMPTY;
+ }
SbxValues aTmp;
- String aTmpString;
- ::rtl::OUString aVal;
+ OUString aTmpString;
+ OUString aVal;
aTmp.eType = aData.eType = (SbxDataType) nType;
aTmp.pOUString = &aVal;
switch( nType )
{
- case SbxBOOL:
- case SbxERROR:
- case SbxINTEGER:
- rStrm >> aTmp.nInteger; break;
- case SbxLONG:
- rStrm >> aTmp.nLong; break;
- case SbxSINGLE:
- {
- // Floats as ASCII
- aTmpString = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(
+ case SbxBOOL:
+ case SbxERROR:
+ case SbxINTEGER:
+ rStrm >> aTmp.nInteger; break;
+ case SbxLONG:
+ rStrm >> aTmp.nLong; break;
+ case SbxSINGLE:
+ {
+ // Floats as ASCII
+ aTmpString = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(
rStrm, RTL_TEXTENCODING_ASCII_US);
- double d;
- SbxDataType t;
- if( ImpScan( aTmpString, d, t, NULL ) != SbxERR_OK || t == SbxDOUBLE )
- {
- aTmp.nSingle = 0;
- return sal_False;
- }
- aTmp.nSingle = (float) d;
- break;
- }
- case SbxDATE:
- case SbxDOUBLE:
+ double d;
+ SbxDataType t;
+ if( ImpScan( aTmpString, d, t, NULL ) != SbxERR_OK || t == SbxDOUBLE )
{
- // Floats as ASCII
- aTmpString = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
- RTL_TEXTENCODING_ASCII_US);
- SbxDataType t;
- if( ImpScan( aTmpString, aTmp.nDouble, t, NULL ) != SbxERR_OK )
- {
- aTmp.nDouble = 0;
- return sal_False;
- }
- break;
+ aTmp.nSingle = 0;
+ return sal_False;
}
- case SbxSTRING:
- aVal = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
- RTL_TEXTENCODING_ASCII_US);
- break;
- case SbxEMPTY:
- case SbxNULL:
- break;
- default:
- aData.eType = SbxNULL;
- DBG_ASSERT( !this, "Nicht unterstuetzer Datentyp geladen" );
+ aTmp.nSingle = (float) d;
+ break;
+ }
+ case SbxDATE:
+ case SbxDOUBLE:
+ {
+ // Floats as ASCII
+ aTmpString = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
+ RTL_TEXTENCODING_ASCII_US);
+ SbxDataType t;
+ if( ImpScan( aTmpString, aTmp.nDouble, t, NULL ) != SbxERR_OK )
+ {
+ aTmp.nDouble = 0;
return sal_False;
+ }
+ break;
+ }
+ case SbxSTRING:
+ aVal = read_lenPrefixed_uInt8s_ToOUString<sal_uInt16>(rStrm,
+ RTL_TEXTENCODING_ASCII_US);
+ break;
+ case SbxEMPTY:
+ case SbxNULL:
+ break;
+ default:
+ aData.eType = SbxNULL;
+ DBG_ASSERT( !this, "Nicht unterstuetzer Datentyp geladen" );
+ return sal_False;
}
// putt value
if( nType != SbxNULL && nType != SbxEMPTY && !Put( aTmp ) )
+ {
return sal_False;
+ }
}
rStrm >> cMark;
// cMark is also a version number!
@@ -523,13 +599,17 @@ sal_Bool SbxVariable::LoadData( SvStream& rStrm, sal_uInt16 nVer )
if( cMark )
{
if( cMark > 2 )
+ {
return sal_False;
+ }
pInfo = new SbxInfo;
pInfo->LoadData( rStrm, (sal_uInt16) cMark );
}
// Load private data only, if it is a SbxVariable
if( GetClass() == SbxCLASS_VARIABLE && !LoadPrivateData( rStrm, nVer ) )
+ {
return sal_False;
+ }
((SbxVariable*) this)->Broadcast( SBX_HINT_DATACHANGED );
nHash = MakeHashCode( maName );
SetModified( sal_True );
@@ -557,11 +637,15 @@ sal_Bool SbxVariable::StoreData( SvStream& rStrm ) const
pThis->ResetFlag( SBX_NO_BROADCAST );
}
else
+ {
bValStore = SbxValue::StoreData( rStrm );
+ }
if( !bValStore )
+ {
return sal_False;
+ }
write_lenPrefixed_uInt8s_FromOUString<sal_uInt16>(rStrm, maName,
- RTL_TEXTENCODING_ASCII_US);
+ RTL_TEXTENCODING_ASCII_US);
rStrm << (sal_uInt32)nUserData;
if( pInfo.Is() )
{
@@ -569,12 +653,18 @@ sal_Bool SbxVariable::StoreData( SvStream& rStrm ) const
pInfo->StoreData( rStrm );
}
else
+ {
rStrm << (sal_uInt8) 0;
+ }
// Save private data only, if it is a SbxVariable
if( GetClass() == SbxCLASS_VARIABLE )
+ {
return StorePrivateData( rStrm );
+ }
else
+ {
return sal_True;
+ }
}
////////////////////////////// SbxInfo ///////////////////////////////////
@@ -582,7 +672,7 @@ sal_Bool SbxVariable::StoreData( SvStream& rStrm ) const
SbxInfo::SbxInfo() : aHelpFile(), nHelpId( 0 ), aParams()
{}
-SbxInfo::SbxInfo( const String& r, sal_uInt32 n )
+SbxInfo::SbxInfo( const OUString& r, sal_uInt32 n )
: aHelpFile( r ), nHelpId( n ), aParams()
{}
@@ -602,7 +692,9 @@ SbxAlias& SbxAlias::operator=( const SbxAlias& r )
SbxAlias::~SbxAlias()
{
if( xAlias.Is() )
+ {
EndListening( xAlias->GetBroadcaster() );
+ }
}
void SbxAlias::Broadcast( sal_uIntPtr nHt )
@@ -611,9 +703,13 @@ void SbxAlias::Broadcast( sal_uIntPtr nHt )
{
xAlias->SetParameters( GetParameters() );
if( nHt == SBX_HINT_DATAWANTED )
+ {
SbxVariable::operator=( *xAlias );
+ }
else if( nHt == SBX_HINT_DATACHANGED || nHt == SBX_HINT_CONVERTED )
+ {
*xAlias = *this;
+ }
else if( nHt == SBX_HINT_INFOWANTED )
{
xAlias->Broadcast( nHt );
@@ -631,7 +727,9 @@ void SbxAlias::SFX_NOTIFY( SfxBroadcaster&, const TypeId&,
xAlias.Clear();
// delete the alias?
if( pParent )
+ {
pParent->Remove( this );
+ }
}
}
@@ -643,9 +741,13 @@ void SbxVariable::Dump( SvStream& rStrm, sal_Bool bFill )
<< aBNameStr.getStr();
rtl::OString aBParentNameStr(rtl::OUStringToOString(GetParent()->GetName(), RTL_TEXTENCODING_ASCII_US));
if ( GetParent() )
+ {
rStrm << " in parent '" << aBParentNameStr.getStr() << "'";
+ }
else
+ {
rStrm << " no parent";
+ }
rStrm << " ) ";
// output also the object at object-vars
@@ -658,7 +760,9 @@ void SbxVariable::Dump( SvStream& rStrm, sal_Bool bFill )
((SbxObject*) GetValues_Impl().pObj)->Dump( rStrm, bFill );
}
else
+ {
rStrm << endl;
+ }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/uno/dlgcont.cxx b/basic/source/uno/dlgcont.cxx
index b9ad7f19ecce..1d77d41ed59e 100644
--- a/basic/source/uno/dlgcont.cxx
+++ b/basic/source/uno/dlgcont.cxx
@@ -20,6 +20,7 @@
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/xml/sax/Parser.hpp>
#include <com/sun/star/xml/sax/InputSource.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/embed/ElementModes.hpp>
@@ -125,20 +126,9 @@ bool writeOasis2OOoLibraryElement(
Reference< xml::sax::XParser > xParser = xml::sax::Parser::create(xContext);
- Reference< xml::sax::XExtendedDocumentHandler > xWriter(
- xSMgr->createInstanceWithContext(
- OUString( RTL_CONSTASCII_USTRINGPARAM(
- "com.sun.star.xml.sax.Writer" ) ),
- xContext ),
- UNO_QUERY );
-
- Reference< io::XActiveDataSource > xSource( xWriter, UNO_QUERY );
- xSource->setOutputStream( xOutput );
+ Reference< xml::sax::XWriter > xWriter = xml::sax::Writer::create(xContext);
- if ( !xWriter.is() )
- {
- return sal_False;
- }
+ xWriter->setOutputStream( xOutput );
Sequence<Any> aArgs( 1 );
aArgs[0] <<= xWriter;
diff --git a/basic/source/uno/namecont.cxx b/basic/source/uno/namecont.cxx
index dfce89aa5101..7d49a15ef850 100644
--- a/basic/source/uno/namecont.cxx
+++ b/basic/source/uno/namecont.cxx
@@ -44,6 +44,7 @@
#include <com/sun/star/xml/sax/Parser.hpp>
#include <com/sun/star/xml/sax/InputSource.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
@@ -83,9 +84,6 @@ using namespace osl;
using com::sun::star::uno::Reference;
-using ::rtl::OUString;
-using ::rtl::OStringBuffer;
-using ::rtl::OUStringToOString;
using ::rtl::Uri;
// #i34411: Flag for error handling during migration
@@ -143,8 +141,9 @@ void NameContainer::replaceByName( const OUString& aName, const Any& aElement )
{
Type aAnyType = aElement.getValueType();
if( mType != aAnyType )
+ {
throw IllegalArgumentException();
-
+ }
NameContainerNameMap::iterator aIt = mHashMap.find( aName );
if( aIt == mHashMap.end() )
{
@@ -189,8 +188,9 @@ void NameContainer::insertByName( const OUString& aName, const Any& aElement )
{
Type aAnyType = aElement.getValueType();
if( mType != aAnyType )
+ {
throw IllegalArgumentException();
-
+ }
NameContainerNameMap::iterator aIt = mHashMap.find( aName );
if( aIt != mHashMap.end() )
{
@@ -237,7 +237,7 @@ void NameContainer::removeByName( const OUString& aName )
NameContainerNameMap::iterator aIt = mHashMap.find( aName );
if( aIt == mHashMap.end() )
{
- rtl::OUString sMessage = rtl::OUStringBuffer().append('"')
+ OUString sMessage = OUStringBuffer().append('"')
.append(aName).append("\" not found")
.makeStringAndClear();
throw NoSuchElementException(sMessage, uno::Reference< uno::XInterface >());
@@ -291,7 +291,10 @@ void SAL_CALL NameContainer::addContainerListener( const Reference< XContainerLi
throw (RuntimeException)
{
if( !xListener.is() )
- throw RuntimeException("addContainerListener called with null xListener", static_cast< cppu::OWeakObject * >(this));
+ {
+ throw RuntimeException("addContainerListener called with null xListener",
+ static_cast< cppu::OWeakObject * >(this));
+ }
Reference< XInterface > xIface( xListener, UNO_QUERY );
maContainerListeners.addInterface( xIface );
}
@@ -300,7 +303,9 @@ void SAL_CALL NameContainer::removeContainerListener( const Reference< XContaine
throw (RuntimeException)
{
if( !xListener.is() )
+ {
throw RuntimeException();
+ }
Reference< XInterface > xIface( xListener, UNO_QUERY );
maContainerListeners.removeInterface( xIface );
}
@@ -310,7 +315,9 @@ void SAL_CALL NameContainer::addChangesListener( const Reference< XChangesListen
throw (RuntimeException)
{
if( !xListener.is() )
+ {
throw RuntimeException();
+ }
Reference< XInterface > xIface( xListener, UNO_QUERY );
maChangesListeners.addInterface( xIface );
}
@@ -319,7 +326,9 @@ void SAL_CALL NameContainer::removeChangesListener( const Reference< XChangesLis
throw (RuntimeException)
{
if( !xListener.is() )
+ {
throw RuntimeException();
+ }
Reference< XInterface > xIface( xListener, UNO_QUERY );
maChangesListeners.removeInterface( xIface );
}
@@ -330,12 +339,15 @@ void SAL_CALL NameContainer::removeChangesListener( const Reference< XChangesLis
void ModifiableHelper::setModified( sal_Bool _bModified )
{
if ( _bModified == mbModified )
+ {
return;
+ }
mbModified = _bModified;
if ( m_aModifyListeners.getLength() == 0 )
+ {
return;
-
+ }
EventObject aModifyEvent( m_rEventSource );
m_aModifyListeners.notifyEach( &XModifyListener::modified, aModifyEvent );
}
@@ -347,7 +359,8 @@ VBAScriptListenerContainer::VBAScriptListenerContainer( ::osl::Mutex& rMutex ) :
{
}
-bool VBAScriptListenerContainer::implTypedNotify( const Reference< vba::XVBAScriptListener >& rxListener, const vba::VBAScriptEvent& rEvent ) throw (Exception)
+bool VBAScriptListenerContainer::implTypedNotify( const Reference< vba::XVBAScriptListener >& rxListener, const vba::VBAScriptEvent& rEvent )
+ throw (Exception)
{
rxListener->notifyVBAScriptEvent( rEvent );
return true; // notify all other listeners too
@@ -385,14 +398,19 @@ SfxLibraryContainer::SfxLibraryContainer( void )
SfxLibraryContainer::~SfxLibraryContainer()
{
if( mbOwnBasMgr )
+ {
BasicManager::LegacyDeleteBasicManager( mpBasMgr );
+ }
DBG_DTOR( SfxLibraryContainer, NULL );
}
void SfxLibraryContainer::checkDisposed() const
{
if ( isDisposed() )
- throw DisposedException( ::rtl::OUString(), *const_cast< SfxLibraryContainer* >( this ) );
+ {
+ throw DisposedException( OUString(),
+ *const_cast< SfxLibraryContainer* >( this ) );
+ }
}
void SfxLibraryContainer::enterMethod()
@@ -409,16 +427,18 @@ void SfxLibraryContainer::leaveMethod()
BasicManager* SfxLibraryContainer::getBasicManager( void )
{
if ( mpBasMgr )
+ {
return mpBasMgr;
-
+ }
Reference< XModel > xDocument( mxOwnerDocument.get(), UNO_QUERY );
SAL_WARN_IF(
!xDocument.is(), "basic",
("SfxLibraryContainer::getBasicManager: cannot obtain a BasicManager"
" without document!"));
if ( xDocument.is() )
+ {
mpBasMgr = BasicManagerRepository::getDocumentBasicManager( xDocument );
-
+ }
return mpBasMgr;
}
@@ -429,40 +449,47 @@ Reference< XStorage > SAL_CALL SfxLibraryContainer::getRootStorage() throw (Runt
return mxStorage;
}
-void SAL_CALL SfxLibraryContainer::setRootStorage( const Reference< XStorage >& _rxRootStorage ) throw (IllegalArgumentException, RuntimeException)
+void SAL_CALL SfxLibraryContainer::setRootStorage( const Reference< XStorage >& _rxRootStorage )
+ throw (IllegalArgumentException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
if ( !_rxRootStorage.is() )
+ {
throw IllegalArgumentException();
-
+ }
mxStorage = _rxRootStorage;
onNewRootStorage();
}
-void SAL_CALL SfxLibraryContainer::storeLibrariesToStorage( const Reference< XStorage >& _rxRootStorage ) throw (IllegalArgumentException, WrappedTargetException, RuntimeException)
+void SAL_CALL SfxLibraryContainer::storeLibrariesToStorage( const Reference< XStorage >& _rxRootStorage )
+ throw (IllegalArgumentException, WrappedTargetException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
if ( !_rxRootStorage.is() )
+ {
throw IllegalArgumentException();
-
+ }
try
{
storeLibraries_Impl( _rxRootStorage, true );
}
catch( const Exception& )
{
- throw WrappedTargetException( ::rtl::OUString(), *this, ::cppu::getCaughtException() );
+ throw WrappedTargetException( OUString(),
+ *this, ::cppu::getCaughtException() );
}
}
// Methods XModifiable
-sal_Bool SfxLibraryContainer::isModified() throw (RuntimeException)
+sal_Bool SfxLibraryContainer::isModified()
+ throw (RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
if ( maModifiable.isModified() )
+ {
return sal_True;
-
+ }
// the library container is not modified, go through the libraries and check whether they are modified
Sequence< OUString > aNames = maNameContainer.getElementNames();
const OUString* pNames = aNames.getConstArray();
@@ -483,26 +510,31 @@ sal_Bool SfxLibraryContainer::isModified() throw (RuntimeException)
return sal_True;
}
else
+ {
return sal_True;
+ }
}
}
return sal_False;
}
-void SAL_CALL SfxLibraryContainer::setModified( sal_Bool _bModified ) throw (PropertyVetoException, RuntimeException)
+void SAL_CALL SfxLibraryContainer::setModified( sal_Bool _bModified )
+ throw (PropertyVetoException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
maModifiable.setModified( _bModified );
}
-void SAL_CALL SfxLibraryContainer::addModifyListener( const Reference< XModifyListener >& _rxListener ) throw (RuntimeException)
+void SAL_CALL SfxLibraryContainer::addModifyListener( const Reference< XModifyListener >& _rxListener )
+ throw (RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
maModifiable.addModifyListener( _rxListener );
}
-void SAL_CALL SfxLibraryContainer::removeModifyListener( const Reference< XModifyListener >& _rxListener ) throw (RuntimeException)
+void SAL_CALL SfxLibraryContainer::removeModifyListener( const Reference< XModifyListener >& _rxListener )
+ throw (RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
maModifiable.removeModifyListener( _rxListener );
@@ -515,13 +547,14 @@ Any SAL_CALL SfxLibraryContainer::getRootLocation() throw (RuntimeException)
return makeAny( getRootStorage() );
}
-::rtl::OUString SAL_CALL SfxLibraryContainer::getContainerLocationName() throw (RuntimeException)
+OUString SAL_CALL SfxLibraryContainer::getContainerLocationName() throw (RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
return maLibrariesDir;
}
-void SAL_CALL SfxLibraryContainer::storeLibraries( ) throw (WrappedTargetException, RuntimeException)
+void SAL_CALL SfxLibraryContainer::storeLibraries( )
+ throw (WrappedTargetException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
try
@@ -533,7 +566,7 @@ void SAL_CALL SfxLibraryContainer::storeLibraries( ) throw (WrappedTargetExcept
}
catch( const Exception& )
{
- throw WrappedTargetException( ::rtl::OUString(), *this, ::cppu::getCaughtException() );
+ throw WrappedTargetException( OUString(), *this, ::cppu::getCaughtException() );
}
}
@@ -563,14 +596,17 @@ static void createVariableURL( OUString& rStr, const OUString& rLibName,
const OUString& rInfoFileName, bool bUser )
{
if( bUser )
- rStr = OUString(RTL_CONSTASCII_USTRINGPARAM("$(USER)/basic/"));
+ {
+ rStr = OUString("$(USER)/basic/");
+ }
else
- rStr = OUString(RTL_CONSTASCII_USTRINGPARAM("$(INST)/share/basic/"));
-
+ {
+ rStr = OUString("$(INST)/share/basic/");
+ }
rStr += rLibName;
- rStr += OUString(sal_Unicode('/'));
+ rStr += "/";
rStr += rInfoFileName;
- rStr += OUString(RTL_CONSTASCII_USTRINGPARAM(".xlb/"));
+ rStr += ".xlb/";
}
void SfxLibraryContainer::init( const OUString& rInitialDocumentURL, const uno::Reference< embed::XStorage >& rxInitialStorage )
@@ -663,11 +699,13 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
{
uno::Reference< embed::XStorage > xLibrariesStor;
- String aFileName;
+ OUString aFileName;
int nPassCount = 1;
if( !bStorage && meInitMode == DEFAULT )
+ {
nPassCount = 2;
+ }
for( int nPass = 0 ; nPass < nPassCount ; nPass++ )
{
if( bStorage )
@@ -683,7 +721,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
if ( xLibrariesStor.is() )
{
aFileName = maInfoFileName;
- aFileName += String( RTL_CONSTASCII_USTRINGPARAM("-lc.xml") );
+ aFileName += "-lc.xml";
try
{
@@ -698,7 +736,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
// Check old version
aFileName = maOldInfoFileName;
- aFileName += String( RTL_CONSTASCII_USTRINGPARAM(".xml") );
+ aFileName += ".xml";
try
{
@@ -711,14 +749,16 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
{
// Check for EA2 document version with wrong extensions
aFileName = maOldInfoFileName;
- aFileName += String( RTL_CONSTASCII_USTRINGPARAM(".xli") );
+ aFileName += ".xli";
xStream = xLibrariesStor->openStreamElement( aFileName, embed::ElementModes::READ );
}
}
}
if ( xStream.is() )
+ {
xInput = xStream->getInputStream();
+ }
}
catch(const uno::Exception& )
{
@@ -735,11 +775,15 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
else
{
if( nPass == 1 )
- pLibInfoInetObj = new INetURLObject( String(maLibraryPath).GetToken(0) );
+ {
+ pLibInfoInetObj = new INetURLObject( maLibraryPath.getToken(0, (sal_Unicode)';') );
+ }
else
- pLibInfoInetObj = new INetURLObject( String(maLibraryPath).GetToken(1) );
+ {
+ pLibInfoInetObj = new INetURLObject( maLibraryPath.getToken(1, (sal_Unicode)';') );
+ }
pLibInfoInetObj->insertName( maInfoFileName, sal_False, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
- pLibInfoInetObj->setExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xlc") ) );
+ pLibInfoInetObj->setExtension( OUString("xlc") );
aFileName = pLibInfoInetObj->GetMainURL( INetURLObject::NO_DECODE );
}
@@ -756,9 +800,9 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
// Old variant?
if( !xInput.is() && nPass == 0 )
{
- INetURLObject aLibInfoInetObj( String(maLibraryPath).GetToken(1) );
+ INetURLObject aLibInfoInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
aLibInfoInetObj.insertName( maOldInfoFileName, sal_False, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
- aLibInfoInetObj.setExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xli") ) );
+ aLibInfoInetObj.setExtension( OUString( "xli") );
aFileName = aLibInfoInetObj.GetMainURL( INetURLObject::NO_DECODE );
try
@@ -809,15 +853,19 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
OUString aStorageURL = rLib.aStorageURL;
if( !bStorage && aStorageURL.isEmpty() && nPass == 0 )
{
- String aLibraryPath;
+ OUString aLibraryPath;
if( meInitMode == CONTAINER_INIT_FILE )
+ {
aLibraryPath = maLibraryPath;
+ }
else
- aLibraryPath = String(maLibraryPath).GetToken(1);
+ {
+ aLibraryPath = maLibraryPath.getToken(1, (sal_Unicode)';');
+ }
INetURLObject aInetObj( aLibraryPath );
aInetObj.insertName( rLib.aName, sal_True, INetURLObject::LAST_SEGMENT,
- sal_True, INetURLObject::ENCODE_ALL );
+ sal_True, INetURLObject::ENCODE_ALL );
OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( mxSFI->isFolder( aLibDirPath ) )
{
@@ -827,9 +875,9 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
else if( rLib.bLink )
{
// Check "share" path
- INetURLObject aShareInetObj( String(maLibraryPath).GetToken(0) );
+ INetURLObject aShareInetObj( maLibraryPath.getToken(0, (sal_Unicode)';') );
aShareInetObj.insertName( rLib.aName, sal_True, INetURLObject::LAST_SEGMENT,
- sal_True, INetURLObject::ENCODE_ALL );
+ sal_True, INetURLObject::ENCODE_ALL );
OUString aShareLibDirPath = aShareInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( mxSFI->isFolder( aShareLibDirPath ) )
{
@@ -849,8 +897,9 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
// If the same library name is used by the shared and the
// user lib container index files the user file wins
if( nPass == 1 && hasByName( aLibName ) )
+ {
continue;
-
+ }
SfxLibrary* pImplLib;
if( rLib.bLink )
{
@@ -865,8 +914,10 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
pImplLib->mbLoaded = sal_False;
pImplLib->mbReadOnly = rLib.bReadOnly;
if( !bStorage )
+ {
checkStorageURL( rLib.aStorageURL, pImplLib->maLibInfoFileURL,
- pImplLib->maStorageURL, pImplLib->maUnexpandedStorageURL );
+ pImplLib->maStorageURL, pImplLib->maUnexpandedStorageURL );
+ }
}
maModifiable.setModified( sal_False );
@@ -874,22 +925,23 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
if( !mbOldInfoFormat )
{
uno::Reference< embed::XStorage > xLibraryStor;
- if( !pImplLib->mbInitialised && bStorage )
+ if( !pImplLib->mbInitialised && bStorage )
{
- try {
+ try
+ {
xLibraryStor = xLibrariesStor->openStorageElement( rLib.aName,
embed::ElementModes::READ );
}
catch(const uno::Exception& )
{
- #if OSL_DEBUG_LEVEL > 0
+ #if OSL_DEBUG_LEVEL > 0
Any aError( ::cppu::getCaughtException() );
SAL_WARN(
"basic",
"couldn't open sub storage for library \""
<< rLib.aName << "\". Exception: "
<< comphelper::anyToString(aError));
- #endif
+ #endif
}
}
@@ -903,7 +955,9 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
("Different library names in library container and"
" library info files!"));
if( GbMigrationSuppressErrors && !bLoaded )
+ {
removeLibrary( aLibName );
+ }
}
}
else if( !bStorage )
@@ -926,8 +980,9 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
// Keep flag for documents to force writing the new index files
if( !bStorage )
+ {
mbOldInfoFormat = false;
-
+ }
delete pLibArray;
}
}
@@ -958,13 +1013,15 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
OUString aName = pNames[ i ];
SfxLibrary* pImplLib = getImplLib( aName );
if( pImplLib->mbPreload )
+ {
loadLibrary( aName );
+ }
}
}
if( meInitMode == DEFAULT )
{
- INetURLObject aUserBasicInetObj( String(maLibraryPath).GetToken(1) );
+ INetURLObject aUserBasicInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
OUString aStandardStr( RTL_CONSTASCII_USTRINGPARAM("Standard") );
static char const strPrevFolderName_1[] = "__basic_80";
@@ -980,7 +1037,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
try
{
INetURLObject aPrevUserBasicInetObj = aPrevUserBasicInetObj_1;
- String aPrevFolder = aPrevUserBasicInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aPrevFolder = aPrevUserBasicInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( mxSFI->isFolder( aPrevFolder ) )
{
// Check if Standard folder exists and is complete
@@ -993,35 +1050,35 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
OUString aPrevStandardFolder = aPrevUserBasicStandardInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( mxSFI->isFolder( aPrevStandardFolder ) )
{
- OUString aXlbExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xlb") ) );
+ OUString aXlbExtension( "xlb" );
OUString aCheckFileName;
// Check if script.xlb exists
- aCheckFileName = OUString( RTL_CONSTASCII_USTRINGPARAM("script") );
+ aCheckFileName = OUString("script");
checkAndCopyFileImpl( aUserBasicStandardInetObj,
aPrevUserBasicStandardInetObj,
aCheckFileName, aXlbExtension, mxSFI );
// Check if dialog.xlb exists
- aCheckFileName = OUString( RTL_CONSTASCII_USTRINGPARAM("dialog") );
+ aCheckFileName = OUString("dialog");
checkAndCopyFileImpl( aUserBasicStandardInetObj,
aPrevUserBasicStandardInetObj,
aCheckFileName, aXlbExtension, mxSFI );
// Check if module1.xba exists
- OUString aXbaExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xba") ) );
- aCheckFileName = OUString( RTL_CONSTASCII_USTRINGPARAM("Module1") );
+ OUString aXbaExtension("xba");
+ aCheckFileName = OUString("Module1");
checkAndCopyFileImpl( aUserBasicStandardInetObj,
aPrevUserBasicStandardInetObj,
aCheckFileName, aXbaExtension, mxSFI );
}
else
{
- String aStandardFolder = aUserBasicStandardInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aStandardFolder = aUserBasicStandardInetObj.GetMainURL( INetURLObject::NO_DECODE );
mxSFI->copy( aStandardFolder, aPrevStandardFolder );
}
- String aPrevCopyToFolder = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aPrevCopyToFolder = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::NO_DECODE );
mxSFI->copy( aPrevFolder, aPrevCopyToFolder );
}
else
@@ -1035,11 +1092,11 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
Reference< XInterface > xRef = static_cast< XInterface* >( static_cast< OWeakObject* >(pPrevCont) );
// Rename previous basic folder to make storage URLs correct during initialisation
- String aFolderUserBasic = aUserBasicInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aFolderUserBasic = aUserBasicInetObj.GetMainURL( INetURLObject::NO_DECODE );
INetURLObject aUserBasicTmpInetObj( aUserBasicInetObj );
aUserBasicTmpInetObj.removeSegment();
aUserBasicTmpInetObj.Append( rtl::OString( "__basic_tmp" ));
- String aFolderTmp = aUserBasicTmpInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aFolderTmp = aUserBasicTmpInetObj.GetMainURL( INetURLObject::NO_DECODE );
mxSFI->move( aFolderUserBasic, aFolderTmp );
try
@@ -1062,7 +1119,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
INetURLObject aPrevUserBasicLibInfoInetObj( aUserBasicInetObj );
aPrevUserBasicLibInfoInetObj.insertName( maInfoFileName, sal_False, INetURLObject::LAST_SEGMENT,
sal_True, INetURLObject::ENCODE_ALL );
- aPrevUserBasicLibInfoInetObj.setExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xlc") ) );
+ aPrevUserBasicLibInfoInetObj.setExtension( OUString("xlc"));
OUString aLibInfoFileName = aPrevUserBasicLibInfoInetObj.GetMainURL( INetURLObject::NO_DECODE );
Sequence<Any> aInitSeq( 1 );
aInitSeq.getArray()[0] <<= aLibInfoFileName;
@@ -1074,10 +1131,10 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
mxSFI->move( aFolderUserBasic, aPrevFolder );
mxSFI->move( aFolderTmp, aFolderUserBasic );
- OUString aUserSearchStr(RTL_CONSTASCII_USTRINGPARAM("vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE"));
- OUString aSharedSearchStr(RTL_CONSTASCII_USTRINGPARAM("vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE"));
- OUString aBundledSearchStr(RTL_CONSTASCII_USTRINGPARAM("vnd.sun.star.expand:$BUNDLED_EXTENSIONS"));
- OUString aInstSearchStr(RTL_CONSTASCII_USTRINGPARAM("$(INST)"));
+ OUString aUserSearchStr("vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE");
+ OUString aSharedSearchStr("vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE");
+ OUString aBundledSearchStr("vnd.sun.star.expand:$BUNDLED_EXTENSIONS");
+ OUString aInstSearchStr("$(INST)");
Sequence< OUString > aNames = pPrevCont->getElementNames();
const OUString* pNames = aNames.getConstArray();
@@ -1092,7 +1149,7 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
{
SfxLibrary* pImplLib = getImplLib( aStandardStr );
INetURLObject aStandardFolderInetObj( pImplLib->maStorageURL );
- String aStandardFolder = pImplLib->maStorageURL;
+ OUString aStandardFolder = pImplLib->maStorageURL;
mxSFI->kill( aStandardFolder );
}
else
@@ -1114,24 +1171,30 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
bCreateLink = false;
}
if( bCreateLink )
+ {
createLibraryLink( aLibName, pImplLib->maStorageURL, pImplLib->mbReadOnly );
+ }
}
else
{
// Move folder if not already done
INetURLObject aUserBasicLibFolderInetObj( aUserBasicInetObj );
aUserBasicLibFolderInetObj.Append( aLibName );
- String aLibFolder = aUserBasicLibFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aLibFolder = aUserBasicLibFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
INetURLObject aPrevUserBasicLibFolderInetObj( aPrevUserBasicInetObj );
aPrevUserBasicLibFolderInetObj.Append( aLibName );
- String aPrevLibFolder = aPrevUserBasicLibFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aPrevLibFolder = aPrevUserBasicLibFolderInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( mxSFI->isFolder( aPrevLibFolder ) && !mxSFI->isFolder( aLibFolder ) )
+ {
mxSFI->move( aPrevLibFolder, aLibFolder );
+ }
if( aLibName == aStandardStr )
- maNameContainer.removeByName( aLibName );
+ {
+ maNameContainer.removeByName( aLibName );
+ }
// Create library
Reference< XNameContainer > xLib = createLibrary( aLibName );
@@ -1139,12 +1202,11 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
pNewLib->mbLoaded = false;
pNewLib->implSetModified( sal_False );
checkStorageURL( aLibFolder, pNewLib->maLibInfoFileURL,
- pNewLib->maStorageURL, pNewLib->maUnexpandedStorageURL );
+ pNewLib->maStorageURL, pNewLib->maUnexpandedStorageURL );
uno::Reference< embed::XStorage > xDummyStor;
::xmlscript::LibDescriptor aLibDesc;
- implLoadLibraryIndexFile
- ( pNewLib, aLibDesc, xDummyStor, pNewLib->maLibInfoFileURL );
+ implLoadLibraryIndexFile( pNewLib, aLibDesc, xDummyStor, pNewLib->maLibInfoFileURL );
implImportLibDescriptor( pNewLib, aLibDesc );
}
}
@@ -1164,12 +1226,12 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
INetURLObject aPrevUserBasicInetObj_Err( aUserBasicInetObj );
aPrevUserBasicInetObj_Err.removeSegment();
aPrevUserBasicInetObj_Err.Append( rtl::OString( strErrorSavFolderName ));
- String aPrevFolder_Err = aPrevUserBasicInetObj_Err.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aPrevFolder_Err = aPrevUserBasicInetObj_Err.GetMainURL( INetURLObject::NO_DECODE );
bool bSaved = false;
try
{
- String aPrevFolder_1 = aPrevUserBasicInetObj_1.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aPrevFolder_1 = aPrevUserBasicInetObj_1.GetMainURL( INetURLObject::NO_DECODE );
if( mxSFI->isFolder( aPrevFolder_1 ) )
{
mxSFI->move( aPrevFolder_1, aPrevFolder_Err );
@@ -1180,11 +1242,15 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
{}
try
{
- String aPrevFolder_2 = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aPrevFolder_2 = aPrevUserBasicInetObj_2.GetMainURL( INetURLObject::NO_DECODE );
if( !bSaved && mxSFI->isFolder( aPrevFolder_2 ) )
+ {
mxSFI->move( aPrevFolder_2, aPrevFolder_Err );
+ }
else
+ {
mxSFI->kill( aPrevFolder_2 );
+ }
}
catch(const Exception& )
{}
@@ -1195,14 +1261,15 @@ void SfxLibraryContainer::init_Impl( const OUString& rInitialDocumentURL,
void SfxLibraryContainer::implScanExtensions( void )
{
ScriptExtensionIterator aScriptIt;
- rtl::OUString aLibURL;
+ OUString aLibURL;
bool bPureDialogLib = false;
while ( !(aLibURL = aScriptIt.nextBasicOrDialogLibrary( bPureDialogLib )).isEmpty())
{
if( bPureDialogLib && maInfoFileName == "script" )
+ {
continue;
-
+ }
// Extract lib name
sal_Int32 nLen = aLibURL.getLength();
sal_Int32 indexLastSlash = aLibURL.lastIndexOf( '/' );
@@ -1217,30 +1284,34 @@ void SfxLibraryContainer::implScanExtensions( void )
// If a library of the same exists the existing library wins
if( hasByName( aLibName ) )
+ {
continue;
-
+ }
// Add index file to URL
OUString aIndexFileURL = aLibURL;
if( nReduceCopy == 0 )
- aIndexFileURL += OUString(sal_Unicode('/'));
+ {
+ aIndexFileURL += "/";
+ }
aIndexFileURL += maInfoFileName;
- aIndexFileURL += OUString(RTL_CONSTASCII_USTRINGPARAM(".xlb"));
+ aIndexFileURL += OUString(".xlb");
// Create link
const bool bReadOnly = false;
- Reference< XNameAccess > xLib =
- createLibraryLink( aLibName, aIndexFileURL, bReadOnly );
+ Reference< XNameAccess > xLib = createLibraryLink( aLibName, aIndexFileURL, bReadOnly );
}
}
// Handle maLibInfoFileURL and maStorageURL correctly
void SfxLibraryContainer::checkStorageURL( const OUString& aSourceURL,
- OUString& aLibInfoFileURL, OUString& aStorageURL, OUString& aUnexpandedStorageURL )
+ OUString& aLibInfoFileURL, OUString& aStorageURL,
+ OUString& aUnexpandedStorageURL )
{
OUString aExpandedSourceURL = expand_url( aSourceURL );
if( aExpandedSourceURL != aSourceURL )
+ {
aUnexpandedStorageURL = aSourceURL;
-
+ }
INetURLObject aInetObj( aExpandedSourceURL );
OUString aExtension = aInetObj.getExtension();
if( aExtension.compareToAscii( "xlb" ) == COMPARE_EQUAL )
@@ -1255,12 +1326,12 @@ void SfxLibraryContainer::checkStorageURL( const OUString& aSourceURL,
// URL to library folder
aStorageURL = aExpandedSourceURL;
aInetObj.insertName( maInfoFileName, sal_False, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
- aInetObj.setExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xlb") ) );
+ aInetObj.setExtension( OUString("xlb") );
aLibInfoFileURL = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
}
}
-SfxLibrary* SfxLibraryContainer::getImplLib( const String& rLibraryName )
+SfxLibrary* SfxLibraryContainer::getImplLib( const OUString& rLibraryName )
{
Any aLibAny = maNameContainer.getByName( rLibraryName ) ;
Reference< XNameAccess > xNameAccess;
@@ -1273,19 +1344,19 @@ SfxLibrary* SfxLibraryContainer::getImplLib( const String& rLibraryName )
// Storing with password encryption
// Empty implementation, avoids unneccesary implementation in dlgcont.cxx
-sal_Bool SfxLibraryContainer::implStorePasswordLibrary(
- SfxLibrary*,
- const OUString&,
- const uno::Reference< embed::XStorage >&, const uno::Reference< task::XInteractionHandler >& )
+sal_Bool SfxLibraryContainer::implStorePasswordLibrary( SfxLibrary*,
+ const OUString&,
+ const uno::Reference< embed::XStorage >&,
+ const uno::Reference< task::XInteractionHandler >& )
{
return sal_False;
}
sal_Bool SfxLibraryContainer::implStorePasswordLibrary(
SfxLibrary* /*pLib*/,
- const ::rtl::OUString& /*aName*/,
+ const OUString& /*aName*/,
const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& /*xStorage*/,
- const ::rtl::OUString& /*aTargetURL*/,
+ const OUString& /*aTargetURL*/,
const Reference< XSimpleFileAccess2 > /*xToUseSFI*/,
const uno::Reference< task::XInteractionHandler >& )
{
@@ -1304,18 +1375,16 @@ throw(WrappedTargetException, RuntimeException)
#define EXPAND_PROTOCOL "vnd.sun.star.expand"
-#define OUSTR(x) ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(x) )
-OUString SfxLibraryContainer::createAppLibraryFolder
- ( SfxLibrary* pLib, const OUString& aName )
+OUString SfxLibraryContainer::createAppLibraryFolder( SfxLibrary* pLib, const OUString& aName )
{
OUString aLibDirPath = pLib->maStorageURL;
if( aLibDirPath.isEmpty() )
{
- INetURLObject aInetObj( String(maLibraryPath).GetToken(1) );
+ INetURLObject aInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
aInetObj.insertName( aName, sal_True, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
checkStorageURL( aInetObj.GetMainURL( INetURLObject::NO_DECODE ), pLib->maLibInfoFileURL,
- pLib->maStorageURL, pLib->maUnexpandedStorageURL );
+ pLib->maStorageURL, pLib->maUnexpandedStorageURL );
aLibDirPath = pLib->maStorageURL;
}
@@ -1334,7 +1403,8 @@ OUString SfxLibraryContainer::createAppLibraryFolder
// Storing
void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
- const OUString& aName, const uno::Reference< embed::XStorage >& xStorage )
+ const OUString& aName,
+ const uno::Reference< embed::XStorage >& xStorage )
{
OUString aDummyLocation;
Reference< XSimpleFileAccess2 > xDummySFA;
@@ -1344,9 +1414,11 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
// New variant for library export
void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
- const OUString& aName, const uno::Reference< embed::XStorage >& xStorage,
- const ::rtl::OUString& aTargetURL, Reference< XSimpleFileAccess2 > xToUseSFI,
- const Reference< XInteractionHandler >& xHandler )
+ const OUString& aName,
+ const uno::Reference< embed::XStorage >& xStorage,
+ const OUString& aTargetURL,
+ Reference< XSimpleFileAccess2 > xToUseSFI,
+ const Reference< XInteractionHandler >& xHandler )
{
sal_Bool bLink = pLib->mbLink;
bool bStorage = xStorage.is() && !bLink;
@@ -1360,9 +1432,8 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
for( sal_Int32 i = 0 ; i < nNameCount ; i++ )
{
OUString aElementName = pNames[ i ];
-
OUString aStreamName = aElementName;
- aStreamName += String( RTL_CONSTASCII_USTRINGPARAM(".xml") );
+ aStreamName += ".xml";
if( !isLibraryElementValid( pLib->getByName( aElementName ) ) )
{
@@ -1371,13 +1442,14 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
"invalid library element \"" << aElementName << '"');
continue;
}
- try {
+ try
+ {
uno::Reference< io::XStream > xElementStream = xStorage->openStreamElement(
aStreamName,
embed::ElementModes::READWRITE );
// throw uno::RuntimeException(); // TODO: method must either return the stream or throw an exception
- OUString aMime( RTL_CONSTASCII_USTRINGPARAM("text/xml") );
+ OUString aMime( "text/xml" );
uno::Reference< beans::XPropertySet > xProps( xElementStream, uno::UNO_QUERY );
SAL_WARN_IF(
@@ -1387,10 +1459,10 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
if ( xProps.is() )
{
- xProps->setPropertyValue( rtl::OUString("MediaType"), uno::makeAny( aMime ) );
+ xProps->setPropertyValue( OUString("MediaType"), uno::makeAny( aMime ) );
// #87671 Allow encryption
- xProps->setPropertyValue( rtl::OUString("UseCommonStoragePasswordEncryption"), uno::makeAny( sal_True ) );
+ xProps->setPropertyValue( OUString("UseCommonStoragePasswordEncryption"), uno::makeAny( sal_True ) );
Reference< XOutputStream > xOutput = xElementStream->getOutputStream();
Reference< XNameContainer > xLib( pLib );
@@ -1403,7 +1475,6 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
// TODO: error handling?
}
}
-
pLib->storeResourcesToStorage( xStorage );
}
else
@@ -1414,8 +1485,9 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
{
Reference< XSimpleFileAccess2 > xSFI = mxSFI;
if( xToUseSFI.is() )
+ {
xSFI = xToUseSFI;
-
+ }
OUString aLibDirPath;
if( bExport )
{
@@ -1424,8 +1496,9 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( !xSFI->isFolder( aLibDirPath ) )
+ {
xSFI->createFolder( aLibDirPath );
-
+ }
pLib->storeResourcesToURL( aLibDirPath, xHandler );
}
else
@@ -1440,9 +1513,10 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
INetURLObject aElementInetObj( aLibDirPath );
aElementInetObj.insertName( aElementName, sal_False,
- INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
+ INetURLObject::LAST_SEGMENT, sal_True,
+ INetURLObject::ENCODE_ALL );
aElementInetObj.setExtension( maLibElementFileExtension );
- String aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+ OUString aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
if( !isLibraryElementValid( pLib->getByName( aElementName ) ) )
{
@@ -1456,7 +1530,9 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
try
{
if( xSFI->exists( aElementPath ) )
+ {
xSFI->kill( aElementPath );
+ }
Reference< XOutputStream > xOutput = xSFI->openFileWrite( aElementPath );
Reference< XNameContainer > xLib( pLib );
writeLibraryElement( xLib, aElementName, xOutput );
@@ -1465,8 +1541,9 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
catch(const Exception& )
{
if( bExport )
+ {
throw;
-
+ }
SfxErrorContext aEc( ERRCTX_SFX_SAVEDOC, aElementPath );
sal_uIntPtr nErrorCode = ERRCODE_IO_GENERAL;
ErrorHandler::HandleError( nErrorCode );
@@ -1476,13 +1553,16 @@ void SfxLibraryContainer::implStoreLibrary( SfxLibrary* pLib,
catch(const Exception& )
{
if( bExport )
+ {
throw;
+ }
}
}
}
void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
- const ::xmlscript::LibDescriptor& rLib, const uno::Reference< embed::XStorage >& xStorage )
+ const ::xmlscript::LibDescriptor& rLib,
+ const uno::Reference< embed::XStorage >& xStorage )
{
OUString aDummyLocation;
Reference< XSimpleFileAccess2 > xDummySFA;
@@ -1491,18 +1571,13 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
// New variant for library export
void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
- const ::xmlscript::LibDescriptor& rLib, const uno::Reference< embed::XStorage >& xStorage,
- const ::rtl::OUString& aTargetURL, Reference< XSimpleFileAccess2 > xToUseSFI )
+ const ::xmlscript::LibDescriptor& rLib,
+ const uno::Reference< embed::XStorage >& xStorage,
+ const OUString& aTargetURL,
+ Reference< XSimpleFileAccess2 > xToUseSFI )
{
// Create sax writer
- Reference< XExtendedDocumentHandler > xHandler(
- mxMSF->createInstance(
- OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.xml.sax.Writer") ) ), UNO_QUERY );
- if( !xHandler.is() )
- {
- SAL_WARN("basic", "couldn't create sax-writer component");
- return;
- }
+ Reference< XWriter > xWriter = xml::sax::Writer::create(comphelper::getComponentContext(mxMSF));
sal_Bool bLink = pLib->mbLink;
bool bStorage = xStorage.is() && !bLink;
@@ -1513,9 +1588,10 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
if( bStorage )
{
OUString aStreamName( maInfoFileName );
- aStreamName += String( RTL_CONSTASCII_USTRINGPARAM("-lb.xml") );
+ aStreamName += "-lb.xml";
- try {
+ try
+ {
xInfoStream = xStorage->openStreamElement( aStreamName, embed::ElementModes::READWRITE );
SAL_WARN_IF(!xInfoStream.is(), "basic", "No stream!");
uno::Reference< beans::XPropertySet > xProps( xInfoStream, uno::UNO_QUERY );
@@ -1523,11 +1599,11 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
if ( xProps.is() )
{
- OUString aMime( RTL_CONSTASCII_USTRINGPARAM("text/xml") );
- xProps->setPropertyValue( rtl::OUString("MediaType"), uno::makeAny( aMime ) );
+ OUString aMime("text/xml");
+ xProps->setPropertyValue( OUString("MediaType"), uno::makeAny( aMime ) );
// #87671 Allow encryption
- xProps->setPropertyValue( rtl::OUString("UseCommonStoragePasswordEncryption"), uno::makeAny( sal_True ) );
+ xProps->setPropertyValue( OUString("UseCommonStoragePasswordEncryption"), uno::makeAny( sal_True ) );
xOut = xInfoStream->getOutputStream();
}
@@ -1544,8 +1620,9 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
bool bExport = !aTargetURL.isEmpty();
Reference< XSimpleFileAccess2 > xSFI = mxSFI;
if( xToUseSFI.is() )
+ {
xSFI = xToUseSFI;
-
+ }
OUString aLibInfoPath;
if( bExport )
{
@@ -1553,8 +1630,9 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
aInetObj.insertName( rLib.aName, sal_True, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( !xSFI->isFolder( aLibDirPath ) )
+ {
xSFI->createFolder( aLibDirPath );
-
+ }
aInetObj.insertName( maInfoFileName, sal_False, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
aInetObj.setExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xlb") ) );
aLibInfoPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
@@ -1568,14 +1646,17 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
try
{
if( xSFI->exists( aLibInfoPath ) )
+ {
xSFI->kill( aLibInfoPath );
+ }
xOut = xSFI->openFileWrite( aLibInfoPath );
}
catch(const Exception& )
{
if( bExport )
+ {
throw;
-
+ }
SfxErrorContext aEc( ERRCTX_SFX_SAVEDOC, aLibInfoPath );
sal_uIntPtr nErrorCode = ERRCODE_IO_GENERAL;
ErrorHandler::HandleError( nErrorCode );
@@ -1586,16 +1667,15 @@ void SfxLibraryContainer::implStoreLibraryIndexFile( SfxLibrary* pLib,
SAL_WARN("basic", "couldn't open output stream");
return;
}
-
- Reference< XActiveDataSource > xSource( xHandler, UNO_QUERY );
- xSource->setOutputStream( xOut );
-
- xmlscript::exportLibrary( xHandler, rLib );
+ xWriter->setOutputStream( xOut );
+ xmlscript::exportLibrary( xWriter, rLib );
}
bool SfxLibraryContainer::implLoadLibraryIndexFile( SfxLibrary* pLib,
- ::xmlscript::LibDescriptor& rLib, const uno::Reference< embed::XStorage >& xStorage, const OUString& aIndexFileName )
+ ::xmlscript::LibDescriptor& rLib,
+ const uno::Reference< embed::XStorage >& xStorage,
+ const OUString& aIndexFileName )
{
Reference< XParser > xParser = xml::sax::Parser::create(comphelper::getComponentContext(mxMSF));
@@ -1609,15 +1689,16 @@ bool SfxLibraryContainer::implLoadLibraryIndexFile( SfxLibrary* pLib,
// Read info file
uno::Reference< io::XInputStream > xInput;
- String aLibInfoPath;
+ OUString aLibInfoPath;
if( bStorage )
{
aLibInfoPath = maInfoFileName;
aLibInfoPath += String( RTL_CONSTASCII_USTRINGPARAM("-lb.xml") );
- try {
+ try
+ {
uno::Reference< io::XStream > xInfoStream =
- xStorage->openStreamElement( aLibInfoPath, embed::ElementModes::READ );
+ xStorage->openStreamElement( aLibInfoPath, embed::ElementModes::READ );
xInput = xInfoStream->getInputStream();
}
catch(const uno::Exception& )
@@ -1634,8 +1715,9 @@ bool SfxLibraryContainer::implLoadLibraryIndexFile( SfxLibrary* pLib,
aLibInfoPath = pLib->maLibInfoFileURL;
}
else
+ {
aLibInfoPath = aIndexFileName;
-
+ }
try
{
xInput = mxSFI->openFileRead( aLibInfoPath );
@@ -1661,7 +1743,8 @@ bool SfxLibraryContainer::implLoadLibraryIndexFile( SfxLibrary* pLib,
source.sSystemId = aLibInfoPath;
// start parsing
- try {
+ try
+ {
xParser->setDocumentHandler( ::xmlscript::importLibrary( rLib ) );
xParser->parseStream( source );
}
@@ -1681,7 +1764,7 @@ bool SfxLibraryContainer::implLoadLibraryIndexFile( SfxLibrary* pLib,
pLib->mbLoaded = sal_False;
rLib.aStorageURL = aIndexFileName;
checkStorageURL( rLib.aStorageURL, pLib->maLibInfoFileURL, pLib->maStorageURL,
- pLib->maUnexpandedStorageURL );
+ pLib->maUnexpandedStorageURL );
implImportLibDescriptor( pLib, rLib );
}
@@ -1689,8 +1772,8 @@ bool SfxLibraryContainer::implLoadLibraryIndexFile( SfxLibrary* pLib,
return true;
}
-void SfxLibraryContainer::implImportLibDescriptor
- ( SfxLibrary* pLib, ::xmlscript::LibDescriptor& rLib )
+void SfxLibraryContainer::implImportLibDescriptor( SfxLibrary* pLib,
+ ::xmlscript::LibDescriptor& rLib )
{
if( !pLib->mbInitialised )
{
@@ -1705,14 +1788,14 @@ void SfxLibraryContainer::implImportLibDescriptor
pLib->mbReadOnly = rLib.bReadOnly;
pLib->mbPreload = rLib.bPreload;
pLib->implSetModified( sal_False );
-
pLib->mbInitialised = true;
}
}
// Methods of new XLibraryStorage interface?
-void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XStorage >& i_rStorage, bool bComplete )
+void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XStorage >& i_rStorage,
+ bool bComplete )
{
const Sequence< OUString > aNames = maNameContainer.getElementNames();
sal_Int32 nNameCount = aNames.getLength();
@@ -1725,18 +1808,21 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
{
SfxLibrary* pImplLib = getImplLib( *pName );
if( pImplLib->mbSharedIndexFile || pImplLib->mbExtension )
+ {
nLibsToSave--;
+ }
}
if( !nLibsToSave )
+ {
return;
-
+ }
boost::scoped_ptr< ::xmlscript::LibDescriptorArray > pLibArray(new ::xmlscript::LibDescriptorArray(nLibsToSave));
// Write to storage?
bool bStorage = i_rStorage.is();
uno::Reference< embed::XStorage > xSourceLibrariesStor;
uno::Reference< embed::XStorage > xTargetLibrariesStor;
- ::rtl::OUString sTempTargetStorName;
+ OUString sTempTargetStorName;
const bool bInplaceStorage = bStorage && ( i_rStorage == mxStorage );
if ( bStorage )
{
@@ -1747,26 +1833,30 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
Reference< XNameAccess > xNameAccess;
aLibAny >>= xNameAccess;
if ( ! ( xNameAccess->hasElements() || ( bInplaceStorage && isModified() ) ) )
+ {
return;
+ }
}
// create the empty target storage
try
{
- ::rtl::OUString sTargetLibrariesStoreName;
+ OUString sTargetLibrariesStoreName;
if ( bInplaceStorage )
{
// create a temporary target storage
- const ::rtl::OUStringBuffer aTempTargetNameBase = maLibrariesDir + ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "_temp_" ) );
+ const OUStringBuffer aTempTargetNameBase = maLibrariesDir + OUString( "_temp_" );
sal_Int32 index = 0;
do
{
- ::rtl::OUStringBuffer aTempTargetName( aTempTargetNameBase );
+ OUStringBuffer aTempTargetName( aTempTargetNameBase );
aTempTargetName.append( index++ );
sTargetLibrariesStoreName = aTempTargetName.makeStringAndClear();
if ( !i_rStorage->hasByName( sTargetLibrariesStoreName ) )
+ {
break;
+ }
}
while ( true );
sTempTargetStorName = sTargetLibrariesStoreName;
@@ -1775,7 +1865,9 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
{
sTargetLibrariesStoreName = maLibrariesDir;
if ( i_rStorage->hasByName( sTargetLibrariesStoreName ) )
+ {
i_rStorage->removeElement( sTargetLibrariesStoreName );
+ }
}
xTargetLibrariesStor.set( i_rStorage->openStorageElement( sTargetLibrariesStoreName, embed::ElementModes::READWRITE ), UNO_QUERY_THROW );
@@ -1790,7 +1882,10 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
try
{
if ( mxStorage->hasByName( maLibrariesDir ) || bInplaceStorage )
- xSourceLibrariesStor = mxStorage->openStorageElement( maLibrariesDir, bInplaceStorage ? embed::ElementModes::READWRITE : embed::ElementModes::READ );
+ {
+ xSourceLibrariesStor = mxStorage->openStorageElement( maLibrariesDir,
+ bInplaceStorage ? embed::ElementModes::READWRITE : embed::ElementModes::READ );
+ }
}
catch( const uno::Exception& )
{
@@ -1806,12 +1901,16 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
{
SfxLibrary* pImplLib = getImplLib( *pName );
if( pImplLib->mbSharedIndexFile )
+ {
continue;
+ }
const bool bExtensionLib = pImplLib->mbExtension;
::xmlscript::LibDescriptor& rLib = bExtensionLib ?
- aLibDescriptorForExtensionLibs : pLibArray->mpLibs[iArray];
+ aLibDescriptorForExtensionLibs : pLibArray->mpLibs[iArray];
if( !bExtensionLib )
+ {
iArray++;
+ }
rLib.aName = *pName;
rLib.bLink = pImplLib->mbLink;
@@ -1853,28 +1952,32 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
}
catch(const uno::Exception& )
{
- #if OSL_DEBUG_LEVEL > 0
+ #if OSL_DEBUG_LEVEL > 0
Any aError( ::cppu::getCaughtException() );
SAL_WARN(
"basic",
"couldn't create sub storage for library \""
<< rLib.aName << "\". Exception: "
<< comphelper::anyToString(aError));
- #endif
+ #endif
return;
}
}
// Maybe lib is not loaded?!
if( bComplete )
+ {
loadLibrary( rLib.aName );
-
+ }
if( pImplLib->mbPasswordProtected )
+ {
implStorePasswordLibrary( pImplLib, rLib.aName, xLibraryStor, uno::Reference< task::XInteractionHandler >() );
// TODO: Check return value
+ }
else
+ {
implStoreLibrary( pImplLib, rLib.aName, xLibraryStor );
-
+ }
implStoreLibraryIndexFile( pImplLib, rLib, xLibraryStor );
if( bStorage )
{
@@ -1890,7 +1993,6 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
}
}
}
-
maModifiable.setModified( sal_True );
pImplLib->implSetModified( sal_False );
}
@@ -1919,20 +2021,20 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
if ( xSourceLibrariesStor.is() )
{
// remove
- const Sequence< ::rtl::OUString > aRemoveNames( xSourceLibrariesStor->getElementNames() );
- for ( const ::rtl::OUString* pRemoveName = aRemoveNames.getConstArray();
- pRemoveName != aRemoveNames.getConstArray() + aRemoveNames.getLength();
- ++pRemoveName
+ const Sequence< OUString > aRemoveNames( xSourceLibrariesStor->getElementNames() );
+ for ( const OUString* pRemoveName = aRemoveNames.getConstArray();
+ pRemoveName != aRemoveNames.getConstArray() + aRemoveNames.getLength();
+ ++pRemoveName
)
{
xSourceLibrariesStor->removeElement( *pRemoveName );
}
// copy
- const Sequence< ::rtl::OUString > aCopyNames( xTargetLibrariesStor->getElementNames() );
- for ( const ::rtl::OUString* pCopyName = aCopyNames.getConstArray();
- pCopyName != aCopyNames.getConstArray() + aCopyNames.getLength();
- ++pCopyName
+ const Sequence< OUString > aCopyNames( xTargetLibrariesStor->getElementNames() );
+ for ( const OUString* pCopyName = aCopyNames.getConstArray();
+ pCopyName != aCopyNames.getConstArray() + aCopyNames.getLength();
+ ++pCopyName
)
{
xTargetLibrariesStor->copyElementTo( *pCopyName, xSourceLibrariesStor, *pCopyName );
@@ -1943,7 +2045,7 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
xTargetLibrariesStor->dispose();
i_rStorage->removeElement( sTempTargetStorName );
xTargetLibrariesStor.clear();
- sTempTargetStorName = ::rtl::OUString();
+ sTempTargetStorName = OUString();
// adjust target
xTargetLibrariesStor = xSourceLibrariesStor;
@@ -1956,20 +2058,15 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
}
if( !mbOldInfoFormat && !maModifiable.isModified() )
+ {
return;
+ }
maModifiable.setModified( sal_False );
mbOldInfoFormat = false;
// Write library container info
// Create sax writer
- Reference< XExtendedDocumentHandler > xHandler(
- mxMSF->createInstance(
- OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.xml.sax.Writer") ) ), UNO_QUERY );
- if( !xHandler.is() )
- {
- SAL_WARN("basic", "couldn't create sax-writer component");
- return;
- }
+ Reference< XWriter > xWriter = xml::sax::Writer::create(comphelper::getComponentContext(mxMSF));
// Write info file
uno::Reference< io::XOutputStream > xOut;
@@ -1977,22 +2074,24 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
if( bStorage )
{
OUString aStreamName( maInfoFileName );
- aStreamName += String( RTL_CONSTASCII_USTRINGPARAM("-lc.xml") );
+ aStreamName += "-lc.xml";
- try {
+ try
+ {
xInfoStream = xTargetLibrariesStor->openStreamElement( aStreamName, embed::ElementModes::READWRITE );
uno::Reference< beans::XPropertySet > xProps( xInfoStream, uno::UNO_QUERY );
SAL_WARN_IF(
!xProps.is(), "basic",
"The stream must implement XPropertySet!");
if ( !xProps.is() )
+ {
throw uno::RuntimeException();
-
- OUString aMime( RTL_CONSTASCII_USTRINGPARAM("text/xml") );
- xProps->setPropertyValue( rtl::OUString("MediaType"), uno::makeAny( aMime ) );
+ }
+ OUString aMime( "text/xml" );
+ xProps->setPropertyValue( OUString("MediaType"), uno::makeAny( aMime ) );
// #87671 Allow encryption
- xProps->setPropertyValue( rtl::OUString("UseCommonStoragePasswordEncryption"), uno::makeAny( sal_True ) );
+ xProps->setPropertyValue( OUString("UseCommonStoragePasswordEncryption"), uno::makeAny( sal_True ) );
xOut = xInfoStream->getOutputStream();
}
@@ -2005,15 +2104,17 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
else
{
// Create Output stream
- INetURLObject aLibInfoInetObj( String(maLibraryPath).GetToken(1) );
+ INetURLObject aLibInfoInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
aLibInfoInetObj.insertName( maInfoFileName, sal_False, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
- aLibInfoInetObj.setExtension( OUString( RTL_CONSTASCII_USTRINGPARAM("xlc") ) );
- String aLibInfoPath( aLibInfoInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+ aLibInfoInetObj.setExtension( OUString("xlc") );
+ OUString aLibInfoPath( aLibInfoInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
try
{
if( mxSFI->exists( aLibInfoPath ) )
+ {
mxSFI->kill( aLibInfoPath );
+ }
xOut = mxSFI->openFileWrite( aLibInfoPath );
}
catch(const Exception& )
@@ -2031,12 +2132,11 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
return;
}
- Reference< XActiveDataSource > xSource( xHandler, UNO_QUERY );
- xSource->setOutputStream( xOut );
+ xWriter->setOutputStream( xOut );
try
{
- xmlscript::exportLibraryContainer( xHandler, pLibArray.get() );
+ xmlscript::exportLibraryContainer( xWriter, pLibArray.get() );
if ( bStorage )
{
uno::Reference< embed::XTransactedObject > xTransact( xTargetLibrariesStor, uno::UNO_QUERY );
@@ -2044,8 +2144,9 @@ void SfxLibraryContainer::storeLibraries_Impl( const uno::Reference< embed::XSto
!xTransact.is(), "basic",
"The storage must implement XTransactedObject!");
if ( !xTransact.is() )
+ {
throw uno::RuntimeException();
-
+ }
xTransact->commit();
}
}
@@ -2099,7 +2200,7 @@ sal_Bool SfxLibraryContainer::hasByName( const OUString& aName )
// Methods XLibraryContainer
Reference< XNameContainer > SAL_CALL SfxLibraryContainer::createLibrary( const OUString& Name )
- throw(IllegalArgumentException, ElementExistException, RuntimeException)
+ throw(IllegalArgumentException, ElementExistException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
SfxLibrary* pNewLib = implCreateLibrary( Name );
@@ -2118,7 +2219,7 @@ Reference< XNameContainer > SAL_CALL SfxLibraryContainer::createLibrary( const O
Reference< XNameAccess > SAL_CALL SfxLibraryContainer::createLibraryLink
( const OUString& Name, const OUString& StorageURL, sal_Bool ReadOnly )
- throw(IllegalArgumentException, ElementExistException, RuntimeException)
+ throw(IllegalArgumentException, ElementExistException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
// TODO: Check other reasons to force ReadOnly status
@@ -2149,9 +2250,9 @@ Reference< XNameAccess > SAL_CALL SfxLibraryContainer::createLibraryLink
maNameContainer.insertByName( Name, aElement );
maModifiable.setModified( sal_True );
- OUString aUserSearchStr(RTL_CONSTASCII_USTRINGPARAM("vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE"));
- OUString aSharedSearchStr(RTL_CONSTASCII_USTRINGPARAM("vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE"));
- OUString aBundledSearchStr(RTL_CONSTASCII_USTRINGPARAM("vnd.sun.star.expand:$BUNDLED_EXTENSIONS"));
+ OUString aUserSearchStr("vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE");
+ OUString aSharedSearchStr("vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE");
+ OUString aBundledSearchStr("vnd.sun.star.expand:$BUNDLED_EXTENSIONS");
if( StorageURL.indexOf( aUserSearchStr ) != -1 )
{
pNewLib->mbExtension = true;
@@ -2175,8 +2276,9 @@ void SAL_CALL SfxLibraryContainer::removeLibrary( const OUString& Name )
aLibAny >>= xNameAccess;
SfxLibrary* pImplLib = static_cast< SfxLibrary* >( xNameAccess.get() );
if( pImplLib->mbReadOnly && !pImplLib->mbLink )
+ {
throw IllegalArgumentException();
-
+ }
// Remove from container
maNameContainer.removeByName( Name );
maModifiable.setModified( sal_True );
@@ -2185,7 +2287,9 @@ void SAL_CALL SfxLibraryContainer::removeLibrary( const OUString& Name )
if( !pImplLib->mbLink )
{
if( mxStorage.is() )
+ {
return;
+ }
if( xNameAccess->hasElements() )
{
Sequence< OUString > aNames = pImplLib->getElementNames();
@@ -2199,18 +2303,20 @@ void SAL_CALL SfxLibraryContainer::removeLibrary( const OUString& Name )
// Delete index file
createAppLibraryFolder( pImplLib, Name );
- String aLibInfoPath = pImplLib->maLibInfoFileURL;
+ OUString aLibInfoPath = pImplLib->maLibInfoFileURL;
try
{
if( mxSFI->exists( aLibInfoPath ) )
+ {
mxSFI->kill( aLibInfoPath );
+ }
}
catch(const Exception& ) {}
// Delete folder if empty
- INetURLObject aInetObj( String(maLibraryPath).GetToken(1) );
+ INetURLObject aInetObj( maLibraryPath.getToken(1, (sal_Unicode)';') );
aInetObj.insertName( Name, sal_True, INetURLObject::LAST_SEGMENT,
- sal_True, INetURLObject::ENCODE_ALL );
+ sal_True, INetURLObject::ENCODE_ALL );
OUString aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
try
@@ -2220,7 +2326,9 @@ void SAL_CALL SfxLibraryContainer::removeLibrary( const OUString& Name )
Sequence< OUString > aContentSeq = mxSFI->getFolderContents( aLibDirPath, true );
sal_Int32 nCount = aContentSeq.getLength();
if( !nCount )
+ {
mxSFI->kill( aLibDirPath );
+ }
}
}
catch(const Exception& )
@@ -2265,14 +2373,17 @@ void SAL_CALL SfxLibraryContainer::loadLibrary( const OUString& Name )
uno::Reference< embed::XStorage > xLibraryStor;
if( bStorage )
{
- try {
+ try
+ {
xLibrariesStor = mxStorage->openStorageElement( maLibrariesDir, embed::ElementModes::READ );
SAL_WARN_IF(
!xLibrariesStor.is(), "basic",
("The method must either throw exception or return a"
" storage!"));
if ( !xLibrariesStor.is() )
+ {
throw uno::RuntimeException();
+ }
xLibraryStor = xLibrariesStor->openStorageElement( Name, embed::ElementModes::READ );
SAL_WARN_IF(
@@ -2280,7 +2391,9 @@ void SAL_CALL SfxLibraryContainer::loadLibrary( const OUString& Name )
("The method must either throw exception or return a"
" storage!"));
if ( !xLibrariesStor.is() )
+ {
throw uno::RuntimeException();
+ }
}
catch(const uno::Exception& )
{
@@ -2311,28 +2424,33 @@ void SAL_CALL SfxLibraryContainer::loadLibrary( const OUString& Name )
uno::Reference< io::XStream > xElementStream;
aFile = aElementName;
- aFile += String( RTL_CONSTASCII_USTRINGPARAM(".xml") );
+ aFile += ".xml";
- try {
+ try
+ {
xElementStream = xLibraryStor->openStreamElement( aFile, embed::ElementModes::READ );
- } catch(const uno::Exception& )
+ }
+ catch(const uno::Exception& )
{}
if( !xElementStream.is() )
{
// Check for EA2 document version with wrong extensions
aFile = aElementName;
- aFile += String( RTL_CONSTASCII_USTRINGPARAM(".") );
+ aFile += ".";
aFile += maLibElementFileExtension;
- try {
+ try
+ {
xElementStream = xLibraryStor->openStreamElement( aFile, embed::ElementModes::READ );
- } catch(const uno::Exception& )
+ }
+ catch(const uno::Exception& )
{}
}
if ( xElementStream.is() )
+ {
xInStream = xElementStream->getInputStream();
-
+ }
if ( !xInStream.is() )
{
SAL_WARN(
@@ -2344,28 +2462,30 @@ void SAL_CALL SfxLibraryContainer::loadLibrary( const OUString& Name )
}
else
{
- String aLibDirPath = pImplLib->maStorageURL;
+ OUString aLibDirPath = pImplLib->maStorageURL;
INetURLObject aElementInetObj( aLibDirPath );
aElementInetObj.insertName( aElementName, sal_False,
- INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
+ INetURLObject::LAST_SEGMENT, sal_True,
+ INetURLObject::ENCODE_ALL );
aElementInetObj.setExtension( maLibElementFileExtension );
aFile = aElementInetObj.GetMainURL( INetURLObject::NO_DECODE );
}
Reference< XNameContainer > xLib( pImplLib );
Any aAny = importLibraryElement( xLib, aElementName,
- aFile, xInStream );
+ aFile, xInStream );
if( pImplLib->hasByName( aElementName ) )
{
if( aAny.hasValue() )
+ {
pImplLib->maNameContainer.replaceByName( aElementName, aAny );
+ }
}
else
{
pImplLib->maNameContainer.insertByName( aElementName, aAny );
}
}
-
pImplLib->implSetModified( sal_False );
}
}
@@ -2387,7 +2507,9 @@ OUString SAL_CALL SfxLibraryContainer::getLibraryLinkURL( const OUString& Name )
SfxLibrary* pImplLib = getImplLib( Name );
sal_Bool bLink = pImplLib->mbLink;
if( !bLink )
+ {
throw IllegalArgumentException();
+ }
OUString aRetStr = pImplLib->maLibInfoFileURL;
return aRetStr;
}
@@ -2430,8 +2552,9 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
{
LibraryContainerMethodGuard aGuard( *this );
if( maNameContainer.hasByName( NewName ) )
+ {
throw ElementExistException();
-
+ }
// Get and hold library before removing
Any aLibAny = maNameContainer.getByName( Name ) ;
@@ -2440,7 +2563,9 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
aLibAny >>= xNameAccess;
SfxLibrary* pImplLib = static_cast< SfxLibrary* >( xNameAccess.get() );
if( pImplLib->mbPasswordProtected && !pImplLib->mbPasswordVerified )
+ {
return; // Lib with unverified password cannot be renamed
+ }
loadLibrary( Name );
// Remove from container
@@ -2458,28 +2583,31 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
OUString aLibDirPath = pImplLib->maStorageURL;
- INetURLObject aDestInetObj( String(maLibraryPath).GetToken(1) );
+ INetURLObject aDestInetObj( maLibraryPath.getToken(1, (sal_Unicode)';'));
aDestInetObj.insertName( NewName, sal_True, INetURLObject::LAST_SEGMENT,
- sal_True, INetURLObject::ENCODE_ALL );
+ sal_True, INetURLObject::ENCODE_ALL );
OUString aDestDirPath = aDestInetObj.GetMainURL( INetURLObject::NO_DECODE );
// Store new URL
OUString aLibInfoFileURL = pImplLib->maLibInfoFileURL;
checkStorageURL( aDestDirPath, pImplLib->maLibInfoFileURL, pImplLib->maStorageURL,
- pImplLib->maUnexpandedStorageURL );
+ pImplLib->maUnexpandedStorageURL );
try
{
if( mxSFI->isFolder( aLibDirPath ) )
{
if( !mxSFI->isFolder( aDestDirPath ) )
+ {
mxSFI->createFolder( aDestDirPath );
-
+ }
// Move index file
try
{
if( mxSFI->exists( pImplLib->maLibInfoFileURL ) )
+ {
mxSFI->kill( pImplLib->maLibInfoFileURL );
+ }
mxSFI->move( aLibInfoFileURL, pImplLib->maLibInfoFileURL );
}
catch(const Exception& )
@@ -2497,18 +2625,21 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
aElementInetObj.insertName( aElementName, sal_False,
INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
aElementInetObj.setExtension( maLibElementFileExtension );
- String aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+ OUString aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
INetURLObject aElementDestInetObj( aDestDirPath );
aElementDestInetObj.insertName( aElementName, sal_False,
- INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
+ INetURLObject::LAST_SEGMENT, sal_True,
+ INetURLObject::ENCODE_ALL );
aElementDestInetObj.setExtension( maLibElementFileExtension );
- String aDestElementPath( aElementDestInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+ OUString aDestElementPath( aElementDestInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
try
{
if( mxSFI->exists( aDestElementPath ) )
+ {
mxSFI->kill( aDestElementPath );
+ }
mxSFI->move( aElementPath, aDestElementPath );
}
catch(const Exception& )
@@ -2522,7 +2653,7 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
sal_Int32 nCount = aContentSeq.getLength();
if( !nCount )
{
- mxSFI->kill( aLibDirPath );
+ mxSFI->kill( aLibDirPath );
}
bMovedSuccessful = true;
@@ -2537,11 +2668,13 @@ void SAL_CALL SfxLibraryContainer::renameLibrary( const OUString& Name, const OU
}
if( bStorage && !pImplLib->mbLink )
+ {
pImplLib->implSetModified( sal_True );
-
+ }
if( bMovedSuccessful )
+ {
maNameContainer.insertByName( NewName, aLibAny ) ;
-
+ }
}
@@ -2571,7 +2704,7 @@ void SAL_CALL SfxLibraryContainer::initialize( const Sequence< Any >& _rArgument
throw IllegalArgumentException();
}
-void SAL_CALL SfxLibraryContainer::initializeFromDocumentURL( const ::rtl::OUString& _rInitialDocumentURL )
+void SAL_CALL SfxLibraryContainer::initializeFromDocumentURL( const OUString& _rInitialDocumentURL )
{
init( _rInitialDocumentURL, NULL );
}
@@ -2583,9 +2716,10 @@ void SAL_CALL SfxLibraryContainer::initializeFromDocument( const Reference< XSto
try
{
Reference< XServiceInfo > xSI( _rxDocument, UNO_QUERY_THROW );
- if ( xSI->supportsService( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.document.OfficeDocument" ) ) ) )
+ if ( xSI->supportsService( OUString("com.sun.star.document.OfficeDocument")))
+ {
xDocStorage.set( _rxDocument->getDocumentStorage(), UNO_QUERY_THROW );
-
+ }
Reference< XModel > xDocument( _rxDocument, UNO_QUERY_THROW );
Reference< XComponent > xDocComponent( _rxDocument, UNO_QUERY_THROW );
@@ -2595,8 +2729,9 @@ void SAL_CALL SfxLibraryContainer::initializeFromDocument( const Reference< XSto
catch( const Exception& ) { }
if ( !xDocStorage.is() )
+ {
throw IllegalArgumentException();
-
+ }
init( OUString(), xDocStorage );
}
@@ -2639,17 +2774,15 @@ sal_Bool SAL_CALL SfxLibraryContainer::isLibraryPasswordVerified( const OUString
throw IllegalArgumentException();
}
-sal_Bool SAL_CALL SfxLibraryContainer::verifyLibraryPassword
- ( const OUString&, const OUString& )
- throw (IllegalArgumentException, NoSuchElementException, RuntimeException)
+sal_Bool SAL_CALL SfxLibraryContainer::verifyLibraryPassword( const OUString&, const OUString& )
+ throw (IllegalArgumentException, NoSuchElementException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
throw IllegalArgumentException();
}
-void SAL_CALL SfxLibraryContainer::changeLibraryPassword(
- const OUString&, const OUString&, const OUString& )
- throw (IllegalArgumentException, NoSuchElementException, RuntimeException)
+void SAL_CALL SfxLibraryContainer::changeLibraryPassword(const OUString&, const OUString&, const OUString& )
+ throw (IllegalArgumentException, NoSuchElementException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
throw IllegalArgumentException();
@@ -2674,7 +2807,7 @@ void SAL_CALL SfxLibraryContainer::removeContainerListener( const Reference< XCo
// Methods XLibraryContainerExport
void SAL_CALL SfxLibraryContainer::exportLibrary( const OUString& Name, const OUString& URL,
const Reference< XInteractionHandler >& Handler )
- throw ( uno::Exception, NoSuchElementException, RuntimeException)
+ throw ( uno::Exception, NoSuchElementException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
SfxLibrary* pImplLib = getImplLib( Name );
@@ -2691,10 +2824,13 @@ void SAL_CALL SfxLibraryContainer::exportLibrary( const OUString& Name, const OU
uno::Reference< ::com::sun::star::embed::XStorage > xDummyStor;
if( pImplLib->mbPasswordProtected )
+ {
implStorePasswordLibrary( pImplLib, Name, xDummyStor, URL, xToUseSFI, Handler );
+ }
else
+ {
implStoreLibrary( pImplLib, Name, xDummyStor, URL, xToUseSFI, Handler );
-
+ }
::xmlscript::LibDescriptor aLibDesc;
aLibDesc.aName = Name;
aLibDesc.bLink = false; // Link status gets lost?
@@ -2713,15 +2849,14 @@ OUString SfxLibraryContainer::expand_url( const OUString& url )
{
if( !mxMacroExpander.is() )
{
- Reference< XComponentContext > xContext(
- comphelper::getComponentContext( mxMSF ) );
+ Reference< XComponentContext > xContext(comphelper::getComponentContext( mxMSF ) );
Reference< util::XMacroExpander > xExpander;
- xContext->getValueByName(
- OUSTR("/singletons/com.sun.star.util.theMacroExpander") ) >>= xExpander;
+ xContext->getValueByName( OUString("/singletons/com.sun.star.util.theMacroExpander") ) >>= xExpander;
if(! xExpander.is())
{
throw uno::DeploymentException(
- OUSTR("no macro expander singleton available!"), Reference< XInterface >() );
+ OUString("no macro expander singleton available!"),
+ Reference< XInterface >() );
}
MutexGuard guard( Mutex::getGlobalMutex() );
if( !mxMacroExpander.is() )
@@ -2731,8 +2866,9 @@ OUString SfxLibraryContainer::expand_url( const OUString& url )
}
if( !mxMacroExpander.is() )
+ {
return url;
-
+ }
// cut protocol
OUString macro( url.copy( sizeof (EXPAND_PROTOCOL ":") -1 ) );
// decode uric class chars
@@ -2760,14 +2896,16 @@ OUString SAL_CALL SfxLibraryContainer::getOriginalLibraryLinkURL( const OUString
SfxLibrary* pImplLib = getImplLib( Name );
sal_Bool bLink = pImplLib->mbLink;
if( !bLink )
+ {
throw IllegalArgumentException();
+ }
OUString aRetStr = pImplLib->maOriginalStorageURL;
return aRetStr;
}
// XVBACompatibility
-::sal_Bool SAL_CALL SfxLibraryContainer::getVBACompatibilityMode() throw (RuntimeException)
+sal_Bool SAL_CALL SfxLibraryContainer::getVBACompatibilityMode() throw (RuntimeException)
{
return mbVBACompat;
}
@@ -2781,13 +2919,15 @@ void SAL_CALL SfxLibraryContainer::setVBACompatibilityMode( ::sal_Bool _vbacompa
if( BasicManager* pBasMgr = getBasicManager() )
{
// get the standard library
- String aLibName = pBasMgr->GetName();
- if ( aLibName.Len() == 0 )
- aLibName = String( RTL_CONSTASCII_USTRINGPARAM( "Standard" ) );
-
+ OUString aLibName = pBasMgr->GetName();
+ if ( aLibName.isEmpty())
+ {
+ aLibName = "Standard";
+ }
if( StarBASIC* pBasic = pBasMgr->GetLib( aLibName ) )
+ {
pBasic->SetVBAEnabled( _vbacompatmodeon );
-
+ }
/* If in VBA compatibility mode, force creation of the VBA Globals
object. Each application will create an instance of its own
implementation and store it in its Basic manager. Implementations
@@ -2799,7 +2939,7 @@ void SAL_CALL SfxLibraryContainer::setVBACompatibilityMode( ::sal_Bool _vbacompa
{
Reference< XModel > xModel( mxOwnerDocument ); // weak-ref -> ref
Reference< XMultiServiceFactory > xFactory( xModel, UNO_QUERY_THROW );
- xFactory->createInstance( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "ooo.vba.VBAGlobals" ) ) );
+ xFactory->createInstance( OUString( "ooo.vba.VBAGlobals"));
}
catch(const Exception& )
{
@@ -2807,7 +2947,7 @@ void SAL_CALL SfxLibraryContainer::setVBACompatibilityMode( ::sal_Bool _vbacompa
}
}
-void SAL_CALL SfxLibraryContainer::setProjectName( const ::rtl::OUString& _projectname ) throw (RuntimeException)
+void SAL_CALL SfxLibraryContainer::setProjectName( const OUString& _projectname ) throw (RuntimeException)
{
msProjectName = _projectname;
BasicManager* pBasMgr = getBasicManager();
@@ -2816,7 +2956,9 @@ void SAL_CALL SfxLibraryContainer::setProjectName( const ::rtl::OUString& _proje
// code expect the name of the VBA project to be set as the name of
// the basic manager. Provide fail back here.
if( pBasMgr )
+ {
pBasMgr->SetName( msProjectName );
+ }
}
sal_Int32 SAL_CALL SfxLibraryContainer::getRunningVBAScripts() throw (RuntimeException)
@@ -2835,17 +2977,17 @@ void SAL_CALL SfxLibraryContainer::removeVBAScriptListener( const Reference< vba
maVBAScriptListeners.removeTypedListener( rxListener );
}
-void SAL_CALL SfxLibraryContainer::broadcastVBAScriptEvent( sal_Int32 nIdentifier, const ::rtl::OUString& rModuleName ) throw (RuntimeException)
+void SAL_CALL SfxLibraryContainer::broadcastVBAScriptEvent( sal_Int32 nIdentifier, const OUString& rModuleName ) throw (RuntimeException)
{
// own lock for accessing the number of running scripts
enterMethod();
switch( nIdentifier )
{
- case vba::VBAScriptEventId::SCRIPT_STARTED:
- ++mnRunningVBAScripts;
+ case vba::VBAScriptEventId::SCRIPT_STARTED:
+ ++mnRunningVBAScripts;
break;
- case vba::VBAScriptEventId::SCRIPT_STOPPED:
- --mnRunningVBAScripts;
+ case vba::VBAScriptEventId::SCRIPT_STOPPED:
+ --mnRunningVBAScripts;
break;
}
leaveMethod();
@@ -2857,15 +2999,19 @@ void SAL_CALL SfxLibraryContainer::broadcastVBAScriptEvent( sal_Int32 nIdentifie
}
// Methods XServiceInfo
-::sal_Bool SAL_CALL SfxLibraryContainer::supportsService( const ::rtl::OUString& _rServiceName )
+sal_Bool SAL_CALL SfxLibraryContainer::supportsService( const OUString& _rServiceName )
throw (RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
Sequence< OUString > aSupportedServices( getSupportedServiceNames() );
const OUString* pSupportedServices = aSupportedServices.getConstArray();
for ( sal_Int32 i=0; i<aSupportedServices.getLength(); ++i, ++pSupportedServices )
+ {
if ( *pSupportedServices == _rServiceName )
+ {
return sal_True;
+ }
+ }
return sal_False;
}
@@ -2924,10 +3070,14 @@ SfxLibrary::SfxLibrary( ModifiableHelper& _rModifiable, const Type& aType,
void SfxLibrary::implSetModified( sal_Bool _bIsModified )
{
if ( mbIsModified == _bIsModified )
+ {
return;
+ }
mbIsModified = _bIsModified;
if ( mbIsModified )
+ {
mrModifiable.setModified( sal_True );
+ }
}
// Methods XInterface
@@ -2945,7 +3095,9 @@ Any SAL_CALL SfxLibrary::queryInterface( const Type& rType )
static_cast< XElementAccess * >( this ),
static_cast< XChangesNotifier * >( this ) ) );
if( !aRet.hasValue() )
+ {
aRet = OComponentHelper::queryInterface( rType );
+ }
return aRet;
}
@@ -2989,24 +3141,28 @@ sal_Bool SfxLibrary::hasByName( const OUString& aName )
void SfxLibrary::impl_checkReadOnly()
{
if( mbReadOnly || (mbLink && mbReadOnlyLink) )
+ {
throw IllegalArgumentException(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Library is readonly." ) ),
+ OUString("Library is readonly."),
// TODO: resource
*this, 0
);
+ }
}
void SfxLibrary::impl_checkLoaded()
{
if ( !mbLoaded )
+ {
throw WrappedTargetException(
- ::rtl::OUString(),
+ OUString(),
*this,
makeAny( LibraryNotLoadedException(
- ::rtl::OUString(),
+ OUString(),
*this
) )
);
+ }
}
// Methods XNameReplace
@@ -3040,7 +3196,7 @@ void SfxLibrary::insertByName( const OUString& aName, const Any& aElement )
implSetModified( sal_True );
}
-void SfxLibrary::impl_removeWithoutChecks( const ::rtl::OUString& _rElementName )
+void SfxLibrary::impl_removeWithoutChecks( const OUString& _rElementName )
{
maNameContainer.removeByName( _rElementName );
implSetModified( sal_True );
@@ -3050,14 +3206,17 @@ void SfxLibrary::impl_removeWithoutChecks( const ::rtl::OUString& _rElementName
{
INetURLObject aElementInetObj( maStorageURL );
aElementInetObj.insertName( _rElementName, sal_False,
- INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
+ INetURLObject::LAST_SEGMENT, sal_True,
+ INetURLObject::ENCODE_ALL );
aElementInetObj.setExtension( maLibElementFileExtension );
OUString aFile = aElementInetObj.GetMainURL( INetURLObject::NO_DECODE );
try
{
if( mxSFI->exists( aFile ) )
+ {
mxSFI->kill( aFile );
+ }
}
catch(const Exception& )
{
@@ -3162,9 +3321,9 @@ ScriptExtensionIterator::ScriptExtensionIterator( void )
, m_pScriptSubPackageIterator( NULL )
{}
-rtl::OUString ScriptExtensionIterator::nextBasicOrDialogLibrary( bool& rbPureDialogLib )
+OUString ScriptExtensionIterator::nextBasicOrDialogLibrary( bool& rbPureDialogLib )
{
- rtl::OUString aRetLib;
+ OUString aRetLib;
while( aRetLib.isEmpty() && m_eState != END_REACHED )
{
@@ -3175,8 +3334,9 @@ rtl::OUString ScriptExtensionIterator::nextBasicOrDialogLibrary( bool& rbPureDia
Reference< deployment::XPackage > xScriptPackage =
implGetNextUserScriptPackage( rbPureDialogLib );
if( !xScriptPackage.is() )
+ {
break;
-
+ }
aRetLib = xScriptPackage->getURL();
break;
}
@@ -3186,8 +3346,9 @@ rtl::OUString ScriptExtensionIterator::nextBasicOrDialogLibrary( bool& rbPureDia
Reference< deployment::XPackage > xScriptPackage =
implGetNextSharedScriptPackage( rbPureDialogLib );
if( !xScriptPackage.is() )
+ {
break;
-
+ }
aRetLib = xScriptPackage->getURL();
break;
}
@@ -3196,8 +3357,9 @@ rtl::OUString ScriptExtensionIterator::nextBasicOrDialogLibrary( bool& rbPureDia
Reference< deployment::XPackage > xScriptPackage =
implGetNextBundledScriptPackage( rbPureDialogLib );
if( !xScriptPackage.is() )
+ {
break;
-
+ }
aRetLib = xScriptPackage->getURL();
break;
}
@@ -3222,8 +3384,9 @@ ScriptSubPackageIterator::ScriptSubPackageIterator( Reference< deployment::XPack
{
Reference< deployment::XPackage > xScriptPackage;
if( !m_xMainPackage.is() )
+ {
return;
-
+ }
// Check if parent package is registered
beans::Optional< beans::Ambiguous<sal_Bool> > option( m_xMainPackage->isRegistered
( Reference<task::XAbortChannel>(), Reference<ucb::XCommandEnvironment>() ) );
@@ -3232,7 +3395,9 @@ ScriptSubPackageIterator::ScriptSubPackageIterator( Reference< deployment::XPack
{
beans::Ambiguous<sal_Bool> const & reg = option.Value;
if( !reg.IsAmbiguous && reg.Value )
+ {
bRegistered = true;
+ }
}
if( bRegistered )
{
@@ -3240,22 +3405,22 @@ ScriptSubPackageIterator::ScriptSubPackageIterator( Reference< deployment::XPack
if( m_xMainPackage->isBundle() )
{
m_bIsBundle = true;
- m_aSubPkgSeq = m_xMainPackage->getBundle
- ( Reference<task::XAbortChannel>(), Reference<ucb::XCommandEnvironment>() );
+ m_aSubPkgSeq = m_xMainPackage->getBundle( Reference<task::XAbortChannel>(),
+ Reference<ucb::XCommandEnvironment>() );
m_nSubPkgCount = m_aSubPkgSeq.getLength();
}
}
}
-Reference< deployment::XPackage > ScriptSubPackageIterator::getNextScriptSubPackage
- ( bool& rbPureDialogLib )
+Reference< deployment::XPackage > ScriptSubPackageIterator::getNextScriptSubPackage( bool& rbPureDialogLib )
{
rbPureDialogLib = false;
Reference< deployment::XPackage > xScriptPackage;
if( !m_bIsValid )
+ {
return xScriptPackage;
-
+ }
if( m_bIsBundle )
{
const Reference< deployment::XPackage >* pSeq = m_aSubPkgSeq.getConstArray();
@@ -3265,7 +3430,9 @@ Reference< deployment::XPackage > ScriptSubPackageIterator::getNextScriptSubPack
const Reference< deployment::XPackage > xSubPkg = pSeq[ iPkg ];
xScriptPackage = implDetectScriptPackage( xSubPkg, rbPureDialogLib );
if( xScriptPackage.is() )
+ {
break;
+ }
}
m_iNextSubPkg = iPkg + 1;
}
@@ -3278,15 +3445,15 @@ Reference< deployment::XPackage > ScriptSubPackageIterator::getNextScriptSubPack
return xScriptPackage;
}
-Reference< deployment::XPackage > ScriptSubPackageIterator::implDetectScriptPackage
- ( const Reference< deployment::XPackage > xPackage, bool& rbPureDialogLib )
+Reference< deployment::XPackage > ScriptSubPackageIterator::implDetectScriptPackage ( const Reference< deployment::XPackage > xPackage,
+ bool& rbPureDialogLib )
{
Reference< deployment::XPackage > xScriptPackage;
if( xPackage.is() )
{
const Reference< deployment::XPackageTypeInfo > xPackageTypeInfo = xPackage->getPackageType();
- rtl::OUString aMediaType = xPackageTypeInfo->getMediaType();
+ OUString aMediaType = xPackageTypeInfo->getMediaType();
if ( aMediaType == sBasicLibMediaType )
{
xScriptPackage = xPackage;
@@ -3301,8 +3468,7 @@ Reference< deployment::XPackage > ScriptSubPackageIterator::implDetectScriptPack
return xScriptPackage;
}
-Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextUserScriptPackage
- ( bool& rbPureDialogLib )
+Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextUserScriptPackage( bool& rbPureDialogLib )
{
Reference< deployment::XPackage > xScriptPackage;
@@ -3310,11 +3476,10 @@ Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextUserScript
{
try
{
- Reference< XExtensionManager > xManager =
- ExtensionManager::get( m_xContext );
- m_aUserPackagesSeq = xManager->getDeployedExtensions
- (rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("user")),
- Reference< task::XAbortChannel >(), Reference< ucb::XCommandEnvironment >() );
+ Reference< XExtensionManager > xManager = ExtensionManager::get( m_xContext );
+ m_aUserPackagesSeq = xManager->getDeployedExtensions(OUString("user"),
+ Reference< task::XAbortChannel >(),
+ Reference< ucb::XCommandEnvironment >() );
}
catch(const com::sun::star::uno::DeploymentException& )
{
@@ -3358,8 +3523,7 @@ Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextUserScript
return xScriptPackage;
}
-Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextSharedScriptPackage
- ( bool& rbPureDialogLib )
+Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextSharedScriptPackage( bool& rbPureDialogLib )
{
Reference< deployment::XPackage > xScriptPackage;
@@ -3367,11 +3531,10 @@ Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextSharedScri
{
try
{
- Reference< XExtensionManager > xSharedManager =
- ExtensionManager::get( m_xContext );
- m_aSharedPackagesSeq = xSharedManager->getDeployedExtensions
- (rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("shared")),
- Reference< task::XAbortChannel >(), Reference< ucb::XCommandEnvironment >() );
+ Reference< XExtensionManager > xSharedManager = ExtensionManager::get( m_xContext );
+ m_aSharedPackagesSeq = xSharedManager->getDeployedExtensions(OUString("shared"),
+ Reference< task::XAbortChannel >(),
+ Reference< ucb::XCommandEnvironment >() );
}
catch(const com::sun::star::uno::DeploymentException& )
{
@@ -3414,8 +3577,7 @@ Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextSharedScri
return xScriptPackage;
}
-Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextBundledScriptPackage
- ( bool& rbPureDialogLib )
+Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextBundledScriptPackage( bool& rbPureDialogLib )
{
Reference< deployment::XPackage > xScriptPackage;
@@ -3423,11 +3585,10 @@ Reference< deployment::XPackage > ScriptExtensionIterator::implGetNextBundledScr
{
try
{
- Reference< XExtensionManager > xManager =
- ExtensionManager::get( m_xContext );
- m_aBundledPackagesSeq = xManager->getDeployedExtensions
- (rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("bundled")),
- Reference< task::XAbortChannel >(), Reference< ucb::XCommandEnvironment >() );
+ Reference< XExtensionManager > xManager = ExtensionManager::get( m_xContext );
+ m_aBundledPackagesSeq = xManager->getDeployedExtensions(OUString("bundled"),
+ Reference< task::XAbortChannel >(),
+ Reference< ucb::XCommandEnvironment >() );
}
catch(const com::sun::star::uno::DeploymentException& )
{
diff --git a/basic/source/uno/scriptcont.cxx b/basic/source/uno/scriptcont.cxx
index bbc8509d23c2..00ffe7893b94 100644
--- a/basic/source/uno/scriptcont.cxx
+++ b/basic/source/uno/scriptcont.cxx
@@ -22,6 +22,7 @@
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/xml/sax/Parser.hpp>
#include <com/sun/star/xml/sax/InputSource.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
@@ -72,8 +73,6 @@ using namespace com::sun::star;
using namespace cppu;
using namespace osl;
-using ::rtl::OUString;
-
//============================================================================
// Implementation class SfxScriptLibraryContainer
@@ -83,13 +82,12 @@ const sal_Char* SAL_CALL SfxScriptLibraryContainer::getLibElementFileExtension()
const sal_Char* SAL_CALL SfxScriptLibraryContainer::getLibrariesDir() const { return "Basic"; }
// OldBasicPassword interface
-void SfxScriptLibraryContainer::setLibraryPassword
- ( const String& rLibraryName, const String& rPassword )
+void SfxScriptLibraryContainer::setLibraryPassword( const OUString& rLibraryName, const OUString& rPassword )
{
try
{
SfxLibrary* pImplLib = getImplLib( rLibraryName );
- if( rPassword.Len() )
+ if( !rPassword.isEmpty() )
{
pImplLib->mbDoc50Password = true;
pImplLib->mbPasswordProtected = sal_True;
@@ -99,16 +97,18 @@ void SfxScriptLibraryContainer::setLibraryPassword
catch(const NoSuchElementException& ) {}
}
-String SfxScriptLibraryContainer::getLibraryPassword( const String& rLibraryName )
+OUString SfxScriptLibraryContainer::getLibraryPassword( const OUString& rLibraryName )
{
SfxLibrary* pImplLib = getImplLib( rLibraryName );
- String aPassword;
+ OUString aPassword;
if( pImplLib->mbPasswordVerified )
+ {
aPassword = pImplLib->maPassword;
+ }
return aPassword;
}
-void SfxScriptLibraryContainer::clearLibraryPassword( const String& rLibraryName )
+void SfxScriptLibraryContainer::clearLibraryPassword( const OUString& rLibraryName )
{
try
{
@@ -120,7 +120,7 @@ void SfxScriptLibraryContainer::clearLibraryPassword( const String& rLibraryName
catch(const NoSuchElementException& ) {}
}
-sal_Bool SfxScriptLibraryContainer::hasLibraryPassword( const String& rLibraryName )
+sal_Bool SfxScriptLibraryContainer::hasLibraryPassword( const OUString& rLibraryName )
{
SfxLibrary* pImplLib = getImplLib( rLibraryName );
return pImplLib->mbPasswordProtected;
@@ -148,14 +148,14 @@ SfxLibrary* SfxScriptLibraryContainer::implCreateLibrary( const OUString& aName
return pRet;
}
-SfxLibrary* SfxScriptLibraryContainer::implCreateLibraryLink
- ( const OUString& aName, const OUString& aLibInfoFileURL,
- const OUString& StorageURL, sal_Bool ReadOnly )
+SfxLibrary* SfxScriptLibraryContainer::implCreateLibraryLink( const OUString& aName,
+ const OUString& aLibInfoFileURL,
+ const OUString& StorageURL,
+ sal_Bool ReadOnly )
{
(void)aName; // Only needed for SfxDialogLibrary
- SfxLibrary* pRet =
- new SfxScriptLibrary
- ( maModifiable, mxMSF, mxSFI, aLibInfoFileURL, StorageURL, ReadOnly );
+ SfxLibrary* pRet = new SfxScriptLibrary( maModifiable, mxMSF, mxSFI,
+ aLibInfoFileURL, StorageURL, ReadOnly );
return pRet;
}
@@ -172,31 +172,21 @@ bool SAL_CALL SfxScriptLibraryContainer::isLibraryElementValid( Any aElement ) c
return SfxScriptLibrary::containsValidModule( aElement );
}
-void SAL_CALL SfxScriptLibraryContainer::writeLibraryElement
-(
- const Reference < XNameContainer >& xLib,
- const OUString& aElementName,
- const Reference< XOutputStream >& xOutput
-)
+void SAL_CALL SfxScriptLibraryContainer::writeLibraryElement( const Reference < XNameContainer >& xLib,
+ const OUString& aElementName,
+ const Reference< XOutputStream >& xOutput)
throw(Exception)
{
// Create sax writer
- Reference< XExtendedDocumentHandler > xHandler(
- mxMSF->createInstance(
- OUString( "com.sun.star.xml.sax.Writer" ) ), UNO_QUERY );
- if( !xHandler.is() )
- {
- OSL_FAIL( "### couldn't create sax-writer component\n" );
- return;
- }
+ Reference< XWriter > xWriter = xml::sax::Writer::create(comphelper::getComponentContext(mxMSF));
Reference< XTruncate > xTruncate( xOutput, UNO_QUERY );
OSL_ENSURE( xTruncate.is(), "Currently only the streams that can be truncated are expected!" );
if ( xTruncate.is() )
+ {
xTruncate->truncate();
-
- Reference< XActiveDataSource > xSource( xHandler, UNO_QUERY );
- xSource->setOutputStream( xOutput );
+ }
+ xWriter->setOutputStream( xOutput );
xmlscript::ModuleDescriptor aMod;
aMod.aName = aElementName;
@@ -211,16 +201,16 @@ void SAL_CALL SfxScriptLibraryContainer::writeLibraryElement
switch( aModInfo.ModuleType )
{
case ModuleType::NORMAL:
- aMod.aModuleType = OUString( "normal" );
+ aMod.aModuleType = "normal";
break;
case ModuleType::CLASS:
- aMod.aModuleType = OUString( "class" );
+ aMod.aModuleType ="class";
break;
case ModuleType::FORM:
- aMod.aModuleType = OUString( "form" );
+ aMod.aModuleType = "form";
break;
case ModuleType::DOCUMENT:
- aMod.aModuleType = OUString( "document" );
+ aMod.aModuleType = "document";
break;
case ModuleType::UNKNOWN:
// nothing
@@ -228,7 +218,7 @@ void SAL_CALL SfxScriptLibraryContainer::writeLibraryElement
}
}
- xmlscript::exportScriptModule( xHandler, aMod );
+ xmlscript::exportScriptModule( xWriter, aMod );
}
@@ -303,7 +293,7 @@ Any SAL_CALL SfxScriptLibraryContainer::importLibraryElement
{
Reference< frame::XModel > xModel( mxOwnerDocument ); // weak-ref -> ref
Reference< XMultiServiceFactory > xFactory( xModel, UNO_QUERY_THROW );
- xFactory->createInstance( ::rtl::OUString( "ooo.vba.VBAGlobals" ) );
+ xFactory->createInstance( OUString( "ooo.vba.VBAGlobals" ) );
}
catch(const Exception& )
{
@@ -354,7 +344,9 @@ Any SAL_CALL SfxScriptLibraryContainer::importLibraryElement
if( xVBAModuleInfo.is() )
{
if( xVBAModuleInfo->hasModuleInfo( aElementName ) )
+ {
xVBAModuleInfo->removeModuleInfo( aElementName );
+ }
xVBAModuleInfo->insertModuleInfo( aElementName, aModInfo );
}
}
@@ -403,7 +395,9 @@ sal_Bool SAL_CALL SfxScriptLibraryContainer::isLibraryPasswordVerified( const OU
LibraryContainerMethodGuard aGuard( *this );
SfxLibrary* pImplLib = getImplLib( Name );
if( !pImplLib->mbPasswordProtected )
+ {
throw IllegalArgumentException();
+ }
sal_Bool bRet = pImplLib->mbPasswordVerified;
return bRet;
}
@@ -415,15 +409,18 @@ sal_Bool SAL_CALL SfxScriptLibraryContainer::verifyLibraryPassword
LibraryContainerMethodGuard aGuard( *this );
SfxLibrary* pImplLib = getImplLib( Name );
if( !pImplLib->mbPasswordProtected || pImplLib->mbPasswordVerified )
+ {
throw IllegalArgumentException();
-
+ }
// Test password
sal_Bool bSuccess = sal_False;
if( pImplLib->mbDoc50Password )
{
bSuccess = ( Password == pImplLib->maPassword );
if( bSuccess )
+ {
pImplLib->mbPasswordVerified = sal_True;
+ }
}
else
{
@@ -439,28 +436,33 @@ sal_Bool SAL_CALL SfxScriptLibraryContainer::verifyLibraryPassword
// Reload library to get source
if( pImplLib->mbLoaded )
+ {
implLoadPasswordLibrary( pImplLib, Name );
+ }
}
}
return bSuccess;
}
void SAL_CALL SfxScriptLibraryContainer::changeLibraryPassword( const OUString& Name,
- const OUString& OldPassword, const OUString& NewPassword )
+ const OUString& OldPassword,
+ const OUString& NewPassword )
throw (IllegalArgumentException, NoSuchElementException, RuntimeException)
{
LibraryContainerMethodGuard aGuard( *this );
SfxLibrary* pImplLib = getImplLib( Name );
if( OldPassword == NewPassword )
+ {
return;
-
+ }
sal_Bool bOldPassword = !OldPassword.isEmpty();
sal_Bool bNewPassword = !NewPassword.isEmpty();
sal_Bool bStorage = mxStorage.is() && !pImplLib->mbLink;
if( pImplLib->mbReadOnly || (bOldPassword && !pImplLib->mbPasswordProtected) )
+ {
throw IllegalArgumentException();
-
+ }
// Library must be loaded
loadLibrary( Name );
@@ -473,13 +475,16 @@ void SAL_CALL SfxScriptLibraryContainer::changeLibraryPassword( const OUString&
if( isLibraryPasswordVerified( Name ) )
{
if( pImplLib->maPassword != OldPassword )
+ {
throw IllegalArgumentException();
+ }
}
else
{
if( !verifyLibraryPassword( Name, OldPassword ) )
+ {
throw IllegalArgumentException();
-
+ }
// Reload library to get source
// Should be done in verifyLibraryPassword loadLibrary( Name );
}
@@ -536,15 +541,22 @@ void SAL_CALL SfxScriptLibraryContainer::changeLibraryPassword( const OUString&
INetURLObject aElementInetObj( aLibDirPath );
aElementInetObj.insertName( aElementName, sal_False,
- INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
+ INetURLObject::LAST_SEGMENT, sal_True,
+ INetURLObject::ENCODE_ALL );
if( bKillUncryptedFiles )
+ {
aElementInetObj.setExtension( maLibElementFileExtension );
+ }
else
+ {
aElementInetObj.setExtension( OUString( "pba" ) );
- String aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
+ }
+ OUString aElementPath( aElementInetObj.GetMainURL( INetURLObject::NO_DECODE ) );
if( mxSFI->exists( aElementPath ) )
+ {
mxSFI->kill( aElementPath );
+ }
}
}
catch(const Exception& ) {}
@@ -556,13 +568,17 @@ void setStreamKey( uno::Reference< io::XStream > xStream, const ::rtl::OUString&
{
uno::Reference< embed::XEncryptionProtectedSource > xEncrStream( xStream, uno::UNO_QUERY );
if ( xEncrStream.is() )
+ {
xEncrStream->setEncryptionPassword( aPass );
+ }
}
// Impl methods
sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
- const ::rtl::OUString& aName, const uno::Reference< embed::XStorage >& xStorage, const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& xHandler )
+ const ::rtl::OUString& aName,
+ const uno::Reference< embed::XStorage >& xStorage,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& xHandler )
{
OUString aDummyLocation;
Reference< XSimpleFileAccess2 > xDummySFA;
@@ -570,16 +586,19 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
}
sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib, const ::rtl::OUString& aName,
- const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
- const ::rtl::OUString& aTargetURL, const Reference< XSimpleFileAccess2 > xToUseSFI, const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& xHandler )
+ const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
+ const ::rtl::OUString& aTargetURL,
+ const Reference< XSimpleFileAccess2 > xToUseSFI,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::task::XInteractionHandler >& xHandler )
{
bool bExport = !aTargetURL.isEmpty();
BasicManager* pBasicMgr = getBasicManager();
OSL_ENSURE( pBasicMgr, "SfxScriptLibraryContainer::implStorePasswordLibrary: cannot do this without a BasicManager!" );
if ( !pBasicMgr )
+ {
return sal_False;
-
+ }
// Only need to handle the export case here,
// save/saveas etc are handled in sfxbasemodel::storeSelf &
// sfxbasemodel::impl_store
@@ -592,14 +611,17 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
uno::Reference< task::XInteractionRequest > xReq( pReq );
xHandler->handle( xReq );
if ( pReq->isAbort() )
+ {
throw util::VetoException();
+ }
}
}
StarBASIC* pBasicLib = pBasicMgr->GetLib( aName );
if( !pBasicLib )
+ {
return sal_False;
-
+ }
Sequence< OUString > aElementNames = pLib->getElementNames();
sal_Int32 nNameCount = aElementNames.getLength();
const OUString* pNames = aElementNames.getConstArray();
@@ -617,16 +639,18 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
if( pMod )
{
OUString aCodeStreamName = aElementName;
- aCodeStreamName += String( RTL_CONSTASCII_USTRINGPARAM(".bin") );
+ aCodeStreamName += ".bin";
- try {
+ try
+ {
uno::Reference< io::XStream > xCodeStream = xStorage->openStreamElement(
- aCodeStreamName,
- embed::ElementModes::READWRITE | embed::ElementModes::TRUNCATE );
+ aCodeStreamName,
+ embed::ElementModes::READWRITE | embed::ElementModes::TRUNCATE );
if ( !xCodeStream.is() )
+ {
throw uno::RuntimeException();
-
+ }
SvMemoryStream aMemStream;
/*sal_Bool bStore = */pMod->StoreBinaryData( aMemStream );
@@ -637,9 +661,10 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
Reference< XOutputStream > xOut = xCodeStream->getOutputStream();
if ( !xOut.is() )
+ {
throw io::IOException(); // access denied because the stream is readonly
-
- xOut->writeBytes( aBinSeq );
+ }
+ xOut->writeBytes( aBinSeq );
xOut->closeOutput();
}
catch(const uno::Exception& )
@@ -652,27 +677,29 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
{
if( !isLibraryElementValid( pLib->getByName( aElementName ) ) )
{
- #if OSL_DEBUG_LEVEL > 0
+ #if OSL_DEBUG_LEVEL > 0
::rtl::OStringBuffer aMessage;
aMessage.append( "invalid library element '" );
aMessage.append( ::rtl::OUStringToOString( aElementName, osl_getThreadTextEncoding() ) );
aMessage.append( "'." );
OSL_FAIL( aMessage.makeStringAndClear().getStr() );
- #endif
+ #endif
continue;
}
OUString aSourceStreamName = aElementName;
- aSourceStreamName += String( RTL_CONSTASCII_USTRINGPARAM(".xml") );
+ aSourceStreamName += ".xml";
- try {
+ try
+ {
uno::Reference< io::XStream > xSourceStream = xStorage->openStreamElement(
- aSourceStreamName,
- embed::ElementModes::READWRITE );
+ aSourceStreamName,
+ embed::ElementModes::READWRITE );
uno::Reference< beans::XPropertySet > xProps( xSourceStream, uno::UNO_QUERY );
if ( !xProps.is() )
+ {
throw uno::RuntimeException();
-
+ }
OUString aMime( "text/xml" );
xProps->setPropertyValue( rtl::OUString("MediaType"), uno::makeAny( aMime ) );
@@ -705,17 +732,21 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
{
Reference< XSimpleFileAccess2 > xSFI = mxSFI;
if( xToUseSFI.is() )
+ {
xSFI = xToUseSFI;
-
+ }
OUString aLibDirPath;
if( bExport )
{
INetURLObject aInetObj( aTargetURL );
- aInetObj.insertName( aName, sal_True, INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
+ aInetObj.insertName( aName, sal_True, INetURLObject::LAST_SEGMENT, sal_True,
+ INetURLObject::ENCODE_ALL );
aLibDirPath = aInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( !xSFI->isFolder( aLibDirPath ) )
+ {
xSFI->createFolder( aLibDirPath );
+ }
}
else
{
@@ -728,31 +759,33 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
INetURLObject aElementInetObj( aLibDirPath );
aElementInetObj.insertName( aElementName, sal_False,
- INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
+ INetURLObject::LAST_SEGMENT, sal_True,
+ INetURLObject::ENCODE_ALL );
aElementInetObj.setExtension( OUString( "pba" ) );
- String aElementPath = aElementInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aElementPath = aElementInetObj.GetMainURL( INetURLObject::NO_DECODE );
if( !isLibraryElementValid( pLib->getByName( aElementName ) ) )
{
- #if OSL_DEBUG_LEVEL > 0
+ #if OSL_DEBUG_LEVEL > 0
::rtl::OStringBuffer aMessage;
aMessage.append( "invalid library element '" );
aMessage.append( ::rtl::OUStringToOString( aElementName, osl_getThreadTextEncoding() ) );
aMessage.append( "'." );
OSL_FAIL( aMessage.makeStringAndClear().getStr() );
- #endif
+ #endif
continue;
}
try
{
uno::Reference< embed::XStorage > xElementRootStorage =
- ::comphelper::OStorageHelper::GetStorageFromURL(
- aElementPath,
- embed::ElementModes::READWRITE );
+ ::comphelper::OStorageHelper::GetStorageFromURL(
+ aElementPath,
+ embed::ElementModes::READWRITE );
if ( !xElementRootStorage.is() )
+ {
throw uno::RuntimeException();
-
+ }
// Write binary image stream
SbModule* pMod = pBasicLib->FindModule( aElementName );
if( pMod )
@@ -794,20 +827,24 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
OSL_ENSURE( xEncr.is(),
"StorageStream opened for writing must implement XEncryptionProtectedSource!\n" );
if ( !xEncr.is() )
+ {
throw uno::RuntimeException();
+ }
xEncr->setEncryptionPassword( pLib->maPassword );
}
catch(const ::com::sun::star::packages::WrongPasswordException& )
{
xSourceStream = xElementRootStorage->openEncryptedStreamElement(
- aSourceStreamName,
- embed::ElementModes::WRITE | embed::ElementModes::TRUNCATE,
- pLib->maPassword );
+ aSourceStreamName,
+ embed::ElementModes::WRITE | embed::ElementModes::TRUNCATE,
+ pLib->maPassword );
}
uno::Reference< beans::XPropertySet > xProps( xSourceStream, uno::UNO_QUERY );
if ( !xProps.is() )
+ {
throw uno::RuntimeException();
+ }
OUString aMime( "text/xml" );
xProps->setPropertyValue( rtl::OUString("MediaType"), uno::makeAny( aMime ) );
@@ -820,7 +857,9 @@ sal_Bool SfxScriptLibraryContainer::implStorePasswordLibrary( SfxLibrary* pLib,
uno::Reference< embed::XTransactedObject > xTransact( xElementRootStorage, uno::UNO_QUERY );
OSL_ENSURE( xTransact.is(), "The storage must implement XTransactedObject!\n" );
if ( !xTransact.is() )
+ {
throw uno::RuntimeException();
+ }
xTransact->commit();
}
@@ -853,7 +892,9 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
{
if( pScriptLib->mbLoadedBinary && !bVerifyPasswordOnly &&
(pScriptLib->mbLoadedSource || !pLib->mbPasswordVerified) )
- return sal_False;
+ {
+ return sal_False;
+ }
}
StarBASIC* pBasicLib = NULL;
@@ -867,8 +908,9 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
pBasicLib = pBasicMgr ? pBasicMgr->GetLib( Name ) : NULL;
pScriptLib->mbLoaded = bLoaded; // Restore flag
if( !pBasicLib )
+ {
return sal_False;
-
+ }
bLoadBinary = sal_True;
pScriptLib->mbLoadedBinary = true;
}
@@ -893,11 +935,14 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
try {
xLibrariesStor = mxStorage->openStorageElement( maLibrariesDir, embed::ElementModes::READ );
if ( !xLibrariesStor.is() )
+ {
throw uno::RuntimeException();
-
+ }
xLibraryStor = xLibrariesStor->openStorageElement( Name, embed::ElementModes::READ );
if ( !xLibraryStor.is() )
+ {
throw uno::RuntimeException();
+ }
}
catch(const uno::Exception& )
{
@@ -921,15 +966,17 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
}
OUString aCodeStreamName= aElementName;
- aCodeStreamName += String( RTL_CONSTASCII_USTRINGPARAM(".bin") );
+ aCodeStreamName += ".bin";
- try {
+ try
+ {
uno::Reference< io::XStream > xCodeStream = xLibraryStor->openStreamElement(
aCodeStreamName,
embed::ElementModes::READ );
if ( !xCodeStream.is() )
+ {
throw uno::RuntimeException();
-
+ }
SvStream* pStream = ::utl::UcbStreamHelper::CreateStream( xCodeStream );
if ( !pStream || pStream->GetError() )
{
@@ -954,31 +1001,36 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
{
// Access encrypted source stream
OUString aSourceStreamName = aElementName;
- aSourceStreamName += String( RTL_CONSTASCII_USTRINGPARAM(".xml") );
+ aSourceStreamName += ".xml";
- try {
+ try
+ {
uno::Reference< io::XStream > xSourceStream = xLibraryStor->openEncryptedStreamElement(
aSourceStreamName,
embed::ElementModes::READ,
pLib->maPassword );
if ( !xSourceStream.is() )
+ {
throw uno::RuntimeException();
-
+ }
// if this point is reached then the password is correct
if ( !bVerifyPasswordOnly )
{
uno::Reference< io::XInputStream > xInStream = xSourceStream->getInputStream();
if ( !xInStream.is() )
+ {
throw io::IOException(); // read access denied, seems to be impossible
-
+ }
Reference< XNameContainer > xLib( pLib );
Any aAny = importLibraryElement( xLib,
- aElementName, aSourceStreamName,
- xInStream );
+ aElementName, aSourceStreamName,
+ xInStream );
if( pLib->hasByName( aElementName ) )
{
if( aAny.hasValue() )
+ {
pLib->maNameContainer.replaceByName( aElementName, aAny );
+ }
}
else
{
@@ -1007,13 +1059,14 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
aElementInetObj.insertName( aElementName, sal_False,
INetURLObject::LAST_SEGMENT, sal_True, INetURLObject::ENCODE_ALL );
aElementInetObj.setExtension( OUString( "pba" ) );
- String aElementPath = aElementInetObj.GetMainURL( INetURLObject::NO_DECODE );
+ OUString aElementPath = aElementInetObj.GetMainURL( INetURLObject::NO_DECODE );
uno::Reference< embed::XStorage > xElementRootStorage;
- try {
+ try
+ {
xElementRootStorage = ::comphelper::OStorageHelper::GetStorageFromURL(
- aElementPath,
- embed::ElementModes::READ );
+ aElementPath,
+ embed::ElementModes::READ );
} catch(const uno::Exception& )
{
// TODO: error handling
@@ -1031,7 +1084,8 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
pBasicLib->SetModified( sal_False );
}
- try {
+ try
+ {
OUString aCodeStreamName( "code.bin" );
uno::Reference< io::XStream > xCodeStream = xElementRootStorage->openStreamElement(
aCodeStreamName,
@@ -1063,29 +1117,34 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
{
// Access encrypted source stream
OUString aSourceStreamName( "source.xml" );
- try {
+ try
+ {
uno::Reference< io::XStream > xSourceStream = xElementRootStorage->openEncryptedStreamElement(
aSourceStreamName,
embed::ElementModes::READ,
pLib->maPassword );
if ( !xSourceStream.is() )
+ {
throw uno::RuntimeException();
-
+ }
if ( !bVerifyPasswordOnly )
{
uno::Reference< io::XInputStream > xInStream = xSourceStream->getInputStream();
if ( !xInStream.is() )
+ {
throw io::IOException(); // read access denied, seems to be impossible
-
+ }
Reference< XNameContainer > xLib( pLib );
Any aAny = importLibraryElement( xLib,
- aElementName,
- aSourceStreamName,
- xInStream );
+ aElementName,
+ aSourceStreamName,
+ xInStream );
if( pLib->hasByName( aElementName ) )
{
if( aAny.hasValue() )
+ {
pLib->maNameContainer.replaceByName( aElementName, aAny );
+ }
}
else
{
@@ -1100,7 +1159,6 @@ sal_Bool SfxScriptLibraryContainer::implLoadPasswordLibrary
}
}
}
-
}
catch(const Exception& )
{
@@ -1117,13 +1175,15 @@ void SfxScriptLibraryContainer::onNewRootStorage()
{
}
-sal_Bool SAL_CALL
-SfxScriptLibraryContainer:: HasExecutableCode( const ::rtl::OUString& Library ) throw (uno::RuntimeException)
+sal_Bool SAL_CALL SfxScriptLibraryContainer:: HasExecutableCode( const ::rtl::OUString& Library )
+ throw (uno::RuntimeException)
{
BasicManager* pBasicMgr = getBasicManager();
OSL_ENSURE( pBasicMgr, "we need a basicmanager, really we do" );
if ( pBasicMgr )
+ {
return pBasicMgr->HasExeCode( Library ); // need to change this to take name
+ }
// default to it has code if we can't decide
return sal_True;
}
@@ -1135,12 +1195,14 @@ void createRegistryInfo_SfxScriptLibraryContainer()
static OAutoRegistration< SfxScriptLibraryContainer > aAutoRegistration;
}
-::rtl::OUString SAL_CALL SfxScriptLibraryContainer::getImplementationName( ) throw (RuntimeException)
+OUString SAL_CALL SfxScriptLibraryContainer::getImplementationName( )
+ throw (RuntimeException)
{
return getImplementationName_static();
}
-Sequence< ::rtl::OUString > SAL_CALL SfxScriptLibraryContainer::getSupportedServiceNames( ) throw (RuntimeException)
+Sequence< OUString > SAL_CALL SfxScriptLibraryContainer::getSupportedServiceNames( )
+ throw (RuntimeException)
{
return getSupportedServiceNames_static();
}
@@ -1159,12 +1221,10 @@ OUString SfxScriptLibraryContainer::getImplementationName_static()
return OUString("com.sun.star.comp.sfx2.ScriptLibraryContainer" );
}
-Reference< XInterface > SAL_CALL SfxScriptLibraryContainer::Create
- ( const Reference< XComponentContext >& )
- throw( Exception )
+Reference< XInterface > SAL_CALL SfxScriptLibraryContainer::Create( const Reference< XComponentContext >& )
+ throw( Exception )
{
- Reference< XInterface > xRet =
- static_cast< XInterface* >( static_cast< OWeakObject* >(new SfxScriptLibraryContainer()) );
+ Reference< XInterface > xRet = static_cast< XInterface* >( static_cast< OWeakObject* >(new SfxScriptLibraryContainer()) );
return xRet;
}
@@ -1241,38 +1301,47 @@ bool SAL_CALL SfxScriptLibrary::isLibraryElementValid( ::com::sun::star::uno::An
IMPLEMENT_FORWARD_XINTERFACE2( SfxScriptLibrary, SfxLibrary, SfxScriptLibrary_BASE );
IMPLEMENT_FORWARD_XTYPEPROVIDER2( SfxScriptLibrary, SfxLibrary, SfxScriptLibrary_BASE );
-script::ModuleInfo SAL_CALL
-SfxScriptLibrary::getModuleInfo( const ::rtl::OUString& ModuleName ) throw (NoSuchElementException, WrappedTargetException, RuntimeException)
+script::ModuleInfo SAL_CALL SfxScriptLibrary::getModuleInfo( const OUString& ModuleName )
+ throw (NoSuchElementException, WrappedTargetException, RuntimeException)
{
if ( !hasModuleInfo( ModuleName ) )
+ {
throw NoSuchElementException();
+ }
return mModuleInfos[ ModuleName ];
}
-sal_Bool SAL_CALL
-SfxScriptLibrary::hasModuleInfo( const ::rtl::OUString& ModuleName ) throw (RuntimeException)
+sal_Bool SAL_CALL SfxScriptLibrary::hasModuleInfo( const OUString& ModuleName )
+ throw (RuntimeException)
{
sal_Bool bRes = sal_False;
ModuleInfoMap::iterator it = mModuleInfos.find( ModuleName );
if ( it != mModuleInfos.end() )
+ {
bRes = sal_True;
-
+ }
return bRes;
}
-void SAL_CALL SfxScriptLibrary::insertModuleInfo( const ::rtl::OUString& ModuleName, const script::ModuleInfo& ModuleInfo ) throw (IllegalArgumentException, ElementExistException, WrappedTargetException, RuntimeException)
+void SAL_CALL SfxScriptLibrary::insertModuleInfo( const OUString& ModuleName, const script::ModuleInfo& ModuleInfo )
+ throw (IllegalArgumentException, ElementExistException, WrappedTargetException, RuntimeException)
{
if ( hasModuleInfo( ModuleName ) )
+ {
throw ElementExistException();
+ }
mModuleInfos[ ModuleName ] = ModuleInfo;
}
-void SAL_CALL SfxScriptLibrary::removeModuleInfo( const ::rtl::OUString& ModuleName ) throw (NoSuchElementException, WrappedTargetException, RuntimeException)
+void SAL_CALL SfxScriptLibrary::removeModuleInfo( const OUString& ModuleName )
+ throw (NoSuchElementException, WrappedTargetException, RuntimeException)
{
// #FIXME add NoSuchElementException to the spec
if ( !hasModuleInfo( ModuleName ) )
+ {
throw NoSuchElementException();
+ }
mModuleInfos.erase( mModuleInfos.find( ModuleName ) );
}
diff --git a/bean/Library_officebean.mk b/bean/Library_officebean.mk
index d17f795ce22c..1c3fb1fb4453 100644
--- a/bean/Library_officebean.mk
+++ b/bean/Library_officebean.mk
@@ -31,6 +31,11 @@
$(eval $(call gb_Library_Library,officebean))
ifeq ($(GUI),UNX)
+$(eval $(call gb_Library_use_packages,officebean,\
+ sal_generated \
+ sal_inc \
+))
+
$(eval $(call gb_Library_add_cobjects,officebean,\
bean/native/unix/com_sun_star_comp_beans_LocalOfficeWindow \
bean/native/unix/com_sun_star_beans_LocalOfficeWindow \
diff --git a/bin/create_bootstrap_links b/bin/create_bootstrap_links
deleted file mode 100755
index a42f7b803847..000000000000
--- a/bin/create_bootstrap_links
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/usr/bin/env bash
-
-BIN_DIR=$(dirname $0)
-REPOS=$(cat ${BIN_DIR?}/repo-list)
-cd ${BIN_DIR?}/..
-BOOTSTRAP_DIR=$(pwd)
-
-for repo in $REPOS ; do
- for link in $(ls clone/${repo}) ; do
- if [ ! -e "$link" ] ; then
- echo "Creating missing link $link"
- ln -s "clone/${repo}/$link" "$link"
- fi
- done
-done
diff --git a/bin/distro-install-desktop-integration b/bin/distro-install-desktop-integration
index 99f9c60ba459..c5482a865f5b 100755
--- a/bin/distro-install-desktop-integration
+++ b/bin/distro-install-desktop-integration
@@ -169,7 +169,6 @@ add_wrapper loffice soffice "" "libreoffice" ""
add_wrapper unopkg unopkg "" "unopkg" "" "gid_Module_Root_Brand"
# there are two more desktop files for optional filters
-test -f $DESTDIR/gid_Module_Optional_Binfilter && echo "$PREFIXDIR/share/applications/libreoffice-binfilter.desktop" >>"$DESTDIR/gid_Module_Optional_Binfilter"
test -f $DESTDIR/gid_Module_Optional_Xsltfiltersamples && echo "$PREFIXDIR/share/applications/libreoffice-xsltfilter.desktop" >>"$DESTDIR/gid_Module_Optional_Xsltfiltersamples"
# $PREFIXDIR/bin/ooffice symlink is necessary by java UNO components to find
diff --git a/bin/distro-install-file-lists b/bin/distro-install-file-lists
index 8bae44286b7b..eca4d3551e2b 100755
--- a/bin/distro-install-file-lists
+++ b/bin/distro-install-file-lists
@@ -122,7 +122,7 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
merge_flists gid_Module_Optional_OGLTrans $FILELISTSDIR/common_list.txt
fi
- if test "$SPLIT_APP_MODULES" = "YES" -a "$OOO_VENDOR" = "Novell, Inc." ; then
+ if test "$SPLIT_APP_MODULES" = "YES" -a "$OOO_VENDOR" = "SUSE" ; then
# move the prebuilt icons into a hacky temporary package
# we want to repack them into a noarch package as soon as possible
# without the build dependency on the huge devel package
@@ -133,8 +133,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
if test "$SPLIT_OPT_FEATURES" = "YES" ; then
if test "z$OOO_VENDOR" = "zMandriva" ; then
- merge_flists gid_Module_Optional_Binfilter $FILELISTSDIR/filter-binfilter_list.txt
- merge_flists gid_Module_Langpack_Binfilter_en_US $FILELISTSDIR/filter-binfilter_list.txt
merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/draw_list.txt
merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt
merge_flists gid_Module_Optional_Javafilter $FILELISTSDIR/common_list.txt
@@ -142,7 +140,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
merge_flists gid_Module_Optional_Pyuno $FILELISTSDIR/pyuno_list.txt
merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/common_list.txt
else
- merge_flists gid_Module_Optional_Binfilter $FILELISTSDIR/filters_list.txt
merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/common_list.txt
merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt
merge_flists gid_Module_Optional_Javafilter $FILELISTSDIR/filters_list.txt
@@ -151,8 +148,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
merge_flists gid_Module_Optional_Xsltfiltersamples $FILELISTSDIR/filters_list.txt
fi
else
- merge_flists gid_Module_Optional_Binfilter $FILELISTSDIR/common_list.txt
- merge_flists gid_Module_Langpack_Binfilter $FILELISTSDIR/common_list.txt
merge_flists gid_Module_Optional_Grfflt $FILELISTSDIR/common_list.txt
merge_flists gid_Module_Optional_Headless $FILELISTSDIR/common_list.txt
merge_flists gid_Module_Optional_Javafilter $FILELISTSDIR/common_list.txt
@@ -164,7 +159,7 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
# lang packs
for lang in `echo $WITH_LANG_LIST | sed -e s/-/_/g`; do
lang_lists=
- if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "Novell, Inc." -a "$SPLIT_APP_MODULES" = "YES" \) ; then
+ if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "SUSE" -a "$SPLIT_APP_MODULES" = "YES" \) ; then
test -f gid_Module_Langpack_Basis_$lang && lang_lists="$lang_lists gid_Module_Langpack_Basis_$lang" || :
test -f gid_Module_Langpack_Brand_$lang && lang_lists="$lang_lists gid_Module_Langpack_Brand_$lang" || :
test -f gid_Module_Langpack_Resource_$lang && lang_lists="$lang_lists gid_Module_Langpack_Resource_$lang" || :
@@ -174,7 +169,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
test -f gid_Module_Langpack_Calc_$lang && lang_lists="$lang_lists gid_Module_Langpack_Calc_$lang" || :
test -f gid_Module_Langpack_Base_$lang && lang_lists="$lang_lists gid_Module_Langpack_Base_$lang" || :
test -f gid_Module_Langpack_Writer_$lang && lang_lists="$lang_lists gid_Module_Langpack_Writer_$lang" || :
- test -f gid_Module_Langpack_Binfilter_$lang && lang_lists="$lang_lists gid_Module_Langpack_Binfilter_$lang" || :
# Place helps on dedicated packages.
test -f gid_Module_Helppack_Help_$lang && sort -u gid_Module_Helppack_Help_$lang > $FILELISTSDIR/help_${lang}_list.txt || :
else
@@ -187,7 +181,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
test -f gid_Module_Langpack_Calc_$lang && lang_lists="$lang_lists gid_Module_Langpack_Calc_$lang" || :
test -f gid_Module_Langpack_Base_$lang && lang_lists="$lang_lists gid_Module_Langpack_Base_$lang" || :
test -f gid_Module_Langpack_Writer_$lang && lang_lists="$lang_lists gid_Module_Langpack_Writer_$lang" || :
- test -f gid_Module_Langpack_Binfilter_$lang && lang_lists="$lang_lists gid_Module_Langpack_Binfilter_$lang" || :
test -f gid_Module_Helppack_Help_$lang && lang_lists="$lang_lists gid_Module_Helppack_Help_$lang" || :
fi
if test -n "$lang_lists" ; then
@@ -197,7 +190,7 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
fi
# some help files are in _Langpack_{Writer,Impress,...}_<lang>
# move them from -l10n to -help
- if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "Novell, Inc." -a "$SPLIT_APP_MODULES" = "YES" \) ; then
+ if test "$OOO_VENDOR" = "Mandriva" -o \( "$OOO_VENDOR" = "SUSE" -a "$SPLIT_APP_MODULES" = "YES" \) ; then
for lang in `echo $WITH_LANG_LIST | sed -e s/-/_/g`; do
test -f $FILELISTSDIR/help_${lang}_list.txt || continue;
mv_file_between_flists $FILELISTSDIR/help_${lang}_list.txt $FILELISTSDIR/lang_${lang}_list.txt $INSTALLDIR/help/.*
@@ -206,7 +199,7 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
fi
done
- if test -f $FILELISTSDIR/lang_en_US_list.txt -a "$OOO_VENDOR" = "Novell, Inc." -a "$SPLIT_APP_MODULES" != "YES" ; then
+ if test -f $FILELISTSDIR/lang_en_US_list.txt -a "$OOO_VENDOR" = "SUSE" -a "$SPLIT_APP_MODULES" != "YES" ; then
cat $FILELISTSDIR/lang_en_US_list.txt >>$FILELISTSDIR/common_list.txt
rm $FILELISTSDIR/lang_en_US_list.txt
fi
@@ -272,7 +265,7 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
add_used_directories $flist common_list.txt
fi
- if test "z$OOO_VENDOR" = "zNovell, Inc." ; then
+ if test "z$OOO_VENDOR" = "zSUSE" ; then
# officebean subpackage
test -f $DESTDIR/gid_Module_Optional_Extensions_Script_Provider_For_Beanshell && cp $DESTDIR/gid_Module_Optional_Extensions_Script_Provider_For_Beanshell officebean_list.txt || :
mv_file_between_flists officebean_list.txt common_list.txt $INSTALLDIR/program/classes/officebean.jar
@@ -320,9 +313,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then
mv_file_between_flists java_common_list.txt common_list.txt "$INSTALLDIR/program/classes.*"
mv_file_between_flists java_common_list.txt common_list.txt $INSTALLDIR/program/libofficebean.so
mv_file_between_flists java_common_list.txt common_list.txt "$INSTALLDIR/share/Scripts/java.*"
- mv_file_between_flists java_common_list.txt filter-binfilter_list.txt $INSTALLDIR/program/classes/aportisdoc.jar
- mv_file_between_flists java_common_list.txt filter-binfilter_list.txt $INSTALLDIR/program/classes/pocketword.jar
- mv_file_between_flists java_common_list.txt filter-binfilter_list.txt $INSTALLDIR/program/classes/pexcel.jar
mv_file_between_flists java_common_list.txt writer_list.txt $INSTALLDIR/program/classes/writer2latex.jar
# Move arch-dependent/dup files from common to core
@@ -409,9 +399,6 @@ else
create_package_directory gid_Module_Oo_Linguistic pkg/libreoffice-common
create_package_directory gid_Module_Optional_Xsltfiltersamples pkg/libreoffice-common
create_package_directory gid_Module_Optional_Javafilter pkg/libreoffice-common
- if [ -f gid_Module_Optional_Binfilter ]; then
- create_package_directory gid_Module_Optional_Binfilter pkg/libreoffice-filter-binfilter
- fi
create_package_directory gid_Module_Optional_Grfflt pkg/libreoffice-draw
create_package_directory gid_Module_Prg_Calc_Bin pkg/libreoffice-calc
create_package_directory gid_Module_Prg_Math_Bin pkg/libreoffice-math
@@ -455,13 +442,7 @@ else
create_package_directory gid_Module_Langpack_Brand_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l
create_package_directory gid_Module_Langpack_Resource_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l
create_package_directory gid_Module_Helppack_Help_`echo $l | sed -e s/-/_/g` pkg/libreoffice-help-$l
- if [ -f gid_Module_Optional_Binfilter ]; then
- if [ "$l" = "en-US" ]; then
- create_package_directory gid_Module_Langpack_Binfilter_en_US pkg/libreoffice-filter-binfilter
- else
- create_package_directory gid_Module_Langpack_Binfilter_`echo $l | sed -e s/-/_/g` pkg/libreoffice-l10n-$l
- fi
- fi
+
# some help files are in _Langpack_{Writer,Impress,...}_<lang>
# move them from -l10n to -help
if [ "$l" = "en-US" ]; then d=en; else d=$l; fi
@@ -541,7 +522,7 @@ fi
# mark the config files
RPM_CONFIG_FILE_TAGS=
-if test "$OOO_VENDOR" = "Novell, Inc." -o "$OOO_VENDOR" = "RedHat"; then
+if test "$OOO_VENDOR" = "SUSE" -o "$OOO_VENDOR" = "RedHat"; then
RPM_CONFIG_FILE_TAGS="%config"
elif test "$OOO_VENDOR" = "PLD" ; then
RPM_CONFIG_FILE_TAGS="%config(noreplace) %verify(not md5 size mtime)"
diff --git a/bin/lo-commit-stat b/bin/lo-commit-stat
index 4135b8b9a33d..81aa700fcbfe 100755
--- a/bin/lo-commit-stat
+++ b/bin/lo-commit-stat
@@ -8,7 +8,7 @@ use LWP::UserAgent;
use utf8;
my $main_repo="core";
-my @pieces=("binfilter", "dictionaries", "help", "translations");
+my @pieces=("dictionaries", "help", "translations");
my %bugzillas = (
fdo => "https://bugs.freedesktop.org/show_bug.cgi?id=",
diff --git a/bin/lo-pack-sources b/bin/lo-pack-sources
index 7df4a0f058d2..d04d5c95a9a0 100755
--- a/bin/lo-pack-sources
+++ b/bin/lo-pack-sources
@@ -340,7 +340,7 @@ my $lo_core_tempdir;
my $force;
my $verbose=1;
my $is_lo_core_dir=0;
-my @pieces=("binfilter", "dictionaries", "help", "translations");
+my @pieces=("dictionaries", "help", "translations");
my %piece_tarball_name;
###################
diff --git a/bin/mkworkdir b/bin/mkworkdir
deleted file mode 100755
index 9691ee1bd16e..000000000000
--- a/bin/mkworkdir
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/usr/bin/env bash
-
-BASEDIR=$(dirname $0)
-GIT_NEW_WORKDIR=`which git-new-workdir 2>/dev/null`
-if [ -z $GIT_NEW_WORKDIR ] ; then
- GIT_NEW_WORKDIR="$BASEDIR/git-new-workdir"
-fi
-
-print_help() {
- echo "Usage: $1 [-s | --source bootstrap_reference_repo_path] [ -d | --workdir-base-path path] [ --as alias_name] [branch name]"
- echo "--source is optional if you are currently in a bootstrap git repository, in which case that repository is used as source"
- echo "--workdir-base-path is optional if you have defined LO_BASE_WORKDIR in your environement"
- echo "--as is the name of the directory that will be the bootstrap of your new workdir ensemble. the default is the branch name used to create the workdir"
- echo "the branch name is optional, the default is 'master'"
-}
-
-die() {
- echo $1
- exit 1
-}
-
-BOOTSTRAP_DIR=
-DEST_DIR=${LO_BASE_WORKDIR:-}
-BRANCH="master"
-
-while [ "${1:-}" != "" ] ; do
- case $1 in
- -s | --source )
- shift
- BOOTSTRAP_DIR="$1"
- ;;
- -d | --workdir-base-path )
- shift
- DEST_DIR="$1"
- ;;
- --as )
- shift
- WKDIR_NAME="$1"
- ;;
- -h | --help )
- print_help $0
- exit 0
- ;;
- -* )
- die "invalid option $1"
- ;;
- *)
- if [ -z "$BRANCH" ] ; then
- BRANCH="$1"
- else
- die "Too many arguments"
- fi
- ;;
- esac
- shift
-done
-
-
-if [ -z "$BOOTSTRAP_DIR" ]; then
- BOOTSTRAP_DIR=$(git rev-parse --show-toplevel 2>/dev/null) || die "Cannot use the current working directory as implicit source: Not a git repository"
- if [ -n "$BOOTSTRAP_DIR" ] ; then
- if [ "$(basename $(git config remote.origin.url))" != "bootstrap" ] ; then
- die "Cannot use the current working directory as implicit source: Not a bootstrap git repository"
- fi
- fi
-fi
-if [ -z "$DEST_DIR" ]; then
- echo "destination directory is missing."
- print_help $0
- exit 1
-fi
-
-if [ -z "$WKDIR_NAME" ]; then
- WKDIR_NAME="$BRANCH"
-fi
-
-if [ -e "$DEST_DIR/$WKDIR_NAME" ]; then
- die "$DEST_DIR/$WKDIR_NAME already exists."
-fi
-
-echo "===== bootstrap ====="
-$GIT_NEW_WORKDIR $BOOTSTRAP_DIR "$DEST_DIR/$WKDIR_NAME" $BRANCH
-
-echo "creating directory $DEST_DIR/$WKDIR_NAME/clone"
-mkdir -p "$DEST_DIR/$WKDIR_NAME/clone" || die "failed to create $DEST_DIR/$WKDIR_NAME/clone"
-
-REPOS=$(cat ${BASEDIR}/repo-list)
-
-cd "$DEST_DIR/$WKDIR_NAME"
-
-for repo in $REPOS; do
- repo_path="${BOOTSTRAP_DIR}/clone/$repo"
- echo "===== $repo ====="
- $GIT_NEW_WORKDIR $repo_path "$DEST_DIR/$WKDIR_NAME/clone/$repo" $BRANCH
- for link in $(ls ./clone/$repo) ; do
- if [ ! -e "$link" ] ; then
- echo "Creating link $link"
- ln -s "./clone/$repo/$link" "$link"
- fi
- done
-
-done
-
diff --git a/bin/repo-list.in b/bin/repo-list.in
deleted file mode 100644
index 15bad770b6a3..000000000000
--- a/bin/repo-list.in
+++ /dev/null
@@ -1 +0,0 @@
-@GIT_REPO_NAMES@ \ No newline at end of file
diff --git a/binaryurp/README b/binaryurp/README
index 05dfc3391450..1f1e088944f6 100644
--- a/binaryurp/README
+++ b/binaryurp/README
@@ -1,9 +1,9 @@
-UNO Remote Protocol (URP). A binary protocol.
-
-UNO provides a protocol called the UNO Remote Protocol (URP) that provides
-a bridge between UNO environments. This bridge allows processes and objects
-to send method calls and to receive return values. UNO objects in different
-environments are connected by way of this interprocess bridge. The underlying
-connection is made through a socket or pipe. Remote UNO objects are connected
-by means of TCP/IP using the high-level protocol of the URP.
-
+UNO Remote Protocol (URP). A binary protocol.
+
+UNO provides a protocol called the UNO Remote Protocol (URP) that provides
+a bridge between UNO environments. This bridge allows processes and objects
+to send method calls and to receive return values. UNO objects in different
+environments are connected by way of this interprocess bridge. The underlying
+connection is made through a socket or pipe. Remote UNO objects are connected
+by means of TCP/IP using the high-level protocol of the URP.
+
diff --git a/boost/UnpackedTarball_boost.mk b/boost/UnpackedTarball_boost.mk
index 584d479155f4..8035da2c03d9 100644
--- a/boost/UnpackedTarball_boost.mk
+++ b/boost/UnpackedTarball_boost.mk
@@ -24,6 +24,12 @@ boost_patches += boost.6369.warnings.patch
boost_patches += boost.6397.warnings.patch
#backport from boost 1.48.0 fix for "opcode not supported on this processor"
boost_patches += boost.mipsbackport.patch
+#https://svn.boost.org/trac/boost/ticket/7551
+boost_patches += boost.7551.unusedvars.patch
+boost_patches += boost.4100.warnings.patch
+boost_patches += boost.4510.warnings.patch
+#https://svn.boost.org/trac/boost/ticket/6940
+boost_patches += boost.6940.glibc.patch
boost_patches += boost.windows.patch
boost_patches += boost.vc2012.patch
diff --git a/boost/boost.4100.warnings.patch b/boost/boost.4100.warnings.patch
new file mode 100644
index 000000000000..ea475777c7f2
--- /dev/null
+++ b/boost/boost.4100.warnings.patch
@@ -0,0 +1,19 @@
+--- misc/boost_1_44_0/boost/concept/detail/msvc.hpp
++++ misc/build/boost_1_44_0/boost/concept/detail/msvc.hpp
+@@ -12,6 +12,9 @@
+ # include <boost/mpl/if.hpp>
+ # endif
+
++// disable spurious "unreferenced formal parameter" warnings
++#pragma warning( push )
++#pragma warning( disable: 4100 )
+
+ namespace boost { namespace concepts {
+
+@@ -111,4 +114,6 @@
+ # endif
+ }}
+
++#pragma warning( pop )
++
+ #endif // BOOST_CONCEPT_CHECK_MSVC_DWA2006429_HPP
diff --git a/boost/boost.4510.warnings.patch b/boost/boost.4510.warnings.patch
new file mode 100644
index 000000000000..a13d3651af20
--- /dev/null
+++ b/boost/boost.4510.warnings.patch
@@ -0,0 +1,26 @@
+--- misc/boost_1_44_0/boost/multi_array/concept_checks.hpp
++++ misc/build/boost_1_44_0/boost/multi_array/concept_checks.hpp
+@@ -56,6 +56,13 @@
+ }
+ };
+
++// MSVC 2008 produces 2 warnings "default constructor could not be generated"
++// here that run over ~100 lines :(
++#ifdef _MSC_VER
++#pragma warning(push,1)
++#pragma warning(disable: 4510)
++#pragma warning(disable: 4610)
++#endif
+
+ template <typename Array, std::size_t NumDims >
+ struct ConstMultiArrayConcept
+@@ -117,6 +124,9 @@
+ index_range range;
+ };
+
++#ifdef _MSC_VER
++#pragma warning(pop)
++#endif
+
+ template <typename Array, std::size_t NumDims >
+ struct MutableMultiArrayConcept
diff --git a/boost/boost.6397.warnings.patch b/boost/boost.6397.warnings.patch
index 9c4c1ecb1b8c..e2e52ff85c24 100644
--- a/boost/boost.6397.warnings.patch
+++ b/boost/boost.6397.warnings.patch
@@ -257,6 +257,72 @@
--- misc/boost_1_44_0/boost/multi_array.hpp 2012-09-28 13:06:44.796521371 +0100
+++ misc/build/boost_1_44_0/boost/multi_array.hpp 2012-09-28 13:07:25.119002500 +0100
+@@ -139,20 +139,20 @@
+
+ explicit multi_array() :
+ super_type((T*)initial_base_,c_storage_order(),
+- /*index_bases=*/0, /*extents=*/0) {
++ /*index_bases=*/0, /*extents_=*/0) {
+ allocate_space();
+ }
+
+ template <class ExtentList>
+ explicit multi_array(
+- ExtentList const& extents
++ ExtentList const& extents_
+ #ifdef BOOST_NO_FUNCTION_TEMPLATE_ORDERING
+ , typename mpl::if_<
+ detail::multi_array::is_multi_array_impl<ExtentList>,
+ int&,int>::type* = 0
+ #endif
+ ) :
+- super_type((T*)initial_base_,extents) {
++ super_type((T*)initial_base_,extents_) {
+ boost::function_requires<
+ detail::multi_array::CollectionConcept<ExtentList> >();
+ allocate_space();
+@@ -160,19 +160,19 @@
+
+
+ template <class ExtentList>
+- explicit multi_array(ExtentList const& extents,
++ explicit multi_array(ExtentList const& extents_,
+ const general_storage_order<NumDims>& so) :
+- super_type((T*)initial_base_,extents,so) {
++ super_type((T*)initial_base_,extents_,so) {
+ boost::function_requires<
+ detail::multi_array::CollectionConcept<ExtentList> >();
+ allocate_space();
+ }
+
+ template <class ExtentList>
+- explicit multi_array(ExtentList const& extents,
++ explicit multi_array(ExtentList const& extents_,
+ const general_storage_order<NumDims>& so,
+ Allocator const& alloc) :
+- super_type((T*)initial_base_,extents,so), allocator_(alloc) {
++ super_type((T*)initial_base_,extents_,so), allocator_(alloc) {
+ boost::function_requires<
+ detail::multi_array::CollectionConcept<ExtentList> >();
+ allocate_space();
+@@ -381,7 +381,7 @@
+
+
+ template <typename ExtentList>
+- multi_array& resize(const ExtentList& extents) {
++ multi_array& resize(const ExtentList& extents_) {
+ boost::function_requires<
+ detail::multi_array::CollectionConcept<ExtentList> >();
+
+@@ -390,7 +390,7 @@
+
+ for (int i=0; i != NumDims; ++i) {
+ typedef typename gen_type::range range_type;
+- ranges.ranges_[i] = range_type(0,extents[i]);
++ ranges.ranges_[i] = range_type(0,extents_[i]);
+ }
+
+ return this->resize(ranges);
@@ -423,9 +423,9 @@
// Build index_gen objects to create views with the same shape
@@ -270,3 +336,50 @@
std::transform(new_array.index_base_list_.begin(),
new_array.index_base_list_.end(),
+--- misc/boost_1_44_0/boost/random/mersenne_twister.hpp
++++ misc/build/boost_1_44_0/boost/random/mersenne_twister.hpp
+@@ -195,16 +195,16 @@
+ }
+ #endif
+
+- friend bool operator==(const mersenne_twister& x, const mersenne_twister& y)
++ friend bool operator==(const mersenne_twister& x_, const mersenne_twister& y_)
+ {
+ for(int j = 0; j < state_size; ++j)
+- if(x.compute(j) != y.compute(j))
++ if(x_.compute(j) != y_.compute(j))
+ return false;
+ return true;
+ }
+
+- friend bool operator!=(const mersenne_twister& x, const mersenne_twister& y)
+- { return !(x == y); }
++ friend bool operator!=(const mersenne_twister& x_, const mersenne_twister& y_)
++ { return !(x_ == y_); }
+ #else
+ // Use a member function; Streamable concept not supported.
+ bool operator==(const mersenne_twister& rhs) const
+--- misc/boost_1_44_0/boost/uuid/uuid_io.hpp
++++ misc/build/boost_1_44_0/boost/uuid/uuid_io.hpp
+@@ -59,7 +59,7 @@
+ }
+
+ if (flags & std::ios_base::left) {
+- for (std::streamsize i=uuid_width; i<width; i++) {
++ for (std::streamsize s=uuid_width; s<width; ++s) {
+ os << fill;
+ }
+ }
+--- misc/boost_1_44_0/boost/uuid/name_generator.hpp
++++ misc/build/boost_1_44_0/boost/uuid/name_generator.hpp
+@@ -30,8 +30,8 @@
+ public:
+ typedef uuid result_type;
+
+- explicit name_generator(uuid const& namespace_uuid)
+- : namespace_uuid(namespace_uuid)
++ explicit name_generator(uuid const& namespace_uuid_)
++ : namespace_uuid(namespace_uuid_)
+ {}
+
+ uuid operator()(const char* name) {
diff --git a/boost/boost.6940.glibc.patch b/boost/boost.6940.glibc.patch
new file mode 100644
index 000000000000..b1f42308de8b
--- /dev/null
+++ b/boost/boost.6940.glibc.patch
@@ -0,0 +1,20 @@
+--- misc/boost_1_44_0/boost/thread/xtime.hpp 2012-11-05 20:13:28.034300778 -0500
++++ misc/build/boost_1_44_0/boost/thread/xtime.hpp 2012-11-05 20:13:50.856322691 -0500
+@@ -20,7 +20,7 @@
+
+ enum xtime_clock_types
+ {
+- TIME_UTC=1
++ TIME_UTC_=1
+ // TIME_TAI,
+ // TIME_MONOTONIC,
+ // TIME_PROCESS,
+@@ -68,7 +68,7 @@
+
+ inline int xtime_get(struct xtime* xtp, int clock_type)
+ {
+- if (clock_type == TIME_UTC)
++ if (clock_type == TIME_UTC_)
+ {
+ *xtp=get_xtime(get_system_time());
+ return clock_type;
diff --git a/boost/boost.7551.unusedvars.patch b/boost/boost.7551.unusedvars.patch
new file mode 100644
index 000000000000..839f9252435d
--- /dev/null
+++ b/boost/boost.7551.unusedvars.patch
@@ -0,0 +1,10 @@
+--- misc/boost_1_44_0/boost/date_time/tz_db_base.hpp
+--- misc/build/boost_1_44_0/boost/date_time/tz_db_base.hpp
+@@ -170,7 +170,6 @@
+ /*! May throw data_not_accessible, or bad_field_count exceptions */
+ void load_from_file(const std::string& pathspec)
+ {
+- string_type in_str;
+ std::string buff;
+
+ std::ifstream ifs(pathspec.c_str());
diff --git a/boost/boost_1_44_0-clang-warnings.patch b/boost/boost_1_44_0-clang-warnings.patch
index c0c2206cecb4..df0883c58909 100644
--- a/boost/boost_1_44_0-clang-warnings.patch
+++ b/boost/boost_1_44_0-clang-warnings.patch
@@ -9,6 +9,27 @@
{
typedef BOOST_STRING_TYPENAME
range_const_iterator<InputT>::type input_iterator_type;
+--- misc/boost_1_44_0/boost/concept_check.hpp
++++ misc/build/boost_1_44_0/boost/concept_check.hpp
+@@ -136,7 +136,18 @@ namespace boost
+ {
+ BOOST_CONCEPT_USAGE(Assignable) {
+ #if !defined(_ITERATOR_) // back_insert_iterator broken for VC++ STL
++#if defined __clang__
++#if __has_warning("-Wself-assign-field")
++#pragma clang diagnostic push
++#pragma clang diagnostic ignored "-Wself-assign-field"
++#endif
++#endif
+ a = a; // require assignment operator
++#if defined __clang__
++#if __has_warning("-Wself-assign-field")
++#pragma clang diagnostic pop
++#endif
++#endif
+ #endif
+ const_constraints(a);
+ }
--- misc/boost_1_44_0/boost/date_time/dst_rules.hpp 2008-02-27 21:00:24.000000000 +0100
+++ misc/build/boost_1_44_0/boost/date_time/dst_rules.hpp 2012-06-06 23:11:03.000000000 +0200
@@ -371,7 +371,7 @@
diff --git a/bootstrap b/bootstrap
index 073f69a70e90..b7a73622e1d1 100755
--- a/bootstrap
+++ b/bootstrap
@@ -72,14 +72,6 @@ if test "$BUILD_DMAKE" != "NO"; then
echo "dmake copied to $SOLARENV/$OUTPATH_FOR_BUILD/bin/dmake$EXEEXT"
fi
-# build concat-deps
-echo "building concat-deps"
-if [ "$COM_FOR_BUILD" = "MSC" ] ; then
- # on cygwin force the use of gcc
- gcc -O2 "$SOLARENV/bin/concat-deps.c" -o "$SOLARENV/bin/concat-deps" || exit
-else
- $CC_FOR_BUILD -O2 "$SOLARENV/bin/concat-deps.c" -o "$SOLARENV/bin/concat-deps" || exit
-fi
#make sure build.pl is executable
chmod +x "$SRC_ROOT/solenv/bin/build.pl"
diff --git a/bridges/CustomTarget_gcc3_ios_arm.mk b/bridges/CustomTarget_gcc3_ios_arm.mk
index fd971313cd42..4d1796db42e3 100644
--- a/bridges/CustomTarget_gcc3_ios_arm.mk
+++ b/bridges/CustomTarget_gcc3_ios_arm.mk
@@ -10,12 +10,11 @@
$(eval $(call gb_CustomTarget_CustomTarget,bridges/source/cpp_uno/gcc3_ios_arm))
$(call gb_CustomTarget_get_target,bridges/source/cpp_uno/gcc3_ios_arm) : \
- $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios_arm)/codesnippets.S \
- | $(dir $(call gb_CustomTarget_get_target,bridges/source/cpp_uno/gcc3_ios_arm)).dir
+ $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios_arm)/codesnippets.S
$(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios_arm)/codesnippets.S : \
- $(SRCDIR)/bridges/source/cpp_uno/gcc3_ios_arm/generate-snippets.pl
- mkdir -p $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios_arm)
+ $(SRCDIR)/bridges/source/cpp_uno/gcc3_ios_arm/generate-snippets.pl \
+ | $(call gb_CustomTarget_get_workdir,bridges/source/cpp_uno/gcc3_ios_arm)/.dir
$(PERL) $< > $@
# vim: set noet sw=4 ts=4:
diff --git a/bridges/inc/bridges/cpp_uno/bridge.hxx b/bridges/inc/bridges/cpp_uno/bridge.hxx
index 96af924e734a..7e6350cd7ac4 100644
--- a/bridges/inc/bridges/cpp_uno/bridge.hxx
+++ b/bridges/inc/bridges/cpp_uno/bridge.hxx
@@ -126,7 +126,7 @@ inline void cppu_cppInterfaceProxy::releaseProxy() SAL_THROW(())
//__________________________________________________________________________________________________
inline cppu_cppInterfaceProxy::cppu_cppInterfaceProxy(
cppu_Bridge * pBridge_, uno_Interface * pUnoI_,
- typelib_InterfaceTypeDescription * pTypeDescr_, const ::rtl::OUString & rOId_ ) SAL_THROW(())
+ typelib_InterfaceTypeDescription * pTypeDescr_, const OUString & rOId_ ) SAL_THROW(())
: nRef( 1 )
, pBridge( pBridge_ )
, pUnoI( pUnoI_ )
@@ -243,7 +243,7 @@ inline void SAL_CALL cppu_Mapping_cpp2uno(
//__________________________________________________________________________________________________
inline cppu_unoInterfaceProxy::cppu_unoInterfaceProxy(
cppu_Bridge * pBridge_, ::com::sun::star::uno::XInterface * pCppI_,
- typelib_InterfaceTypeDescription * pTypeDescr_, const ::rtl::OUString & rOId_ ) SAL_THROW(())
+ typelib_InterfaceTypeDescription * pTypeDescr_, const OUString & rOId_ ) SAL_THROW(())
: nRef( 1 )
, pBridge( pBridge_ )
, pCppI( pCppI_ )
@@ -392,22 +392,22 @@ inline void SAL_CALL cppu_ext_getMapping(
//##################################################################################################
#if (defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500))
-static ::rtl::OUString * s_pStaticOidPart = 0;
+static OUString * s_pStaticOidPart = 0;
#endif
// environment init stuff
//--------------------------------------------------------------------------------------------------
-inline const ::rtl::OUString & SAL_CALL cppu_cppenv_getStaticOIdPart() SAL_THROW(())
+inline const OUString & SAL_CALL cppu_cppenv_getStaticOIdPart() SAL_THROW(())
{
#if ! (defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500))
- static ::rtl::OUString * s_pStaticOidPart = 0;
+ static OUString * s_pStaticOidPart = 0;
#endif
if (! s_pStaticOidPart)
{
::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
if (! s_pStaticOidPart)
{
- ::rtl::OUStringBuffer aRet( 64 );
+ OUStringBuffer aRet( 64 );
aRet.appendAscii( RTL_CONSTASCII_STRINGPARAM("];") );
// good guid
sal_uInt8 ar[16];
@@ -417,9 +417,9 @@ inline const ::rtl::OUString & SAL_CALL cppu_cppenv_getStaticOIdPart() SAL_THROW
aRet.append( (sal_Int32)ar[i], 16 );
}
#if (defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500))
- s_pStaticOidPart = new ::rtl::OUString( aRet.makeStringAndClear() );
+ s_pStaticOidPart = new OUString( aRet.makeStringAndClear() );
#else
- static ::rtl::OUString s_aStaticOidPart( aRet.makeStringAndClear() );
+ static OUString s_aStaticOidPart( aRet.makeStringAndClear() );
s_pStaticOidPart = &s_aStaticOidPart;
#endif
}
@@ -449,18 +449,18 @@ inline void SAL_CALL cppu_cppenv_computeObjectIdentifier(
if (xHome.is())
{
// interface
- ::rtl::OUStringBuffer oid( 64 );
+ OUStringBuffer oid( 64 );
oid.append( (sal_Int64)xHome.get(), 16 );
oid.append( (sal_Unicode)';' );
// ;environment[context]
oid.append(
- *reinterpret_cast< ::rtl::OUString const * >(
+ *reinterpret_cast< OUString const * >(
&((uno_Environment *) pEnv)->pTypeName ) );
oid.append( (sal_Unicode)'[' );
oid.append( (sal_Int64)((uno_Environment *)pEnv)->pContext, 16 );
// ];good guid
oid.append( cppu_cppenv_getStaticOIdPart() );
- ::rtl::OUString aRet( oid.makeStringAndClear() );
+ OUString aRet( oid.makeStringAndClear() );
::rtl_uString_acquire( *ppOId = aRet.pData );
}
}
diff --git a/bridges/inc/bridges/cpp_uno/shared/cppinterfaceproxy.hxx b/bridges/inc/bridges/cpp_uno/shared/cppinterfaceproxy.hxx
index 579af7e6dece..f363444f19c8 100644
--- a/bridges/inc/bridges/cpp_uno/shared/cppinterfaceproxy.hxx
+++ b/bridges/inc/bridges/cpp_uno/shared/cppinterfaceproxy.hxx
@@ -50,14 +50,14 @@ public:
static com::sun::star::uno::XInterface * create(
Bridge * pBridge, uno_Interface * pUnoI,
typelib_InterfaceTypeDescription * pTypeDescr,
- rtl::OUString const & rOId) SAL_THROW(());
+ OUString const & rOId) SAL_THROW(());
// Interface for individual CPP--UNO bridges:
Bridge * getBridge() { return pBridge; }
uno_Interface * getUnoI() { return pUnoI; }
typelib_InterfaceTypeDescription * getTypeDescr() { return pTypeDescr; }
- rtl::OUString getOid() { return oid; }
+ OUString getOid() { return oid; }
// non virtual methods called on incoming vtable calls #1, #2
void acquireProxy() SAL_THROW(());
@@ -72,7 +72,7 @@ private:
CppInterfaceProxy(
Bridge * pBridge_, uno_Interface * pUnoI_,
typelib_InterfaceTypeDescription * pTypeDescr_,
- rtl::OUString const & rOId_) SAL_THROW(());
+ OUString const & rOId_) SAL_THROW(());
~CppInterfaceProxy();
@@ -85,7 +85,7 @@ private:
// mapping information
uno_Interface * pUnoI; // wrapped interface
typelib_InterfaceTypeDescription * pTypeDescr;
- rtl::OUString oid;
+ OUString oid;
VtableFactory::Slot * vtables[1];
diff --git a/bridges/inc/bridges/cpp_uno/shared/unointerfaceproxy.hxx b/bridges/inc/bridges/cpp_uno/shared/unointerfaceproxy.hxx
index 61d35eb79156..7e2846ac6e71 100644
--- a/bridges/inc/bridges/cpp_uno/shared/unointerfaceproxy.hxx
+++ b/bridges/inc/bridges/cpp_uno/shared/unointerfaceproxy.hxx
@@ -65,7 +65,7 @@ public:
static UnoInterfaceProxy * create(
Bridge * pBridge, com::sun::star::uno::XInterface * pCppI,
typelib_InterfaceTypeDescription * pTypeDescr,
- rtl::OUString const & rOId) SAL_THROW(());
+ OUString const & rOId) SAL_THROW(());
// Interface for individual CPP--UNO bridges:
@@ -79,7 +79,7 @@ private:
UnoInterfaceProxy(
Bridge * pBridge_, com::sun::star::uno::XInterface * pCppI_,
typelib_InterfaceTypeDescription * pTypeDescr_,
- rtl::OUString const & rOId_) SAL_THROW(());
+ OUString const & rOId_) SAL_THROW(());
~UnoInterfaceProxy();
@@ -89,7 +89,7 @@ private:
// mapping information
com::sun::star::uno::XInterface * pCppI; // wrapped interface
typelib_InterfaceTypeDescription * pTypeDescr;
- rtl::OUString oid;
+ OUString oid;
friend void SAL_CALL freeUnoInterfaceProxy(
uno_ExtEnvironment * pEnv, void * pProxy);
diff --git a/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx b/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx
index cc6ef427ea7f..6316f9aea8f4 100644
--- a/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx
+++ b/bridges/inc/bridges/cpp_uno/shared/vtablefactory.hxx
@@ -204,7 +204,7 @@ private:
static void flushCode(
unsigned char const * begin, unsigned char const * end);
- typedef boost::unordered_map< rtl::OUString, Vtables, rtl::OUStringHash > Map;
+ typedef boost::unordered_map< OUString, Vtables, OUStringHash > Map;
osl::Mutex m_mutex;
Map m_map;
diff --git a/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx b/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx
index 6b80c027c9b5..ee7efc205318 100644
--- a/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/cc50_solaris_sparc/uno2cpp.cxx
@@ -42,8 +42,6 @@
using namespace com::sun::star::uno;
-using ::rtl::OUString;
-
namespace
{
diff --git a/bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp.cxx
index 2d920df679f3..e341285a3666 100644
--- a/bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_ios_arm/uno2cpp.cxx
@@ -204,6 +204,13 @@ void callVirtualMethod(
#ifdef __arm
+ // Implement!!!
+ abort();
+ (void) nVtableIndex;
+ (void) pRegisterReturn;
+ (void) pReturnTypeDescr;
+ (void) bSimpleReturn;
+
#else
volatile long edx = 0, eax = 0; // for register returns
void * stackptr = 0;
diff --git a/bridges/source/cpp_uno/gcc3_linux_intel/callvirtualmethod.cxx b/bridges/source/cpp_uno/gcc3_linux_intel/callvirtualmethod.cxx
index 56612d2f6d3a..cb4b57402999 100644
--- a/bridges/source/cpp_uno/gcc3_linux_intel/callvirtualmethod.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_intel/callvirtualmethod.cxx
@@ -67,7 +67,7 @@ void CPPU_CURRENT_NAMESPACE::callVirtualMethod(
// unexpected size of int
assert(nStackLongs && pStackLongs); // no stack
-#ifdef __clang__
+#if defined __clang__ || __GNUC__ == 4 && __GNUC_MINOR__ <= 6
if (! pAdjustedThisPtr) CPPU_CURRENT_NAMESPACE::dummy_can_throw_anything("xxx"); // address something
#endif
diff --git a/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx
index 7957b918e12b..be59df5ef6d7 100644
--- a/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_sparc/cpp2uno.cxx
@@ -255,7 +255,7 @@ static typelib_TypeClass cpp_mediate(
"### illegal vtable index!" );
if (nFunctionIndex >= pTypeDescr->nMapFunctionIndexToMemberIndex)
{
- throw RuntimeException( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "illegal vtable index!" )), (XInterface *)pCppI );
+ throw RuntimeException( "illegal vtable index!", (XInterface *)pCppI );
}
// determine called method
@@ -350,7 +350,7 @@ static typelib_TypeClass cpp_mediate(
}
default:
{
- throw RuntimeException(rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "no member description found!" )), (XInterface *)pCppI );
+ throw RuntimeException( "no member description found!", (XInterface *)pCppI );
}
}
return eRet;
diff --git a/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx
index 149a2e328404..eaf0045b3b00 100644
--- a/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_sparc/uno2cpp.cxx
@@ -39,10 +39,6 @@
using namespace com::sun::star::uno;
-using ::rtl::OUString;
-using ::rtl::OString;
-using ::rtl::OUStringToOString;
-
namespace
{
//==================================================================================================
diff --git a/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx
index e171203f0457..b45e77686c07 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_intel/cpp2uno.cxx
@@ -255,13 +255,13 @@ extern "C" void cpp_vtable_call(
#endif
typelib_InterfaceTypeDescription * pTypeDescr = pCppI->getTypeDescr();
#if OSL_DEBUG_LEVEL > 1
- fprintf( stderr, "name=%s\n", rtl::OUStringToOString(pTypeDescr->aBase.pTypeName, RTL_TEXTENCODING_UTF8).getStr() );
+ fprintf( stderr, "name=%s\n", OUStringToOString(pTypeDescr->aBase.pTypeName, RTL_TEXTENCODING_UTF8).getStr() );
#endif
OSL_ENSURE( nFunctionIndex < pTypeDescr->nMapFunctionIndexToMemberIndex, "### illegal vtable index!" );
if (nFunctionIndex >= pTypeDescr->nMapFunctionIndexToMemberIndex)
{
throw RuntimeException(
- rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "illegal vtable index!" )),
+ OUString( "illegal vtable index!" ),
(XInterface *)pThis );
}
@@ -271,7 +271,7 @@ extern "C" void cpp_vtable_call(
TypeDescription aMemberDescr( pTypeDescr->ppAllMembers[nMemberPos] );
#if OSL_DEBUG_LEVEL > 1
- fprintf(stderr, "calling %s\n", rtl::OUStringToOString(aMemberDescr.get()->pTypeName, RTL_TEXTENCODING_UTF8).getStr());
+ fprintf(stderr, "calling %s\n", OUStringToOString(aMemberDescr.get()->pTypeName, RTL_TEXTENCODING_UTF8).getStr());
#endif
switch (aMemberDescr.get()->eTypeClass)
{
@@ -352,7 +352,7 @@ extern "C" void cpp_vtable_call(
default:
{
throw RuntimeException(
- rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "no member description found!" )),
+ OUString( "no member description found!" ),
(XInterface *)pThis );
}
}
diff --git a/bridges/source/cpp_uno/shared/component.cxx b/bridges/source/cpp_uno/shared/component.cxx
index 56eb55c6665e..fe1a08e4e910 100644
--- a/bridges/source/cpp_uno/shared/component.cxx
+++ b/bridges/source/cpp_uno/shared/component.cxx
@@ -58,21 +58,21 @@ namespace {
#if (defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500)) \
|| (defined(__GNUC__) && defined(__APPLE__))
-static ::rtl::OUString * s_pStaticOidPart = 0;
+static OUString * s_pStaticOidPart = 0;
#endif
-const ::rtl::OUString & SAL_CALL cppu_cppenv_getStaticOIdPart() SAL_THROW(())
+const OUString & SAL_CALL cppu_cppenv_getStaticOIdPart() SAL_THROW(())
{
#if ! ((defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500)) \
|| (defined(__GNUC__) && defined(__APPLE__)))
- static ::rtl::OUString * s_pStaticOidPart = 0;
+ static OUString * s_pStaticOidPart = 0;
#endif
if (! s_pStaticOidPart)
{
::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
if (! s_pStaticOidPart)
{
- ::rtl::OUStringBuffer aRet( 64 );
+ OUStringBuffer aRet( 64 );
aRet.appendAscii( RTL_CONSTASCII_STRINGPARAM("];") );
// good guid
sal_uInt8 ar[16];
@@ -83,9 +83,9 @@ const ::rtl::OUString & SAL_CALL cppu_cppenv_getStaticOIdPart() SAL_THROW(())
}
#if (defined(__SUNPRO_CC) && (__SUNPRO_CC == 0x500)) \
|| (defined(__GNUC__) && defined(__APPLE__))
- s_pStaticOidPart = new ::rtl::OUString( aRet.makeStringAndClear() );
+ s_pStaticOidPart = new OUString( aRet.makeStringAndClear() );
#else
- static ::rtl::OUString s_aStaticOidPart(
+ static OUString s_aStaticOidPart(
aRet.makeStringAndClear() );
s_pStaticOidPart = &s_aStaticOidPart;
#endif
@@ -126,12 +126,12 @@ static void s_stub_computeObjectIdentifier(va_list * pParam)
if (xHome.is())
{
// interface
- ::rtl::OUStringBuffer oid( 64 );
+ OUStringBuffer oid( 64 );
oid.append( reinterpret_cast< sal_Int64 >(xHome.get()), 16 );
oid.append( (sal_Unicode)';' );
// ;environment[context]
oid.append(
- *reinterpret_cast< ::rtl::OUString const * >(
+ *reinterpret_cast< OUString const * >(
&((uno_Environment *) pEnv)->pTypeName ) );
oid.append( (sal_Unicode)'[' );
oid.append(
@@ -140,7 +140,7 @@ static void s_stub_computeObjectIdentifier(va_list * pParam)
16 );
// ];good guid
oid.append( cppu_cppenv_getStaticOIdPart() );
- ::rtl::OUString aRet( oid.makeStringAndClear() );
+ OUString aRet( oid.makeStringAndClear() );
::rtl_uString_acquire( *ppOId = aRet.pData );
}
}
@@ -240,8 +240,8 @@ SAL_DLLPUBLIC_EXPORT void SAL_CALL uno_ext_getMapping(
{
uno_Mapping * pMapping = 0;
- rtl::OUString from_envTypeName(cppu::EnvDcp::getTypeName(pFrom->pTypeName));
- rtl::OUString to_envTypeName(cppu::EnvDcp::getTypeName(pTo->pTypeName));
+ OUString from_envTypeName(cppu::EnvDcp::getTypeName(pFrom->pTypeName));
+ OUString to_envTypeName(cppu::EnvDcp::getTypeName(pTo->pTypeName));
if (0 == rtl_ustr_ascii_compare(
from_envTypeName.pData->buffer,
diff --git a/bridges/source/cpp_uno/shared/cppinterfaceproxy.cxx b/bridges/source/cpp_uno/shared/cppinterfaceproxy.cxx
index cc8c4d947e8f..35b2f2c8acf5 100644
--- a/bridges/source/cpp_uno/shared/cppinterfaceproxy.cxx
+++ b/bridges/source/cpp_uno/shared/cppinterfaceproxy.cxx
@@ -106,7 +106,7 @@ void freeCppInterfaceProxy(uno_ExtEnvironment * pEnv, void * pInterface)
com::sun::star::uno::XInterface * CppInterfaceProxy::create(
bridges::cpp_uno::shared::Bridge * pBridge, uno_Interface * pUnoI,
- typelib_InterfaceTypeDescription * pTypeDescr, rtl::OUString const & rOId)
+ typelib_InterfaceTypeDescription * pTypeDescr, OUString const & rOId)
SAL_THROW(())
{
typelib_typedescription_complete(
@@ -153,7 +153,7 @@ void CppInterfaceProxy::releaseProxy() SAL_THROW(())
CppInterfaceProxy::CppInterfaceProxy(
bridges::cpp_uno::shared::Bridge * pBridge_, uno_Interface * pUnoI_,
- typelib_InterfaceTypeDescription * pTypeDescr_, rtl::OUString const & rOId_)
+ typelib_InterfaceTypeDescription * pTypeDescr_, OUString const & rOId_)
SAL_THROW(())
: nRef( 1 )
, pBridge( pBridge_ )
diff --git a/bridges/source/cpp_uno/shared/unointerfaceproxy.cxx b/bridges/source/cpp_uno/shared/unointerfaceproxy.cxx
index 81353cff7682..b82ebfd67903 100644
--- a/bridges/source/cpp_uno/shared/unointerfaceproxy.cxx
+++ b/bridges/source/cpp_uno/shared/unointerfaceproxy.cxx
@@ -91,7 +91,7 @@ UnoInterfaceProxy * UnoInterfaceProxy::create(
bridges::cpp_uno::shared::Bridge * pBridge,
com::sun::star::uno::XInterface * pCppI,
typelib_InterfaceTypeDescription * pTypeDescr,
- rtl::OUString const & rOId) SAL_THROW(())
+ OUString const & rOId) SAL_THROW(())
{
return new UnoInterfaceProxy(pBridge, pCppI, pTypeDescr, rOId);
}
@@ -99,7 +99,7 @@ UnoInterfaceProxy * UnoInterfaceProxy::create(
UnoInterfaceProxy::UnoInterfaceProxy(
bridges::cpp_uno::shared::Bridge * pBridge_,
com::sun::star::uno::XInterface * pCppI_,
- typelib_InterfaceTypeDescription * pTypeDescr_, rtl::OUString const & rOId_)
+ typelib_InterfaceTypeDescription * pTypeDescr_, OUString const & rOId_)
SAL_THROW(())
: nRef( 1 )
, pBridge( pBridge_ )
diff --git a/bridges/source/cpp_uno/shared/vtablefactory.cxx b/bridges/source/cpp_uno/shared/vtablefactory.cxx
index d44c2e6f52bd..ffa8e7dbd359 100644
--- a/bridges/source/cpp_uno/shared/vtablefactory.cxx
+++ b/bridges/source/cpp_uno/shared/vtablefactory.cxx
@@ -156,14 +156,14 @@ class VtableFactory::BaseOffset {
public:
BaseOffset(typelib_InterfaceTypeDescription * type) { calculate(type, 0); }
- sal_Int32 getFunctionOffset(rtl::OUString const & name) const
+ sal_Int32 getFunctionOffset(OUString const & name) const
{ return m_map.find(name)->second; }
private:
sal_Int32 calculate(
typelib_InterfaceTypeDescription * type, sal_Int32 offset);
- typedef boost::unordered_map< rtl::OUString, sal_Int32, rtl::OUStringHash > Map;
+ typedef boost::unordered_map< OUString, sal_Int32, OUStringHash > Map;
Map m_map;
};
@@ -171,7 +171,7 @@ private:
sal_Int32 VtableFactory::BaseOffset::calculate(
typelib_InterfaceTypeDescription * type, sal_Int32 offset)
{
- rtl::OUString name(type->aBase.pTypeName);
+ OUString name(type->aBase.pTypeName);
if (m_map.find(name) == m_map.end()) {
for (sal_Int32 i = 0; i < type->nBaseTypes; ++i) {
offset = calculate(type->ppBaseTypes[i], offset);
@@ -211,7 +211,7 @@ VtableFactory::~VtableFactory() {
VtableFactory::Vtables VtableFactory::getVtables(
typelib_InterfaceTypeDescription * type)
{
- rtl::OUString name(type->aBase.pTypeName);
+ OUString name(type->aBase.pTypeName);
osl::MutexGuard guard(m_mutex);
Map::iterator i(m_map.find(name));
if (i == m_map.end()) {
@@ -243,18 +243,18 @@ bool VtableFactory::createBlock(Block &block, sal_Int32 slotCount) const
block.fd = -1;
osl::Security aSecurity;
- rtl::OUString strDirectory;
- rtl::OUString strURLDirectory;
+ OUString strDirectory;
+ OUString strURLDirectory;
if (aSecurity.getHomeDir(strURLDirectory))
osl::File::getSystemPathFromFileURL(strURLDirectory, strDirectory);
for (int i = strDirectory.isEmpty() ? 1 : 0; i < 2; ++i)
{
if (strDirectory.isEmpty())
- strDirectory = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/tmp" ));
+ strDirectory = "/tmp";
- strDirectory += rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/.execoooXXXXXX" ));
- rtl::OString aTmpName = rtl::OUStringToOString(strDirectory, osl_getThreadTextEncoding());
+ strDirectory += "/.execoooXXXXXX";
+ rtl::OString aTmpName = OUStringToOString(strDirectory, osl_getThreadTextEncoding());
char *tmpfname = new char[aTmpName.getLength()+1];
strncpy(tmpfname, aTmpName.getStr(), aTmpName.getLength()+1);
if ((block.fd = mkstemp(tmpfname)) == -1)
@@ -297,7 +297,7 @@ bool VtableFactory::createBlock(Block &block, sal_Int32 slotCount) const
freeBlock(block);
- strDirectory = rtl::OUString();
+ strDirectory = OUString();
}
if (!block.start || !block.exec || block.fd == -1)
{
diff --git a/bridges/source/jni_uno/jni_info.cxx b/bridges/source/jni_uno/jni_info.cxx
index 8274f20858c7..cebc3d4fcd98 100644
--- a/bridges/source/jni_uno/jni_info.cxx
+++ b/bridges/source/jni_uno/jni_info.cxx
@@ -985,7 +985,7 @@ extern "C"
{
//------------------------------------------------------------------------------
-SAL_DLLPUBLIC_EXPORT void
+SAL_JNI_EXPORT void
JNICALL Java_com_sun_star_bridges_jni_1uno_JNI_1info_1holder_finalize__J(
JNIEnv * jni_env, SAL_UNUSED_PARAMETER jobject, jlong jni_info_handle )
SAL_THROW_EXTERN_C()
diff --git a/bridges/source/jni_uno/jni_java2uno.cxx b/bridges/source/jni_uno/jni_java2uno.cxx
index a07a4f4f18e6..f82f320a3553 100644
--- a/bridges/source/jni_uno/jni_java2uno.cxx
+++ b/bridges/source/jni_uno/jni_java2uno.cxx
@@ -388,7 +388,7 @@ extern "C"
{
//------------------------------------------------------------------------------
-SAL_DLLPUBLIC_EXPORT jobject
+SAL_JNI_EXPORT jobject
JNICALL Java_com_sun_star_bridges_jni_1uno_JNI_1proxy_dispatch_1call(
JNIEnv * jni_env, jobject jo_proxy, jlong bridge_handle, jstring jo_method,
jobjectArray jo_args /* may be 0 */ )
@@ -654,7 +654,7 @@ JNICALL Java_com_sun_star_bridges_jni_1uno_JNI_1proxy_dispatch_1call(
}
//------------------------------------------------------------------------------
-SAL_DLLPUBLIC_EXPORT void
+SAL_JNI_EXPORT void
JNICALL Java_com_sun_star_bridges_jni_1uno_JNI_1proxy_finalize__J(
JNIEnv * jni_env, jobject jo_proxy, jlong bridge_handle )
SAL_THROW_EXTERN_C()
diff --git a/bridges/source/jni_uno/nativethreadpool.cxx b/bridges/source/jni_uno/nativethreadpool.cxx
index 969d91bb4e80..633a5473bb21 100644
--- a/bridges/source/jni_uno/nativethreadpool.cxx
+++ b/bridges/source/jni_uno/nativethreadpool.cxx
@@ -92,7 +92,7 @@ static void SAL_CALL executeRequest(void * data) {
}
-extern "C" SAL_DLLPUBLIC_EXPORT jbyteArray JNICALL
+extern "C" SAL_JNI_EXPORT jbyteArray JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_threadId(
JNIEnv * env, SAL_UNUSED_PARAMETER jclass) SAL_THROW_EXTERN_C()
{
@@ -117,7 +117,7 @@ Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_threadId(
return a;
}
-extern "C" SAL_DLLPUBLIC_EXPORT jlong JNICALL
+extern "C" SAL_JNI_EXPORT jlong JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_create(
JNIEnv * env, SAL_UNUSED_PARAMETER jclass) SAL_THROW_EXTERN_C()
{
@@ -147,7 +147,7 @@ Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_create(
}
}
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL
+extern "C" SAL_JNI_EXPORT void JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_attach(
SAL_UNUSED_PARAMETER JNIEnv *, SAL_UNUSED_PARAMETER jclass, jlong pool)
SAL_THROW_EXTERN_C()
@@ -155,7 +155,7 @@ Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_attach(
uno_threadpool_attach(reinterpret_cast< Pool * >(pool)->pool);
}
-extern "C" SAL_DLLPUBLIC_EXPORT jobject JNICALL
+extern "C" SAL_JNI_EXPORT jobject JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_enter(
JNIEnv * env, SAL_UNUSED_PARAMETER jclass, jlong pool) SAL_THROW_EXTERN_C()
{
@@ -171,7 +171,7 @@ Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_enter(
return ref;
}
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL
+extern "C" SAL_JNI_EXPORT void JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_detach(
SAL_UNUSED_PARAMETER JNIEnv *, SAL_UNUSED_PARAMETER jclass, jlong pool)
SAL_THROW_EXTERN_C()
@@ -179,7 +179,7 @@ Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_detach(
uno_threadpool_detach(reinterpret_cast< Pool * >(pool)->pool);
}
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL
+extern "C" SAL_JNI_EXPORT void JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_putJob(
JNIEnv * env, SAL_UNUSED_PARAMETER jclass, jlong pool, jbyteArray threadId,
jobject job, jboolean request, jboolean oneWay) SAL_THROW_EXTERN_C()
@@ -214,7 +214,7 @@ Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_putJob(
request ? executeRequest : 0, oneWay);
}
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL
+extern "C" SAL_JNI_EXPORT void JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_dispose(
SAL_UNUSED_PARAMETER JNIEnv *, SAL_UNUSED_PARAMETER jclass, jlong pool)
SAL_THROW_EXTERN_C()
@@ -222,7 +222,7 @@ Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_dispose(
uno_threadpool_dispose(reinterpret_cast< Pool * >(pool)->pool);
}
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL
+extern "C" SAL_JNI_EXPORT void JNICALL
Java_com_sun_star_lib_uno_environments_remote_NativeThreadPool_destroy(
SAL_UNUSED_PARAMETER JNIEnv *, SAL_UNUSED_PARAMETER jclass, jlong pool)
SAL_THROW_EXTERN_C()
diff --git a/cairo/cairo-1.10.2.patch b/cairo/cairo-1.10.2.patch
index d13c1e4e135e..fce11491699c 100644
--- a/cairo/cairo-1.10.2.patch
+++ b/cairo/cairo-1.10.2.patch
@@ -189,6 +189,15 @@
cairo_cv_xml_use=$use_xml
cairo_cv_xml_cache_vars=" BASE REQUIRES CFLAGS NONPKGCONFIG_CFLAGS LIBS NONPKGCONFIG_LIBS NONPKGCONFIG_EXTRA_LIBS"
+@@ -32864,7 +32864,7 @@
+ $_compile_program
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
+- cairo_cc_stderr=`test -f conftest.err && cat conftest.err`
++ cairo_cc_stderr=`test -f conftest.err && grep -v 'ld: warning: object file compiled with -mlong-branch which is no longer needed.' conftest.err`
+ cairo_cc_flag=yes
+ else
+ cairo_cc_stderr=`test -f conftest.err && cat conftest.err`
--- misc/cairo-1.10.2/src/cairo-deflate-stream.c 2010-06-18 13:47:12.000000000 +0200
+++ misc/build/cairo-1.10.2/src/cairo-deflate-stream.c 2010-06-18 13:47:12.000000000 +0200
@@ -37,7 +37,11 @@
diff --git a/cairo/pixman-0.24.4.patch b/cairo/pixman-0.24.4.patch
index c16ac84b8838..88a44f926ca3 100644
--- a/cairo/pixman-0.24.4.patch
+++ b/cairo/pixman-0.24.4.patch
@@ -112,6 +112,15 @@
{ $as_echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5
$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
if test "${ac_cv_c_bigendian+set}" = set; then
+@@ -24552,7 +24552,7 @@
+ test "$cross_compiling" = yes ||
+ $as_test_x conftest$ac_exeext
+ }; then
+- pixman_cc_stderr=`test -f conftest.err && cat conftest.err`
++ pixman_cc_stderr=`test -f conftest.err && grep -v 'ld: warning: object file compiled with -mlong-branch which is no longer needed.' conftest.err`
+ pixman_cc_flag=yes
+ else
+ $as_echo "$as_me: failed program was:" >&5
--- misc/pixman-0.24.4/pixman/pixman-utils.c
+++ misc/build/pixman-0.24.4/pixman/pixman-utils.c
@@ -27,6 +27,7 @@
diff --git a/cairo/prj/build.lst b/cairo/prj/build.lst
index b10763514f47..9e8db83da055 100644
--- a/cairo/prj/build.lst
+++ b/cairo/prj/build.lst
@@ -1,4 +1,4 @@
-lcairo cairo : ZLIB:zlib LIBPNG:libpng soltools NULL
+lcairo cairo : FONTCONFIG:fontconfig ZLIB:zlib LIBPNG:libpng soltools NULL
lcairo cairo usr1 - all lcairo_mkout NULL
lcairo cairo\pixman nmake - all lcairo_pixman NULL
lcairo cairo\cairo nmake - all lcairo_cairo lcairo_pixman NULL
diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx
index 0ecddee33365..8c0f03e1c5a1 100644
--- a/canvas/source/cairo/cairo_canvashelper.cxx
+++ b/canvas/source/cairo/cairo_canvashelper.cxx
@@ -339,6 +339,22 @@ namespace cairocanvas
return ::BitmapEx();
}
+ static sal_uInt8 lcl_GetColor(BitmapColor const& rColor)
+ {
+ sal_uInt8 nTemp(0);
+ if (rColor.IsIndex())
+ {
+ nTemp = rColor.GetIndex();
+ }
+ else
+ {
+ nTemp = rColor.GetBlue();
+ // greyscale expected here, or what would non-grey colors mean?
+ assert(rColor.GetRed() == nTemp && rColor.GetGreen() == nTemp);
+ }
+ return nTemp;
+ }
+
static bool readAlpha( BitmapReadAccess* pAlphaReadAcc, long nY, const long nWidth, unsigned char* data, long nOff )
{
bool bIsAlpha = false;
@@ -364,7 +380,10 @@ namespace cairocanvas
pReadScan = pAlphaReadAcc->GetScanline( nY );
for( nX = 0; nX < nWidth; nX++ )
{
- nAlpha = data[ nOff ] = 255 - ( pAlphaReadAcc->GetPaletteColor( *pReadScan++ ).GetIndex() );
+ BitmapColor const& rColor(
+ pAlphaReadAcc->GetPaletteColor(*pReadScan));
+ pReadScan++;
+ nAlpha = data[ nOff ] = 255 - lcl_GetColor(rColor);
if( nAlpha != 255 )
bIsAlpha = true;
nOff += 4;
diff --git a/canvas/source/cairo/cairo_textlayout.cxx b/canvas/source/cairo/cairo_textlayout.cxx
index 383b0ffe3fbc..317ea264751a 100644
--- a/canvas/source/cairo/cairo_textlayout.cxx
+++ b/canvas/source/cairo/cairo_textlayout.cxx
@@ -545,32 +545,13 @@ namespace cairocanvas
// Font rotation and scaling
cairo_matrix_t m;
Font aFont = rOutDev.GetFont();
- FontMetric aMetric( rOutDev.GetFontMetric(aFont) );
- long nWidth = 0;
-
- // width calculation is deep magic and platform/font dependant.
- // width == 0 means no scaling, and usually width == height means the same.
- // Other values mean horizontal scaling (narrow or stretching)
- // see issue #101566
-
- //proper scale calculation across platforms
- if (aFont.GetWidth() == 0)
- {
- nWidth = aFont.GetHeight();
- }
- else
- {
- // any scaling needs to be relative to the platform-dependent definition
- // of height of the font
- nWidth = aFont.GetWidth() * aFont.GetHeight() / aMetric.GetHeight();
- }
cairo_matrix_init_identity(&m);
if (aSysLayoutData.orientation)
cairo_matrix_rotate(&m, (3600 - aSysLayoutData.orientation) * M_PI / 1800.0);
- cairo_matrix_scale(&m, nWidth, aFont.GetHeight());
+ cairo_matrix_scale(&m, aFont.GetWidth(), aFont.GetHeight());
//faux italics
if (rSysFontData.bFakeItalic)
@@ -583,11 +564,9 @@ namespace cairocanvas
#else
# define TEMP_TRACE_FONT ::rtl::OUStringToOString( aFont.GetName(), RTL_TEXTENCODING_UTF8 ).getStr()
#endif
- OSL_TRACE("\r\n:cairocanvas::TextLayout::draw(S,O,p,v,r): Size:(%d,%d), W:%d->%d, Pos (%d,%d), G(%d,%d,%d) %s%s%s%s || Name:%s - %s",
+ OSL_TRACE("\r\n:cairocanvas::TextLayout::draw(S,O,p,v,r): Size:(%d,%d), Pos (%d,%d), G(%d,%d,%d) %s%s%s%s || Name:%s - %s",
aFont.GetWidth(),
aFont.GetHeight(),
- aMetric.GetWidth(),
- nWidth,
(int) rOutpos.X(),
(int) rOutpos.Y(),
cairo_glyphs.size() > 0 ? cairo_glyphs[0].index : -1,
@@ -609,14 +588,15 @@ namespace cairocanvas
if (rSysFontData.bFakeBold)
{
double bold_dx = 0.5 * sqrt( 0.7 * aFont.GetHeight() );
- int total_steps = 2 * ((int) (bold_dx + 0.5));
+ int total_steps = 1 * ((int) (bold_dx + 0.5));
// loop to draw the text for every half pixel of displacement
for (int nSteps = 0; nSteps < total_steps; nSteps++)
{
for(int nGlyphIdx = 0; nGlyphIdx < (int) cairo_glyphs.size(); nGlyphIdx++)
{
- cairo_glyphs[nGlyphIdx].x += bold_dx * nSteps / total_steps;
+ cairo_glyphs[nGlyphIdx].x += (bold_dx * nSteps / total_steps) / 4;
+ cairo_glyphs[nGlyphIdx].y -= (bold_dx * nSteps / total_steps) / 4;
}
cairo_show_glyphs(pSCairo.get(), &cairo_glyphs[0], cairo_glyphs.size());
}
diff --git a/canvas/source/vcl/canvashelper.cxx b/canvas/source/vcl/canvashelper.cxx
index 0d4f204be2b5..2454dded1d67 100644
--- a/canvas/source/vcl/canvashelper.cxx
+++ b/canvas/source/vcl/canvashelper.cxx
@@ -17,7 +17,6 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-
#include <canvas/debug.hxx>
#include <tools/diagnose_ex.h>
@@ -90,7 +89,6 @@ namespace vclcanvas
return basegfx::B2DLINEJOIN_NONE;
}
-#ifdef FIXME_REMOVE_WHEN_RE_BASE_COMPLETE
drawing::LineCap unoCapeFromCap( sal_Int8 nCapType)
{
switch ( nCapType)
@@ -110,7 +108,6 @@ namespace vclcanvas
}
return drawing::LineCap_BUTT;
}
-#endif
}
CanvasHelper::CanvasHelper() :
@@ -405,10 +402,8 @@ namespace vclcanvas
aStrokedPolyPoly.append(basegfx::tools::createAreaGeometry(
aPolyPoly.getB2DPolygon(i),
strokeAttributes.StrokeWidth*0.5,
- b2DJoineFromJoin(strokeAttributes.JoinType)
-#ifdef FIXME_REMOVE_WHEN_RE_BASE_COMPLETE
- ,unoCapeFromCap(strokeAttributes.StartCapType)
-#endif
+ b2DJoineFromJoin(strokeAttributes.JoinType),
+ unoCapeFromCap(strokeAttributes.StartCapType)
));
//aStrokedPolyPoly.append(
// ::basegfx::tools::createAreaGeometryForPolygon( aPolyPoly.getB2DPolygon(i),
diff --git a/canvas/workben/canvasdemo.cxx b/canvas/workben/canvasdemo.cxx
index be08bad94b17..dfb57ce59452 100644
--- a/canvas/workben/canvasdemo.cxx
+++ b/canvas/workben/canvasdemo.cxx
@@ -680,7 +680,7 @@ void DemoApp::Main()
::ucb::UniversalContentBroker::create(
comphelper::getProcessComponentContext() );
- InitVCL( xFactory );
+ InitVCL();
TestWindow pWindow;
pWindow.Execute();
DeInitVCL();
diff --git a/chart2/Library_chartcontroller.mk b/chart2/Library_chartcontroller.mk
index be78baa95a4c..96044b994e3e 100644
--- a/chart2/Library_chartcontroller.mk
+++ b/chart2/Library_chartcontroller.mk
@@ -180,7 +180,6 @@ $(eval $(call gb_Library_add_exception_objects,chartcontroller,\
chart2/source/controller/main/ChartDropTargetHelper \
chart2/source/controller/main/ChartFrameloader \
chart2/source/controller/main/ChartModelClone \
- chart2/source/controller/main/ChartRenderer \
chart2/source/controller/main/ChartTransferable \
chart2/source/controller/main/ChartWindow \
chart2/source/controller/main/CommandDispatchContainer \
diff --git a/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx b/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx
index e3c44018d4bb..034eb4763d04 100644
--- a/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx
+++ b/chart2/source/controller/chartapiwrapper/ChartDocumentWrapper.cxx
@@ -45,7 +45,6 @@
#include "AreaWrapper.hxx"
#include "WrappedAddInProperty.hxx"
#include "WrappedIgnoreProperty.hxx"
-#include "ChartRenderer.hxx"
#include <com/sun/star/chart2/XTitled.hpp>
#include <com/sun/star/chart2/data/XDataReceiver.hpp>
#include <com/sun/star/chart/ChartDataRowSource.hpp>
@@ -1343,12 +1342,6 @@ uno::Reference< uno::XInterface > SAL_CALL ChartDocumentWrapper::createInstance(
bServiceFound = true;
}
- else if( aServiceSpecifier.equals( CHART_RENDERER_SERVICE_IMPLEMENTATION_NAME ) )
- {
- Reference< lang::XUnoTunnel > xChartRenderer( new ChartRenderer( m_spChart2ModelContact->getChartModel() ) );
- xResult.set( xChartRenderer );
- bServiceFound = true;
- }
else if( aServiceSpecifier == "com.sun.star.comp.chart2.DataSeriesWrapper" )
{
Reference< beans::XPropertySet > xDataSeries( new DataSeriesPointWrapper( m_spChart2ModelContact ) );
diff --git a/chart2/source/controller/dialogs/tp_DataSource.cxx b/chart2/source/controller/dialogs/tp_DataSource.cxx
index 080ad76c8f24..bb5ef2ae63a2 100644
--- a/chart2/source/controller/dialogs/tp_DataSource.cxx
+++ b/chart2/source/controller/dialogs/tp_DataSource.cxx
@@ -77,7 +77,7 @@ void lcl_UpdateCurrentRange(
SvTabListBox & rOutListBox,
const OUString & rRole, const OUString & rRange )
{
- SvLBoxEntry * pEntry = rOutListBox.FirstSelected();
+ SvTreeListEntry * pEntry = rOutListBox.FirstSelected();
if( pEntry )
rOutListBox.SetEntryText( lcl_GetRoleLBEntry( rRole, rRange ), pEntry );
}
@@ -106,7 +106,7 @@ bool lcl_UpdateCurrentSeriesName(
OUString lcl_GetSelectedRole( const SvTabListBox & rRoleListBox, bool bUITranslated = false )
{
OUString aResult;
- SvLBoxEntry * pEntry = rRoleListBox.FirstSelected();
+ SvTreeListEntry * pEntry = rRoleListBox.FirstSelected();
if( pEntry )
aResult = OUString( rRoleListBox.GetEntryText( pEntry,
bUITranslated ? 1 : 0 ));
@@ -116,7 +116,7 @@ OUString lcl_GetSelectedRole( const SvTabListBox & rRoleListBox, bool bUITransla
OUString lcl_GetSelectedRolesRange( const SvTabListBox & rRoleListBox )
{
OUString aResult;
- SvLBoxEntry * pEntry = rRoleListBox.FirstSelected();
+ SvTreeListEntry * pEntry = rRoleListBox.FirstSelected();
if( pEntry )
aResult = OUString( rRoleListBox.GetEntryText( pEntry, 2 ));
return aResult;
@@ -459,7 +459,7 @@ void DataSourceTabPage::fillSeriesListBox()
xSelected.set( pEntry->m_xDataSeries );
bool bHasSelectedEntry = (pEntry != 0);
- SvLBoxEntry * pSelectedEntry = 0;
+ SvTreeListEntry * pSelectedEntry = 0;
m_apLB_SERIES->Clear();
::std::vector< DialogModel::tSeriesWithChartTypeByName > aSeries(
@@ -511,7 +511,7 @@ void DataSourceTabPage::fillRoleListBox()
SeriesEntry * pSeriesEntry = dynamic_cast< SeriesEntry * >( m_apLB_SERIES->FirstSelected());
bool bHasSelectedEntry = (pSeriesEntry != 0);
- SvLBoxEntry * pRoleEntry = m_aLB_ROLE.FirstSelected();
+ SvTreeListEntry * pRoleEntry = m_aLB_ROLE.FirstSelected();
sal_uLong nRoleIndex = SAL_MAX_UINT32;
if( pRoleEntry )
nRoleIndex = m_aLB_ROLE.GetModel()->GetAbsPos( pRoleEntry );
@@ -549,14 +549,14 @@ void DataSourceTabPage::fillRoleListBox()
void DataSourceTabPage::updateControlState()
{
- SvLBoxEntry * pSeriesEntry = m_apLB_SERIES->FirstSelected();
+ SvTreeListEntry * pSeriesEntry = m_apLB_SERIES->FirstSelected();
bool bHasSelectedSeries = (pSeriesEntry != 0);
bool bHasValidRole = false;
bool bHasRangeChooser = m_rDialogModel.getRangeSelectionHelper()->hasRangeSelection();
if( bHasSelectedSeries )
{
- SvLBoxEntry * pRoleEntry = m_aLB_ROLE.FirstSelected();
+ SvTreeListEntry * pRoleEntry = m_aLB_ROLE.FirstSelected();
bHasValidRole = (pRoleEntry != 0);
}
@@ -601,7 +601,7 @@ IMPL_LINK_NOARG(DataSourceTabPage, SeriesSelectionChangedHdl)
IMPL_LINK_NOARG(DataSourceTabPage, RoleSelectionChangedHdl)
{
m_rDialogModel.startControllerLockTimer();
- SvLBoxEntry * pEntry = m_aLB_ROLE.FirstSelected();
+ SvTreeListEntry * pEntry = m_aLB_ROLE.FirstSelected();
if( pEntry )
{
OUString aRange( m_aEDT_RANGE.GetText());
@@ -712,10 +712,10 @@ IMPL_LINK_NOARG(DataSourceTabPage, AddButtonClickedHdl)
fillSeriesListBox();
// note the box was cleared and refilled, so pEntry is invalid now
- SvLBoxEntry * pSelEntry = m_apLB_SERIES->FirstSelected();
+ SvTreeListEntry * pSelEntry = m_apLB_SERIES->FirstSelected();
if( pSelEntry )
{
- SvLBoxEntry * pNextEntry = m_apLB_SERIES->Next( pSelEntry );
+ SvTreeListEntry * pNextEntry = m_apLB_SERIES->Next( pSelEntry );
if( pNextEntry )
m_apLB_SERIES->Select( pNextEntry );
}
diff --git a/chart2/source/controller/dialogs/tp_DataSourceControls.cxx b/chart2/source/controller/dialogs/tp_DataSourceControls.cxx
index fe1f1fd07e20..602831e464ce 100644
--- a/chart2/source/controller/dialogs/tp_DataSourceControls.cxx
+++ b/chart2/source/controller/dialogs/tp_DataSourceControls.cxx
@@ -39,7 +39,7 @@ SeriesListBox::SeriesListBox( Window* pParent, const ResId & rResId ) :
SeriesListBox::~SeriesListBox()
{}
-SvLBoxEntry* SeriesListBox::CreateEntry() const
+SvTreeListEntry* SeriesListBox::CreateEntry() const
{
return new SeriesEntry();
}
diff --git a/chart2/source/controller/dialogs/tp_DataSourceControls.hxx b/chart2/source/controller/dialogs/tp_DataSourceControls.hxx
index c2f0b798aaf0..47142817410f 100644
--- a/chart2/source/controller/dialogs/tp_DataSourceControls.hxx
+++ b/chart2/source/controller/dialogs/tp_DataSourceControls.hxx
@@ -31,7 +31,7 @@
namespace chart
{
-class SeriesEntry : public ::SvLBoxEntry
+class SeriesEntry : public ::SvTreeListEntry
{
public:
virtual ~SeriesEntry();
@@ -53,7 +53,7 @@ public:
explicit SeriesListBox( Window* pParent, const ResId & rResId );
~SeriesListBox( );
- virtual SvLBoxEntry* CreateEntry() const;
+ virtual SvTreeListEntry* CreateEntry() const;
};
} // namespace chart
diff --git a/chart2/source/controller/drawinglayer/ViewElementListProvider.cxx b/chart2/source/controller/drawinglayer/ViewElementListProvider.cxx
index 63b1f3fc7e8a..d4827cee52a9 100644
--- a/chart2/source/controller/drawinglayer/ViewElementListProvider.cxx
+++ b/chart2/source/controller/drawinglayer/ViewElementListProvider.cxx
@@ -187,7 +187,7 @@ Graphic ViewElementListProvider::GetSymbolGraphic( sal_Int32 nStandardSymbol, co
if( pSymbolShapeProperties )
pObj->SetMergedItemSet(*pSymbolShapeProperties);
- GDIMetaFile aMeta(pView->GetAllMarkedMetaFile());
+ GDIMetaFile aMeta(pView->GetMarkedObjMetaFile());
Graphic aGraph(aMeta);
Size aSize = pObj->GetSnapRect().GetSize();
diff --git a/chart2/source/controller/inc/ChartRenderer.hxx b/chart2/source/controller/inc/ChartRenderer.hxx
deleted file mode 100644
index ab049db05026..000000000000
--- a/chart2/source/controller/inc/ChartRenderer.hxx
+++ /dev/null
@@ -1,70 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#ifndef CHART_RENDERER_HXX
-#define CHART_RENDERER_HXX
-
-#include <svtools/chartprettypainter.hxx>
-#include "ServiceMacros.hxx"
-
-#include <cppuhelper/implbase2.hxx>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/lang/XUnoTunnel.hpp>
-#include <com/sun/star/frame/XModel.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include <cppuhelper/weakref.hxx>
-
-//.............................................................................
-namespace chart
-{
-//.............................................................................
-
-//#i82893#, #i75867#: charts must be painted resolution dependent!!
-class ChartRenderer : public ::cppu::WeakImplHelper2<
- ::com::sun::star::lang::XServiceInfo
- , ::com::sun::star::lang::XUnoTunnel
- >, public ChartPrettyPainter
-{
-public:
- ChartRenderer( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& xChartModel );
- virtual ~ChartRenderer();
-
- // ___lang::XServiceInfo___
- APPHELPER_XSERVICEINFO_DECL()
-
- // ____ XUnoTunnel ___
- virtual ::sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< ::sal_Int8 >& aIdentifier )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ ChartPrettyPainter ___
- virtual bool DoPaint(OutputDevice* pOutDev, const Rectangle& rLogicObjectRect) const;
-
-private:
- ChartRenderer();
- ChartRenderer( const ChartRenderer& );
-
- ::com::sun::star::uno::WeakReference< ::com::sun::star::frame::XModel > m_xChartModel;
-};
-
-//.............................................................................
-} // namespace chart
-//.............................................................................
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/main/ChartRenderer.cxx b/chart2/source/controller/main/ChartRenderer.cxx
deleted file mode 100644
index 93d66e9c3121..000000000000
--- a/chart2/source/controller/main/ChartRenderer.cxx
+++ /dev/null
@@ -1,168 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include "ChartRenderer.hxx"
-#include "servicenames.hxx"
-#include "chartview/ExplicitValueProvider.hxx"
-#include "chartview/DrawModelWrapper.hxx"
-#include "DrawViewWrapper.hxx"
-#include "macros.hxx"
-#include "ChartModelHelper.hxx"
-#include <vcl/svapp.hxx>
-#include <osl/mutex.hxx>
-
-#include <com/sun/star/util/XUpdatable.hpp>
-
-//.............................................................................
-namespace chart
-{
-//.............................................................................
-
-using namespace ::com::sun::star;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using rtl::OUString;
-
-ChartRenderer::ChartRenderer( const Reference< frame::XModel >& xChartModel )
- : m_xChartModel( uno::WeakReference< frame::XModel >(xChartModel) )
-{
-}
-
-ChartRenderer::~ChartRenderer()
-{
-}
-
-// ____ ChartPrettyPainter ___
-bool ChartRenderer::DoPaint(OutputDevice* pOutDev, const Rectangle& rLogicObjectRect /*in given output dev map units*/ ) const
-{
- if(!pOutDev)
- return false;
-
- Reference<frame::XModel> xModel(m_xChartModel);
- uno::Reference< lang::XMultiServiceFactory > xFact( xModel, uno::UNO_QUERY );
- if( !xFact.is() )
- return false;
-
- //#i84323# ensure that the size the container has of the chart and size that chart has itself are the same
- //maybe remove this workaround somewhere in future again
- {
- if( MAP_100TH_MM == pOutDev->GetMapMode().GetMapUnit() )//no problem for writer in issue #i84323#; but writer uses twips instead of 100thmm which causes small differences in size always when converting to 100thmm and back
- {
- awt::Size aChartSize( ChartModelHelper::getPageSize(xModel) );
- awt::Size aContainerChartSize( rLogicObjectRect.GetWidth(), rLogicObjectRect.GetHeight() );
- if( aContainerChartSize.Width != aChartSize.Width
- || aContainerChartSize.Height != aChartSize.Height )
- {
- OSL_FAIL("chart size does not equal size assumed by the container");
- //correct the state here on the fly -> let the container size win
- ChartModelHelper::setPageSize( aContainerChartSize, xModel );
- }
- }
- }
-
- // get the chart view
- Reference< lang::XUnoTunnel > xChartView( xFact->createInstance( CHART_VIEW_SERVICE_NAME ), uno::UNO_QUERY );
-
- try
- {
- //better performance for big data
- uno::Reference< beans::XPropertySet > xProp( xChartView, uno::UNO_QUERY );
- if( xProp.is() )
- {
- awt::Size aResolution(1000,1000);
- {
- SolarMutexGuard aGuard;
- Rectangle aPixelRect( pOutDev->LogicToPixel( rLogicObjectRect ) );
- aResolution.Width = aPixelRect.GetWidth();
- aResolution.Height = aPixelRect.GetHeight();
- }
- xProp->setPropertyValue( C2U("Resolution"), uno::makeAny( aResolution ));
- }
- //
-
- uno::Reference< util::XUpdatable > xUpdatable( xChartView, uno::UNO_QUERY );
- if( xUpdatable.is() )
- xUpdatable->update();
-
- SolarMutexGuard aGuard;
- ExplicitValueProvider* pProvider = ExplicitValueProvider::getExplicitValueProvider( xChartView );
- if( !pProvider )
- return false;
- ::boost::shared_ptr< DrawModelWrapper > pDrawModelWrapper = pProvider->getDrawModelWrapper();
- if( !pDrawModelWrapper.get() )
- return false;
- ::boost::shared_ptr< DrawViewWrapper > pDrawViewWrapper( new DrawViewWrapper(&pDrawModelWrapper->getSdrModel(),pOutDev,false) );
- pDrawViewWrapper->attachParentReferenceDevice( xModel );
-
- MapMode aOldMapMode( pOutDev->GetMapMode() );
- Point aOldOrigin( aOldMapMode.GetOrigin() );
- MapMode aMapMode( aOldMapMode );
- Point aOldOriginMM( OutputDevice::LogicToLogic( aOldOrigin, aOldMapMode.GetMapUnit(), MAP_100TH_MM ) );
- Point aObjectTopLeftMM( OutputDevice::LogicToLogic( rLogicObjectRect.TopLeft(), aOldMapMode.GetMapUnit(), MAP_100TH_MM ) );
- aMapMode.SetOrigin( aOldOriginMM + aObjectTopLeftMM );
- aMapMode.SetMapUnit( MAP_100TH_MM );
- pOutDev->SetMapMode(aMapMode);
-
- Rectangle aPaintRect( OutputDevice::LogicToLogic( rLogicObjectRect, aOldMapMode, aMapMode ) );
- pDrawViewWrapper->CompleteRedraw(pOutDev, Region(aPaintRect) );
-
- pOutDev->SetMapMode(aOldMapMode);
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
- catch( ... )
- {
- }
-
- return true;
-}
-
-//-----------------------------------------------------------------
-// ____ XUnoTunnel ___
-::sal_Int64 SAL_CALL ChartRenderer::getSomething( const Sequence< ::sal_Int8 >& aIdentifier )
- throw( uno::RuntimeException)
-{
- if( aIdentifier.getLength() == 16 && 0 == memcmp(
- ChartPrettyPainter::getUnoTunnelId().getConstArray(),
- aIdentifier.getConstArray(), 16 ) )
- {
- ChartPrettyPainter* pPaintableObject = this;
- return reinterpret_cast<sal_Int64>(pPaintableObject);
- }
- return 0;
-}
-
-//-----------------------------------------------------------------
-// lang::XServiceInfo
-
-APPHELPER_XSERVICEINFO_IMPL(ChartRenderer,CHART_RENDERER_SERVICE_IMPLEMENTATION_NAME)
-
-Sequence< OUString > ChartRenderer::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aSNS;
- return aSNS;
-}
-
-//.............................................................................
-} //namespace chart
-//.............................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/inc/CloneHelper.hxx b/chart2/source/inc/CloneHelper.hxx
index f15b80839e48..c19ce8b76586 100644
--- a/chart2/source/inc/CloneHelper.hxx
+++ b/chart2/source/inc/CloneHelper.hxx
@@ -24,6 +24,7 @@
#include <map>
#include <functional>
#include <algorithm>
+#include <iterator>
namespace chart
{
diff --git a/chart2/source/inc/servicenames.hxx b/chart2/source/inc/servicenames.hxx
index d96f96b2215d..9c7074f2b89b 100644
--- a/chart2/source/inc/servicenames.hxx
+++ b/chart2/source/inc/servicenames.hxx
@@ -52,8 +52,6 @@ namespace chart
#define CHART_ACCESSIBLE_TEXT_IMPLEMENTATION_NAME ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.AccessibleTextComponent" ))
#define CHART_ACCESSIBLE_TEXT_SERVICE_NAME ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleTextComponent" ))
-#define CHART_RENDERER_SERVICE_IMPLEMENTATION_NAME ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.ChartRenderer" ))
-
//.............................................................................
} //namespace chart
//.............................................................................
diff --git a/chart2/source/model/filter/XMLFilter.cxx b/chart2/source/model/filter/XMLFilter.cxx
index 5f72dde8dcf5..10a565a7338e 100644
--- a/chart2/source/model/filter/XMLFilter.cxx
+++ b/chart2/source/model/filter/XMLFilter.cxx
@@ -38,6 +38,7 @@
#include <sot/storage.hxx>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/xml/sax/InputSource.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/lang/XMultiComponentFactory.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
#include <com/sun/star/embed/ElementModes.hpp>
@@ -590,10 +591,7 @@ sal_Int32 XMLFilter::impl_Export(
if( ! xServiceFactory.is())
return ERRCODE_SFX_GENERAL;
- uno::Reference< io::XActiveDataSource > xSaxWriter( xServiceFactory->createInstance(
- C2U("com.sun.star.xml.sax.Writer")), uno::UNO_QUERY );
- if ( !xSaxWriter.is() )
- return ERRCODE_SFX_GENERAL;
+ uno::Reference< xml::sax::XWriter > xSaxWriter = xml::sax::Writer::create(m_xContext);
bool bOasis = true;
isOasisFormat( rMediaDescriptor, bOasis );
@@ -716,7 +714,7 @@ sal_Int32 XMLFilter::impl_ExportStream(
const OUString & rStreamName,
const OUString & rServiceName,
const Reference< embed::XStorage > & xStorage,
- const uno::Reference< io::XActiveDataSource >& xActiveDataSource,
+ const uno::Reference< xml::sax::XWriter >& xActiveDataSource,
const Reference< lang::XMultiServiceFactory >& xServiceFactory,
const Sequence< uno::Any > & rFilterProperties )
{
diff --git a/chart2/source/model/inc/XMLFilter.hxx b/chart2/source/model/inc/XMLFilter.hxx
index 984e894cf337..98500446a2c2 100644
--- a/chart2/source/model/inc/XMLFilter.hxx
+++ b/chart2/source/model/inc/XMLFilter.hxx
@@ -27,6 +27,7 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
+#include <com/sun/star/xml/sax/XWriter.hpp>
#include <osl/mutex.hxx>
// for APPHELPER_... macros
@@ -138,7 +139,7 @@ private:
const ::com::sun::star::uno::Reference<
::com::sun::star::embed::XStorage > & xStorage,
const ::com::sun::star::uno::Reference<
- ::com::sun::star::io::XActiveDataSource >& xActiveDataSource,
+ ::com::sun::star::xml::sax::XWriter >& xActiveDataSource,
const ::com::sun::star::uno::Reference<
::com::sun::star::lang::XMultiServiceFactory > & xFactory,
const ::com::sun::star::uno::Sequence<
diff --git a/chart2/source/model/main/BaseCoordinateSystem.cxx b/chart2/source/model/main/BaseCoordinateSystem.cxx
index 27b4644ec644..cb937f2be7cc 100644
--- a/chart2/source/model/main/BaseCoordinateSystem.cxx
+++ b/chart2/source/model/main/BaseCoordinateSystem.cxx
@@ -29,6 +29,7 @@
#include <com/sun/star/chart2/AxisType.hpp>
#include <algorithm>
+#include <iterator>
#if OSL_DEBUG_LEVEL > 1
#include <rtl/math.hxx>
diff --git a/chart2/source/tools/ImplOPropertySet.cxx b/chart2/source/tools/ImplOPropertySet.cxx
index b9b0c8e983ff..db2031d52918 100644
--- a/chart2/source/tools/ImplOPropertySet.cxx
+++ b/chart2/source/tools/ImplOPropertySet.cxx
@@ -21,6 +21,7 @@
#include "CloneHelper.hxx"
#include <algorithm>
+#include <iterator>
#include <functional>
#include <com/sun/star/beans/XFastPropertySet.hpp>
diff --git a/chart2/source/tools/InternalData.cxx b/chart2/source/tools/InternalData.cxx
index 169ef0453420..a60706481a7f 100644
--- a/chart2/source/tools/InternalData.cxx
+++ b/chart2/source/tools/InternalData.cxx
@@ -25,6 +25,7 @@
#include <rtl/math.hxx>
#include <algorithm>
+#include <iterator>
using ::com::sun::star::uno::Sequence;
using ::rtl::OUString;
diff --git a/chart2/source/tools/PropertyHelper.cxx b/chart2/source/tools/PropertyHelper.cxx
index fbaee8fb83e7..c333832e7c63 100644
--- a/chart2/source/tools/PropertyHelper.cxx
+++ b/chart2/source/tools/PropertyHelper.cxx
@@ -25,6 +25,7 @@
#include <vector>
#include <algorithm>
+#include <iterator>
#include <functional>
using namespace ::com::sun::star;
diff --git a/chart2/source/view/charttypes/AreaChart.cxx b/chart2/source/view/charttypes/AreaChart.cxx
index b088d72c5dc2..fa0ec3dd1857 100644
--- a/chart2/source/view/charttypes/AreaChart.cxx
+++ b/chart2/source/view/charttypes/AreaChart.cxx
@@ -660,7 +660,6 @@ void AreaChart::createShapes()
//for the area chart there should be at most one x slot (no side by side stacking available)
//attention different: xSlots are always interpreted as independent areas one behind the other: @todo this doesn't work why not???
- aXSlotIter = aZSlotIter->begin();
for( sal_Int32 nX=0; aXSlotIter != aXSlotEnd; ++aXSlotIter, ++nX )
{
std::vector<VDataSeries*>& rSeriesList = aXSlotIter->m_aSeriesVector;
diff --git a/chart2/source/view/charttypes/BarChart.cxx b/chart2/source/view/charttypes/BarChart.cxx
index 37b23ca0b8b7..5058bc644896 100644
--- a/chart2/source/view/charttypes/BarChart.cxx
+++ b/chart2/source/view/charttypes/BarChart.cxx
@@ -553,7 +553,6 @@ void BarChart::createShapes()
::std::vector< VDataSeries* >::const_iterator aSeriesIter = pSeriesList->begin();
const ::std::vector< VDataSeries* >::const_iterator aSeriesEnd = pSeriesList->end();
- aSeriesIter = pSeriesList->begin();
//=============================================================================
//iterate through all series in this x slot
for( ; aSeriesIter != aSeriesEnd; ++aSeriesIter )
@@ -882,7 +881,6 @@ void BarChart::createShapes()
::std::vector< VDataSeries* >::const_iterator aSeriesIter = pSeriesList->begin();
const ::std::vector< VDataSeries* >::const_iterator aSeriesEnd = pSeriesList->end();
- aSeriesIter = pSeriesList->begin();
//=============================================================================
//iterate through all series in this x slot
for( ; aSeriesIter != aSeriesEnd; ++aSeriesIter )
diff --git a/chart2/source/view/charttypes/BubbleChart.cxx b/chart2/source/view/charttypes/BubbleChart.cxx
index ad84a1516df1..9177babffce6 100644
--- a/chart2/source/view/charttypes/BubbleChart.cxx
+++ b/chart2/source/view/charttypes/BubbleChart.cxx
@@ -238,13 +238,11 @@ void BubbleChart::createShapes()
::std::vector< ::std::vector< VDataSeriesGroup > >::iterator aZSlotIter = m_aZSlots.begin();
const ::std::vector< ::std::vector< VDataSeriesGroup > >::const_iterator aZSlotEnd = m_aZSlots.end();
- aZSlotIter = m_aZSlots.begin();
for( sal_Int32 nZ=1; aZSlotIter != aZSlotEnd; ++aZSlotIter, nZ++ )
{
::std::vector< VDataSeriesGroup >::iterator aXSlotIter = aZSlotIter->begin();
const ::std::vector< VDataSeriesGroup >::const_iterator aXSlotEnd = aZSlotIter->end();
- aXSlotIter = aZSlotIter->begin();
for( sal_Int32 nX=0; aXSlotIter != aXSlotEnd; ++aXSlotIter, ++nX )
{
::std::vector< VDataSeries* >* pSeriesList = &(aXSlotIter->m_aSeriesVector);
diff --git a/chart2/source/view/charttypes/CandleStickChart.cxx b/chart2/source/view/charttypes/CandleStickChart.cxx
index 7fa8a47c934f..5a9787f7b5d5 100644
--- a/chart2/source/view/charttypes/CandleStickChart.cxx
+++ b/chart2/source/view/charttypes/CandleStickChart.cxx
@@ -187,7 +187,6 @@ void CandleStickChart::createShapes()
::std::vector< VDataSeries* >::const_iterator aSeriesIter = pSeriesList->begin();
const ::std::vector< VDataSeries* >::const_iterator aSeriesEnd = pSeriesList->end();
- aSeriesIter = pSeriesList->begin();
//=============================================================================
//iterate through all series in this x slot
for( ; aSeriesIter != aSeriesEnd; ++aSeriesIter )
diff --git a/chart2/uiconfig/menubar/menubar.xml b/chart2/uiconfig/menubar/menubar.xml
index d88e0e7dec9f..311a60b6b177 100644
--- a/chart2/uiconfig/menubar/menubar.xml
+++ b/chart2/uiconfig/menubar/menubar.xml
@@ -27,6 +27,9 @@
<menu:menuitem menu:id=".uno:Save" menu:helpid="5505" menu:label="" />
<menu:menuitem menu:id=".uno:SaveAs" menu:helpid="5502" menu:label="" />
<menu:menuitem menu:id=".uno:SaveAll" menu:helpid="5309" menu:label="" />
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menuitem menu:id=".uno:Reload" menu:helpid="5508" menu:label="" />
<menu:menuitem menu:id=".uno:VersionDialog" menu:helpid="6583" menu:label="" />
<menu:menuitem menu:id=".uno:SendMail" menu:helpid="5331" menu:label="" />
diff --git a/cli_ure/CliNativeLibrary_cli_cppuhelper.mk b/cli_ure/CliNativeLibrary_cli_cppuhelper.mk
index dfc52baf33ce..f9889dccbca1 100644..100755
--- a/cli_ure/CliNativeLibrary_cli_cppuhelper.mk
+++ b/cli_ure/CliNativeLibrary_cli_cppuhelper.mk
@@ -9,17 +9,17 @@
include $(SRCDIR)/cli_ure/version/version.txt
-$(eval $(call gb_CliNativeLibrary_CliNativeLibrary,cli_cppuhelper))
+$(eval $(call gb_CliNativeLibrary_CliNativeLibrary,assembly/cli_cppuhelper))
-$(eval $(call gb_CliNativeLibrary_wrap_library,cli_cppuhelper,cli_cppuhelper_native))
+$(eval $(call gb_CliNativeLibrary_wrap_library,assembly/cli_cppuhelper,cli_cppuhelper))
-$(eval $(call gb_CliNativeLibrary_set_configfile,cli_cppuhelper,cli_ure/source/native/cli_cppuhelper_config))
+$(eval $(call gb_CliNativeLibrary_set_configfile,assembly/cli_cppuhelper,cli_ure/source/native/cli_cppuhelper_config))
-$(eval $(call gb_CliNativeLibrary_set_keyfile,cli_cppuhelper,$(SRCDIR)/cli_ure/source/cliuno.snk))
+$(eval $(call gb_CliNativeLibrary_set_keyfile,assembly/cli_cppuhelper,$(SRCDIR)/cli_ure/source/cliuno.snk))
-$(eval $(call gb_CliNativeLibrary_set_policy,cli_cppuhelper,$(CLI_CPPUHELPER_POLICY_ASSEMBLY),$(CLI_CPPUHELPER_POLICY_VERSION)))
+$(eval $(call gb_CliNativeLibrary_set_policy,assembly/cli_cppuhelper,$(CLI_CPPUHELPER_POLICY_ASSEMBLY),$(CLI_CPPUHELPER_POLICY_VERSION)))
-$(eval $(call gb_CliNativeLibrary_use_assemblies,cli_cppuhelper,\
+$(eval $(call gb_CliNativeLibrary_use_assemblies,assembly/cli_cppuhelper,\
cli_ure \
cli_uretypes \
))
diff --git a/cli_ure/CustomTarget_cli_ure_assemblies.mk b/cli_ure/CustomTarget_cli_ure_assemblies.mk
index da66178251d1..63bbe1fac2e1 100644
--- a/cli_ure/CustomTarget_cli_ure_assemblies.mk
+++ b/cli_ure/CustomTarget_cli_ure_assemblies.mk
@@ -9,10 +9,6 @@
cli_ure_source_MAKEFILE := $(lastword $(MAKEFILE_LIST))
-# FIXME move this to configure.in ?
-cli_ure_CCNUMVER = $(shell $(CXX) | $(gb_AWK) -v num=true -f $(SOLARENV)/bin/getcompver.awk)
-cli_ure_CCNUMVER_GOOD = $(shell expr $(cli_ure_CCNUMVER) '>=' 001399999999)
-
include $(SRCDIR)/cli_ure/version/version.txt
$(eval $(call gb_CustomTarget_CustomTarget,cli_ure/source))
@@ -43,20 +39,17 @@ $(call gb_CustomTarget_get_workdir,cli_ure/source)/ure/assembly.cs : \
$(call gb_CustomTarget_get_workdir,cli_ure/source)/basetypes/assembly.cs :
$(GNUCOPY) $< $@.tmp && \
echo '[assembly:System.Reflection.AssemblyVersion( "$(CLI_BASETYPES_NEW_VERSION)" )]' >> $@.tmp && \
- $(if $(cli_ure_CCNUMVER_GOOD),echo '[assembly:System.Reflection.AssemblyKeyFile( @"$(call gb_Helper_windows_path,$(OUTDIR)/bin/cliuno.snk)" )]' >> $@.tmp &&) \
mv $@.tmp $@
# TODO use macros for this
$(call gb_CustomTarget_get_workdir,cli_ure/source)/native/assembly.cxx :
$(GNUCOPY) $< $@.tmp && \
echo '[assembly:System::Reflection::AssemblyVersion( "$(CLI_CPPUHELPER_NEW_VERSION)" )];' >> $@.tmp && \
- echo '[assembly:System::Reflection::AssemblyKeyFile( "$(call gb_Helper_windows_path,$(OUTDIR)/bin/cliuno.snk)" )];' >> $@.tmp && \
mv $@.tmp $@
$(call gb_CustomTarget_get_workdir,cli_ure/source)/ure/assembly.cs :
$(GNUCOPY) $< $@.tmp && \
echo '[assembly:System.Reflection.AssemblyVersion( "$(CLI_URE_NEW_VERSION)" )]' >> $@.tmp && \
- $(if $(cli_ure_CCNUMVER_GOOD),echo '[assembly:System.Reflection.AssemblyKeyFile( @"$(call gb_Helper_windows_path,$(OUTDIR)/bin/cliuno.snk)" )]' >> $@.tmp &&) \
mv $@.tmp $@
# vim: set noet sw=4 ts=4:
diff --git a/cli_ure/Executable_climaker.mk b/cli_ure/Executable_climaker.mk
index 0ccd386f8502..01264f4f879b 100644
--- a/cli_ure/Executable_climaker.mk
+++ b/cli_ure/Executable_climaker.mk
@@ -17,6 +17,10 @@ $(eval $(call gb_Executable_add_cxxflags,climaker,\
-wd4715 \
))
+$(eval $(call gb_Executable_add_ldflags,climaker,\
+ -ignore:4248 \
+))
+
$(eval $(call gb_Executable_use_internal_bootstrap_api,climaker,\
udkapi \
))
diff --git a/cli_ure/Library_cli_cppuhelper_native.mk b/cli_ure/Library_cli_cppuhelper_native.mk
index 5582e770b91e..f757fa39b528 100644..100755
--- a/cli_ure/Library_cli_cppuhelper_native.mk
+++ b/cli_ure/Library_cli_cppuhelper_native.mk
@@ -7,38 +7,45 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_Library_Library,cli_cppuhelper_native))
+include $(SRCDIR)/cli_ure/version/version.txt
+
+$(eval $(call gb_Library_Assembly,cli_cppuhelper))
# When compiling for CLR, disable "warning C4339: use of undefined type detected
# in CLR meta-data - use of this type may lead to a runtime exception":
-$(eval $(call gb_Library_add_cxxflags,cli_cppuhelper_native,\
+$(eval $(call gb_Library_add_cxxflags,cli_cppuhelper,\
-AI $(gb_Helper_OUTDIRLIBDIR) \
-clr \
-wd4339 \
))
+$(eval $(call gb_Library_add_ldflags,cli_cppuhelper,\
+ -ignore:4248 \
+ -keyfile:$(call gb_Helper_windows_path,$(SRCDIR)/cli_ure/source/cliuno.snk) \
+))
+
# TODO do not encode filenames here
-$(eval $(call gb_Library_add_ldflags,cli_cppuhelper_native,\
+$(eval $(call gb_Library_add_ldflags,cli_cppuhelper,\
-delayload:cppuhelper3MSC.dll \
-delayload:cppu3.dll \
-delayload:sal3.dll \
))
-$(eval $(call gb_Library_use_internal_bootstrap_api,cli_cppuhelper_native,\
+$(eval $(call gb_Library_use_internal_bootstrap_api,cli_cppuhelper,\
udkapi \
))
-$(eval $(call gb_Library_use_packages,cli_cppuhelper_native,\
+$(eval $(call gb_Library_use_packages,cli_cppuhelper,\
cli_ure_cliuno \
))
-$(eval $(call gb_Library_use_libraries,cli_cppuhelper_native,\
+$(eval $(call gb_Library_use_libraries,cli_cppuhelper,\
cppu \
cppuhelper \
sal \
))
-$(eval $(call gb_Library_use_system_win32_libs,cli_cppuhelper_native,\
+$(eval $(call gb_Library_use_system_win32_libs,cli_cppuhelper,\
advapi32 \
delayimp \
mscoree \
@@ -48,12 +55,12 @@ $(eval $(call gb_Library_use_system_win32_libs,cli_cppuhelper_native,\
) \
))
-$(eval $(call gb_Library_add_exception_objects,cli_cppuhelper_native,\
+$(eval $(call gb_Library_add_exception_objects,cli_cppuhelper,\
cli_ure/source/native/native_bootstrap \
cli_ure/source/native/path \
))
-$(eval $(call gb_Library_add_generated_exception_objects,cli_cppuhelper_native,\
+$(eval $(call gb_Library_add_generated_exception_objects,cli_cppuhelper,\
CustomTarget/cli_ure/source/native/assembly \
))
diff --git a/cli_ure/Library_cli_uno.mk b/cli_ure/Library_cli_uno.mk
index aa34fc0641e2..e87b91b097b9 100644
--- a/cli_ure/Library_cli_uno.mk
+++ b/cli_ure/Library_cli_uno.mk
@@ -15,6 +15,10 @@ $(eval $(call gb_Library_add_cxxflags,cli_uno,\
-wd4339 \
))
+$(eval $(call gb_Library_add_ldflags,cli_uno,\
+ -ignore:4248 \
+))
+
$(eval $(call gb_Library_use_udk_api,cli_uno))
$(eval $(call gb_Library_use_libraries,cli_uno,\
diff --git a/cli_ure/source/uno_bridge/cli_base.h b/cli_ure/source/uno_bridge/cli_base.h
index d544087d61cd..505790b132b6 100644
--- a/cli_ure/source/uno_bridge/cli_base.h
+++ b/cli_ure/source/uno_bridge/cli_base.h
@@ -42,67 +42,67 @@ System::Type^ loadCliType(System::String ^ typeName);
System::Type^ mapUnoType(typelib_TypeDescription const * pTD);
System::Type^ mapUnoType(typelib_TypeDescriptionReference const * pTD);
typelib_TypeDescriptionReference* mapCliType(System::Type^ cliType);
-rtl::OUString mapCliString(System::String const ^ data);
+rtl::OUString mapCliString(System::String ^ data);
System::String^ mapUnoString(rtl_uString const * data);
System::String^ mapUnoTypeName(rtl_uString const * typeName);
ref struct Constants
{
- static const System::String^ sXInterfaceName= gcnew System::String(
+ static System::String^ sXInterfaceName= gcnew System::String(
"unoidl.com.sun.star.uno.XInterface");
- static const System::String^ sObject= gcnew System::String("System.Object");
- static const System::String^ sType= gcnew System::String("System.Type");
- static const System::String^ sUnoidl= gcnew System::String("unoidl.");
- static const System::String^ sVoid= gcnew System::String("System.Void");
- static const System::String^ sAny= gcnew System::String("uno.Any");
- static const System::String^ sArArray= gcnew System::String("System.Array[]");
- static const System::String^ sBoolean= gcnew System::String("System.Boolean");
- static const System::String^ sChar= gcnew System::String("System.Char");
- static const System::String^ sByte= gcnew System::String("System.Byte");
- static const System::String^ sInt16= gcnew System::String("System.Int16");
- static const System::String^ sUInt16= gcnew System::String("System.UInt16");
- static const System::String^ sInt32= gcnew System::String("System.Int32");
- static const System::String^ sUInt32= gcnew System::String("System.UInt32");
- static const System::String^ sInt64= gcnew System::String("System.Int64");
- static const System::String^ sUInt64= gcnew System::String("System.UInt64");
- static const System::String^ sString= gcnew System::String("System.String");
- static const System::String^ sSingle= gcnew System::String("System.Single");
- static const System::String^ sDouble= gcnew System::String("System.Double");
- static const System::String^ sArBoolean= gcnew System::String("System.Boolean[]");
- static const System::String^ sArChar= gcnew System::String("System.Char[]");
- static const System::String^ sArByte= gcnew System::String("System.Byte[]");
- static const System::String^ sArInt16= gcnew System::String("System.Int16[]");
- static const System::String^ sArUInt16= gcnew System::String("System.UInt16[]");
- static const System::String^ sArInt32= gcnew System::String("System.Int32[]");
- static const System::String^ sArUInt32= gcnew System::String("System.UInt32[]");
- static const System::String^ sArInt64= gcnew System::String("System.Int64[]");
- static const System::String^ sArUInt64= gcnew System::String("System.UInt64[]");
- static const System::String^ sArString= gcnew System::String("System.String[]");
- static const System::String^ sArSingle= gcnew System::String("System.Single[]");
- static const System::String^ sArDouble= gcnew System::String("System.Double[]");
- static const System::String^ sArType= gcnew System::String("System.Type[]");
- static const System::String^ sArObject= gcnew System::String("System.Object[]");
- static const System::String^ sBrackets= gcnew System::String("[]");
- static const System::String^ sAttributeSet= gcnew System::String("set_");
- static const System::String^ sAttributeGet= gcnew System::String("get_");
-
- static const System::String^ usXInterface = "com.sun.star.uno.XInterface";
- static const System::String^ usVoid = "void";
- static const System::String^ usType = "type";
- static const System::String^ usAny = "any";
- static const System::String^ usBrackets = "[]";
- static const System::String^ usBool = "boolean";
- static const System::String^ usByte = "byte";
- static const System::String^ usChar = "char";
- static const System::String^ usShort = "short";
- static const System::String^ usUShort = "unsigned short";
- static const System::String^ usLong = "long";
- static const System::String^ usULong = "unsigned long";
- static const System::String^ usHyper = "hyper";
- static const System::String^ usUHyper = "unsigned hyper";
- static const System::String^ usString = "string";
- static const System::String^ usFloat = "float";
- static const System::String^ usDouble = "double";
+ static System::String^ sObject= gcnew System::String("System.Object");
+ static System::String^ sType= gcnew System::String("System.Type");
+ static System::String^ sUnoidl= gcnew System::String("unoidl.");
+ static System::String^ sVoid= gcnew System::String("System.Void");
+ static System::String^ sAny= gcnew System::String("uno.Any");
+ static System::String^ sArArray= gcnew System::String("System.Array[]");
+ static System::String^ sBoolean= gcnew System::String("System.Boolean");
+ static System::String^ sChar= gcnew System::String("System.Char");
+ static System::String^ sByte= gcnew System::String("System.Byte");
+ static System::String^ sInt16= gcnew System::String("System.Int16");
+ static System::String^ sUInt16= gcnew System::String("System.UInt16");
+ static System::String^ sInt32= gcnew System::String("System.Int32");
+ static System::String^ sUInt32= gcnew System::String("System.UInt32");
+ static System::String^ sInt64= gcnew System::String("System.Int64");
+ static System::String^ sUInt64= gcnew System::String("System.UInt64");
+ static System::String^ sString= gcnew System::String("System.String");
+ static System::String^ sSingle= gcnew System::String("System.Single");
+ static System::String^ sDouble= gcnew System::String("System.Double");
+ static System::String^ sArBoolean= gcnew System::String("System.Boolean[]");
+ static System::String^ sArChar= gcnew System::String("System.Char[]");
+ static System::String^ sArByte= gcnew System::String("System.Byte[]");
+ static System::String^ sArInt16= gcnew System::String("System.Int16[]");
+ static System::String^ sArUInt16= gcnew System::String("System.UInt16[]");
+ static System::String^ sArInt32= gcnew System::String("System.Int32[]");
+ static System::String^ sArUInt32= gcnew System::String("System.UInt32[]");
+ static System::String^ sArInt64= gcnew System::String("System.Int64[]");
+ static System::String^ sArUInt64= gcnew System::String("System.UInt64[]");
+ static System::String^ sArString= gcnew System::String("System.String[]");
+ static System::String^ sArSingle= gcnew System::String("System.Single[]");
+ static System::String^ sArDouble= gcnew System::String("System.Double[]");
+ static System::String^ sArType= gcnew System::String("System.Type[]");
+ static System::String^ sArObject= gcnew System::String("System.Object[]");
+ static System::String^ sBrackets= gcnew System::String("[]");
+ static System::String^ sAttributeSet= gcnew System::String("set_");
+ static System::String^ sAttributeGet= gcnew System::String("get_");
+
+ static System::String^ usXInterface = "com.sun.star.uno.XInterface";
+ static System::String^ usVoid = "void";
+ static System::String^ usType = "type";
+ static System::String^ usAny = "any";
+ static System::String^ usBrackets = "[]";
+ static System::String^ usBool = "boolean";
+ static System::String^ usByte = "byte";
+ static System::String^ usChar = "char";
+ static System::String^ usShort = "short";
+ static System::String^ usUShort = "unsigned short";
+ static System::String^ usLong = "long";
+ static System::String^ usULong = "unsigned long";
+ static System::String^ usHyper = "hyper";
+ static System::String^ usUHyper = "unsigned hyper";
+ static System::String^ usString = "string";
+ static System::String^ usFloat = "float";
+ static System::String^ usDouble = "double";
};
struct BridgeRuntimeError
diff --git a/cli_ure/source/uno_bridge/cli_bridge.h b/cli_ure/source/uno_bridge/cli_bridge.h
index b12b44816f46..ed116ac4aa37 100644
--- a/cli_ure/source/uno_bridge/cli_bridge.h
+++ b/cli_ure/source/uno_bridge/cli_bridge.h
@@ -67,8 +67,8 @@ struct Bridge
~Bridge() SAL_THROW(());
Bridge( uno_Environment * java_env, uno_ExtEnvironment * uno_env, bool registered_java2uno );
- void acquire() const;
- void release() const;
+ void acquire() const SAL_THROW(());
+ void release() const SAL_THROW(());
void map_to_uno(
void * uno_data, System::Object^ cli_data,
diff --git a/cli_ure/source/uno_bridge/cli_data.cxx b/cli_ure/source/uno_bridge/cli_data.cxx
index 935a90be2a0a..9292b4af43c5 100644
--- a/cli_ure/source/uno_bridge/cli_data.cxx
+++ b/cli_ure/source/uno_bridge/cli_data.cxx
@@ -727,7 +727,7 @@ inline System::String^ mapUnoString( rtl_uString const * data)
return gcnew System::String((__wchar_t*) data->buffer, 0, data->length);
}
-OUString mapCliString(System::String const ^ data)
+OUString mapCliString(System::String ^ data)
{
if (data != nullptr)
diff --git a/cli_ure/source/uno_bridge/cli_environment.h b/cli_ure/source/uno_bridge/cli_environment.h
index d04a92bcf194..e53e18121dd9 100644
--- a/cli_ure/source/uno_bridge/cli_environment.h
+++ b/cli_ure/source/uno_bridge/cli_environment.h
@@ -40,8 +40,6 @@ public ref class Cli_environment
int _numRegisteredObjects;
#endif
-public:
-
static Cli_environment()
{
m_objects = Hashtable::Synchronized(gcnew Hashtable());
@@ -53,6 +51,8 @@ public:
sOidPart = buffer->ToString();
}
+public:
+
inline Cli_environment();
~Cli_environment();
diff --git a/cli_ure/source/uno_bridge/cli_proxy.cxx b/cli_ure/source/uno_bridge/cli_proxy.cxx
index 808e5fef3924..aaa59e9f9971 100644
--- a/cli_ure/source/uno_bridge/cli_proxy.cxx
+++ b/cli_ure/source/uno_bridge/cli_proxy.cxx
@@ -261,7 +261,7 @@ bool UnoInterfaceProxy::CanCastTo(System::Type^ fromType,
// handle regular exception from target
OSL_ENSURE(
- 0 == pException,
+ nullptr == pException,
OUStringToOString(
mapCliString( pException->ToString()),
RTL_TEXTENCODING_UTF8 ).getStr() );
diff --git a/codemaker/StaticLibrary_codemaker.mk b/codemaker/StaticLibrary_codemaker.mk
index 04b53db236af..e0eab499bc91 100644
--- a/codemaker/StaticLibrary_codemaker.mk
+++ b/codemaker/StaticLibrary_codemaker.mk
@@ -31,6 +31,7 @@ $(eval $(call gb_StaticLibrary_use_packages,codemaker,\
codemaker_inc \
registry_inc \
sal_generated \
+ sal_inc \
))
$(eval $(call gb_StaticLibrary_add_exception_objects,codemaker,\
diff --git a/codemaker/StaticLibrary_codemaker_cpp.mk b/codemaker/StaticLibrary_codemaker_cpp.mk
index 92678fa01a44..0e08444d53a7 100644
--- a/codemaker/StaticLibrary_codemaker_cpp.mk
+++ b/codemaker/StaticLibrary_codemaker_cpp.mk
@@ -30,6 +30,8 @@ $(eval $(call gb_StaticLibrary_StaticLibrary,codemaker_cpp))
$(eval $(call gb_StaticLibrary_use_packages,codemaker_cpp,\
codemaker_inc \
registry_inc \
+ sal_generated \
+ sal_inc \
))
$(eval $(call gb_StaticLibrary_add_exception_objects,codemaker_cpp,\
diff --git a/codemaker/StaticLibrary_codemaker_java.mk b/codemaker/StaticLibrary_codemaker_java.mk
index f33d38e14009..37e8e8db1950 100644
--- a/codemaker/StaticLibrary_codemaker_java.mk
+++ b/codemaker/StaticLibrary_codemaker_java.mk
@@ -30,6 +30,8 @@ $(eval $(call gb_StaticLibrary_StaticLibrary,codemaker_java))
$(eval $(call gb_StaticLibrary_use_packages,codemaker_java,\
codemaker_inc \
registry_inc \
+ sal_generated \
+ sal_inc \
))
$(eval $(call gb_StaticLibrary_add_exception_objects,codemaker_java,\
diff --git a/codemaker/source/cppumaker/cppuoptions.cxx b/codemaker/source/cppumaker/cppuoptions.cxx
index bebcb65aba4b..10b1d0c2d414 100644
--- a/codemaker/source/cppumaker/cppuoptions.cxx
+++ b/codemaker/source/cppumaker/cppuoptions.cxx
@@ -55,7 +55,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
}
i = 1;
- } else
+ }
+ else
{
i = 0;
}
@@ -74,7 +75,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
{
i++;
s = av[i];
- } else
+ }
+ else
{
OString tmp("'-O', please check");
if (i <= ac - 1)
@@ -84,7 +86,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
throw IllegalArgument(tmp);
}
- } else
+ }
+ else
{
s = av[i] + 2;
}
@@ -98,7 +101,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
{
i++;
s = av[i];
- } else
+ }
+ else
{
OString tmp("'-B', please check");
if (i <= ac - 1)
@@ -108,7 +112,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
throw IllegalArgument(tmp);
}
- } else
+ }
+ else
{
s = av[i] + 2;
}
@@ -122,7 +127,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
{
i++;
s = av[i];
- } else
+ }
+ else
{
OString tmp("'-T', please check");
if (i <= ac - 1)
@@ -132,7 +138,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
throw IllegalArgument(tmp);
}
- } else
+ }
+ else
{
s = av[i] + 2;
}
@@ -142,7 +149,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
OString tmp(m_options["-T"]);
tmp = tmp + ";" + s;
m_options["-T"] = tmp;
- } else
+ }
+ else
{
m_options["-T"] = OString(s);
}
@@ -187,8 +195,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
}
m_options["-CS"] = OString("");
break;
- } else
- if (av[i][2] != '\0')
+ }
+ else if (av[i][2] != '\0')
{
OString tmp("'-C', please check");
if (i <= ac - 1)
@@ -222,8 +230,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
m_options["-Gc"] = OString("");
break;
- } else
- if (av[i][2] != '\0')
+ }
+ else if (av[i][2] != '\0')
{
OString tmp("'-G', please check");
if (i <= ac - 1)
@@ -244,7 +252,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
{
i++;
s = av[i];
- } else
+ }
+ else
{
OString tmp("'-X', please check");
if (i <= ac - 1)
@@ -254,7 +263,8 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
throw IllegalArgument(tmp);
}
- } else
+ }
+ else
{
s = av[i] + 2;
}
@@ -271,11 +281,12 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
if (av[i][0] == '@')
{
FILE* cmdFile = fopen(av[i]+1, "r");
- if( cmdFile == NULL )
- {
+ if( cmdFile == NULL )
+ {
fprintf(stderr, "%s", prepareHelp().getStr());
ret = sal_False;
- } else
+ }
+ else
{
int rargc=0;
char* rargv[512];
@@ -295,12 +306,14 @@ sal_Bool CppuOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
free(rargv[j]);
}
}
- } else
+ }
+ else
{
if (bCmdFile)
{
m_inputFiles.push_back(av[i]);
- } else
+ }
+ else
{
OUString system_filepath;
if (osl_getCommandArg( i-1, &system_filepath.pData )
diff --git a/codemaker/source/javamaker/javaoptions.cxx b/codemaker/source/javamaker/javaoptions.cxx
index b6e57b52018c..388972460903 100644
--- a/codemaker/source/javamaker/javaoptions.cxx
+++ b/codemaker/source/javamaker/javaoptions.cxx
@@ -172,8 +172,7 @@ sal_Bool JavaOptions::initOptions(int ac, char* av[], sal_Bool bCmdFile)
m_options["-Gc"] = OString("");
break;
- } else
- if (av[i][2] != '\0')
+ } else if (av[i][2] != '\0')
{
OString tmp("'-G', please check");
if (i <= ac - 1)
diff --git a/comphelper/inc/comphelper/configurationhelper.hxx b/comphelper/inc/comphelper/configurationhelper.hxx
index 706e1b762912..2f6c94166337 100644
--- a/comphelper/inc/comphelper/configurationhelper.hxx
+++ b/comphelper/inc/comphelper/configurationhelper.hxx
@@ -21,6 +21,7 @@
#define _COMPHELPER_CONFIGURATIONHELPER_HXX_
#include <com/sun/star/uno/XInterface.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
@@ -76,7 +77,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* configuration package is needed. The configuration access can be cached
* outside and used inbetween.
*
- * @param xSMGR
+ * @param rxContext
* the uno service manager, which should be used to create the
* configuration access.
*
@@ -95,9 +96,9 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* @throw Any exceptions the underlying configuration can throw.
* E.g. css::uno::Exception if the configuration could not be opened.
*/
- static css::uno::Reference< css::uno::XInterface > openConfig(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
- const ::rtl::OUString& sPackage,
- sal_Int32 eMode );
+ static css::uno::Reference< css::uno::XInterface > openConfig(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sPackage,
+ sal_Int32 eMode );
//-----------------------------------------------
/** reads the value of an existing(!) configuration key,
@@ -217,7 +218,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* So its not very usefull to use this method for reading multiple keys at the same time.
* (Excepting these keys exists inside different configuration packages ...))
*/
- static css::uno::Any readDirectKey(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
+ static css::uno::Any readDirectKey(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const ::rtl::OUString& sPackage,
const ::rtl::OUString& sRelPath,
const ::rtl::OUString& sKey ,
@@ -233,7 +234,7 @@ class COMPHELPER_DLLPUBLIC ConfigurationHelper
* So its not very usefull to use this method for writing multiple keys at the same time.
* (Excepting these keys exists inside different configuration packages ...))
*/
- static void writeDirectKey(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
+ static void writeDirectKey(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const ::rtl::OUString& sPackage,
const ::rtl::OUString& sRelPath,
const ::rtl::OUString& sKey ,
diff --git a/comphelper/inc/comphelper/eventattachermgr.hxx b/comphelper/inc/comphelper/eventattachermgr.hxx
index 2366dc687e67..a525e7c4ea54 100644
--- a/comphelper/inc/comphelper/eventattachermgr.hxx
+++ b/comphelper/inc/comphelper/eventattachermgr.hxx
@@ -26,9 +26,7 @@
namespace com { namespace sun { namespace star {
namespace uno {
class Exception;
-}
-namespace lang {
- class XMultiServiceFactory;
+ class XComponentContext;
}
namespace script {
class XEventAttacherManager;
@@ -44,7 +42,7 @@ namespace comphelper
COMPHELPER_DLLPUBLIC ::com::sun::star::uno::Reference< ::com::sun::star::script::XEventAttacherManager >
createEventAttacherManager(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & rSMgr )
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > & rxContext )
throw( ::com::sun::star::uno::Exception );
}
diff --git a/comphelper/inc/comphelper/ofopxmlhelper.hxx b/comphelper/inc/comphelper/ofopxmlhelper.hxx
index e18d08f727ef..c263022166cd 100644
--- a/comphelper/inc/comphelper/ofopxmlhelper.hxx
+++ b/comphelper/inc/comphelper/ofopxmlhelper.hxx
@@ -96,7 +96,7 @@ public:
void SAL_CALL WriteRelationsInfoSequence(
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& xOutStream,
const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Sequence< ::com::sun::star::beans::StringPair > >& aSequence,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xFactory )
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > xContext )
throw( ::com::sun::star::uno::Exception );
// writes two entries of type sequence<StringPair>
@@ -109,7 +109,7 @@ public:
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& xOutStream,
const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::StringPair >& aDefaultsSequence,
const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::StringPair >& aOverridesSequence,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xFactory )
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > xContext )
throw( ::com::sun::star::uno::Exception );
// XDocumentHandler
diff --git a/comphelper/inc/comphelper/seekableinput.hxx b/comphelper/inc/comphelper/seekableinput.hxx
index 4f12db1cda8d..02c4997a2cb6 100644
--- a/comphelper/inc/comphelper/seekableinput.hxx
+++ b/comphelper/inc/comphelper/seekableinput.hxx
@@ -21,7 +21,7 @@
#include <osl/mutex.hxx>
#include <com/sun/star/uno/Reference.hxx>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XSeekable.hpp>
#include <cppuhelper/implbase2.hxx>
@@ -35,7 +35,7 @@ class COMPHELPER_DLLPUBLIC OSeekableInputWrapper : public ::cppu::WeakImplHelper
{
::osl::Mutex m_aMutex;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xFactory;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream > m_xOriginalStream;
@@ -48,13 +48,13 @@ private:
public:
OSeekableInputWrapper(
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream >& xInStream,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
virtual ~OSeekableInputWrapper();
static ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream > CheckSeekableCanWrap(
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream >& xInStream,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
// XInputStream
virtual sal_Int32 SAL_CALL readBytes( ::com::sun::star::uno::Sequence< sal_Int8 >& aData, sal_Int32 nBytesToRead ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
diff --git a/comphelper/source/container/embeddedobjectcontainer.cxx b/comphelper/source/container/embeddedobjectcontainer.cxx
index 13dcb7de8182..ca0e4f112bea 100644
--- a/comphelper/source/container/embeddedobjectcontainer.cxx
+++ b/comphelper/source/container/embeddedobjectcontainer.cxx
@@ -361,7 +361,7 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::Get_Impl( con
// object was not added until now - should happen only by calling this method from "inside"
//TODO/LATER: it would be good to detect an error when an object should be created already, but isn't (not an "inside" call)
uno::Reference < embed::XEmbedObjectCreator > xFactory( ::comphelper::getProcessServiceFactory()->createInstance(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.embed.EmbeddedObjectCreator")) ), uno::UNO_QUERY );
+ OUString("com.sun.star.embed.EmbeddedObjectCreator") ), uno::UNO_QUERY_THROW );
uno::Sequence< beans::PropertyValue > aObjDescr( xCopy.is() ? 2 : 1 );
aObjDescr[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Parent" ) );
aObjDescr[0].Value <<= pImpl->m_xModel.get();
diff --git a/comphelper/source/eventattachermgr/eventattachermgr.cxx b/comphelper/source/eventattachermgr/eventattachermgr.cxx
index 85ed313a11fe..32ab38973407 100644
--- a/comphelper/source/eventattachermgr/eventattachermgr.cxx
+++ b/comphelper/source/eventattachermgr/eventattachermgr.cxx
@@ -25,7 +25,7 @@
#include <osl/diagnose.h>
#include <comphelper/eventattachermgr.hxx>
#include <comphelper/processfactory.hxx>
-#include <com/sun/star/beans/XIntrospection.hpp>
+#include <com/sun/star/beans/Introspection.hpp>
#include <com/sun/star/io/XObjectInputStream.hpp>
#include <com/sun/star/io/XPersistObject.hpp>
#include <com/sun/star/io/XObjectOutputStream.hpp>
@@ -353,20 +353,11 @@ void SAL_CALL AttacherAllListener_Impl::disposing(const EventObject& )
// Constructor method for EventAttacherManager
-Reference< XEventAttacherManager > createEventAttacherManager( const Reference< XMultiServiceFactory > & rSMgr )
+Reference< XEventAttacherManager > createEventAttacherManager( const Reference< XComponentContext > & rxContext )
throw( Exception )
{
- if ( rSMgr.is() )
- {
- Reference< XInterface > xIFace( rSMgr->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.beans.Introspection" )) ) );
- if ( xIFace.is() )
- {
- Reference< XIntrospection > xIntrospection( xIFace, UNO_QUERY);
- return new ImplEventAttacherManager( xIntrospection, comphelper::getComponentContext(rSMgr) );
- }
- }
-
- return Reference< XEventAttacherManager >();
+ Reference< XIntrospection > xIntrospection = Introspection::create( rxContext );
+ return new ImplEventAttacherManager( xIntrospection, rxContext );
}
//-----------------------------------------------------------------------------
diff --git a/comphelper/source/misc/accessibletexthelper.cxx b/comphelper/source/misc/accessibletexthelper.cxx
index ed85437a180e..ab77650a7710 100644
--- a/comphelper/source/misc/accessibletexthelper.cxx
+++ b/comphelper/source/misc/accessibletexthelper.cxx
@@ -19,7 +19,9 @@
#include <comphelper/accessibletexthelper.hxx>
#include <com/sun/star/accessibility/AccessibleTextType.hpp>
+#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
+#include <com/sun/star/i18n/CharacterClassification.hpp>
#include <com/sun/star/i18n/WordType.hpp>
#include <com/sun/star/i18n/KCharacterType.hpp>
#include <comphelper/processfactory.hxx>
@@ -58,12 +60,8 @@ namespace comphelper
{
if ( !m_xBreakIter.is() )
{
- Reference< lang::XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
- if ( xMSF.is() )
- {
- m_xBreakIter = Reference< i18n::XBreakIterator >
- ( xMSF->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.i18n.BreakIterator" ) ) ), UNO_QUERY );
- }
+ Reference< uno::XComponentContext > xContext = ::comphelper::getProcessComponentContext();
+ m_xBreakIter = i18n::BreakIterator::create(xContext);
}
return m_xBreakIter;
@@ -75,12 +73,7 @@ namespace comphelper
{
if ( !m_xCharClass.is() )
{
- Reference< lang::XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
- if ( xMSF.is() )
- {
- m_xCharClass = Reference< i18n::XCharacterClassification >
- ( xMSF->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.i18n.CharacterClassification" ) ) ), UNO_QUERY );
- }
+ m_xCharClass = i18n::CharacterClassification::create( ::comphelper::getProcessComponentContext() );
}
return m_xCharClass;
diff --git a/comphelper/source/misc/configurationhelper.cxx b/comphelper/source/misc/configurationhelper.cxx
index 1ace6f28ebcf..7c16385fd3cc 100644
--- a/comphelper/source/misc/configurationhelper.cxx
+++ b/comphelper/source/misc/configurationhelper.cxx
@@ -32,13 +32,12 @@ namespace css = ::com::sun::star;
//-----------------------------------------------
-css::uno::Reference< css::uno::XInterface > ConfigurationHelper::openConfig(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
- const ::rtl::OUString& sPackage,
- sal_Int32 eMode )
+css::uno::Reference< css::uno::XInterface > ConfigurationHelper::openConfig(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sPackage,
+ sal_Int32 eMode )
{
css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider(
- css::configuration::theDefaultProvider::get(
- getComponentContext( xSMGR ) ) );
+ css::configuration::theDefaultProvider::get( rxContext ) );
::comphelper::SequenceAsVector< css::uno::Any > lParams;
css::beans::PropertyValue aParam ;
@@ -160,25 +159,25 @@ css::uno::Reference< css::uno::XInterface > ConfigurationHelper::makeSureSetNode
}
//-----------------------------------------------
-css::uno::Any ConfigurationHelper::readDirectKey(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
+css::uno::Any ConfigurationHelper::readDirectKey(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const ::rtl::OUString& sPackage,
const ::rtl::OUString& sRelPath,
const ::rtl::OUString& sKey ,
sal_Int32 eMode )
{
- css::uno::Reference< css::uno::XInterface > xCFG = ConfigurationHelper::openConfig(xSMGR, sPackage, eMode);
+ css::uno::Reference< css::uno::XInterface > xCFG = ConfigurationHelper::openConfig(rxContext, sPackage, eMode);
return ConfigurationHelper::readRelativeKey(xCFG, sRelPath, sKey);
}
//-----------------------------------------------
-void ConfigurationHelper::writeDirectKey(const css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR ,
+void ConfigurationHelper::writeDirectKey(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const ::rtl::OUString& sPackage,
const ::rtl::OUString& sRelPath,
const ::rtl::OUString& sKey ,
const css::uno::Any& aValue ,
sal_Int32 eMode )
{
- css::uno::Reference< css::uno::XInterface > xCFG = ConfigurationHelper::openConfig(xSMGR, sPackage, eMode);
+ css::uno::Reference< css::uno::XInterface > xCFG = ConfigurationHelper::openConfig(rxContext, sPackage, eMode);
ConfigurationHelper::writeRelativeKey(xCFG, sRelPath, sKey, aValue);
ConfigurationHelper::flush(xCFG);
}
diff --git a/comphelper/source/misc/mediadescriptor.cxx b/comphelper/source/misc/mediadescriptor.cxx
index dd91d9e716b5..84d3331da4ea 100644
--- a/comphelper/source/misc/mediadescriptor.cxx
+++ b/comphelper/source/misc/mediadescriptor.cxx
@@ -34,7 +34,7 @@
#include <com/sun/star/ucb/UnsupportedDataSinkException.hpp>
#include <com/sun/star/ucb/CommandFailedException.hpp>
#include <com/sun/star/task/XInteractionAbort.hpp>
-#include <com/sun/star/uri/XUriReferenceFactory.hpp>
+#include <com/sun/star/uri/UriReferenceFactory.hpp>
#include <com/sun/star/uri/XUriReference.hpp>
#include <com/sun/star/ucb/PostCommandArgument2.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
@@ -705,13 +705,12 @@ sal_Bool MediaDescriptor::impl_openStreamWithURL( const ::rtl::OUString& sURL, s
it parses the URL in another way. It's main part isnt enough
and it's complete part contains the jumpmark (fragment) parameter ...
*/
- static ::rtl::OUString SERVICENAME_URIREFERENCEFACTORY( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.uri.UriReferenceFactory" ));
try
{
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = ::comphelper::getProcessServiceFactory();
- css::uno::Reference< css::uri::XUriReferenceFactory > xUriFactory(xSMGR->createInstance(SERVICENAME_URIREFERENCEFACTORY), css::uno::UNO_QUERY_THROW);
- css::uno::Reference< css::uri::XUriReference > xUriRef = xUriFactory->parse(sURL);
+ css::uno::Reference< css::uno::XComponentContext > xContext = ::comphelper::getProcessComponentContext();
+ css::uno::Reference< css::uri::XUriReferenceFactory > xUriFactory = css::uri::UriReferenceFactory::create(xContext);;
+ css::uno::Reference< css::uri::XUriReference > xUriRef = xUriFactory->parse(sURL);
if (xUriRef.is())
{
xUriRef->clearFragment();
diff --git a/comphelper/source/misc/namedvaluecollection.cxx b/comphelper/source/misc/namedvaluecollection.cxx
index 85c2883764fd..ebd696380ec0 100644
--- a/comphelper/source/misc/namedvaluecollection.cxx
+++ b/comphelper/source/misc/namedvaluecollection.cxx
@@ -33,9 +33,7 @@
#include <com/sun/star/beans/PropertyState.hpp>
#include <rtl/ustrbuf.hxx>
-#include <rtl/strbuf.hxx>
#include <rtl/instance.hxx>
-#include <osl/diagnose.h>
#include <boost/unordered_map.hpp>
#include <functional>
@@ -194,7 +192,7 @@ namespace comphelper
else if ( i_rWrappedElements >>= aPropertyValue )
impl_assign( Sequence< PropertyValue >( &aPropertyValue, 1 ) );
else
- OSL_ENSURE( !i_rWrappedElements.hasValue(), "NamedValueCollection::impl_assign(Any): unsupported type!" );
+ SAL_WARN_IF( i_rWrappedElements.hasValue(), "comphelper", "NamedValueCollection::impl_assign(Any): unsupported type!" );
}
//--------------------------------------------------------------------
@@ -216,15 +214,14 @@ namespace comphelper
m_pImpl->aValues[ aPropertyValue.Name ] = aPropertyValue.Value;
else if ( *pArgument >>= aNamedValue )
m_pImpl->aValues[ aNamedValue.Name ] = aNamedValue.Value;
-#if OSL_DEBUG_LEVEL > 0
- else if ( pArgument->hasValue() )
+ else
{
- ::rtl::OStringBuffer message;
- message.append( "NamedValueCollection::impl_assign: encountered a value type which I cannot handle:\n" );
- message.append( ::rtl::OUStringToOString( pArgument->getValueTypeName(), RTL_TEXTENCODING_ASCII_US ) );
- OSL_FAIL( message.getStr() );
+ SAL_WARN_IF(
+ pArgument->hasValue(), "comphelper",
+ ("NamedValueCollection::impl_assign: encountered a value"
+ " type which I cannot handle: "
+ + pArgument->getValueTypeName()));
}
-#endif
}
}
diff --git a/comphelper/source/misc/string.cxx b/comphelper/source/misc/string.cxx
index d35a3faff0ec..2fe8a3f508f8 100644
--- a/comphelper/source/misc/string.cxx
+++ b/comphelper/source/misc/string.cxx
@@ -34,6 +34,7 @@
#include <comphelper/stlunosequence.hxx>
#include <comphelper/stl_types.hxx>
+#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/CharType.hpp>
@@ -349,9 +350,7 @@ NaturalStringSorter::NaturalStringSorter(
rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.i18n.Collator")), rContext),
uno::UNO_QUERY_THROW);
m_xCollator->loadDefaultCollator(m_aLocale, 0);
- m_xBI = uno::Reference< i18n::XBreakIterator >(xFactory->createInstanceWithContext(
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.i18n.BreakIterator")), rContext),
- uno::UNO_QUERY_THROW);
+ m_xBI = i18n::BreakIterator::create( rContext );
}
namespace
diff --git a/comphelper/source/streaming/seekableinput.cxx b/comphelper/source/streaming/seekableinput.cxx
index 795b3b73a4a4..fdd62f3cfe34 100644
--- a/comphelper/source/streaming/seekableinput.cxx
+++ b/comphelper/source/streaming/seekableinput.cxx
@@ -55,11 +55,11 @@ void copyInputToOutput_Impl( const uno::Reference< io::XInputStream >& xIn,
//---------------------------------------------------------------------------
OSeekableInputWrapper::OSeekableInputWrapper(
const uno::Reference< io::XInputStream >& xInStream,
- const uno::Reference< lang::XMultiServiceFactory >& xFactory )
-: m_xFactory( xFactory )
+ const uno::Reference< uno::XComponentContext >& rxContext )
+: m_xContext( rxContext )
, m_xOriginalStream( xInStream )
{
- if ( !m_xFactory.is() )
+ if ( !m_xContext.is() )
throw uno::RuntimeException();
}
@@ -71,7 +71,7 @@ OSeekableInputWrapper::~OSeekableInputWrapper()
//---------------------------------------------------------------------------
uno::Reference< io::XInputStream > OSeekableInputWrapper::CheckSeekableCanWrap(
const uno::Reference< io::XInputStream >& xInStream,
- const uno::Reference< lang::XMultiServiceFactory >& xFactory )
+ const uno::Reference< uno::XComponentContext >& rxContext )
{
// check that the stream is seekable and just wrap it if it is not
uno::Reference< io::XSeekable > xSeek( xInStream, uno::UNO_QUERY );
@@ -80,7 +80,7 @@ uno::Reference< io::XInputStream > OSeekableInputWrapper::CheckSeekableCanWrap(
uno::Reference< io::XInputStream > xNewStream(
static_cast< io::XInputStream* >(
- new OSeekableInputWrapper( xInStream, xFactory ) ) );
+ new OSeekableInputWrapper( xInStream, rxContext ) ) );
return xNewStream;
}
@@ -89,11 +89,11 @@ void OSeekableInputWrapper::PrepareCopy_Impl()
{
if ( !m_xCopyInput.is() )
{
- if ( !m_xFactory.is() )
+ if ( !m_xContext.is() )
throw uno::RuntimeException();
uno::Reference< io::XOutputStream > xTempOut(
- io::TempFile::create(comphelper::getComponentContext(m_xFactory)),
+ io::TempFile::create(m_xContext),
uno::UNO_QUERY_THROW );
copyInputToOutput_Impl( m_xOriginalStream, xTempOut );
diff --git a/comphelper/source/xml/ofopxmlhelper.cxx b/comphelper/source/xml/ofopxmlhelper.cxx
index 739b27d1512d..41f5a5ca620c 100644
--- a/comphelper/source/xml/ofopxmlhelper.cxx
+++ b/comphelper/source/xml/ofopxmlhelper.cxx
@@ -23,6 +23,7 @@
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/xml/sax/Parser.hpp>
#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/lang/IllegalArgumentException.hpp>
#include <comphelper/ofopxmlhelper.hxx>
@@ -54,19 +55,15 @@ uno::Sequence< uno::Sequence< beans::StringPair > > SAL_CALL OFOPXMLHelper::Read
}
// -----------------------------------
-void SAL_CALL OFOPXMLHelper::WriteRelationsInfoSequence( const uno::Reference< io::XOutputStream >& xOutStream, const uno::Sequence< uno::Sequence< beans::StringPair > >& aSequence, const uno::Reference< lang::XMultiServiceFactory > xFactory )
+void SAL_CALL OFOPXMLHelper::WriteRelationsInfoSequence( const uno::Reference< io::XOutputStream >& xOutStream, const uno::Sequence< uno::Sequence< beans::StringPair > >& aSequence, const uno::Reference< uno::XComponentContext > xContext )
throw( uno::Exception )
{
if ( !xOutStream.is() )
throw uno::RuntimeException();
- uno::Reference< io::XActiveDataSource > xWriterSource(
- xFactory->createInstance(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.xml.sax.Writer" ) ) ),
- uno::UNO_QUERY_THROW );
- uno::Reference< xml::sax::XDocumentHandler > xWriterHandler( xWriterSource, uno::UNO_QUERY_THROW );
+ uno::Reference< xml::sax::XWriter > xWriter = xml::sax::Writer::create(xContext);
- xWriterSource->setOutputStream( xOutStream );
+ xWriter->setOutputStream( xOutStream );
::rtl::OUString aRelListElement( RTL_CONSTASCII_USTRINGPARAM( "Relationships" ) );
::rtl::OUString aRelElement( RTL_CONSTASCII_USTRINGPARAM( "Relationship" ) );
@@ -85,8 +82,8 @@ void SAL_CALL OFOPXMLHelper::WriteRelationsInfoSequence( const uno::Reference< i
aCDATAString,
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( "http://schemas.openxmlformats.org/package/2006/relationships" ) ) );
- xWriterHandler->startDocument();
- xWriterHandler->startElement( aRelListElement, xRootAttrList );
+ xWriter->startDocument();
+ xWriter->startElement( aRelListElement, xRootAttrList );
for ( sal_Int32 nInd = 0; nInd < aSequence.getLength(); nInd++ )
{
@@ -108,30 +105,26 @@ void SAL_CALL OFOPXMLHelper::WriteRelationsInfoSequence( const uno::Reference< i
}
}
- xWriterHandler->startElement( aRelElement, xAttrList );
- xWriterHandler->ignorableWhitespace( aWhiteSpace );
- xWriterHandler->endElement( aRelElement );
+ xWriter->startElement( aRelElement, xAttrList );
+ xWriter->ignorableWhitespace( aWhiteSpace );
+ xWriter->endElement( aRelElement );
}
- xWriterHandler->ignorableWhitespace( aWhiteSpace );
- xWriterHandler->endElement( aRelListElement );
- xWriterHandler->endDocument();
+ xWriter->ignorableWhitespace( aWhiteSpace );
+ xWriter->endElement( aRelListElement );
+ xWriter->endDocument();
}
// -----------------------------------
-void SAL_CALL OFOPXMLHelper::WriteContentSequence( const uno::Reference< io::XOutputStream >& xOutStream, const uno::Sequence< beans::StringPair >& aDefaultsSequence, const uno::Sequence< beans::StringPair >& aOverridesSequence, const uno::Reference< lang::XMultiServiceFactory > xFactory )
+void SAL_CALL OFOPXMLHelper::WriteContentSequence( const uno::Reference< io::XOutputStream >& xOutStream, const uno::Sequence< beans::StringPair >& aDefaultsSequence, const uno::Sequence< beans::StringPair >& aOverridesSequence, const uno::Reference< uno::XComponentContext > xContext )
throw( uno::Exception )
{
if ( !xOutStream.is() )
throw uno::RuntimeException();
- uno::Reference< io::XActiveDataSource > xWriterSource(
- xFactory->createInstance(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.xml.sax.Writer" ) ) ),
- uno::UNO_QUERY_THROW );
- uno::Reference< xml::sax::XDocumentHandler > xWriterHandler( xWriterSource, uno::UNO_QUERY_THROW );
+ uno::Reference< xml::sax::XWriter > xWriter = xml::sax::Writer::create(xContext);
- xWriterSource->setOutputStream( xOutStream );
+ xWriter->setOutputStream( xOutStream );
::rtl::OUString aTypesElement( RTL_CONSTASCII_USTRINGPARAM( "Types" ) );
::rtl::OUString aDefaultElement( RTL_CONSTASCII_USTRINGPARAM( "Default" ) );
@@ -150,8 +143,8 @@ void SAL_CALL OFOPXMLHelper::WriteContentSequence( const uno::Reference< io::XOu
aCDATAString,
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM ( "http://schemas.openxmlformats.org/package/2006/content-types" ) ) );
- xWriterHandler->startDocument();
- xWriterHandler->startElement( aTypesElement, xRootAttrList );
+ xWriter->startDocument();
+ xWriter->startElement( aTypesElement, xRootAttrList );
for ( sal_Int32 nInd = 0; nInd < aDefaultsSequence.getLength(); nInd++ )
{
@@ -160,9 +153,9 @@ void SAL_CALL OFOPXMLHelper::WriteContentSequence( const uno::Reference< io::XOu
pAttrList->AddAttribute( aExtensionAttr, aCDATAString, aDefaultsSequence[nInd].First );
pAttrList->AddAttribute( aContentTypeAttr, aCDATAString, aDefaultsSequence[nInd].Second );
- xWriterHandler->startElement( aDefaultElement, xAttrList );
- xWriterHandler->ignorableWhitespace( aWhiteSpace );
- xWriterHandler->endElement( aDefaultElement );
+ xWriter->startElement( aDefaultElement, xAttrList );
+ xWriter->ignorableWhitespace( aWhiteSpace );
+ xWriter->endElement( aDefaultElement );
}
for ( sal_Int32 nInd = 0; nInd < aOverridesSequence.getLength(); nInd++ )
@@ -172,14 +165,14 @@ void SAL_CALL OFOPXMLHelper::WriteContentSequence( const uno::Reference< io::XOu
pAttrList->AddAttribute( aPartNameAttr, aCDATAString, aOverridesSequence[nInd].First );
pAttrList->AddAttribute( aContentTypeAttr, aCDATAString, aOverridesSequence[nInd].Second );
- xWriterHandler->startElement( aOverrideElement, xAttrList );
- xWriterHandler->ignorableWhitespace( aWhiteSpace );
- xWriterHandler->endElement( aOverrideElement );
+ xWriter->startElement( aOverrideElement, xAttrList );
+ xWriter->ignorableWhitespace( aWhiteSpace );
+ xWriter->endElement( aOverrideElement );
}
- xWriterHandler->ignorableWhitespace( aWhiteSpace );
- xWriterHandler->endElement( aTypesElement );
- xWriterHandler->endDocument();
+ xWriter->ignorableWhitespace( aWhiteSpace );
+ xWriter->endElement( aTypesElement );
+ xWriter->endDocument();
}
diff --git a/compilerplugins/Makefile-clang.mk b/compilerplugins/Makefile-clang.mk
index e9192fe4a1ac..9b24df07ab6b 100644
--- a/compilerplugins/Makefile-clang.mk
+++ b/compilerplugins/Makefile-clang.mk
@@ -9,8 +9,12 @@
# Make sure variables in this Makefile do not conflict with other variables (e.g. from gbuild).
# The list of source files.
-CLANGSRC=compileplugin.cxx \
+CLANGSRC= \
+ plugin.cxx \
bodynotinblock.cxx \
+ lclstaticfix.cxx \
+ postfixincrementfix.cxx \
+ sallogareas.cxx \
unusedvariablecheck.cxx \
@@ -39,7 +43,7 @@ CLANGINDIR=$(SRCDIR)/compilerplugins/clang
# plugin will cause cache misses with ccache.
CLANGOUTDIR=$(SRCDIR)/compilerplugins/obj
-compilerplugins: $(CLANGOUTDIR) $(CLANGOUTDIR)/compileplugin.so
+compilerplugins: $(CLANGOUTDIR) $(CLANGOUTDIR)/plugin.so
compilerplugins-clean:
rm -rf $(CLANGOUTDIR)
@@ -52,17 +56,17 @@ CLANGOBJS=
define clangbuildsrc
$(3): $(2) $(SRCDIR)/compilerplugins/Makefile-clang.mk $(CLANGOUTDIR)/clang-timestamp
@echo [build CXX] $(subst $(SRCDIR)/,,$(2))
- $(CXX) $(CLANGCXXFLAGS) $(CLANGDEFS) $(CLANGINCLUDES) $(2) -fPIC -c -o $(3) -MMD -MT $(3) -MP -MF $(CLANGOUTDIR)/$(1).d
+ $(CXX) $(CLANGPLUGIN_CPPFLAGS) $(CLANGCXXFLAGS) $(CLANGDEFS) $(CLANGINCLUDES) -DSRCDIR=$(SRCDIR) $(2) -fPIC -c -o $(3) -MMD -MT $(3) -MP -MF $(CLANGOUTDIR)/$(1).d
-include $(CLANGOUTDIR)/$(1).d
-$(CLANGOUTDIR)/compileplugin.so: $(3)
-$(CLANGOUTDIR)/compileplugin.so: CLANGOBJS += $(3)
+$(CLANGOUTDIR)/plugin.so: $(3)
+$(CLANGOUTDIR)/plugin.so: CLANGOBJS += $(3)
endef
$(foreach src, $(CLANGSRC), $(eval $(call clangbuildsrc,$(src),$(CLANGINDIR)/$(src),$(CLANGOUTDIR)/$(src:.cxx=.o))))
-$(CLANGOUTDIR)/compileplugin.so: $(CLANGOBJS)
+$(CLANGOUTDIR)/plugin.so: $(CLANGOBJS)
@echo [build LNK] $(subst $(SRCDIR)/,,$@)
$(CXX) -shared $(CLANGOBJS) -o $@
diff --git a/compilerplugins/README b/compilerplugins/README
index 50c7505dd72e..1261a34b1487 100644
--- a/compilerplugins/README
+++ b/compilerplugins/README
@@ -1,5 +1,6 @@
Compiler plugins.
+
== Overview ==
This directory contains code for compiler plugins. These are used to perform
@@ -8,6 +9,7 @@ also to perform mass code refactoring.
Currently only the Clang compiler is supported (http://clang.llvm.org).
+
== Usage ==
Compiler plugins are enabled automatically by --enable-dbgutil if Clang headers
@@ -16,11 +18,17 @@ are found or explicitly using --enable-compiler-plugins.
== Functionality ==
-=== Compile plugin ===
+There are two kinds of modules:
+- compile checks - these are run during normal compilation
+- rewriters - these must be run manually and modify source files
+
-The compile plugin is used during normal compilation to perform additional checks.
+=== Compile checks ===
+
+Used during normal compilation to perform additional checks.
All warnings and errors are marked '[loplugin]' in the message.
+
==== Unused variable check ====
- unused parameter 'foo' [loplugin]
@@ -28,6 +36,7 @@ All warnings and errors are marked '[loplugin]' in the message.
Additional check for unused variables.
+
==== Body of if/while/for not in {} ====
- statement aligned as second statement in if/while/for body but not in a statement block [loplugin]
@@ -41,6 +50,21 @@ Warn about the following construct:
Here either both statements should be inside {} or the second statement in indented wrong.
+==== Sal log areas ====
+
+- unknown log area 'foo' (check or extend sal/inc/sal/log-areas.dox) [loplugin]
+
+Check area used in SAL_INFO/SAL_WARN macros against the list in sal/inc/sal/log-areas.dox and
+report if the area is not listed there. The fix is either use a proper area or add it to the list
+if appropriate.
+
+
+=== Rewriters ===
+
+Rewriters analyse and possibly modify given source files.
+Usage: make COMPILER_PLUGIN_TOOL=<rewriter_name>
+Modifications will be written to files <source_file>.new .
+
== Code documentation / howtos ==
TBD
diff --git a/compilerplugins/clang/bodynotinblock.cxx b/compilerplugins/clang/bodynotinblock.cxx
index f13eb9392357..b6572bfc8a7a 100644
--- a/compilerplugins/clang/bodynotinblock.cxx
+++ b/compilerplugins/clang/bodynotinblock.cxx
@@ -16,6 +16,8 @@ namespace loplugin
{
/*
+This is a compile check.
+
Check for two statements that are both indented to look like a body of if/while/for
but are not inside a compound statement and thus the second one is unrelated.
*/
diff --git a/compilerplugins/clang/bodynotinblock.hxx b/compilerplugins/clang/bodynotinblock.hxx
index a2c47e6683cd..304bbf0a0480 100644
--- a/compilerplugins/clang/bodynotinblock.hxx
+++ b/compilerplugins/clang/bodynotinblock.hxx
@@ -11,7 +11,7 @@
#ifndef BODYNOTINBLOCK_H
#define BODYNOTINBLOCK_H
-#include "compileplugin.hxx"
+#include "plugin.hxx"
namespace loplugin
{
@@ -25,7 +25,7 @@ class BodyNotInBlock
void run();
bool VisitFunctionDecl( FunctionDecl* declaration );
private:
- typedef std::vector< const Stmt* > StmtParents;
+ typedef vector< const Stmt* > StmtParents;
void traverseStatement( const Stmt* stmt, StmtParents& parents );
void checkBody( const Stmt* body, const StmtParents& parents, int stmtType, bool dontGoUp = false );
};
diff --git a/compilerplugins/clang/compileplugin.cxx b/compilerplugins/clang/compileplugin.cxx
deleted file mode 100644
index a61a3bab66a4..000000000000
--- a/compilerplugins/clang/compileplugin.cxx
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * Based on LLVM/Clang.
- *
- * This file is distributed under the University of Illinois Open Source
- * License. See LICENSE.TXT for details.
- *
- */
-
-#include "compileplugin.hxx"
-
-#include <clang/AST/ASTConsumer.h>
-#include <clang/AST/ASTContext.h>
-#include <clang/Frontend/CompilerInstance.h>
-#include <clang/Frontend/FrontendAction.h>
-#include <clang/Frontend/FrontendPluginRegistry.h>
-#include <clang/Rewrite/Rewriter.h>
-
-#include "bodynotinblock.hxx"
-#include "unusedvariablecheck.hxx"
-
-using namespace clang;
-
-namespace loplugin
-{
-
-Plugin::Plugin( ASTContext& context )
- : context( context )
- {
- }
-
-DiagnosticBuilder Plugin::report( DiagnosticsEngine::Level level, StringRef message, SourceLocation loc )
- {
- DiagnosticsEngine& diag = context.getDiagnostics();
-#if 0
- // Do some mappings (e.g. for -Werror) that clang does not do for custom messages for some reason.
- if( level == DiagnosticsEngine::Warning && diag.getWarningsAsErrors())
- level = DiagnosticsEngine::Error;
- if( level == DiagnosticsEngine::Error && diag.getErrorsAsFatal())
- level = DiagnosticsEngine::Fatal;
-#endif
- return diag.Report( loc, diag.getCustomDiagID( level, message ));
- }
-
-bool Plugin::ignoreLocation( SourceLocation loc )
- {
- return context.getSourceManager().isInSystemHeader( context.getSourceManager().getExpansionLoc( loc ));
- }
-
-/**
- Class that manages all LO modules.
-*/
-class PluginHandler
- : public ASTConsumer
- {
- public:
- explicit PluginHandler( ASTContext& context )
- : rewriter( context.getSourceManager(), context.getLangOpts())
- , bodyNotInBlock( context )
- , unusedVariableCheck( context )
- {
- }
- virtual void HandleTranslationUnit( ASTContext& context )
- {
- if( context.getDiagnostics().hasErrorOccurred())
- return;
- bodyNotInBlock.run();
- unusedVariableCheck.run();
- // TODO also LO header files? or a subdir?
- if( const RewriteBuffer* buf = rewriter.getRewriteBufferFor( context.getSourceManager().getMainFileID()))
- buf->write( llvm::outs());
- // TODO else write out the original file?
- }
- private:
- Rewriter rewriter;
- BodyNotInBlock bodyNotInBlock;
- UnusedVariableCheck unusedVariableCheck;
- };
-
-/**
- The Clang plugin class, just forwards to PluginHandler.
-*/
-class LibreOfficeAction
- : public PluginASTAction
- {
- public:
- virtual ASTConsumer* CreateASTConsumer( CompilerInstance& Compiler, StringRef InFile )
- {
- return new PluginHandler( Compiler.getASTContext());
- }
- virtual bool ParseArgs( const CompilerInstance& CI, const std::vector< std::string >& args )
- {
- return true;
- }
- };
-
-} // namespace
-
-static FrontendPluginRegistry::Add< loplugin::LibreOfficeAction > X( "loplugin", "LibreOffice compile check plugin" );
diff --git a/compilerplugins/clang/compileplugin.hxx b/compilerplugins/clang/compileplugin.hxx
deleted file mode 100644
index 6c854d1e0179..000000000000
--- a/compilerplugins/clang/compileplugin.hxx
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * Based on LLVM/Clang.
- *
- * This file is distributed under the University of Illinois Open Source
- * License. See LICENSE.TXT for details.
- *
- */
-
-#ifndef COMPILEPLUGIN_H
-#define COMPILEPLUGIN_H
-
-#include <clang/AST/RecursiveASTVisitor.h>
-
-using namespace clang;
-
-namespace loplugin
-{
-
-class Plugin
- {
- public:
- explicit Plugin( ASTContext& context );
- protected:
- DiagnosticBuilder report( DiagnosticsEngine::Level level, StringRef message, SourceLocation loc );
- bool ignoreLocation( SourceLocation loc );
- bool ignoreLocation( const Decl* decl );
- bool ignoreLocation( const Stmt* stmt );
- ASTContext& context;
- };
-
-inline
-bool Plugin::ignoreLocation( const Decl* decl )
- {
- return ignoreLocation( decl->getLocation());
- }
-
-inline
-bool Plugin::ignoreLocation( const Stmt* stmt )
- {
- return ignoreLocation( stmt->getLocStart());
- }
-
-} // namespace
-
-#endif // COMPILEPLUGIN_H
diff --git a/compilerplugins/clang/lclstaticfix.cxx b/compilerplugins/clang/lclstaticfix.cxx
new file mode 100644
index 000000000000..849fea57b9e8
--- /dev/null
+++ b/compilerplugins/clang/lclstaticfix.cxx
@@ -0,0 +1,53 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#include "lclstaticfix.hxx"
+
+#include <clang/Basic/SourceManager.h>
+
+/*
+This is a rewriter.
+
+Check all lcl_ functions and prepend static if needed.
+*/
+
+namespace loplugin
+{
+
+LclStaticFix::LclStaticFix( ASTContext& context, Rewriter& rewriter )
+ : RewritePlugin( context, rewriter )
+ {
+ }
+
+void LclStaticFix::run()
+ {
+ TraverseDecl( context.getTranslationUnitDecl());
+ }
+
+bool LclStaticFix::VisitFunctionDecl( FunctionDecl* declaration )
+ {
+ // TODO also LO header files? or a subdir?
+ // Only the .cxx file can be normally edited ... ?
+ if( !context.getSourceManager().isFromMainFile( declaration->getLocStart()))
+ return true;
+ if( declaration->isCXXClassMember())
+ return true;
+ if( declaration->getStorageClass() == SC_Static )
+ return true;
+ string name = declaration->getQualifiedNameAsString();
+ if( name.find( "::" ) != string::npos )
+ return true;
+ if( name.compare( 0, 4, "lcl_" ) != 0 )
+ return true;
+ insertText( declaration->getLocStart(), "static " );
+ return true;
+ }
+
+} // namespace
diff --git a/compilerplugins/clang/lclstaticfix.hxx b/compilerplugins/clang/lclstaticfix.hxx
new file mode 100644
index 000000000000..fdf9d34107e7
--- /dev/null
+++ b/compilerplugins/clang/lclstaticfix.hxx
@@ -0,0 +1,32 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#ifndef LCLSTATICFIX_H
+#define LCLSTATICFIX_H
+
+#include "plugin.hxx"
+
+namespace loplugin
+{
+
+class LclStaticFix
+ : public RecursiveASTVisitor< LclStaticFix >
+ , public RewritePlugin
+ {
+ public:
+ explicit LclStaticFix( ASTContext& context, Rewriter& rewriter );
+ void run();
+ bool VisitFunctionDecl( FunctionDecl* declaration );
+ };
+
+} // namespace
+
+#endif // POSTFIXINCREMENTFIX_H
+
diff --git a/compilerplugins/clang/plugin.cxx b/compilerplugins/clang/plugin.cxx
new file mode 100644
index 000000000000..7ecf5991491f
--- /dev/null
+++ b/compilerplugins/clang/plugin.cxx
@@ -0,0 +1,235 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#include "plugin.hxx"
+
+#include <clang/AST/ASTConsumer.h>
+#include <clang/AST/ASTContext.h>
+#include <clang/Basic/FileManager.h>
+#include <clang/Frontend/CompilerInstance.h>
+#include <clang/Frontend/FrontendAction.h>
+#include <clang/Frontend/FrontendPluginRegistry.h>
+#include <clang/Rewrite/Rewriter.h>
+
+#include "bodynotinblock.hxx"
+#include "lclstaticfix.hxx"
+#include "postfixincrementfix.hxx"
+#include "sallogareas.hxx"
+#include "unusedvariablecheck.hxx"
+
+namespace loplugin
+{
+
+Plugin::Plugin( ASTContext& context )
+ : context( context )
+ {
+ }
+
+DiagnosticBuilder Plugin::report( DiagnosticsEngine::Level level, StringRef message, SourceLocation loc )
+ {
+ DiagnosticsEngine& diag = context.getDiagnostics();
+#if 0
+ // Do some mappings (e.g. for -Werror) that clang does not do for custom messages for some reason.
+ if( level == DiagnosticsEngine::Warning && diag.getWarningsAsErrors())
+ level = DiagnosticsEngine::Error;
+ if( level == DiagnosticsEngine::Error && diag.getErrorsAsFatal())
+ level = DiagnosticsEngine::Fatal;
+#endif
+ if( loc.isValid())
+ return diag.Report( loc, diag.getCustomDiagID( level, message ));
+ else
+ return diag.Report( diag.getCustomDiagID( level, message ));
+ }
+
+bool Plugin::ignoreLocation( SourceLocation loc )
+ {
+ return context.getSourceManager().isInSystemHeader( context.getSourceManager().getExpansionLoc( loc ));
+ }
+
+
+RewritePlugin::RewritePlugin( ASTContext& context, Rewriter& rewriter )
+ : Plugin( context )
+ , rewriter( rewriter )
+ {
+ }
+
+bool RewritePlugin::insertText( SourceLocation Loc, StringRef Str, bool InsertAfter, bool indentNewLines )
+ {
+ if( rewriter.InsertText( Loc, Str, InsertAfter, indentNewLines ))
+ return reportEditFailure( Loc );
+ return true;
+ }
+
+bool RewritePlugin::insertTextAfter( SourceLocation Loc, StringRef Str )
+ {
+ if( rewriter.InsertTextAfter( Loc, Str ))
+ return reportEditFailure( Loc );
+ return true;
+ }
+
+bool RewritePlugin::insertTextAfterToken( SourceLocation Loc, StringRef Str )
+ {
+ if( rewriter.InsertTextAfterToken( Loc, Str ))
+ return reportEditFailure( Loc );
+ return true;
+ }
+
+bool RewritePlugin::insertTextBefore( SourceLocation Loc, StringRef Str )
+ {
+ if( rewriter.InsertTextBefore( Loc, Str ))
+ return reportEditFailure( Loc );
+ return true;
+ }
+
+bool RewritePlugin::removeText( SourceLocation Start, unsigned Length, RewriteOptions opts )
+ {
+ if( rewriter.RemoveText( Start, Length, opts ))
+ return reportEditFailure( Start );
+ return true;
+ }
+
+bool RewritePlugin::removeText( CharSourceRange range, RewriteOptions opts )
+ {
+ if( rewriter.RemoveText( range, opts ))
+ return reportEditFailure( range.getBegin());
+ return true;
+ }
+
+bool RewritePlugin::removeText( SourceRange range, RewriteOptions opts )
+ {
+ if( rewriter.RemoveText( range, opts ))
+ return reportEditFailure( range.getBegin());
+ return true;
+ }
+
+bool RewritePlugin::replaceText( SourceLocation Start, unsigned OrigLength, StringRef NewStr )
+ {
+ if( rewriter.ReplaceText( Start, OrigLength, NewStr ))
+ return reportEditFailure( Start );
+ return true;
+ }
+
+bool RewritePlugin::replaceText( SourceRange range, StringRef NewStr )
+ {
+ if( rewriter.ReplaceText( range, NewStr ))
+ return reportEditFailure( range.getBegin());
+ return true;
+ }
+
+bool RewritePlugin::replaceText( SourceRange range, SourceRange replacementRange )
+ {
+ if( rewriter.ReplaceText( range, replacementRange ))
+ return reportEditFailure( range.getBegin());
+ return true;
+ }
+
+bool RewritePlugin::reportEditFailure( SourceLocation loc )
+ {
+ DiagnosticsEngine& diag = context.getDiagnostics();
+ diag.Report( loc, diag.getCustomDiagID( DiagnosticsEngine::Warning,
+ "cannot perform source modification (macro expansion involved?) [loplugin]" ));
+ return false;
+ }
+
+
+/**
+ Class that manages all LO modules.
+*/
+class PluginHandler
+ : public ASTConsumer
+ {
+ public:
+ explicit PluginHandler( ASTContext& context, const vector< string >& args )
+ : rewriter( context.getSourceManager(), context.getLangOpts())
+ , args( args )
+ , bodyNotInBlock( context )
+ , lclStaticFix( context, rewriter )
+ , postfixIncrementFix( context, rewriter )
+ , salLogAreas( context )
+ , unusedVariableCheck( context )
+ {
+ }
+ virtual void HandleTranslationUnit( ASTContext& context )
+ {
+ if( context.getDiagnostics().hasErrorOccurred())
+ return;
+ if( isArg( "lclstaticfix" ))
+ lclStaticFix.run();
+ else if( isArg( "postfixincrementfix" ))
+ postfixIncrementFix.run();
+ else if( args.empty())
+ {
+ bodyNotInBlock.run();
+ salLogAreas.run();
+ unusedVariableCheck.run();
+ }
+ else
+ {
+ DiagnosticsEngine& diag = context.getDiagnostics();
+ diag.Report( diag.getCustomDiagID( DiagnosticsEngine::Fatal,
+ "unknown plugin tool %0 [loplugin]" )) << args.front();
+ }
+ for( Rewriter::buffer_iterator it = rewriter.buffer_begin();
+ it != rewriter.buffer_end();
+ ++it )
+ {
+ const FileEntry* e = context.getSourceManager().getFileEntryForID( it->first );
+ string filename = std::string( e->getName()) + ".new";
+ string error;
+ // TODO If there will be actually plugins also modifying headers,
+ // race conditions should be avoided here.
+ raw_fd_ostream ostream( filename.c_str(), error );
+ DiagnosticsEngine& diag = context.getDiagnostics();
+ if( !error.empty())
+ diag.Report( diag.getCustomDiagID( DiagnosticsEngine::Error,
+ "cannot write modified source to %0 (%1) [loplugin]" )) << filename << error;
+ else
+ diag.Report( diag.getCustomDiagID( DiagnosticsEngine::Note,
+ "modified source %0 [loplugin]" )) << filename;
+ it->second.write( ostream );
+ }
+ }
+ private:
+ bool isArg( const char* arg ) const
+ {
+ return find( args.begin(), args.end(), arg ) != args.end();
+ }
+ Rewriter rewriter;
+ vector< string > args;
+ BodyNotInBlock bodyNotInBlock;
+ LclStaticFix lclStaticFix;
+ PostfixIncrementFix postfixIncrementFix;
+ SalLogAreas salLogAreas;
+ UnusedVariableCheck unusedVariableCheck;
+ };
+
+/**
+ The Clang plugin class, just forwards to PluginHandler.
+*/
+class LibreOfficeAction
+ : public PluginASTAction
+ {
+ public:
+ virtual ASTConsumer* CreateASTConsumer( CompilerInstance& Compiler, StringRef InFile )
+ {
+ return new PluginHandler( Compiler.getASTContext(), _args );
+ }
+ virtual bool ParseArgs( const CompilerInstance& CI, const vector< string >& args )
+ {
+ _args = args;
+ return true;
+ }
+ private:
+ vector< string > _args;
+ };
+
+} // namespace
+
+static FrontendPluginRegistry::Add< loplugin::LibreOfficeAction > X( "loplugin", "LibreOffice compile check plugin" );
diff --git a/compilerplugins/clang/plugin.hxx b/compilerplugins/clang/plugin.hxx
new file mode 100644
index 000000000000..b8a48fa97fd1
--- /dev/null
+++ b/compilerplugins/clang/plugin.hxx
@@ -0,0 +1,77 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#ifndef PLUGIN_H
+#define PLUGIN_H
+
+#include <clang/AST/RecursiveASTVisitor.h>
+#include <clang/Rewrite/Rewriter.h>
+
+using namespace clang;
+using namespace llvm;
+using namespace std;
+
+namespace loplugin
+{
+
+class Plugin
+ {
+ public:
+ explicit Plugin( ASTContext& context );
+ protected:
+ DiagnosticBuilder report( DiagnosticsEngine::Level level, StringRef message, SourceLocation loc = SourceLocation());
+ bool ignoreLocation( SourceLocation loc );
+ bool ignoreLocation( const Decl* decl );
+ bool ignoreLocation( const Stmt* stmt );
+ ASTContext& context;
+ };
+
+class RewritePlugin
+ : public Plugin
+ {
+ public:
+ explicit RewritePlugin( ASTContext& context, Rewriter& rewriter );
+ protected:
+ typedef Rewriter::RewriteOptions RewriteOptions;
+ // These following insert/remove/replaceText functions map to functions
+ // in clang::Rewriter, with two differences:
+ // - they (more intuitively) return false on failure rather than true
+ // - they report a warning when the change cannot be done
+ bool insertText( SourceLocation Loc, StringRef Str,
+ bool InsertAfter = true, bool indentNewLines = false );
+ bool insertTextAfter( SourceLocation Loc, StringRef Str );
+ bool insertTextAfterToken( SourceLocation Loc, StringRef Str );
+ bool insertTextBefore( SourceLocation Loc, StringRef Str );
+ bool removeText( SourceLocation Start, unsigned Length, RewriteOptions opts = RewriteOptions());
+ bool removeText( CharSourceRange range, RewriteOptions opts = RewriteOptions());
+ bool removeText( SourceRange range, RewriteOptions opts = RewriteOptions());
+ bool replaceText( SourceLocation Start, unsigned OrigLength, StringRef NewStr );
+ bool replaceText( SourceRange range, StringRef NewStr );
+ bool replaceText( SourceRange range, SourceRange replacementRange );
+ Rewriter& rewriter;
+ private:
+ bool reportEditFailure( SourceLocation loc );
+ };
+
+inline
+bool Plugin::ignoreLocation( const Decl* decl )
+ {
+ return ignoreLocation( decl->getLocation());
+ }
+
+inline
+bool Plugin::ignoreLocation( const Stmt* stmt )
+ {
+ return ignoreLocation( stmt->getLocStart());
+ }
+
+} // namespace
+
+#endif // COMPILEPLUGIN_H
diff --git a/compilerplugins/clang/postfixincrementfix.cxx b/compilerplugins/clang/postfixincrementfix.cxx
new file mode 100644
index 000000000000..ee63b8eb5a02
--- /dev/null
+++ b/compilerplugins/clang/postfixincrementfix.cxx
@@ -0,0 +1,165 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#include "postfixincrementfix.hxx"
+
+#include <clang/Basic/SourceManager.h>
+
+namespace loplugin
+{
+
+PostfixIncrementFix::PostfixIncrementFix( ASTContext& context, Rewriter& rewriter )
+ : RewritePlugin( context, rewriter )
+ {
+ }
+
+void PostfixIncrementFix::run()
+ {
+ TraverseDecl( context.getTranslationUnitDecl());
+ }
+
+bool PostfixIncrementFix::VisitFunctionDecl( FunctionDecl* declaration )
+ {
+ // TODO also LO header files? or a subdir?
+ if( !context.getSourceManager().isFromMainFile( declaration->getLocStart()))
+ return true;
+ if( !declaration->doesThisDeclarationHaveABody())
+ return true;
+ StmtParents parents;
+ fixPostfixOperators( declaration->getBody(), parents );
+ return true;
+ }
+
+void PostfixIncrementFix::fixPostfixOperators( const Stmt* stmt, StmtParents& parents )
+ {
+ if( const CXXOperatorCallExpr* op = dyn_cast<CXXOperatorCallExpr>( stmt ))
+ { // postfix ++ has two arguments (the operand and the hidden extra int)
+ if( op->getOperator() == OO_PlusPlus && op->getNumArgs() == 2 )
+ fixPostfixOperator( op, parents );
+ }
+ // For primitive types it would be UnaryOperatorExpr, but probably no good reason to change those.
+ parents.push_back( stmt );
+ for( ConstStmtIterator it = stmt->child_begin();
+ it != stmt->child_end();
+ ++it )
+ {
+ if( *it != NULL ) // some children can be apparently NULL
+ fixPostfixOperators( *it, parents );
+ }
+ assert( parents.back() == stmt );
+ parents.pop_back();
+ }
+
+void PostfixIncrementFix::fixPostfixOperator( const CXXOperatorCallExpr* op, StmtParents& parents )
+ {
+ if( !canChangePostfixToPrefix( op, parents, parents.size() - 1 ))
+ return;
+ if( !shouldDoChange( op->getArg( 0 )))
+ return;
+ // Adding spaces around the moved ++ should not be necessary
+ // (there might a problem with e.g. a+b++ -> a+++b (i.e. a++ +b),
+ // but we don't change such expressions).
+ if( insertText( op->getLocStart(), "++" )) // insert is intentionally first, in case it fails
+ removeText( op->getCallee()->getSourceRange());
+ }
+
+bool PostfixIncrementFix::canChangePostfixToPrefix( const CXXOperatorCallExpr* op, StmtParents& parents, int parent_pos )
+ {
+ // check if foo++ can be safely replaced by ++foo
+ switch( parents[ parent_pos ]->getStmtClass())
+ {
+ case Stmt::CompoundStmtClass:
+ return true;
+ // these mean somebody is going to use it
+ case Stmt::ImplicitCastExprClass:
+ case Stmt::MaterializeTemporaryExprClass:
+ case Stmt::BinaryOperatorClass:
+ case Stmt::UnaryOperatorClass:
+ case Stmt::CallExprClass:
+ case Stmt::CXXOperatorCallExprClass:
+ return false;
+ case Stmt::CXXBindTemporaryExprClass:
+ // tricky, it may just mean the temporary will be cleaned up
+ // (by ExprWithCleanups), ignore and go up
+ assert( parent_pos > 0 ); // should not happen
+ return canChangePostfixToPrefix( op, parents, parent_pos - 1 );
+ case Stmt::ExprWithCleanupsClass:
+ // cleanup of a temporary, should be harmless (if the use
+ // of the postfix ++ operator here relies on the fact that
+ // the dtor for the object will be called, that's pretty insane
+ // code). Ignore and go up.
+ assert( parent_pos > 0 ); // should not happen
+ return canChangePostfixToPrefix( op, parents, parent_pos - 1 );
+ case Stmt::ParenExprClass: // parentheses, go up
+ assert( parent_pos > 0 );
+ return canChangePostfixToPrefix( op, parents, parent_pos - 1 );
+ case Stmt::IfStmtClass:
+ return canChangeInConditionStatement( op, cast< IfStmt >( parents[ parent_pos ] )->getCond(),
+ parents, parent_pos );
+ case Stmt::WhileStmtClass:
+ return canChangeInConditionStatement( op, cast< WhileStmt >( parents[ parent_pos ] )->getCond(),
+ parents, parent_pos );
+ case Stmt::DoStmtClass:
+ return canChangeInConditionStatement( op, cast< DoStmt >( parents[ parent_pos ] )->getCond(),
+ parents, parent_pos );
+ case Stmt::ForStmtClass:
+ return canChangeInConditionStatement( op, dyn_cast< ForStmt >( parents[ parent_pos ] )->getCond(),
+ parents, parent_pos );
+ default:
+ DiagnosticsEngine& diag = context.getDiagnostics();
+ unsigned diagid = diag.getCustomDiagID( DiagnosticsEngine::Fatal,
+ "cannot analyze operator++ (plugin needs fixing) [loplugin]" );
+ diag.Report( op->getLocStart(), diagid ) << parents[ parent_pos ]->getSourceRange();
+// parents[ parent_pos ]->dump();
+// parents[ std::max( parent_pos - 3, 0 ) ]->dump();
+ return false;
+ }
+ }
+
+bool PostfixIncrementFix::canChangeInConditionStatement( const CXXOperatorCallExpr* op, const Expr* condition,
+ const StmtParents& parents, int parent_pos )
+ {
+ // cannot be changed in condition, can be changed in statements
+ if( parent_pos == parents.size() - 1 )
+ return op != condition;
+ else
+ { // indirect child
+ assert( parent_pos + 1 < parents.size());
+ return parents[ parent_pos + 1 ] != condition;
+ }
+ }
+
+bool PostfixIncrementFix::shouldDoChange( const Expr* operand )
+ {
+ // TODO Changing 'a->b++' to '++a->b' is technically the same, but the latter probably looks confusing,
+ // so either avoid that, or add parentheses. Avoid for now.
+ const Expr* expr = const_cast< Expr* >( operand )->IgnoreImplicit(); // does not have const version
+ switch( expr->getStmtClass())
+ {
+ case Stmt::ParenExprClass:
+ return true; // there are already parentheses, ok to move the ++
+ case Stmt::MemberExprClass:
+ return false; // ++a->b , avoid
+ case Stmt::DeclRefExprClass:
+ return true;
+ default:
+ {
+ DiagnosticsEngine& diag = context.getDiagnostics();
+ unsigned diagid = diag.getCustomDiagID( DiagnosticsEngine::Fatal,
+ "cannot analyze operator++ (plugin needs fixing) [loplugin]" );
+ diag.Report( expr->getLocStart(), diagid ) << operand->getSourceRange();
+ expr->dump();
+ operand->dump();
+ return false;
+ }
+ }
+ }
+
+} // namespace
diff --git a/compilerplugins/clang/postfixincrementfix.hxx b/compilerplugins/clang/postfixincrementfix.hxx
new file mode 100644
index 000000000000..6f6b414690b0
--- /dev/null
+++ b/compilerplugins/clang/postfixincrementfix.hxx
@@ -0,0 +1,40 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#ifndef POSTFIXINCREMENTFIX_H
+#define POSTFIXINCREMENTFIX_H
+
+#include "plugin.hxx"
+
+namespace loplugin
+{
+
+class PostfixIncrementFix
+ : public RecursiveASTVisitor< PostfixIncrementFix >
+ , public RewritePlugin
+ {
+ public:
+ explicit PostfixIncrementFix( ASTContext& context, Rewriter& rewriter );
+ void run();
+ bool VisitFunctionDecl( FunctionDecl* declaration );
+ private:
+ typedef std::vector< const Stmt* > StmtParents;
+ void fixPostfixOperator( const CXXOperatorCallExpr* op, StmtParents& parents );
+ void fixPostfixOperators( const Stmt* stmt, StmtParents& parents );
+ bool canChangePostfixToPrefix( const CXXOperatorCallExpr* op, StmtParents& parents, int parent_pos );
+ bool canChangeInConditionStatement( const CXXOperatorCallExpr* op, const Expr* condition,
+ const StmtParents& parents, int parent_pos );
+ bool shouldDoChange( const Expr* op );
+ };
+
+} // namespace
+
+#endif // POSTFIXINCREMENTFIX_H
+
diff --git a/compilerplugins/clang/sallogareas.cxx b/compilerplugins/clang/sallogareas.cxx
new file mode 100644
index 000000000000..016e004a9669
--- /dev/null
+++ b/compilerplugins/clang/sallogareas.cxx
@@ -0,0 +1,137 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#include "sallogareas.hxx"
+
+#include <clang/Basic/SourceManager.h>
+#include <clang/Lex/Lexer.h>
+
+#include <fstream>
+
+namespace loplugin
+{
+
+/*
+This is a compile check.
+
+Check that areas used in SAL_LOG/SAL_WARN are listed in sal/inc/sal/log-areas.dox .
+*/
+
+SalLogAreas::SalLogAreas( ASTContext& context )
+ : Plugin( context )
+ {
+ }
+
+void SalLogAreas::run()
+ {
+ inFunction = NULL;
+ lastSalDetailLogStreamMacro = SourceLocation();
+ TraverseDecl( context.getTranslationUnitDecl());
+ }
+
+bool SalLogAreas::VisitFunctionDecl( FunctionDecl* function )
+ {
+ inFunction = function;
+ return true;
+ }
+
+bool SalLogAreas::VisitCallExpr( CallExpr* call )
+ {
+ if( ignoreLocation( call ))
+ return true;
+ if( FunctionDecl* func = call->getDirectCallee())
+ {
+ // Optimize, getQualifiedNameAsString() is reportedly expensive.
+ if( func->getNumParams() == 4 && func->getIdentifier() != NULL
+ && ( func->getName() == "sal_detail_log" || func->getName() == "log" ))
+ {
+ string qualifiedName = func->getQualifiedNameAsString();
+ if( qualifiedName == "sal_detail_log" || qualifiedName == "sal::detail::log" )
+ {
+ // The SAL_DETAIL_LOG_STREAM macro expands to two calls to sal::detail::log(),
+ // so do not warn repeatedly about the same macro (the area->getLocStart() of all the calls
+ // from the same macro should be the same).
+ SourceLocation expansionLocation = context.getSourceManager().getExpansionLoc( call->getLocStart());
+ if( expansionLocation == lastSalDetailLogStreamMacro )
+ return true;
+ lastSalDetailLogStreamMacro = expansionLocation;
+ if( const StringLiteral* area = dyn_cast< StringLiteral >( call->getArg( 1 )->IgnoreParenImpCasts()))
+ {
+ if( area->getKind() == StringLiteral::Ascii )
+ checkArea( area->getBytes(), area->getExprLoc());
+ else
+ report( DiagnosticsEngine::Warning, "unsupported string literal kind (plugin needs fixing?) [loplugin]",
+ area->getLocStart());
+ return true;
+ }
+ if( inFunction->getQualifiedNameAsString() == "sal::detail::log" )
+ return true; // This function only forwards to sal_detail_log, so ok.
+ if( call->getArg( 1 )->isNullPointerConstant( context, Expr::NPC_ValueDependentIsNotNull ) != Expr::NPCK_NotNull )
+ { // If the area argument is a null pointer, that is allowed only for SAL_DEBUG.
+ const SourceManager& source = context.getSourceManager();
+ for( SourceLocation loc = call->getLocStart();
+ loc.isMacroID();
+ loc = source.getImmediateExpansionRange( loc ).first )
+ {
+ StringRef inMacro = Lexer::getImmediateMacroName( loc, source, context.getLangOpts());
+ if( inMacro == "SAL_DEBUG" )
+ return true; // ok
+ }
+ report( DiagnosticsEngine::Warning, "missing log area [loplugin]",
+ call->getArg( 1 )->IgnoreParenImpCasts()->getLocStart());
+ return true;
+ }
+ report( DiagnosticsEngine::Warning, "cannot analyse log area argument (plugin needs fixing?) [loplugin]",
+ call->getLocStart());
+ }
+ }
+ }
+ return true;
+ }
+
+void SalLogAreas::checkArea( StringRef area, SourceLocation location )
+ {
+ if( logAreas.empty())
+ readLogAreas();
+ if( !logAreas.count( area ))
+ {
+ report( DiagnosticsEngine::Warning, "unknown log area '%0' (check or extend sal/inc/sal/log-areas.dox) [loplugin]",
+ location ) << area;
+ }
+ }
+
+void SalLogAreas::readLogAreas()
+ {
+#define STRINGIFY2( s ) #s
+#define STRINGIFY( s ) STRINGIFY2( s )
+ ifstream is( STRINGIFY( SRCDIR ) "/sal/inc/sal/log-areas.dox" );
+#undef STRINGIFY
+#undef STRINGIFY2
+ while( is.good())
+ {
+ string line;
+ getline( is, line );
+ size_t pos = line.find( "@li @c " );
+ if( pos != string::npos )
+ {
+ pos += strlen( "@li @c " );
+ size_t end = line.find( ' ', pos );
+ if( end == string::npos )
+ logAreas.insert( line.substr( pos ));
+ else if( pos != end )
+ logAreas.insert( line.substr( pos, end - pos ));
+ }
+ }
+ // If you get this error message, you possibly have too old icecream (ICECC_EXTRAFILES is needed).
+ if( logAreas.empty())
+ report( DiagnosticsEngine::Warning, "error reading log areas [loplugin]" );
+ }
+
+} // namespace
diff --git a/compilerplugins/clang/sallogareas.hxx b/compilerplugins/clang/sallogareas.hxx
new file mode 100644
index 000000000000..e83e890697e4
--- /dev/null
+++ b/compilerplugins/clang/sallogareas.hxx
@@ -0,0 +1,40 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * Based on LLVM/Clang.
+ *
+ * This file is distributed under the University of Illinois Open Source
+ * License. See LICENSE.TXT for details.
+ *
+ */
+
+#ifndef SALLOGAREAS_H
+#define SALLOGAREAS_H
+
+#include <set>
+
+#include "plugin.hxx"
+
+namespace loplugin
+{
+
+class SalLogAreas
+ : public RecursiveASTVisitor< SalLogAreas >
+ , public Plugin
+ {
+ public:
+ explicit SalLogAreas( ASTContext& context );
+ void run();
+ bool VisitFunctionDecl( FunctionDecl* function );
+ bool VisitCallExpr( CallExpr* call );
+ private:
+ void checkArea( StringRef area, SourceLocation location );
+ void readLogAreas();
+ const FunctionDecl* inFunction;
+ SourceLocation lastSalDetailLogStreamMacro;
+ set< string > logAreas;
+ };
+
+} // namespace
+
+#endif // SALLOGAREAS_H
diff --git a/compilerplugins/clang/unusedvariablecheck.cxx b/compilerplugins/clang/unusedvariablecheck.cxx
index 3d9ca3de0513..7e3bb53c5ba4 100644
--- a/compilerplugins/clang/unusedvariablecheck.cxx
+++ b/compilerplugins/clang/unusedvariablecheck.cxx
@@ -16,6 +16,8 @@ namespace loplugin
{
/*
+This is a compile check.
+
Check for unused classes where the compiler cannot decide (e.g. because of
non-trivial or extern ctors) if a variable is unused if only its ctor/dtor
are called and nothing else. For example std::vector is a class where
@@ -38,13 +40,10 @@ void UnusedVariableCheck::run()
TraverseDecl( context.getTranslationUnitDecl());
}
-bool UnusedVariableCheck::VisitNamedDecl( NamedDecl* declaration )
+bool UnusedVariableCheck::VisitVarDecl( VarDecl* var )
{
- if( ignoreLocation( declaration ))
- return true;
- if( !isa< VarDecl >( declaration ))
+ if( ignoreLocation( var ))
return true;
- const VarDecl* var = cast< VarDecl >( declaration );
if( var->isReferenced() || var->isUsed())
return true;
if( var->isDefinedOutsideFunctionOrMethod())
@@ -70,7 +69,7 @@ bool UnusedVariableCheck::VisitNamedDecl( NamedDecl* declaration )
}
if( !warn_unused )
{
- std::string n = type->getQualifiedNameAsString();
+ string n = type->getQualifiedNameAsString();
// Check some common non-LO types.
if( n == "std::string" || n == "std::basic_string"
|| n == "std::list" || n == "std::__debug::list"
diff --git a/compilerplugins/clang/unusedvariablecheck.hxx b/compilerplugins/clang/unusedvariablecheck.hxx
index 21e0eabd03c0..7bf1cdd15ddd 100644
--- a/compilerplugins/clang/unusedvariablecheck.hxx
+++ b/compilerplugins/clang/unusedvariablecheck.hxx
@@ -11,7 +11,7 @@
#ifndef UNUSEDVARIABLECHECK_H
#define UNUSEDVARIABLECHECK_H
-#include "compileplugin.hxx"
+#include "plugin.hxx"
namespace loplugin
{
@@ -23,7 +23,7 @@ class UnusedVariableCheck
public:
explicit UnusedVariableCheck( ASTContext& context );
void run();
- bool VisitNamedDecl( NamedDecl* declaration );
+ bool VisitVarDecl( VarDecl* var );
};
} // namespace
diff --git a/config_host.mk.in b/config_host.mk.in
index 8787a2ee3ebb..f4d31c3490fb 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -2,6 +2,13 @@
# this file is intented to be able to be included in a Makefile
# and not to be sourced in a shell session
#
+
+# Horrible hack to prepend spaces to expansions
+# Spaces are usually eaten by make parser but not if variable expands to space.
+# Space prefix is desirable because system CFLAGS may be completely empty,
+# which means that the variables defined here would need extra twiddling
+# to get them into invoked external configures and override pkg-config there.
+gb_SPACE:=$(gb_SPACE) $(gb_SPACE)
export SRC_ROOT=@SRC_ROOT@
export ABOUT_BACKGROUND_SVG=@ABOUT_BACKGROUND_SVG@
@@ -31,6 +38,7 @@ export ATL_INCLUDE=@ATL_INCLUDE@
export ATL_LIB=@ATL_LIB@
export AWTLIB=@AWTLIB@
export BARCODE_EXTENSION_PACK=@BARCODE_EXTENSION_PACK@
+export BERKELEYDB_TARBALL=@BERKELEYDB_TARBALL@
export BOOST_CPPFLAGS=@BOOST_CPPFLAGS@
export BOOST_DATE_TIME_LIB=@BOOST_DATE_TIME_LIB@
export BOOST_LDFLAGS=@BOOST_LDFLAGS@
@@ -38,30 +46,29 @@ export BOOST_TARBALL=@BOOST_TARBALL@
export BSH_JAR=@BSH_JAR@
export BSH_TARBALL=@BSH_TARBALL@
export BUILD_DMAKE=@BUILD_DMAKE@
-export BUILD_EPM=@BUILD_EPM@
export BUILD_MOZAB=@BUILD_MOZAB@
-export BUILD_NCPUS=@BUILD_NCPUS@
export BUILD_PLATFORM=@build@
export BUILD_POSTGRESQL_SDBC=@BUILD_POSTGRESQL_SDBC@
-export BUILD_STAX=@BUILD_STAX@
export BUILD_TYPE=@BUILD_TYPE@
export BUILD_UNOWINREG=@BUILD_UNOWINREG@
export BUILD_VER_STRING=@BUILD_VER_STRING@
export BUILD_X64=@BUILD_X64@
-export CAIRO_CFLAGS=@CAIRO_CFLAGS@
-export CAIRO_LIBS=@CAIRO_LIBS@
+export CAIRO_CFLAGS=$(gb_SPACE)@CAIRO_CFLAGS@
+export CAIRO_LIBS=$(gb_SPACE)@CAIRO_LIBS@
+export CAIRO_TARBALL=@CAIRO_TARBALL@
export CC=@CC@
export CC_FOR_BUILD=@CC_FOR_BUILD@
-export CDR_CFLAGS=@CDR_CFLAGS@
-export CDR_LIBS=@CDR_LIBS@
+export CDR_CFLAGS=$(gb_SPACE)@CDR_CFLAGS@
+export CDR_LIBS=$(gb_SPACE)@CDR_LIBS@
export CDR_TARBALL=@CDR_TARBALL@
+@x_CFLAGS@ export CFLAGS=@CFLAGS@
export CHECK_PARALLELISM=@CHECK_PARALLELISM@
-export CLASSPATH=@CLASSPATH@
-export CLUCENE_CFLAGS=@CLUCENE_CFLAGS@
-export CLUCENE_LIBS=@CLUCENE_LIBS@
+export CLANGPLUGIN_CPPFLAGS=@CLANGPLUGIN_CPPFLAGS@
+export CLUCENE_CFLAGS=$(gb_SPACE)@CLUCENE_CFLAGS@
+export CLUCENE_LIBS=$(gb_SPACE)@CLUCENE_LIBS@
export CLUCENE_TARBALL=@CLUCENE_TARBALL@
-export CMIS_CFLAGS=@CMIS_CFLAGS@
-export CMIS_LIBS=@CMIS_LIBS@
+export CMIS_CFLAGS=$(gb_SPACE)@CMIS_CFLAGS@
+export CMIS_LIBS=$(gb_SPACE)@CMIS_LIBS@
export CMIS_TARBALL=@CMIS_TARBALL@
export COM=@COM@
export COM_GCC_IS_CLANG=@COM_GCC_IS_CLANG@
@@ -74,25 +81,28 @@ export COMPATH=@COMPATH@
export COMPILER_PLUGINS=@COMPILER_PLUGINS@
export COMP_ENV=@OUTPATH@
export COM_FOR_BUILD=@COM_FOR_BUILD@
-export CPPUNIT_CFLAGS=@CPPUNIT_CFLAGS@
-export CPPUNIT_LIBS=@CPPUNIT_LIBS@
+export CPPUNIT_CFLAGS=$(gb_SPACE)@CPPUNIT_CFLAGS@
+export CPPUNIT_LIBS=$(gb_SPACE)@CPPUNIT_LIBS@
+export CPPUNIT_TARBALL=@CPPUNIT_TARBALL@
export CPU=@CPU@
export CPUNAME=@CPUNAME@
export CPUNAME_FOR_BUILD=@CPUNAME_FOR_BUILD@
export CPU_FOR_BUILD=@CPU_FOR_BUILD@
export CROSS_COMPILING=@CROSS_COMPILING@
-export CT2N_EXTENSION_PACK=@CT2N_EXTENSION_PACK@
-export CURL_CFLAGS=@CURL_CFLAGS@
-export CURL_LIBS=@CURL_LIBS@
+export CT2N_TARBALL=@CT2N_TARBALL@
+export CURL_TARBALL=@CURL_TARBALL@
+export CURL_CFLAGS=$(gb_SPACE)@CURL_CFLAGS@
+export CURL_LIBS=$(gb_SPACE)@CURL_LIBS@
export CXX=@CXX@
export CXX_FOR_BUILD=@CXX_FOR_BUILD@
export CXX_X64_BINARY=@CXX_X64_BINARY@
+@x_CXXFLAGS@ export CXXFLAGS=@CXXFLAGS@
export DATADIR=@DATADIR@
export DBGHELP_DLL=@DBGHELP_DLL@
-export DBUSMENUGTK_CFLAGS=@DBUSMENUGTK_CFLAGS@
-export DBUSMENUGTK_LIBS=@DBUSMENUGTK_LIBS@
-export DBUS_CFLAGS=@DBUS_CFLAGS@
-export DBUS_LIBS=@DBUS_LIBS@
+export DBUSMENUGTK_CFLAGS=$(gb_SPACE)@DBUSMENUGTK_CFLAGS@
+export DBUSMENUGTK_LIBS=$(gb_SPACE)@DBUSMENUGTK_LIBS@
+export DBUS_CFLAGS=$(gb_SPACE)@DBUS_CFLAGS@
+export DBUS_LIBS=$(gb_SPACE)@DBUS_LIBS@
export DB_CPPLIB=@DB_CPPLIB@
export DB_LIB=@DB_LIB@
export debug=@ENABLE_DEBUG@
@@ -124,7 +134,9 @@ export ENABLE_CRASHDUMP=@ENABLE_CRASHDUMP@
export ENABLE_CUPS=@ENABLE_CUPS@
export ENABLE_DBUS=@ENABLE_DBUS@
export ENABLE_PACKAGEKIT=@ENABLE_PACKAGEKIT@
-export ENABLE_DEBUG_FOR=@ENABLE_DEBUG_FOR@
+export ENABLE_DBGUTIL=@ENABLE_DBGUTIL@
+export ENABLE_DEBUG=@ENABLE_DEBUG@
+export ENABLE_DEBUGINFO_FOR=@ENABLE_DEBUGINFO_FOR@
export ENABLE_DIRECTX=@ENABLE_DIRECTX@
export ENABLE_EVOAB2=@ENABLE_EVOAB2@
export ENABLE_GCONF=@ENABLE_GCONF@
@@ -144,7 +156,6 @@ export ENABLE_KAB=@ENABLE_KAB@
export ENABLE_KDE4=@ENABLE_KDE4@
export ENABLE_KDE=@ENABLE_KDE@
export ENABLE_LIBLANGTAG=@ENABLE_LIBLANGTAG@
-export ENABLE_LIBRSVG=@ENABLE_LIBRSVG@
export ENABLE_LOCKDOWN=@ENABLE_LOCKDOWN@
export ENABLE_LOMENUBAR=@ENABLE_LOMENUBAR@
export ENABLE_LTO=@ENABLE_LTO@
@@ -161,17 +172,18 @@ export ENABLE_QUICKSTART_LIBPNG=@ENABLE_QUICKSTART_LIBPNG@
export ENABLE_RANDR=@ENABLE_RANDR@
export ENABLE_RELEASE_BUILD=@ENABLE_RELEASE_BUILD@
export ENABLE_SDREMOTE=@ENABLE_SDREMOTE@
+export ENABLE_BLUETOOTH=@ENABLE_BLUETOOTH@
export ENABLE_REPORTBUILDER=@ENABLE_REPORTBUILDER@
export ENABLE_SCRIPTING_BEANSHELL=@ENABLE_SCRIPTING_BEANSHELL@
export ENABLE_SCRIPTING_JAVASCRIPT=@ENABLE_SCRIPTING_JAVASCRIPT@
export ENABLE_SCRIPTING_PYTHON=@ENABLE_SCRIPTING_PYTHON@
export ENABLE_SILENT_MSI=@ENABLE_SILENT_MSI@
-export ENABLE_SYMBOLS=@ENABLE_SYMBOLS@
export ENABLE_SYSTRAY_GTK=@ENABLE_SYSTRAY_GTK@
export ENABLE_TELEPATHY=@ENABLE_TELEPATHY@
export ENABLE_ZENITY=@ENABLE_ZENITY@
export EPM=@EPM@
export EPM_FLAGS=@EPM_FLAGS@
+export EPM_TARBALL=@EPM_TARBALL@
export EXTERNAL_WARNINGS_NOT_ERRORS=@EXTERNAL_WARNINGS_NOT_ERRORS@
@x_Cygwin@ export FIND=@WIN_FIND@
export FLAT_LOGO_SVG=@FLAT_LOGO_SVG@
@@ -182,47 +194,51 @@ export FONT_LIBERATION_NARROW_TARBALL=@FONT_LIBERATION_NARROW_TARBALL@
export FONT_LIBERATION_TARBALL=@FONT_LIBERATION_TARBALL@
export FONT_GENTIUM_TARBALL=@FONT_GENTIUM_TARBALL@
export FONT_DEJAVU_TARBALL=@FONT_DEJAVU_TARBALL@
-export FONTCONFIG_CFLAGS=@FONTCONFIG_CFLAGS@
-export FONTCONFIG_LIBS=@FONTCONFIG_LIBS@
+export FONT_PTSERIF_TARBALL=@FONT_PTSERIF_TARBALL@
+export FONT_OPENSANS_TARBALL=@FONT_OPENSANS_TARBALL@
+export FONT_SOURCESANS_TARBALL=@FONT_SOURCESANS_TARBALL@
+export FONT_SOURCECODE_TARBALL=@FONT_SOURCECODE_TARBALL@
+export FONTCONFIG_CFLAGS=$(gb_SPACE)@FONTCONFIG_CFLAGS@
+export FONTCONFIG_LIBS=$(gb_SPACE)@FONTCONFIG_LIBS@
+export FONTCONFIG_TARBALL=@FONTCONFIG_TARBALL@
export FRAMEWORKSHOME=@FRAMEWORKSHOME@
-export FREETYPE_CFLAGS=@FREETYPE_CFLAGS@
-export FREETYPE_LIBS=@FREETYPE_LIBS@
-export GCONF_CFLAGS=@GCONF_CFLAGS@
-export GCONF_LIBS=@GCONF_LIBS@
-export GIO_CFLAGS=@GIO_CFLAGS@
-export GIO_LIBS=@GIO_LIBS@
+export FREETYPE_CFLAGS=$(gb_SPACE)@FREETYPE_CFLAGS@
+export FREETYPE_LIBS=$(gb_SPACE)@FREETYPE_LIBS@
+export FREETYPE_TARBALL=@FREETYPE_TARBALL@
+export GCONF_CFLAGS=$(gb_SPACE)@GCONF_CFLAGS@
+export GCONF_LIBS=$(gb_SPACE)@GCONF_LIBS@
+export GIO_CFLAGS=$(gb_SPACE)@GIO_CFLAGS@
+export GIO_LIBS=$(gb_SPACE)@GIO_LIBS@
export GIT_LINK_SRC=@GIT_LINK_SRC@
-export GIT_REPO_NAMES=@GIT_REPO_NAMES@
-export GLIB_CFLAGS=@GLIB_CFLAGS@
-export GLIB_LIBS=@GLIB_LIBS@
-export GMAKE_MODULE_PARALLELISM=@GMAKE_MODULE_PARALLELISM@
-export GMAKE_PARALLELISM=@GMAKE_PARALLELISM@
-export GNOMEVFS_CFLAGS=@GNOMEVFS_CFLAGS@
-export GNOMEVFS_LIBS=@GNOMEVFS_LIBS@
+export GIT_NEEDED_SUBMODULES=@GIT_NEEDED_SUBMODULES@
+export PARALLELISM=@PARALLELISM@
+export GNOMEVFS_CFLAGS=$(gb_SPACE)@GNOMEVFS_CFLAGS@
+export GNOMEVFS_LIBS=$(gb_SPACE)@GNOMEVFS_LIBS@
@x_GNUCP@ export GNUCOPY=@GNUCP@
export GNUMAKE=@GNUMAKE@
export GNUPATCH=@GNUPATCH@
export GNUTAR=@GNUTAR@
-export GOBJECT_CFLAGS=@GOBJECT_CFLAGS@
-export GOBJECT_LIBS=@GOBJECT_LIBS@
+export GOBJECT_CFLAGS=$(gb_SPACE)@GOBJECT_CFLAGS@
+export GOBJECT_LIBS=$(gb_SPACE)@GOBJECT_LIBS@
export GOOGLE_DOCS_EXTENSION_PACK=@GOOGLE_DOCS_EXTENSION_PACK@
export GPERF=@GPERF@
export GPERF=@GPERF@
-export GRAPHITE_CFLAGS=@GRAPHITE_CFLAGS@
-export GRAPHITE_LIBS=@GRAPHITE_LIBS@
+export GRAPHITE_CFLAGS=$(gb_SPACE)@GRAPHITE_CFLAGS@
+export GRAPHITE_LIBS=$(gb_SPACE)@GRAPHITE_LIBS@
+export GRAPHITE_TARBALL=@GRAPHITE_TARBALL@
@x_Cygwin@ export GREP=@WIN_GREP@
-export GSTREAMER_CFLAGS=@GSTREAMER_CFLAGS@
-export GSTREAMER_LIBS=@GSTREAMER_LIBS@
-export GSTREAMER_0_10_CFLAGS=@GSTREAMER_0_10_CFLAGS@
-export GSTREAMER_0_10_LIBS=@GSTREAMER_0_10_LIBS@
-export GTHREAD_CFLAGS=@GTHREAD_CFLAGS@
-export GTHREAD_LIBS=@GTHREAD_LIBS@
-export GTK3_CFLAGS=@GTK3_CFLAGS@
-export GTK3_LIBS=@GTK3_LIBS@
-export GTK_CFLAGS=@GTK_CFLAGS@
-export GTK_LIBS=@GTK_LIBS@
-export GTK_PRINT_CFLAGS=@GTK_PRINT_CFLAGS@
-export GTK_PRINT_LIBS=@GTK_PRINT_LIBS@
+export GSTREAMER_CFLAGS=$(gb_SPACE)@GSTREAMER_CFLAGS@
+export GSTREAMER_LIBS=$(gb_SPACE)@GSTREAMER_LIBS@
+export GSTREAMER_0_10_CFLAGS=$(gb_SPACE)@GSTREAMER_0_10_CFLAGS@
+export GSTREAMER_0_10_LIBS=$(gb_SPACE)@GSTREAMER_0_10_LIBS@
+export GTHREAD_CFLAGS=$(gb_SPACE)@GTHREAD_CFLAGS@
+export GTHREAD_LIBS=$(gb_SPACE)@GTHREAD_LIBS@
+export GTK3_CFLAGS=$(gb_SPACE)@GTK3_CFLAGS@
+export GTK3_LIBS=$(gb_SPACE)@GTK3_LIBS@
+export GTK_CFLAGS=$(gb_SPACE)@GTK_CFLAGS@
+export GTK_LIBS=$(gb_SPACE)@GTK_LIBS@
+export GTK_PRINT_CFLAGS=$(gb_SPACE)@GTK_PRINT_CFLAGS@
+export GTK_PRINT_LIBS=$(gb_SPACE)@GTK_PRINT_LIBS@
export GUI=@GUI@
export GUIBASE=@GUIBASE@
export GUIBASE_FOR_BUILD=@GUIBASE_FOR_BUILD@
@@ -250,11 +266,14 @@ export HAVE_READDIR_R=@HAVE_READDIR_R@
export HAVE_THREADSAFE_STATICS=@HAVE_THREADSAFE_STATICS@
export HOST_PLATFORM=@host@
export HSQLDB_JAR=@HSQLDB_JAR@
+export HSQLDB_TARBALL=@HSQLDB_TARBALL@
export HSQLDB_USE_JDBC_4_1=@HSQLDB_USE_JDBC_4_1@
export HUNART_EXTENSION_PACK=@HUNART_EXTENSION_PACK@
-export HUNSPELL_CFLAGS=@HUNSPELL_CFLAGS@
-export HUNSPELL_LIBS=@HUNSPELL_LIBS@
-export HYPHEN_LIB=@HYPHEN_LIB@
+export HUNSPELL_TARBALL=@HUNSPELL_TARBALL@
+export HUNSPELL_CFLAGS=$(gb_SPACE)@HUNSPELL_CFLAGS@
+export HUNSPELL_LIBS=$(gb_SPACE)@HUNSPELL_LIBS@
+export HYPHEN_LIB=$(gb_SPACE)@HYPHEN_LIB@
+export HYPHEN_TARBALL=@HYPHEN_TARBALL@
export HYPH_SYSTEM_DIR=@HYPH_SYSTEM_DIR@
export ICECREAM_RUN=@ICECREAM_RUN@
export ICU_MAJOR=@ICU_MAJOR@
@@ -264,6 +283,7 @@ export ICU_RECLASSIFIED_CLOSE_PARENTHESIS=@ICU_RECLASSIFIED_CLOSE_PARENTHESIS@
export ICU_RECLASSIFIED_CONDITIONAL_JAPANESE_STARTER=@ICU_RECLASSIFIED_CONDITIONAL_JAPANESE_STARTER@
export ICU_RECLASSIFIED_HEBREW_LETTER=@ICU_RECLASSIFIED_HEBREW_LETTER@
export ICU_RECLASSIFIED_PREPEND_SET_EMPTY=@ICU_RECLASSIFIED_PREPEND_SET_EMPTY@
+export ICU_TARBALL=@ICU_TARBALL@
export ILIB=@ILIB@
export INPATH=@INPATH@
export INPATH_FOR_BUILD=@INPATH_FOR_BUILD@
@@ -286,46 +306,52 @@ export JITC_PROCESSOR_TYPE=@JITC_PROCESSOR_TYPE@
export JFREEREPORT_JAR=@JFREEREPORT_JAR@
export JPEG_TARBALL=@JPEG_TARBALL@
export JVM_ONE_PATH_CHECK=@JVM_ONE_PATH_CHECK@
-export TDE_CFLAGS=@TDE_CFLAGS@
-export TDE_LIBS=@TDE_LIBS@
-export KDE4_CFLAGS=@KDE4_CFLAGS@
-export KDE4_LIBS=@KDE4_LIBS@
-export KDE_CFLAGS=@KDE_CFLAGS@
-export KDE_GLIB_CFLAGS=@KDE_GLIB_CFLAGS@
-export KDE_GLIB_LIBS=@KDE_GLIB_LIBS@
+export TDE_CFLAGS=$(gb_SPACE)@TDE_CFLAGS@
+export TDE_LIBS=$(gb_SPACE)@TDE_LIBS@
+export KDE4_CFLAGS=$(gb_SPACE)@KDE4_CFLAGS@
+export KDE4_LIBS=$(gb_SPACE)@KDE4_LIBS@
+export KDE_CFLAGS=$(gb_SPACE)@KDE_CFLAGS@
+export KDE_GLIB_CFLAGS=$(gb_SPACE)@KDE_GLIB_CFLAGS@
+export KDE_GLIB_LIBS=$(gb_SPACE)@KDE_GLIB_LIBS@
export KDE_HAVE_GLIB=@KDE_HAVE_GLIB@
-export KDE_LIBS=@KDE_LIBS@
+export KDE_LIBS=$(gb_SPACE)@KDE_LIBS@
export LANGUAGETOOL_TARBALL=@LANGUAGETOOL_TARBALL@
export L10N_MODULE=@L10N_MODULE@
-export LCMS2_CFLAGS=@LCMS2_CFLAGS@
-export LCMS2_LIBS=@LCMS2_LIBS@
+export LCMS2_CFLAGS=$(gb_SPACE)@LCMS2_CFLAGS@
+export LCMS2_LIBS=$(gb_SPACE)@LCMS2_LIBS@
+export LCMS2_TARBALL=@LCMS2_TARBALL@
+@x_LDFLAGS@ export LDFLAGS=@LDFLAGS@
export LFS_CFLAGS=@LFS_CFLAGS@
export LIBBASE_JAR=@LIBBASE_JAR@
export LIBDIR=@LIBDIR@
-export LIBEXSLT_CFLAGS=@LIBEXSLT_CFLAGS@
-export LIBEXSLT_LIBS=@LIBEXSLT_LIBS@
-export LIBEXTTEXTCAT_CFLAGS=@LIBEXTTEXTCAT_CFLAGS@
-export LIBEXTTEXTCAT_LIBS=@LIBEXTTEXTCAT_LIBS@
+export LIBEXSLT_CFLAGS=$(gb_SPACE)@LIBEXSLT_CFLAGS@
+export LIBEXSLT_LIBS=$(gb_SPACE)@LIBEXSLT_LIBS@
+export LIBEXTTEXTCAT_CFLAGS=$(gb_SPACE)@LIBEXTTEXTCAT_CFLAGS@
+export LIBEXTTEXTCAT_LIBS=$(gb_SPACE)@LIBEXTTEXTCAT_LIBS@
+export LIBEXTTEXTCAT_TARBALL=@LIBEXTTEXTCAT_TARBALL@
export LIBFONTS_JAR=@LIBFONTS_JAR@
export LIBFORMULA_JAR=@LIBFORMULA_JAR@
-export LIBJSON=@LIBJSON@
export LIBLAYOUT_JAR=@LIBLAYOUT_JAR@
-export LIBLANGTAG_CFLAGS=@LIBLANGTAG_CFLAGS@
-export LIBLANGTAG_LIBS=@LIBLANGTAG_LIBS@
+export LIBLANGTAG_CFLAGS=$(gb_SPACE)@LIBLANGTAG_CFLAGS@
+export LIBLANGTAG_LIBS=$(gb_SPACE)@LIBLANGTAG_LIBS@
+export LIBLANGTAG_TARBALL=@LIBLANGTAG_TARBALL@
export LIBLOADER_JAR=@LIBLOADER_JAR@
export LIBMGR_X64_BINARY=@LIBMGR_X64_BINARY@
export LIBMYSQL_PATH=@LIBMYSQL_PATH@
-export LIBPNG_CFLAGS=@LIBPNG_CFLAGS@
-export LIBPNG_LIBS=@LIBPNG_LIBS@
+export LIBPNG_CFLAGS$(gb_SPACE)=@LIBPNG_CFLAGS@
+export LIBPNG_LIBS=$(gb_SPACE)@LIBPNG_LIBS@
export LIBREPOSITORY_JAR=@LIBREPOSITORY_JAR@
-export LIBRSVG_TARBALL=@LIBRSVG_TARBALL@
export LIBSERIALIZER_JAR=@LIBSERIALIZER_JAR@
-export LIBXML_CFLAGS=@LIBXML_CFLAGS@
+export LIBXML_CFLAGS=$(gb_SPACE)@LIBXML_CFLAGS@
export LIBXML_JAR=@LIBXML_JAR@
-export LIBXML_LIBS=@LIBXML_LIBS@
-export LIBXSLT_CFLAGS=@LIBXSLT_CFLAGS@
-export LIBXSLT_LIBS=@LIBXSLT_LIBS@
+export LIBXML_LIBS=$(gb_SPACE)@LIBXML_LIBS@
+export LIBXML_TARBALL=@LIBXML_TARBALL@
+export LIBXMLSEC_TARBALL=@LIBXMLSEC_TARBALL@
+export LIBXSLT_CFLAGS=$(gb_SPACE)@LIBXSLT_CFLAGS@
+export LIBXSLT_LIBS=$(gb_SPACE)@LIBXSLT_LIBS@
+export LIBXSLT_TARBALL=@LIBXSLT_TARBALL@
export LINK_X64_BINARY=@LINK_X64_BINARY@
+export LPSOLVE_TARBALL=@LPSOLVE_TARBALL@
@x_Cygwin@ export LS=@WIN_LS@
export MANDIR=@MANDIR@
export MACOSX_DEPLOYMENT_TARGET=@MACOSX_DEPLOYMENT_TARGET@
@@ -334,7 +360,7 @@ export MACOSX_SDK_PATH=@MACOSX_SDK_PATH@
export MACOSX_SDK_VERSION=@MACOSX_SDK_VERSION@
export MAC_OS_X_VERSION_MAX_ALLOWED=@MAC_OS_X_VERSION_MAX_ALLOWED@
export MAC_OS_X_VERSION_MIN_REQUIRED=@MAC_OS_X_VERSION_MIN_REQUIRED@
-export MDDS_CPPFLAGS=@MDDS_CPPFLAGS@
+export MDDS_CPPFLAGS=$(gb_SPACE)@MDDS_CPPFLAGS@
export MDDS_TARBALL=@MDDS_TARBALL@
export MERGELIBS=@MERGELIBS@
export MFC_INCLUDE=@MFC_INCLUDE@
@@ -363,14 +389,13 @@ export MINGW_ICUDATA_DLL=@MINGW_ICUDATA_DLL@
export MINGW_ICUI18N_DLL=@MINGW_ICUI18N_DLL@
export MINGW_ICUUC_DLL=@MINGW_ICUUC_DLL@
export MINGW_IDN_DLL=@MINGW_IDN_DLL@
-export MINGW_INTL_DLL=@MINGW_INTL_DLL@
export MINGW_JPEG_DLL=@MINGW_JPEG_DLL@
export MINGW_LCMS2_DLL=@MINGW_LCMS2_DLL@
export MINGW_LIBEXSLT_DLL=@MINGW_LIBEXSLT_DLL@
+export MINGW_LIBLANGTAG_DLL=@MINGW_LIBLANGTAG_DLL@
export MINGW_LIBXML_DLL=@MINGW_LIBXML_DLL@
export MINGW_LIBXSLT_DLL=@MINGW_LIBXSLT_DLL@
export MINGW_LPSOLVE_DLL=@MINGW_LPSOLVE_DLL@
-export MINGW_MINIZIP_DLL=@MINGW_MINIZIP_DLL@
export MINGW_MYTHES_DLL=@MINGW_MYTHES_DLL@
export MINGW_NEON_DLL=@MINGW_NEON_DLL@
export MINGW_NSPR4_DLL=@MINGW_NSPR4_DLL@
@@ -392,6 +417,7 @@ export MINGW_SHARED_GCCLIB=@MINGW_SHARED_GCCLIB@
export MINGW_SHARED_GXXLIB=@MINGW_SHARED_GXXLIB@
export MINGW_SHARED_LIBSTDCPP=@MINGW_SHARED_LIBSTDCPP@
export MINGW_SQLITE3_DLL=@MINGW_SQLITE3_DLL@
+export MINGW_SMIME3_DLL=@MINGW_SMIME3_DLL@
export MINGW_SSH2_DLL=@MINGW_SSH2_DLL@
export MINGW_SSL3_DLL=@MINGW_SSL3_DLL@
export MINGW_SSL_DLL=@MINGW_SSL_DLL@
@@ -399,36 +425,39 @@ export MINGW_SYSROOT=@MINGW_SYSROOT@
export MINGW_TASN1_DLL=@MINGW_TASN1_DLL@
export MINGW_TERMCAP_DLL=@MINGW_TERMCAP_DLL@
export MINGW_ZLIB_DLL=@MINGW_ZLIB_DLL@
-export MINIZIP_CFLAGS=@MINIZIP_CFLAGS@
-export MINIZIP_LIBS=@MINIZIP_LIBS@
export MKDEPENDSOLVER=TRUE
export ML_EXE=@ML_EXE@
export MOC4=@MOC4@
export MOC=@MOC@
export MOZILLABUILD=@MOZILLABUILD@
-export MOZILLA_HEADERS_CFLAGS=@MOZILLA_HEADERS_CFLAGS@
+export MOZILLA_HEADERS_CFLAGS=$(gb_SPACE)@MOZILLA_HEADERS_CFLAGS@
export MOZILLA_VERSION=@MOZILLA_VERSION@
export MOZ_FLAVOUR=@MOZ_FLAVOUR@
export MOZ_INC=@MOZ_INC@
export MOZ_LIB=@MOZ_LIB@
export MOZ_LIB_XPCOM=@MOZ_LIB_XPCOM@
-export MSPUB_CFLAGS=@MSPUB_CFLAGS@
-export MSPUB_LIBS=@MSPUB_LIBS@
+export MSPUB_CFLAGS=$(gb_SPACE)@MSPUB_CFLAGS@
+export MSPUB_LIBS=$(gb_SPACE)@MSPUB_LIBS@
export MSPUB_TARBALL=@MSPUB_TARBALL@
export MYSQL_DEFINES=@MYSQL_DEFINES@
export MYSQL_INC=@MYSQL_INC@
export MYSQL_LIB=@MYSQL_LIB@
-export MYTHES_CFLAGS=@MYTHES_CFLAGS@
-export MYTHES_LIBS=@MYTHES_LIBS@
-export NEON_CFLAGS=@NEON_CFLAGS@
-export NEON_LIBS=@NEON_LIBS@
+export MYSQLCPPCONN_TARBALL=@MYSQLCPPCONN_TARBALL@
+export MYTHES_CFLAGS=$(gb_SPACE)@MYTHES_CFLAGS@
+export MYTHES_LIBS=$(gb_SPACE)@MYTHES_LIBS@
+export MYTHES_TARBALL=@MYTHES_TARBALL@
+export NEON_CFLAGS=$(gb_SPACE)@NEON_CFLAGS@
+export NEON_LIBS=$(gb_SPACE)@NEON_LIBS@
export NEON_TARBALL=@NEON_TARBALL@
export NEON_VERSION=@NEON_VERSION@
export NM=@NM@
export nodep=@nodep@
-export NSS_CFLAGS=@NSS_CFLAGS@
-export NSS_LIBS=@NSS_LIBS@
+export NSS_CFLAGS=$(gb_SPACE)@NSS_CFLAGS@
+export NSS_LIBS=$(gb_SPACE)@NSS_LIBS@
+export NSS_TARBALL=@NSS_TARBALL@
export NUMBERTEXT_EXTENSION_PACK=@NUMBERTEXT_EXTENSION_PACK@
+@x_OBJCFLAGS@ export OBJCFLAGS=@OBJCFLAGS@
+@x_OBJCXXFLAGS@ export OBJCXXFLAGS=@OBJCXXFLAGS@
export OBJDUMP=@OBJDUMP@
export OOOBLOGGER_EXTENSION_PACK=@OOOBLOGGER_EXTENSION_PACK@
export OOODMAKEMODE=YES
@@ -439,10 +468,12 @@ export OOOP_TEMPLATES_PACK=@OOOP_TEMPLATES_PACK@
export OOO_JUNIT_JAR=@OOO_JUNIT_JAR@
export OOO_SHELL=@BASH@
export OOO_VENDOR=@OOO_VENDOR@
-export OPENSSL_CFLAGS=@OPENSSL_CFLAGS@
-export OPENSSL_LIBS=@OPENSSL_LIBS@
-export ORCUS_CFLAGS=@ORCUS_CFLAGS@
-export ORCUS_LIBS=@ORCUS_LIBS@
+export OPENLDAP_TARBALL=@OPENLDAP_TARBALL@
+export OPENSSL_CFLAGS=$(gb_SPACE)@OPENSSL_CFLAGS@
+export OPENSSL_LIBS=$(gb_SPACE)@OPENSSL_LIBS@
+export OPENSSL_TARBALL=@OPENSSL_TARBALL@
+export ORCUS_CFLAGS=$(gb_SPACE)@ORCUS_CFLAGS@
+export ORCUS_LIBS=$(gb_SPACE)@ORCUS_LIBS@
export ORCUS_TARBALL=@ORCUS_TARBALL@
export OS=@OS@
export OSVERSION=@OSVERSION@
@@ -455,15 +486,17 @@ export OXYGENOFFICE_PACK=@OXYGENOFFICE_PACK@
export PATH=@LO_PATH@
export PATH_SEPERATOR=@P_SEP@
export PERL=@PERL@
+export PIXMAN_TARBALL=@PIXMAN_TARBALL@
export PKGFORMAT=@PKGFORMAT@
export PKGMK=@PKGMK@
export PKG_CONFIG=@PKG_CONFIG@
export PLATFORMID=@PLATFORMID@
export PNG_TARBALL=@PNG_TARBALL@
-export POPPLER_CFLAGS=@POPPLER_CFLAGS@
-export POPPLER_LIBS=@POPPLER_LIBS@
+export POPPLER_CFLAGS=$(gb_SPACE)@POPPLER_CFLAGS@
+export POPPLER_LIBS=$(gb_SPACE)@POPPLER_LIBS@
export POSTGRESQL_INC=@POSTGRESQL_INC@
export POSTGRESQL_LIB=@POSTGRESQL_LIB@
+export POSTGRESQL_TARBALL=@POSTGRESQL_TARBALL@
export PREBUILD_MOZAB=@PREBUILD_MOZAB@
export PREFIXDIR=@PREFIXDIR@
export PRODUCT=@PRODUCT@
@@ -480,12 +513,16 @@ export PSPRINT=TRUE
export PTHREAD_CFLAGS=@PTHREAD_CFLAGS@
export PTHREAD_LIBS=@PTHREAD_LIBS@
export PYTHON=@PYTHON@
-export PYTHON_CFLAGS=@PYTHON_CFLAGS@
+export PYTHON_CFLAGS=$(gb_SPACE)@PYTHON_CFLAGS@
export PYTHON_FOR_BUILD=@PYTHON_FOR_BUILD@
-export PYTHON_LIBS=@PYTHON_LIBS@
+export PYTHON_LIBS=$(gb_SPACE)@PYTHON_LIBS@
+export PYTHON_TARBALL=@PYTHON_TARBALL@
export RANLIB=@RANLIB@
-export REDLAND_CFLAGS=@REDLAND_CFLAGS@
-export REDLAND_LIBS=@REDLAND_LIBS@
+export RAPTOR_TARBALL=@RAPTOR_TARBALL@
+export RASQAL_TARBALL=@RASQAL_TARBALL@
+export REDLAND_CFLAGS=$(gb_SPACE)@REDLAND_CFLAGS@
+export REDLAND_LIBS=$(gb_SPACE)@REDLAND_LIBS@
+export REDLAND_TARBALL=@REDLAND_TARBALL@
export RHINO_JAR=@RHINO_JAR@
export RHINO_TARBALL=@RHINO_TARBALL@
export RPM=@RPM@
@@ -503,9 +540,8 @@ export JFREEREPORT_LIBREPOSITORY_TARBALL=@JFREEREPORT_LIBREPOSITORY_TARBALL@
export JFREEREPORT_LIBSERIALIZER_TARBALL=@JFREEREPORT_LIBSERIALIZER_TARBALL@
export JFREEREPORT_FLOW_ENGINE_TARBALL=@JFREEREPORT_FLOW_ENGINE_TARBALL@
export JFREEREPORT_LIBLAYOUT_TARBALL=@JFREEREPORT_LIBLAYOUT_TARBALL@
+export EXPAT_TARBALL=@EXPAT_TARBALL@
export SAL_ENABLE_FILE_LOCKING=1
-export SAXON_JAR=@SAXON_JAR@
-export SAXON_TARBALL=@SAXON_TARBALL@
export SCPDEFS=@SCPDEFS@
export SERVLETAPI_JAR=@SERVLETAPI_JAR@
export SHOWINCLUDES_PREFIX=@SHOWINCLUDES_PREFIX@
@@ -539,6 +575,7 @@ export SUNTEMPLATES_ES_PACK=@SUNTEMPLATES_ES_PACK@
export SUNTEMPLATES_FR_PACK=@SUNTEMPLATES_FR_PACK@
export SUNTEMPLATES_HU_PACK=@SUNTEMPLATES_HU_PACK@
export SUNTEMPLATES_IT_PACK=@SUNTEMPLATES_IT_PACK@
+export SWING_TARBALL=@SWING_TARBALL@
export SYSBASE=@SYSBASE@
export SYSTEM_APACHE_COMMONS=@SYSTEM_APACHE_COMMONS@
export SYSTEM_BOOST=@SYSTEM_BOOST@
@@ -551,12 +588,9 @@ export SYSTEM_DB=@SYSTEM_DB@
export SYSTEM_DB_CFLAGS=@SYSTEM_DB_CFLAGS@
export SYSTEM_DICTS=@SYSTEM_DICTS@
export SYSTEM_EXPAT=@SYSTEM_EXPAT@
-export SYSTEM_GDKPIXBUF=@SYSTEM_GDKPIXBUF@
export SYSTEM_GENBRK=@SYSTEM_GENBRK@
export SYSTEM_GENCCODE=@SYSTEM_GENCCODE@
export SYSTEM_GENCMN=@SYSTEM_GENCMN@
-export SYSTEM_GETTEXT=@SYSTEM_GETTEXT@
-export SYSTEM_GLIB=@SYSTEM_GLIB@
export SYSTEM_GRAPHITE=@SYSTEM_GRAPHITE@
export SYSTEM_HSQLDB=@SYSTEM_HSQLDB@
export SYSTEM_HUNSPELL=@SYSTEM_HUNSPELL@
@@ -568,15 +602,12 @@ export SYSTEM_LCMS2=@SYSTEM_LCMS2@
export SYSTEM_LIBC=@SYSTEM_LIBC@
export SYSTEM_LIBCDR=@SYSTEM_LIBCDR@
export SYSTEM_LIBCMIS=@SYSTEM_LIBCMIS@
-export SYSTEM_LIBCROCO=@SYSTEM_LIBCROCO@
export SYSTEM_LIBEXTTEXTCAT=@SYSTEM_LIBEXTTEXTCAT@
export SYSTEM_LIBEXTTEXTCAT_DATA=@SYSTEM_LIBEXTTEXTCAT_DATA@
-export SYSTEM_LIBGSF=@SYSTEM_LIBGSF@
export SYSTEM_LIBLANGTAG=@SYSTEM_LIBLANGTAG@
export SYSTEM_LIBMSPUB=@SYSTEM_LIBMSPUB@
export SYSTEM_LIBORCUS=@SYSTEM_LIBORCUS@
export SYSTEM_LIBPNG=@SYSTEM_LIBPNG@
-export SYSTEM_LIBRSVG=@SYSTEM_LIBRSVG@
export SYSTEM_LIBVISIO=@SYSTEM_LIBVISIO@
export SYSTEM_LIBWPD=@SYSTEM_LIBWPD@
export SYSTEM_LIBWPG=@SYSTEM_LIBWPG@
@@ -586,7 +617,6 @@ export SYSTEM_LIBXSLT=@SYSTEM_LIBXSLT@
export SYSTEM_LIBXSLT_FOR_BUILD=@SYSTEM_LIBXSLT_FOR_BUILD@
export SYSTEM_LPSOLVE=@SYSTEM_LPSOLVE@
export SYSTEM_MDDS=@SYSTEM_MDDS@
-export SYSTEM_MINIZIP=@SYSTEM_MINIZIP@
export SYSTEM_MESA_HEADERS=@SYSTEM_MESA_HEADERS@
export SYSTEM_MOZILLA=@SYSTEM_MOZILLA@
export SYSTEM_MOZILLA_HEADERS=@SYSTEM_MOZILLA_HEADERS@
@@ -598,26 +628,25 @@ export SYSTEM_NSS=@SYSTEM_NSS@
export SYSTEM_ODBC_HEADERS=@SYSTEM_ODBC_HEADERS@
export SYSTEM_OPENLDAP=@SYSTEM_OPENLDAP@
export SYSTEM_OPENSSL=@SYSTEM_OPENSSL@
-export SYSTEM_PANGO=@SYSTEM_PANGO@
export SYSTEM_POPPLER=@SYSTEM_POPPLER@
export SYSTEM_POSTGRESQL=@SYSTEM_POSTGRESQL@
export SYSTEM_PYTHON=@SYSTEM_PYTHON@
export SYSTEM_REDLAND=@SYSTEM_REDLAND@
export SYSTEM_RHINO=@SYSTEM_RHINO@
-export SYSTEM_SAXON=@SYSTEM_SAXON@
export SYSTEM_SERVLETAPI=@SYSTEM_SERVLETAPI@
export SYSTEM_STDLIBS=@SYSTEM_STDLIBS@
+export SYSTEM_UCPP=@SYSTEM_UCPP@
export SYSTEM_VIGRA=@SYSTEM_VIGRA@
export SYSTEM_ZLIB=@SYSTEM_ZLIB@
export TARFILE_LOCATION=@TARFILE_LOCATION@
-export TELEPATHY_CFLAGS=@TELEPATHY_CFLAGS@
-export TELEPATHY_LIBS=@TELEPATHY_LIBS@
+export TELEPATHY_CFLAGS=$(gb_SPACE)@TELEPATHY_CFLAGS@
+export TELEPATHY_LIBS=$(gb_SPACE)@TELEPATHY_LIBS@
export THES_SYSTEM_DIR=@THES_SYSTEM_DIR@
@x_Cygwin@ export TMP=@TMP_DIRECTORY@
export TMPDIR=@TEMP_DIRECTORY@
export TOMCAT_TARBALL=@TOMCAT_TARBALL@
export TYPO_EXTENSION_PACK=@TYPO_EXTENSION_PACK@
-export SYSTEM_UCPP=@SYSTEM_UCPP@
+export UCPP_TARBALL=@UCPP_TARBALL@
export UNIXWRAPPERNAME=@UNIXWRAPPERNAME@
export UNOWINREG_DLL=@UNOWINREG_DLL@
export UPD=@UPD@
@@ -625,13 +654,13 @@ export USE_FT_EMBOLDEN=@USE_FT_EMBOLDEN@
export use_shl_version=@use_shl_version@
export USE_XINERAMA=@USE_XINERAMA@
export UUIDGEN=@UUIDGEN@
-export VALGRIND_CFLAGS=@VALGRIND_CFLAGS@
+export VALGRIND_CFLAGS=$(gb_SPACE)@VALGRIND_CFLAGS@
export VALIDATOR_EXTENSION_PACK=@VALIDATOR_EXTENSION_PACK@
export VCVER=@VCVER@
export VERBOSE=@VERBOSE@
export VIGRA_TARBALL=@VIGRA_TARBALL@
-export VISIO_CFLAGS=@VISIO_CFLAGS@
-export VISIO_LIBS=@VISIO_LIBS@
+export VISIO_CFLAGS=$(gb_SPACE)@VISIO_CFLAGS@
+export VISIO_LIBS=$(gb_SPACE)@VISIO_LIBS@
export VISIO_TARBALL=@VISIO_TARBALL@
export WATCH_WINDOW_EXTENSION_PACK=@WATCH_WINDOW_EXTENSION_PACK@
export WINDOWS_SDK_HOME=@WINDOWS_SDK_HOME@
@@ -641,7 +670,6 @@ export WINEGCC=@WINEGCC@
export WITHOUT_AFMS=@WITHOUT_AFMS@
export WITHOUT_PPDS=@WITHOUT_PPDS@
#export WITH_AGFA_MONOTYPE_FONTS=@WITH_AGFA_MONOTYPE_FONTS@
-export WITH_BINFILTER=@WITH_BINFILTER@
export WITH_COMPAT_OOWRAPPERS=@WITH_COMPAT_OOWRAPPERS@
export WITH_EXTENSION_INTEGRATION=@WITH_EXTENSION_INTEGRATION@
export WITH_EXTRA_EXTENSIONS=@WITH_EXTRA_EXTENSIONS@
@@ -665,24 +693,25 @@ export WORDS_BIGENDIAN=@WORDS_BIGENDIAN@
export WORKDIR=@WORKDIR@
export WORKDIR_FOR_BUILD=@WORKDIR_FOR_BUILD@
export WORK_STAMP=@SOURCEVERSION@
-export WPD_CFLAGS=@WPD_CFLAGS@
-export WPD_LIBS=@WPD_LIBS@
+export WPD_CFLAGS=$(gb_SPACE)@WPD_CFLAGS@
+export WPD_LIBS=$(gb_SPACE)@WPD_LIBS@
export WPD_TARBALL=@WPD_TARBALL@
-export WPG_CFLAGS=@WPG_CFLAGS@
-export WPG_LIBS=@WPG_LIBS@
+export WPG_CFLAGS=$(gb_SPACE)@WPG_CFLAGS@
+export WPG_LIBS=$(gb_SPACE)@WPG_LIBS@
export WPG_TARBALL=@WPG_TARBALL@
-export WPS_CFLAGS=@WPS_CFLAGS@
-export WPS_LIBS=@WPS_LIBS@
+export WPS_CFLAGS=$(gb_SPACE)@WPS_CFLAGS@
+export WPS_LIBS=$(gb_SPACE)@WPS_LIBS@
export WPS_TARBALL=@WPS_TARBALL@
-export XCLASSPATH=@XCLASSPATH@
export XINERAMA_LINK=@XINERAMA_LINK@
export XMLLINT=@XMLLINT@
-export XRANDR_CFLAGS=@XRANDR_CFLAGS@
+export XPDF_TARBALL=@XPDF_TARBALL@
+export XRANDR_CFLAGS=$(gb_SPACE)@XRANDR_CFLAGS@
export XRANDR_DLOPEN=@XRANDR_DLOPEN@
-export XRANDR_LIBS=@XRANDR_LIBS@
-export XRENDER_CFLAGS=@XRENDER_CFLAGS@
-export XRENDER_LIBS=@XRENDER_LIBS@
+export XRANDR_LIBS=$(gb_SPACE)@XRANDR_LIBS@
+export XRENDER_CFLAGS=$(gb_SPACE)@XRENDER_CFLAGS@
+export XRENDER_LIBS=$(gb_SPACE)@XRENDER_LIBS@
export XSLTML_TARBALL=@XSLTML_TARBALL@
export XSLTPROC=@XSLTPROC@
-export ZLIB_CFLAGS=@ZLIB_CFLAGS@
-export ZLIB_LIBS=@ZLIB_LIBS@
+export ZLIB_CFLAGS=$(gb_SPACE)@ZLIB_CFLAGS@
+export ZLIB_LIBS=$(gb_SPACE)@ZLIB_LIBS@
+export ZLIB_TARBALL=@ZLIB_TARBALL@
diff --git a/config_host.mk.source b/config_host.mk.source
index 89f5f4b8109e..786e271fb8e8 100644
--- a/config_host.mk.source
+++ b/config_host.mk.source
@@ -5,7 +5,8 @@
# source ./config_host.mk.source
temp_conf=`mktemp config_host.mk.XXXXXX`
-sed -e 's/^\s*\(export [A-Z0-9_]*=\)\(.*\)$/\1"\2"/' \
- -e 's/^\s*export\s\+\([A-Z0-9_]*\)?=\(.*\)$/export \1="${\1:-\2}"/' config_host.mk >$temp_conf
+sed -n -e 's/$(gb_SPACE)/ /g' \
+ -e 's/^\s*\(export [A-Z0-9_]*=\)\(.*\)$/\1"\2"/p' \
+ -e 's/^\s*export\s\+\([A-Z0-9_]*\)?=\(.*\)$/export \1="${\1:-\2}"/p' config_host.mk >$temp_conf
source ./$temp_conf
rm $temp_conf
diff --git a/configmgr/source/components.cxx b/configmgr/source/components.cxx
index 2a0bffc31b82..6476cd841fd5 100644
--- a/configmgr/source/components.cxx
+++ b/configmgr/source/components.cxx
@@ -527,7 +527,7 @@ Components::Components(
n = conf.getLength();
}
rtl::OUString type(conf.copy(i, c - i));
- rtl::OUString url(expand(conf.copy(c + 1, n - c - 1)));
+ rtl::OUString url(conf.copy(c + 1, n - c - 1));
if ( type == "xcsxcu" ) {
parseXcsXcuLayer(layer, url);
layer += 2; //TODO: overflow
@@ -684,12 +684,11 @@ void Components::parseFiles(
void Components::parseFileList(
int layer, FileParser * parseFile, rtl::OUString const & urls,
- rtl::Bootstrap const & ini, bool recordAdditions)
+ bool recordAdditions)
{
for (sal_Int32 i = 0;;) {
rtl::OUString url(urls.getToken(0, ' ', i));
if (!url.isEmpty()) {
- ini.expandMacrosFrom(url); //TODO: detect failure
Additions * adds = 0;
if (recordAdditions) {
adds = data_.addExtensionXcuAdditions(url, layer);
@@ -819,9 +818,7 @@ void Components::parseXcsXcuIniLayer(
// Check if ini file exists (otherwise .override would still read global
// SCHEMA/DATA variables, which could interfere with unrelated environment
// variables):
- rtl::Bootstrap ini(url);
- if (ini.getHandle() != 0)
- {
+ if (rtl::Bootstrap(url).getHandle() != 0) {
rtl::OUStringBuffer prefix("${.override:");
for (sal_Int32 i = 0; i != url.getLength(); ++i) {
sal_Unicode c = url[i];
@@ -840,13 +837,13 @@ void Components::parseXcsXcuIniLayer(
rtl::Bootstrap::expandMacros(urls);
if (!urls.isEmpty())
{
- parseFileList(layer, &parseXcsFile, urls, ini, false);
+ parseFileList(layer, &parseXcsFile, urls, false);
}
urls = prefix.makeStringAndClear() + rtl::OUString("DATA}");
rtl::Bootstrap::expandMacros(urls);
if (!urls.isEmpty())
{
- parseFileList(layer + 1, &parseXcuFile, urls, ini, recordAdditions);
+ parseFileList(layer + 1, &parseXcuFile, urls, recordAdditions);
}
}
}
diff --git a/configmgr/source/components.hxx b/configmgr/source/components.hxx
index c898a84b4657..70f7669b9a63 100644
--- a/configmgr/source/components.hxx
+++ b/configmgr/source/components.hxx
@@ -43,10 +43,7 @@ namespace com { namespace sun { namespace star {
class XComponentContext;
}
} } }
-namespace rtl {
- class Bootstrap;
- class OUString;
-}
+namespace rtl { class OUString; }
namespace configmgr {
@@ -132,7 +129,7 @@ private:
void parseFileList(
int layer, FileParser * parseFile, rtl::OUString const & urls,
- rtl::Bootstrap const & ini, bool recordAdditions);
+ bool recordAdditions);
void parseXcdFiles(int layer, rtl::OUString const & url);
diff --git a/configmgr/source/configurationprovider.cxx b/configmgr/source/configurationprovider.cxx
index c9043ea6e8f2..db10168e4b8f 100644
--- a/configmgr/source/configurationprovider.cxx
+++ b/configmgr/source/configurationprovider.cxx
@@ -25,6 +25,7 @@
#include "boost/noncopyable.hpp"
#include "com/sun/star/beans/NamedValue.hpp"
#include "com/sun/star/beans/PropertyValue.hpp"
+#include "com/sun/star/configuration/theDefaultProvider.hpp"
#include "com/sun/star/lang/EventObject.hpp"
#include "com/sun/star/lang/Locale.hpp"
#include "com/sun/star/lang/XLocalizable.hpp"
@@ -32,7 +33,6 @@
#include "com/sun/star/lang/XServiceInfo.hpp"
#include "com/sun/star/lang/XSingleComponentFactory.hpp"
#include "com/sun/star/uno/Any.hxx"
-#include "com/sun/star/uno/DeploymentException.hpp"
#include "com/sun/star/uno/Exception.hpp"
#include "com/sun/star/uno/Reference.hxx"
#include "com/sun/star/uno/RuntimeException.hpp"
@@ -432,23 +432,7 @@ Factory::createInstanceWithArgumentsAndContext(
throw (css::uno::Exception, css::uno::RuntimeException)
{
if (Arguments.getLength() == 0) {
- css::uno::Reference< css::uno::XInterface > instance;
- if (!(Context->getValueByName(
- rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "/singletons/"
- "com.sun.star.configuration.theDefaultProvider")))
- >>= instance) ||
- !instance.is())
- {
- throw css::uno::DeploymentException(
- rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "component context fails to supply singleton"
- " com.sun.star.configuration.theDefaultProvider")),
- Context);
- }
- return instance;
+ return css::configuration::theDefaultProvider::get(Context);
} else {
rtl::OUString locale;
for (sal_Int32 i = 0; i < Arguments.getLength(); ++i) {
diff --git a/configure.in b/configure.ac
index 8ca933ff93e5..d4ab49ca6ce3 100644
--- a/configure.in
+++ b/configure.ac
@@ -1,5 +1,5 @@
dnl -*- Mode: Autoconf; tab-width: 4; indent-tabs-mode: nil; fill-column: 102 -*-
-dnl configure.in serves as input for the GNU autoconf package
+dnl configure.ac serves as input for the GNU autoconf package
dnl in order to create a configure script.
AC_INIT([LibreOffice],[3.7],[],[],[http://documentfoundation.org/])
@@ -10,7 +10,7 @@ save_CXX=$CXX
BUILD_TYPE="LibO"
SCPDEFS=""
-GIT_REPO_NAMES=""
+GIT_NEEDED_SUBMODULES=""
LO_PATH= # used by path_munge to construct a PATH variable
PathFormat()
@@ -194,6 +194,7 @@ if test -n "$with_android_ndk"; then
ANDROID_APP_ABI=x86
ANDROIDCFLAGS="-march=atom"
fi
+ ANDROIDCFLAGS="$ANDROIDCFLAGS -ffunction-sections"
ANDROIDCFLAGS="$ANDROIDCFLAGS -Wno-psabi --sysroot $ANDROID_NDK_HOME/platforms/android-9/arch-$android_cpu -L$ANDROID_NDK_HOME/sources/cxx-stl/gnu-libstdc++/${ANDROID_NDK_TOOLCHAIN_VERSION_SUBDIR}libs/$ANDROID_APP_ABI"
# When using the 4.6 or newer toolchain, use the gold linker
@@ -258,7 +259,7 @@ test_cairo=yes
# differently below just for Mac OSX,but at least better than
# hardcoding these as we used to do. Much of this is duplicated also
# in solenv for old build system and for gbuild, ideally we should
-# perhaps define stuff like this only here in configure.in?
+# perhaps define stuff like this only here in configure.ac?
LINKFLAGSSHL="-shared"
PICSWITCH="-fpic"
@@ -342,6 +343,10 @@ cygwin*|interix*|mingw32*)
_os=WINNT
use_shl_version="TRUE"
DYNAMIC_CRT="TRUE"
+
+ DLLPOST=".dll"
+ LINKFLAGSNOUNDEFS=
+
# If the host OS matches "mingw32*", that means we are using the
# MinGW cross-compiler, because we don't see the point in building
# LibreOffice using MinGW on Windows. If you want to build on
@@ -635,18 +640,6 @@ AC_ARG_ENABLE(ext-report-builder,
[Disable the Report Builder extension.])
)
-AC_ARG_ENABLE(ext-scripting-beanshell,
- AS_HELP_STRING([--enable-ext-scripting-beanshell],
- [DEPRECATED: use --enable-scripting-beanshell instead.])
-,AC_MSG_ERROR([--enable-ext-scripting-beanshell is no longer supported.])
-)
-
-AC_ARG_ENABLE(ext-scripting-javascript,
- AS_HELP_STRING([--enable-ext-scripting-javascript],
- [DEPRECATED: use --enable-scripting-javascript instead.])
-,AC_MSG_ERROR([--enable-ext-scripting-javascript is no longer supported.])
-)
-
AC_ARG_ENABLE(ext-typo,
AS_HELP_STRING([--enable-ext-typo],
[Enable the Typography Toolbar extension.])
@@ -751,13 +744,6 @@ AC_ARG_ENABLE(atl,
],
,)
-AC_ARG_ENABLE(symbols,
- AS_HELP_STRING([--enable-symbols],
- [Include debugging information in output ("symbols" is misleading here;
- enables -g compiler option or equivalent). WARNING: A complete build
- needs a lot of space (roughly 10 GiB) and takes much longer.]),
-,)
-
AC_ARG_ENABLE(werror,
AS_HELP_STRING([--enable-werror],
[Turn warnings to errors. (Has no effect in modules where the treating
@@ -771,25 +757,26 @@ AC_ARG_ENABLE(assert-always-abort,
AC_ARG_ENABLE(debug,
AS_HELP_STRING([--enable-debug],
- [Include debugging information like with --enable-symbols, disable
- compiler optimization and inlining plus extra debugging code like
- assertions. Extra large build! (enables -g compiler flag and dmake
- debug=true) If you need even more verbose output, build a module with
- "build -- debug=true dbglevel=2".
- You can also use this switch as follows:
- --enable-debug="all -sw/ -Library_sc" to enable debugging only for
- the specified gbuild-build targets (all means everything, - prepended
- means not to enable, / appended means everything in the directory,
- there is no ordering, more specific overrides more general, and
- disabling takes precedence).]))
+ [Include debugging information, disable compiler optimization and inlining plus
+ extra debugging code like assertions. Extra large build! (enables -g compiler flag
+ and dmake debug=true).]))
AC_ARG_ENABLE(dbgutil,
AS_HELP_STRING([--enable-dbgutil],
- [Include additional debugging utilities, such as assertions, object
- counting, etc. Larger build. Independent from --enable-debug.
- Note that this option makes the build ABI incompatible:
- It is not possible to mix object files or libraries from a
- --enable-dbgutil and a --disable-dbgutil build.]))
+ [Provide debugging support from --enable-debug and include additional debugging
+ utilities such as object counting or more expensive checks.
+ This is the recommended option for developers.
+ Note that this makes the build ABI incompatible, it is not possible to mix object
+ files or libraries from a --enable-dbgutil and a --disable-dbgutil build.]))
+
+AC_ARG_ENABLE(selective-debuginfo,
+ AS_HELP_STRING([--enable-selective-debuginfo],
+ [If --enable-debug or --enable-dbgutil is used, build debugging information
+ (-g compiler flag) only for the specified gbuild build targets
+ (where all means everything, - prepended means not to enable, / appended means
+ everything in the directory; there is no ordering, more specific overrides
+ more general, and disabling takes precedence).
+ Example: --enable-selective-debuginfo="all -sw/ -Library_sc".]))
AC_ARG_ENABLE(compiler-plugins,
AS_HELP_STRING([--enable-compiler-plugins],
@@ -851,14 +838,6 @@ AC_ARG_ENABLE(cairo-canvas,
platforms where Cairo is available.
])
-AC_ARG_ENABLE(librsvg,
- AS_HELP_STRING([--enable-librsvg=<no/auto/system/internal/fully-internal>],
- [Enables or disables use of librsvg to render SVG at run-time.
- Also specificed what librsvg to use. 'auto' is the default.
- 'fully-internal' also forces internal versions of libraries (only)
- librsvg depends on (currently GLib, gdk-pixbuf, libcroco, libgsf,
- pango).]))
-
AC_ARG_ENABLE(opengl,
AS_HELP_STRING([--disable-opengl],
[Determines whether to build the OpenGL 3D slide transitions component.]),
@@ -878,10 +857,15 @@ AC_ARG_ENABLE(packagekit,
AC_ARG_ENABLE(sdremote,
AS_HELP_STRING([--disable-sdremote],
- [Determines whether to enable Impress remote control.
- Uses dbus and bluetooth (bluez).]),
+ [Determines whether to enable Impress remote control.]),
,enable_sdremote=yes)
+AC_ARG_ENABLE(bluetooth,
+ AS_HELP_STRING([--disable-bluetooth],
+ [Determines whether to build sdremote with bluetooth support
+ (via dbus)]),
+,enable_bluetooth=yes)
+
AC_ARG_ENABLE(gconf,
AS_HELP_STRING([--disable-gconf],
[Determines whether to use the GConf support.]),
@@ -959,12 +943,6 @@ AC_ARG_ENABLE(unix-qstart-libpng,
enabling this is a good idea (ie. for Linux Distro packaging).]),
,enable_unix_qstart_libpng=yes)
-AC_ARG_ENABLE(binfilter,
- AS_HELP_STRING([--enable-binfilter],
- [Enable legacy binary file formats filters build.]),
-,enable_binfilter=no
-)
-
AC_ARG_ENABLE(rpath,
AS_HELP_STRING([--disable-rpath],
[Disable the use of relative paths in shared libraries.]),
@@ -1592,15 +1570,6 @@ AC_ARG_WITH(libbase-jar,
[Specify path to jarfile manually.]),
LIBBASE_JAR=$withval)
-AC_ARG_WITH(system-saxon,
- AS_HELP_STRING([--with-system-saxon],
- [Use saxon already on system.]))
-
-AC_ARG_WITH(saxon-jar,
- AS_HELP_STRING([--with-saxon-jar=JARFILE],
- [Specify path to jarfile manually.]),
- SAXON_JAR=$withval)
-
AC_ARG_WITH(system-odbc,
AS_HELP_STRING([--with-system-odbc],
[Use the odbc headers already on system.]),,
@@ -2142,24 +2111,18 @@ AC_ARG_WITH(sun-templates,
[Integrate Sun template packages.]),
,)
-AC_ARG_WITH(num-cpus,
- AS_HELP_STRING([--with-num-cpus],
- [Number of build processes/cpus to use (number of projects that will build at the same time).
- Multi-process/multi-cpu builds can save a lot of time on multi-cpu machines.
- Defaults to the number of CPUs on the machine.]),
-,)
-
-AC_ARG_WITH(max-jobs,
- AS_HELP_STRING([--with-max-jobs],
- [Maximum number of jobs that will be issued at the same time per dmake or gbuild subproject.
- The real number of the jobs is affected by the --with-num-cpus too, it can get up to CPUS*max_jobs.
- Defaults to 1, unless you configure --enable-icecream - then to 10.]),
+AC_ARG_WITH(parallelism,
+ AS_HELP_STRING([--with-parallelism],
+ [Number of jobs to run simultaneously during build. Parallel builds can save a lot
+ of time on multi-cpu machines. The real number of jobs can get up to parallelism*parallelism
+ for a while in the first build phase. That will not happen when dmake is removed.
+ Defaults to the number of CPUs on the machine, unless you configure --enable-icecream - then to 10.]),
,)
AC_ARG_WITH(check-jobs,
AS_HELP_STRING([--with-check-jobs],
[Maximum number of jobs that will be issued at the same time during 'make subsequenttest'.
- Default value is the same as 'max-jobs'. Useful because the subsequent tests are very lighweight.]),
+ Default value is the same as 'parallelism'. Useful because the subsequent tests are very lightweight.]),
,)
dnl ===================================================================
@@ -2568,7 +2531,10 @@ fi
dnl The following checks for gcc, cc and then cl (if it weren't guarded for win32)
if test "$_os" != "WINNT" -o "$WITH_MINGW" = "yes"; then
+ # AC_PROG_CC sets CFLAGS to -g -O2 if not set, avoid that
+ save_CFLAGS=$CFLAGS
AC_PROG_CC
+ CFLAGS=$save_CFLAGS
fi
COMPATH=`dirname "$CC"`
@@ -2611,7 +2577,10 @@ dnl Check / find MacOSX SDK and compiler, version checks
dnl ===================================================================
if test "$_os" = "Darwin"; then
- if test "$enable_64_bit" = "" -o "$enable_64_bit" = "no"; then
+ if test "$build_cpu" = i386 -a "$host_cpu" = powerpc; then
+ # Cross-compiling for PPC from Intel
+ arch='-arch ppc'
+ elif test "$enable_64_bit" = "" -o "$enable_64_bit" = "no"; then
bitness=-m32
else
bitness=-m64
@@ -2762,22 +2731,24 @@ if test "$_os" = "Darwin"; then
esac
fi
- case "$with_macosx_version_min_required" in
- 10.4)
- case "$with_macosx_sdk" in
+ if test "$BITNESS_OVERRIDE" = ""; then
+ case "$with_macosx_version_min_required" in
10.4)
+ case "$with_macosx_sdk" in
+ 10.4)
+ ;;
+ *)
+ AC_MSG_WARN([Building with a SDK > 10.4 possibly breaks 10.4 compatibility. Do not use for deliverable build until verified that it really works])
+ add_warning "Building with a SDK > 10.4 possibly breaks 10.4 compatibility. Do not use for deliverable build until verified that it really works"
+ ;;
+ esac
;;
*)
- AC_MSG_WARN([Building with a SDK > 10.4 possibly breaks 10.4 compatibility. Do not use for deliverable build until verified that it really works])
- add_warning "Building with a SDK > 10.4 possibly breaks 10.4 compatibility. Do not use for deliverable build until verified that it really works"
+ AC_MSG_WARN([Building with a minimum version requirement > 10.4 breaks 10.4 compatibility. Do not use for deliverable build])
+ add_warning "Building with a minimum version requirement > 10.4 breaks 10.4 compatibility. Do not use for deliverable build"
;;
esac
- ;;
- *)
- AC_MSG_WARN([Building with a minimum version requirement > 10.4 breaks 10.4 compatibility. Do not use for deliverable build])
- add_warning "Building with a minimum version requirement > 10.4 breaks 10.4 compatibility. Do not use for deliverable build"
- ;;
- esac
+ fi
# If no CC and CXX environment vars, try to guess where the compiler is
if test -z "$save_CC"; then
@@ -2798,8 +2769,8 @@ if test "$_os" = "Darwin"; then
AC_MSG_ERROR([Cannot guess gcc location for this SDK])
;;
esac
- CC="${gccprefix}gcc-4.0 -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH"
- CXX="${gccprefix}g++-4.0 -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH"
+ CC="${gccprefix}gcc-4.0 $arch -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH"
+ CXX="${gccprefix}g++-4.0 $arch -mmacosx-version-min=$with_macosx_version_min_required -isysroot $MACOSX_SDK_PATH"
;;
10.6)
# Is similar logic as above needed? Is it likely somebody
@@ -2932,7 +2903,7 @@ if test "$GCC" = "yes"; then
if test "$_os" = "Darwin" -a "$with_macosx_sdk" = "10.4" -a "$GCCVER" -ge "040100"; then
if test -z "$save_CC" -a -x "$GCC_HOME/bin/gcc-4.0"; then
export CC="$GCC_HOME/bin/gcc-4.0"
- # export CC to have it available in set_soenv -> config.guess
+ # export CC to make it finally available to config.guess
GCCVER2=`$CC -dumpversion | $AWK -F. '{ print \$1*10000+\$2*100+\$3 }'`
if test "$GCCVER2" -ge "040000" -a "$GCCVER2" -lt "040100"; then
GCCVER=$GCCVER2
@@ -3060,38 +3031,6 @@ printf ("hello world\n");
fi
AC_SUBST(HAVE_LD_BSYMBOLIC_FUNCTIONS)
-dnl Set the ENABLE_DBGUTIL variable
-dnl ===================================================================
-AC_MSG_CHECKING([whether to build with additional debug utilities])
-if test -n "$enable_dbgutil" -a "$enable_dbgutil" != "no"; then
- PROEXT=""
- PRODUCT=""
-
- AC_MSG_RESULT([yes])
- # cppunit and graphite expose STL in public headers
- if test "$with_system_cppunit" = "yes"; then
- AC_MSG_ERROR([--with-system-cppunit conflicts with DBG_UTIL build])
- else
- with_system_cppunit=no
- fi
- if test "$with_system_graphite" = "yes"; then
- AC_MSG_ERROR([--with-system-graphite conflicts with DBG_UTIL build])
- else
- with_system_graphite=no
- fi
- if test "$with_system_mysql_cppconn" = "yes"; then
- AC_MSG_ERROR([--with-system-mysql-cppconn conflicts with DBG_UTIL build])
- else
- with_system_mysql_cppconn=no
- fi
-else
- PRODUCT="full"
- PROEXT=".pro"
- AC_MSG_RESULT([no, full product build])
-fi
-AC_SUBST(PRODUCT)
-AC_SUBST(PROEXT)
-
dnl ===================================================================
dnl Check which Microsoft C/C++ or MinGW compiler is used for WINNT
dnl ===================================================================
@@ -3250,32 +3189,33 @@ if test "$_os" = "WINNT"; then
LINK_X64_BINARY=
LIBMGR_X64_BINARY=
- AC_MSG_CHECKING([for a x64 compiler and libraries for 64bit ActiveX component])
- if test "$BITNESS_OVERRIDE" = "" -a -f "$with_cl_home/atlmfc/lib/amd64/atls.lib"; then
- # Prefer native x64 compiler to cross-compiler, in case we are running
- # the build on a 64-bit OS.
- if "$with_cl_home/bin/amd64/cl.exe" -? </dev/null >/dev/null 2>&1; then
- BUILD_X64=TRUE
- CXX_X64_BINARY="$with_cl_home/bin/amd64/cl.exe"
- LINK_X64_BINARY="$with_cl_home/bin/amd64/link.exe"
- LIBMGR_X64_BINARY="$with_cl_home/bin/amd64/lib.exe"
- elif "$with_cl_home/bin/x86_amd64/cl.exe" -? </dev/null >/dev/null 2>&1; then
- BUILD_X64=TRUE
- CXX_X64_BINARY="$with_cl_home/bin/x86_amd64/cl.exe"
- LINK_X64_BINARY="$with_cl_home/bin/x86_amd64/link.exe"
- LIBMGR_X64_BINARY="$with_cl_home/bin/x86_amd64/lib.exe"
+ if test "$BITNESS_OVERRIDE" = ""; then
+ AC_MSG_CHECKING([for a x64 compiler and libraries for 64-bit Explorer extensions])
+ if test -f "$with_cl_home/atlmfc/lib/amd64/atls.lib"; then
+ # Prefer native x64 compiler to cross-compiler, in case we are running
+ # the build on a 64-bit OS.
+ if "$with_cl_home/bin/amd64/cl.exe" -? </dev/null >/dev/null 2>&1; then
+ BUILD_X64=TRUE
+ CXX_X64_BINARY="$with_cl_home/bin/amd64/cl.exe"
+ LINK_X64_BINARY="$with_cl_home/bin/amd64/link.exe"
+ LIBMGR_X64_BINARY="$with_cl_home/bin/amd64/lib.exe"
+ elif "$with_cl_home/bin/x86_amd64/cl.exe" -? </dev/null >/dev/null 2>&1; then
+ BUILD_X64=TRUE
+ CXX_X64_BINARY="$with_cl_home/bin/x86_amd64/cl.exe"
+ LINK_X64_BINARY="$with_cl_home/bin/x86_amd64/link.exe"
+ LIBMGR_X64_BINARY="$with_cl_home/bin/x86_amd64/lib.exe"
+ fi
+ fi
+ if test "$BUILD_X64" = TRUE; then
+ AC_MSG_RESULT([found])
+ else
+ AC_MSG_RESULT([not found])
+ AC_MSG_WARN([Installation set will not contain 64-bit Explorer extensions])
fi
- fi
- if test "$BUILD_X64" = TRUE; then
- AC_MSG_RESULT([found])
- else
- AC_MSG_RESULT([not found])
- AC_MSG_WARN([Installation set will not contain the 64-bit Explorer extension])
fi
AC_SUBST(BUILD_X64)
- # These are passed to the environment through set_soenv.in as usual, and then
- # used in set_wntx64.mk
+ # These are passed to the environment and then used in set_wntx64.mk
AC_SUBST(CXX_X64_BINARY)
AC_SUBST(LINK_X64_BINARY)
AC_SUBST(LIBMGR_X64_BINARY)
@@ -3333,6 +3273,130 @@ if test "$CCACHE" != ""; then
AC_LANG_POP([C])
fi
+dnl Set the ENABLE_DBGUTIL variable
+dnl ===================================================================
+AC_MSG_CHECKING([whether to build with additional debug utilities])
+if test -n "$enable_dbgutil" -a "$enable_dbgutil" != "no"; then
+ ENABLE_DBGUTIL="TRUE"
+ PROEXT=""
+ PRODUCT=""
+
+ AC_MSG_RESULT([yes])
+ # cppunit and graphite expose STL in public headers
+ if test "$with_system_cppunit" = "yes"; then
+ AC_MSG_ERROR([--with-system-cppunit conflicts with --enable-dbgutil])
+ else
+ with_system_cppunit=no
+ fi
+ if test "$with_system_graphite" = "yes"; then
+ AC_MSG_ERROR([--with-system-graphite conflicts with --enable-dbgutil])
+ else
+ with_system_graphite=no
+ fi
+ if test "$with_system_mysql_cppconn" = "yes"; then
+ AC_MSG_ERROR([--with-system-mysql-cppconn conflicts with --enable-dbgutil])
+ else
+ with_system_mysql_cppconn=no
+ fi
+else
+ ENABLE_DBGUTIL=""
+ # PRODUCT is old concept, still used by build.pl .
+ PRODUCT="full"
+ PROEXT=".pro"
+ AC_MSG_RESULT([no])
+fi
+AC_SUBST(ENABLE_DBGUTIL)
+AC_SUBST(PRODUCT)
+AC_SUBST(PROEXT)
+
+dnl Set the ENABLE_DEBUG variable.
+dnl ===================================================================
+AC_MSG_CHECKING([whether to do a debug build])
+if test -n "$enable_debug" && test "$enable_debug" != "yes" && test "$enable_debug" != "no"; then
+ AC_MSG_ERROR([--enable-debug now accepts only yes or no, use --enable-selective-debuginfo])
+fi
+if test -n "$ENABLE_DBGUTIL"; then
+ if test "$enable_debug" = "no"; then
+ AC_MSG_ERROR([--disable-debug cannot be used with --enable-dbgutil])
+ fi
+ ENABLE_DEBUG="TRUE"
+ AC_MSG_RESULT([yes (dbgutil)])
+elif test -n "$enable_debug" && test "$enable_debug" != "no"; then
+ ENABLE_DEBUG="TRUE"
+ AC_MSG_RESULT([yes])
+else
+ ENABLE_DEBUG=""
+ AC_MSG_RESULT([no])
+fi
+AC_SUBST(ENABLE_DEBUG)
+
+dnl Selective debuginfo
+ENABLE_DEBUGINFO_FOR=
+if test -n "$ENABLE_DEBUG"; then
+ AC_MSG_CHECKING([whether to use selective debuginfo])
+ if test -n "$enable_selective_debuginfo" -a "$enable_selective_debuginfo" != "no"; then
+ ENABLE_DEBUGINFO_FOR="$enable_selective_debuginfo"
+ AC_MSG_RESULT([for "$enable_selective_debuginfo"])
+ else
+ ENABLE_DEBUGINFO_FOR=all
+ AC_MSG_RESULT([no, for all])
+ fi
+fi
+AC_SUBST(ENABLE_DEBUGINFO_FOR)
+
+dnl Check for explicit C/CXX/OBJC/OBJCXX/LDFLAGS. We by default use the ones specified
+dnl by our build system, but explicit override is possible.
+AC_MSG_CHECKING(for explicit CFLAGS)
+if test -n "$CFLAGS"; then
+ AC_MSG_RESULT([$CFLAGS])
+ x_CFLAGS=
+else
+ AC_MSG_RESULT(no)
+ x_CFLAGS=[\#]
+fi
+AC_MSG_CHECKING(for explicit CXXFLAGS)
+if test -n "$CXXFLAGS"; then
+ AC_MSG_RESULT([$CXXFLAGS])
+ x_CXXFLAGS=
+else
+ AC_MSG_RESULT(no)
+ x_CXXFLAGS=[\#]
+fi
+AC_MSG_CHECKING(for explicit OBJCFLAGS)
+if test -n "$OBJCFLAGS"; then
+ AC_MSG_RESULT([$OBJCFLAGS])
+ x_OBJCFLAGS=
+else
+ AC_MSG_RESULT(no)
+ x_OBJCFLAGS=[\#]
+fi
+AC_MSG_CHECKING(for explicit OBJCXXFLAGS)
+if test -n "$OBJCXXFLAGS"; then
+ AC_MSG_RESULT([$OBJCXXFLAGS])
+ x_OBJCXXFLAGS=
+else
+ AC_MSG_RESULT(no)
+ x_OBJCXXFLAGS=[\#]
+fi
+AC_MSG_CHECKING(for explicit LDFLAGS)
+if test -n "$LDFLAGS"; then
+ AC_MSG_RESULT([$LDFLAGS])
+ x_LDFLAGS=
+else
+ AC_MSG_RESULT(no)
+ x_LDFLAGS=[\#]
+fi
+AC_SUBST(CFLAGS)
+AC_SUBST(CXXFLAGS)
+AC_SUBST(OBJCFLAGS)
+AC_SUBST(OBJCXXFLAGS)
+AC_SUBST(LDFLAGS)
+AC_SUBST(x_CFLAGS)
+AC_SUBST(x_CXXFLAGS)
+AC_SUBST(x_OBJCFLAGS)
+AC_SUBST(x_OBJCXXFLAGS)
+AC_SUBST(x_LDFLAGS)
+
#
# determine CPU, CPUNAME, GUI, GUIBASE, ...
#
@@ -3885,6 +3949,9 @@ solaris*)
esac
if test "$enable_headless" = "yes"; then
+ if test "$GUIBASE" != "unx"; then
+ AC_MSG_ERROR([$host_os operating system is not suitable to build LibreOffice with --enable-headless])
+ fi
GUIBASE=headless
fi
@@ -4008,14 +4075,13 @@ if test "$cross_compiling" = "yes"; then
rm -rf CONF-FOR-BUILD config_build.mk
mkdir CONF-FOR-BUILD
tar cf - \
- bin/repo-list.in \
config.guess \
config_host.mk.in \
config_host.mk.source \
configure \
ooo.lst.in \
oowintool \
- post_download.in \
+ solenv/bin/getcompver.awk \
solenv/inc/langlist.mk \
solenv/inc/postset.mk \
| (cd CONF-FOR-BUILD && tar xf -)
@@ -4059,11 +4125,9 @@ if test "$cross_compiling" = "yes"; then
./configure \
--disable-graphite \
--disable-build-mozilla \
- --disable-mozilla \
--disable-postgresql-sdbc \
--disable-zenity \
- --with-num-cpus="$with_num_cpus" \
- --with-max-jobs="$with_max_jobs" \
+ --with-parallelism="$with_parallelism" \
--without-doxygen \
$sub_conf_opts \
2>&1 | sed -e 's/^/ /'
@@ -4195,28 +4259,6 @@ else
fi
AC_SUBST(ASSERT_ALWAYS_ABORT)
-dnl Set the ENABLE_DEBUG variable.
-dnl ===================================================================
-AC_MSG_CHECKING([whether to do a debug build])
-if test -n "$enable_debug" && test "$enable_debug" != "no"; then
- if test "$enable_debug" = "y" || test "$enable_debug" = "yes"; then
- ENABLE_DEBUG="TRUE"
- ENABLE_DEBUG_FOR=all
- AC_MSG_RESULT([yes])
- else
- ENABLE_DEBUG=""
- ENABLE_DEBUG_FOR="$enable_debug"
- AC_MSG_RESULT([for $enable_debug])
- fi
-else
- ENABLE_DEBUG=""
- ENABLE_DEBUG_FOR=""
- AC_MSG_RESULT([no])
-fi
-AC_SUBST(ENABLE_DEBUG)
-AC_SUBST(ENABLE_DEBUG_FOR)
-
-
dnl Determine whether to use linkoo for the smoketest installation
dnl ===================================================================
AC_MSG_CHECKING([whether to use linkoo for the smoketest installation])
@@ -4241,22 +4283,6 @@ else
fi
AC_SUBST(ENABLE_LTO)
-dnl whether to include debgugging information into final build.
-dnl ===================================================================
-AC_MSG_CHECKING([whether to include debugging information])
-if test -n "$enable_symbols" -a "$enable_symbols" != "no"; then
- ENABLE_SYMBOLS="TRUE"
- AC_MSG_RESULT([yes])
-else
- if test -n "$enable_symbols" -a "$enable_symbols" = "no"; then
- ENABLE_SYMBOLS="FALSE"
- else
- ENABLE_SYMBOLS=
- fi
- AC_MSG_RESULT([no])
-fi
-AC_SUBST(ENABLE_SYMBOLS)
-
if test "$enable_headless" = "yes"; then
# be sure to do not mess with uneeded stuff
test_randr=no
@@ -4272,7 +4298,6 @@ if test "$enable_headless" = "yes"; then
test_kde4=no
test_unix_quickstarter=no
test_cairo=no
- enable_librsvg=no
enable_gnome_vfs=no
fi
@@ -4333,27 +4358,12 @@ else
fi
AC_SUBST(DO_FETCH_TARBALLS)
-
-dnl Disable legacy binary file formats filters
-dnl ===================================================================
-AC_MSG_CHECKING([whether to enable filters for legacy binary file formats (StarOffice 5.2)])
-if test "$enable_binfilter" = "no"; then
- WITH_BINFILTER="NO"
- AC_MSG_RESULT([no])
-else
- WITH_BINFILTER="YES"
- BUILD_TYPE="$BUILD_TYPE BINFILTER"
- GIT_REPO_NAMES="$GIT_REPO_NAMES binfilter"
- AC_MSG_RESULT([yes])
-fi
-AC_SUBST(WITH_BINFILTER)
-
AC_MSG_CHECKING([whether to build help])
if test "$with_help" != "no" -a $_os != iOS -a $_os != Android; then
AC_MSG_RESULT([yes])
BUILD_TYPE="$BUILD_TYPE HELP"
SCPDEFS="$SCPDEFS -DWITH_HELP"
- GIT_REPO_NAMES="$GIT_REPO_NAMES help"
+ GIT_NEEDED_SUBMODULES="helpcontent2 $GIT_NEEDED_SUBMODULES"
else
AC_MSG_RESULT([no])
fi
@@ -4365,7 +4375,7 @@ if test -z "$with_myspell_dicts" -o "$with_myspell_dicts" = "yes"; then
AC_MSG_RESULT([yes])
WITH_MYSPELL_DICTS=YES
BUILD_TYPE="$BUILD_TYPE DICTIONARIES"
- GIT_REPO_NAMES="$GIT_REPO_NAMES dictionaries"
+ GIT_NEEDED_SUBMODULES="dictionaries $GIT_NEEDED_SUBMODULES"
else
AC_MSG_RESULT([no])
WITH_MYSPELL_DICTS=NO
@@ -4816,7 +4826,10 @@ dnl Testing for C++ compiler and version...
dnl ===================================================================
if test "$_os" != "WINNT" -o "$WITH_MINGW" = "yes"; then
+ # AC_PROG_CXX sets CXXFLAGS to -g -O2 if not set, avoid that
+ save_CXXFLAGS=$CXXFLAGS
AC_PROG_CXX
+ CXXFLAGS=$save_CXXFLAGS
else
if test -n "$CC" -a -z "$CXX"; then
CXX="$CC"
@@ -4953,6 +4966,18 @@ if test "$_os" != "WINNT" -o "$WITH_MINGW" = "yes"; then
test -z "$ac_cv_alignof_long" && ac_cv_alignof_long=1
test -z "$ac_cv_alignof_double" && ac_cv_alignof_double=1
;;
+ Linux-i686)
+ test -z "$ac_cv_alignof_short" && ac_cv_alignof_short=2
+ test -z "$ac_cv_alignof_int" && ac_cv_alignof_int=4
+ test -z "$ac_cv_alignof_long" && ac_cv_alignof_long=4
+ test -z "$ac_cv_alignof_double" && ac_cv_alignof_double=4
+ ;;
+ Linux-x86_64)
+ test -z "$ac_cv_alignof_short" && ac_cv_alignof_short=2
+ test -z "$ac_cv_alignof_int" && ac_cv_alignof_int=4
+ test -z "$ac_cv_alignof_long" && ac_cv_alignof_long=8
+ test -z "$ac_cv_alignof_double" && ac_cv_alignof_double=8
+ ;;
*)
if test -z "$ac_cv_alignof_short" -o \
-z "$ac_cv_alignof_int" -o \
@@ -5015,7 +5040,7 @@ AC_SUBST(ALIGNOF_DOUBLE)
dnl ===================================================================
dnl Check if valgrind.h is available
dnl ===================================================================
-if test "$cross_compiling" != "yes" -a "$enable_dbgutil" != "no" -a \
+if test "$cross_compiling" != "yes" -a -n "$ENABLE_DBGUTIL" -a \
-z "$VALGRIND_CFLAGS"; then
dnl Test $prefix (currently only testing for /usr and /usr/local)
dnl so that VALGRIND_CFLAGS = -I$prefix/include/valgrind
@@ -5043,7 +5068,7 @@ COMPILER_PLUGINS=
if test "$COM_GCC_IS_CLANG" = "TRUE"; then
if test -n "$enable_compiler_plugins"; then
compiler_plugins="$enable_compiler_plugins"
- elif test -n "$enable_dbgutil" -a "$enable_dbgutil" != "no"; then
+ elif test -n "$ENABLE_DBGUTIL"; then
compiler_plugins=test
else
compiler_plugins=no
@@ -5051,7 +5076,7 @@ if test "$COM_GCC_IS_CLANG" = "TRUE"; then
if test "$compiler_plugins" != "no"; then
AC_LANG_PUSH([C++])
save_CPPFLAGS=$CPPFLAGS
- CPPFLAGS="$CPPFLAGS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS"
+ CPPFLAGS="$CPPFLAGS $CLANGPLUGIN_CPPFLAGS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS"
AC_CHECK_HEADER(clang/AST/RecursiveASTVisitor.h,
[COMPILER_PLUGINS=TRUE],
[
@@ -5071,6 +5096,7 @@ else
fi
fi
AC_SUBST(COMPILER_PLUGINS)
+AC_SUBST(CLANGPLUGIN_CPPFLAGS)
dnl ===================================================================
dnl Set the MinGW sys-root
@@ -5219,7 +5245,7 @@ if test "$_os" = "Linux"; then
esac
elif test "$_os" = "SunOS" -a "$COM" = "C52"; then
BUILD_STLPORT="yes"
-elif test "$_os" = "WINNT" -a "$WITH_MINGW" != "yes"; then
+elif test "$_os" = "WINNT" -a "$CPUNAME" != X86_64 -a "$WITH_MINGW" != "yes"; then
BUILD_STLPORT="yes"
elif test "$_os" = "FreeBSD"; then
BUILD_STLPORT="yes"
@@ -5543,7 +5569,7 @@ _ACEOF
else
case "$host_cpu" in
i?86|x86_64)
- if test "$_os" = "Darwin"; then
+ if test "$_os" = "Darwin" -o "$WITH_MINGW" = "yes"; then
gccvisbroken=no
else
if $EGREP -q '@PLT|@GOT' visibility.s; then
@@ -5854,7 +5880,7 @@ if test "$SOLAR_JAVA" != ""; then
if test -n "$JAVAINTERPRETER"; then
dnl java -version sends output to stderr!
if test `$JAVAINTERPRETER -version 2>&1 | $GREP -c "Kaffe"` -gt 0; then
- AC_MSG_ERROR([No valid check available. Please check the block for your desired java in configure.in])
+ AC_MSG_ERROR([No valid check available. Please check the block for your desired java in configure.ac])
elif test `$JAVAINTERPRETER --version 2>&1 | $GREP -c "GNU libgcj"` -gt 0; then
JDK=gcj
AC_MSG_RESULT([checked (gcj)])
@@ -5862,7 +5888,7 @@ if test "$SOLAR_JAVA" != ""; then
_gij_longver=`echo $_gij_version | $AWK -F. '{ print \$1*10000+\$2*100+\$3 }'`
elif test `$JAVAINTERPRETER -version 2>&1 | $AWK '{ print }' | $GREP -c "BEA"` -gt 0; then
- AC_MSG_ERROR([No valid check available. Please check the block for your desired java in configure.in])
+ AC_MSG_ERROR([No valid check available. Please check the block for your desired java in configure.ac])
elif test `$JAVAINTERPRETER -version 2>&1 | $AWK '{ print }' | $GREP -c "IBM"` -gt 0; then
JDK=ibm
@@ -6437,20 +6463,11 @@ if test "$SOLAR_JAVA" != ""; then
test -d "$JRE_BASE_DIR/$JAVA_TOOLKIT" && JAVALIB="$JAVALIB -L$JRE_BASE_DIR/$JAVA_TOOLKIT"
test -d "$JRE_BASE_DIR/native_thread" && JAVALIB="$JAVALIB -L$JRE_BASE_DIR/native_thread"
fi
-
- CLASSPATH=
- if test "$JDK"!="gcj"; then
- if test -f "$JAVA_HOME/jre/lib/rt.jar"; then
- CLASSPATH="${JAVA_HOME}/jre/lib/rt.jar${P_SEP}."
- fi
- fi
- XCLASSPATH="$CLASSPATH"
else
x_JAVALIB=[\#]
x_JDKLIB=[\#]
fi
-AC_SUBST(CLASSPATH)
AC_SUBST(JAVALIB)
AC_SUBST(JAVACOMPILER)
AC_SUBST(JAVADOC)
@@ -6461,7 +6478,6 @@ AC_SUBST(JAVA_SOURCE_VER)
AC_SUBST(JAVA_TARGET_VER)
AC_SUBST(JDK)
AC_SUBST(JDKLIB)
-AC_SUBST(XCLASSPATH)
AC_SUBST(x_JAVALIB)
AC_SUBST(x_JDKLIB)
@@ -6523,16 +6539,17 @@ else
AC_PATH_PROG(SYSTEM_UCPP, ucpp)
else
AC_MSG_RESULT([internal])
+ UCPP_TARBALL="0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz"
BUILD_TYPE="$BUILD_TYPE UCPP"
fi
fi
AC_SUBST(SYSTEM_UCPP)
+AC_SUBST(UCPP_TARBALL)
dnl ===================================================================
dnl Check for epm (not needed for Windows)
dnl ===================================================================
AC_MSG_CHECKING([whether to enable EPM for packing])
-BUILD_EPM=NO
if test "$enable_epm" = "yes"; then
AC_MSG_RESULT([yes])
if test "$_os" != "WINNT"; then
@@ -6543,7 +6560,7 @@ if test "$enable_epm" = "yes"; then
fi
if test "$EPM" = "no" -o "$EPM" = "internal"; then
echo "EPM will be built."
- BUILD_EPM=YES
+ EPM_TARBALL="3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz"
BUILD_TYPE="$BUILD_TYPE EPM"
else
# Gentoo has some epm which is something different...
@@ -6558,7 +6575,6 @@ if test "$enable_epm" = "yes"; then
if test "`echo $EPM_VERSION | cut -d'.' -f1`" -gt "3" || \
test "`echo $EPM_VERSION | cut -d'.' -f1`" -eq "3" -a "`echo $EPM_VERSION | cut -d'.' -f2`" -ge "7"; then
AC_MSG_RESULT([OK, >= 3.7])
- BUILD_EPM=NO
if test "$_os" = "Darwin"; then
AC_MSG_CHECKING([which PackageMaker EPM thinks to use])
_pm=`strings $EPM | grep PackageMaker | cut -d" " -f1`
@@ -6573,7 +6589,7 @@ if test "$enable_epm" = "yes"; then
else
AC_MSG_RESULT([too old. epm >= 3.7 is required.])
echo "EPM will be built."
- BUILD_EPM=YES
+ EPM_TARBALL="3ade8cfe7e59ca8e65052644fed9fca4-epm-3.7.tar.gz"
BUILD_TYPE="$BUILD_TYPE EPM"
fi
fi
@@ -6661,7 +6677,7 @@ else
EPM=NO
fi
AC_SUBST(EPM)
-AC_SUBST(BUILD_EPM)
+AC_SUBST(EPM_TARBALL)
dnl ===================================================================
dnl We need winegcc when building MinGW build to be able to cross-build msi tools
@@ -6793,25 +6809,18 @@ if test "$with_system_zlib" = "yes"; then
[AC_MSG_ERROR(zlib.h not found. install zlib)], [])
AC_CHECK_LIB(z, deflate, [ ZLIB=-lz ],
[AC_MSG_ERROR(zlib not found or functional)], [])
- if test "$WITH_MINGW" = "yes"; then
- # we need minizip too
- PKG_CHECK_MODULES([MINIZIP], [minizip])
- libo_MINGW_CHECK_DLL([MINIZIP], [libminizip])
- SYSTEM_MINIZIP=YES
- fi
else
AC_MSG_RESULT([internal])
SYSTEM_ZLIB=NO
- SYSTEM_MINIZIP=NO
BUILD_TYPE="$BUILD_TYPE ZLIB"
ZLIB_CFLAGS="-I${OUTDIR}/inc/external/zlib"
ZLIB_LIBS="-L${OUTDIR}/lib -lz"
+ ZLIB_TARBALL="2ab442d169156f34c379c968f3f482dd-zlib-1.2.7.tar.bz2"
fi
AC_SUBST(ZLIB_CFLAGS)
AC_SUBST(ZLIB_LIBS)
AC_SUBST(SYSTEM_ZLIB)
-AC_SUBST([SYSTEM_MINIZIP])
-AC_SUBST([MINGW_MINIZIP_DLL])
+AC_SUBST(ZLIB_TARBALL)
dnl ===================================================================
dnl Check for system jpeg
@@ -6895,9 +6904,11 @@ if test "$with_system_expat" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_EXPAT=NO
+ EXPAT_TARBALL="dd7dab7a5fea97d2a6a43f511449b7cd-expat-2.1.0.tar.gz"
BUILD_TYPE="$BUILD_TYPE EXPAT"
fi
AC_SUBST(SYSTEM_EXPAT)
+AC_SUBST(EXPAT_TARBALL)
AC_SUBST([MINGW_EXPAT_DLL])
dnl ===================================================================
@@ -6956,7 +6967,7 @@ elif test $_os = iOS; then
else
AC_MSG_RESULT([internal])
SYSTEM_LIBVISIO=NO
- VISIO_TARBALL=94e7f271e38c976462558b4278590178-libvisio-0.0.19.tar.bz2
+ VISIO_TARBALL=2d8c3b50f77c544f317ab0a8838fadcb-libvisio-0.0.20.tar.bz2
fi
AC_SUBST(SYSTEM_LIBVISIO)
AC_SUBST(VISIO_CFLAGS)
@@ -7016,16 +7027,19 @@ if test "$with_system_lcms2" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_LCMS2=NO
- BUILD_TYPE="$BUILD_TYPE LCMS2"
- LCMS2_CFLAGS="-I${OUTDIR}/inc/lcms2"
- if test $_os = Darwin; then
- LCMS2_CFLAGS="$LCMS2_CFLAGS -Wno-long-long"
- fi
LCMS2_LIBS="-L${OUTDIR}/lib -llcms2"
+ LCMS2_CFLAGS="-I${WORKDIR}/UnpackedTarball/lcms2/include"
+ if test "$GCC" = "yes"; then
+ LCMS2_CFLAGS="${LCMS2_CFLAGS} -Wno-long-long"
+ fi
+ LCMS2_TARBALL="861ef15fa0bc018f9ddc932c4ad8b6dd-lcms2-2.4.tar.gz"
+ BUILD_TYPE="$BUILD_TYPE LCMS2"
fi
AC_SUBST(SYSTEM_LCMS2)
AC_SUBST(LCMS2_CFLAGS)
+AC_SUBST(LCMS2_TARBALL)
AC_SUBST(LCMS2_LIBS)
+AC_SUBST(LCMS2_TARBALL)
AC_SUBST([MINGW_LCMS2_DLL])
dnl ===================================================================
@@ -7040,11 +7054,13 @@ if test "$with_system_cppunit" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_CPPUNIT=NO
+ CPPUNIT_TARBALL="fa9aa839145cdf860bf596532bb8af97-cppunit-1.13.1.tar.gz"
BUILD_TYPE="$BUILD_TYPE CPPUNIT"
fi
AC_SUBST(SYSTEM_CPPUNIT)
AC_SUBST(CPPUNIT_CFLAGS)
AC_SUBST(CPPUNIT_LIBS)
+AC_SUBST(CPPUNIT_TARBALL)
dnl ===================================================================
dnl Check whether freetype is available
@@ -7167,6 +7183,7 @@ if test "$with_system_libxml" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_LIBXSLT=NO
+ LIBXSLT_TARBALL="e61d0364a30146aaa3001296f853b2b9-libxslt-1.1.26.tar.gz"
BUILD_TYPE="$BUILD_TYPE LIBXSLT"
if test "$cross_compiling" = "yes"; then
@@ -7186,6 +7203,7 @@ AC_SUBST(LIBEXSLT_CFLAGS)
AC_SUBST(LIBEXSLT_LIBS)
AC_SUBST(LIBXSLT_CFLAGS)
AC_SUBST(LIBXSLT_LIBS)
+AC_SUBST(LIBXSLT_TARBALL)
AC_SUBST(XSLTPROC)
AC_SUBST([MINGW_LIBEXSLT_DLL])
AC_SUBST([MINGW_LIBXSLT_DLL])
@@ -7223,11 +7241,13 @@ if test "$with_system_libxml" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_LIBXML=NO
+ LIBXML_TARBALL="7740a8ec23878a2f50120e1faa2730f2-libxml2-2.7.6.tar.gz"
BUILD_TYPE="$BUILD_TYPE LIBXML2"
fi
AC_SUBST(SYSTEM_LIBXML)
AC_SUBST(LIBXML_CFLAGS)
AC_SUBST(LIBXML_LIBS)
+AC_SUBST(LIBXML_TARBALL)
AC_SUBST(XMLLINT)
AC_SUBST([MINGW_LIBXML_DLL])
AC_SUBST([MINGW_ZLIB_DLL])
@@ -7394,6 +7414,7 @@ system)
internal)
SYSTEM_PYTHON=NO
+ PYTHON_TARBALL="e81c2f0953aa60f8062c05a4673f2be0-Python-2.6.1.tar.bz2"
BUILD_TYPE="$BUILD_TYPE PYTHON"
# Embedded Python dies without Home set
if test "$HOME" = ""; then
@@ -7426,6 +7447,7 @@ fi
AC_SUBST(SYSTEM_PYTHON)
AC_SUBST(PYTHON_CFLAGS)
AC_SUBST(PYTHON_LIBS)
+AC_SUBST(PYTHON_TARBALL)
AC_SUBST([MINGW_PYTHON_EXE])
AC_SUBST([MINGW_PYTHON_DLL])
AC_SUBST([MINGW_READLINE_DLL])
@@ -7488,6 +7510,7 @@ or install the Berkeley db development package.])
elif test $_os != iOS -a $_os != Android; then
AC_MSG_RESULT([internal])
SYSTEM_DB=NO
+ BERKELEYDB_TARBALL="d70951c80dabecc2892c919ff5d07172-db-4.7.25.NC-custom.tar.gz"
BUILD_TYPE="$BUILD_TYPE BERKELEYDB"
else
AC_MSG_RESULT([none])
@@ -7496,6 +7519,7 @@ AC_SUBST(SYSTEM_DB)
AC_SUBST(SYSTEM_DB_CFLAGS)
AC_SUBST(DB_LIB)
AC_SUBST(DB_CPPLIB)
+AC_SUBST(BERKELEYDB_TARBALL)
AC_SUBST([MINGW_DB_DLL])
AC_MSG_CHECKING([whether to build the MySQL Connector extension])
@@ -7604,12 +7628,14 @@ int main(int argc, char **argv) {
else
AC_MSG_ERROR([not existing. get it (did you get the -extensions tarball?)])
fi
+ MYSQLCPPCONN_TARBALL="0981bda6548a8c8233ffce2b6e4b2a23-mysql-connector-c++-1.1.0.tar.gz"
BUILD_TYPE="$BUILD_TYPE MYSQLCPPCONN"
SYSTEM_MYSQL_CPPCONN=NO
fi
AC_LANG_POP([C++])
- AC_SUBST(SYSTEM_MYSQL_CPPCONN)
fi
+AC_SUBST(SYSTEM_MYSQL_CPPCONN)
+AC_SUBST(MYSQLCPPCONN_TARBALL)
dnl ===================================================================
dnl Check for system hsqldb
@@ -7655,6 +7681,7 @@ if test "$with_system_hsqldb" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_HSQLDB=NO
+ HSQLDB_TARBALL="17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip"
BUILD_TYPE="$BUILD_TYPE HSQLDB"
AC_MSG_CHECKING([whether hsqldb should be built with JDBC 4.1])
javanumver=`$JAVAINTERPRETER -version 2>&1 | $AWK -v num=true -f $SRC_ROOT/solenv/bin/getcompver.awk`
@@ -7667,6 +7694,7 @@ else
fi
AC_SUBST(SYSTEM_HSQLDB)
AC_SUBST(HSQLDB_JAR)
+AC_SUBST(HSQLDB_TARBALL)
AC_SUBST([HSQLDB_USE_JDBC_4_1])
fi
@@ -7773,6 +7801,7 @@ if test "x$enable_postgresql_sdbc" != "xno"; then
POSTGRESQL_LIB=""
POSTGRESQL_INC="%OVERRIDE_ME%"
BUILD_TYPE="$BUILD_TYPE POSTGRESQL"
+ POSTGRESQL_TARBALL="061a9f17323117c9358ed60f33ecff78-postgresql-9.1.1.tar.bz2"
fi
fi
if test "${SYSTEM_POSTGRESQL}" = "YES"; then
@@ -7797,131 +7826,7 @@ AC_SUBST(BUILD_POSTGRESQL_SDBC)
AC_SUBST(SYSTEM_POSTGRESQL)
AC_SUBST(POSTGRESQL_INC)
AC_SUBST(POSTGRESQL_LIB)
-
-
-dnl ===================================================================
-dnl Check for system saxon
-dnl ===================================================================
-if test "$with_java" != "no"; then
-AC_MSG_CHECKING([which saxon to use])
-if test "$with_system_saxon" = "yes"; then
- AC_MSG_RESULT([external])
- SYSTEM_SAXON=YES
- if test -z $SAXON_JAR; then
- AC_CHECK_FILE(/usr/share/java/saxon9.jar,
- [ SAXON_JAR=/usr/share/java/saxon9.jar ],
- [
- AC_CHECK_FILE(/usr/share/java/saxon.jar,
- [ SAXON_JAR=/usr/share/java/saxon.jar ],
- [ AC_CHECK_FILE(/usr/share/java/saxon9.jar,
- [ SAXON_JAR=/usr/share/java/saxon9.jar ],
- [ AC_MSG_ERROR(saxon.jar replacement not found)]
- )
- ]
- )
- ]
- )
- else
- AC_CHECK_FILE($SAXON_JAR, [],
- [AC_MSG_ERROR(saxon.jar replacement not found.)], [])
- fi
-
- dnl Saxon comes in two practically available versions, the out-of-date saxonb which
- dnl supports the Java extensions that LibreOffice uses, and the up-to-date saxon he
- dnl "home edition" version, which is crippled to not support those Java extensions.
- dnl And as an aside the he one also needs to be tweaked to include
- dnl a META-INF/services to broadcast that it supports the jaxp transform factory
-
- AC_MSG_CHECKING([if saxon works])
- cat > saxontest.java <<_ACEOF
-[import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.stream.StreamSource;
-import java.io.*;
-
-import net.sf.saxon.FeatureKeys;
-
-class saxontest {
- public static void main(String[] args) {
- System.setProperty("javax.xml.transform.TransformerFactory",
- "net.sf.saxon.TransformerFactoryImpl");
- try {
- TransformerFactory tfactory = TransformerFactory.newInstance();
- // some external saxons (Debian, Ubuntu, ...) have this disabled
- // per default
- tfactory.setAttribute(FeatureKeys.ALLOW_EXTERNAL_FUNCTIONS, new Boolean(true));
- System.out.println("TransformerFactory is" +
- tfactory.getClass().getName());
- Transformer transformer = tfactory.newTransformer(
- new StreamSource(new File(args[0])));
- } catch(Exception e){
- e.printStackTrace(System.err);
- System.exit(-1);
- }
- System.exit(0);
- }
-}
-]
-_ACEOF
-
- cat > saxontest.xsl<<_ACEOF
-[<?xml version="1.0" encoding="UTF-8"?>
-<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:template match="/">
- <xsl:value-of select="math:sqrt(1)" xmlns:math="java:java.lang.Math"/>
- </xsl:template>
-</xsl:stylesheet>
-]
-_ACEOF
-
- javac_cmd="$JAVACOMPILER -cp $SAXON_JAR saxontest.java 1>&2"
- AC_TRY_EVAL(javac_cmd)
- if test $? = 0 -a -f ./saxontest.class; then
- java_cmd="$JAVAINTERPRETER -cp $SAXON_JAR:. saxontest saxontest.xsl 1>&2"
- AC_TRY_EVAL(java_cmd)
- if test $? = 0; then
- AC_MSG_RESULT([yes])
- else
- cat saxontest.java >&5
- AC_MSG_RESULT([no])
- AC_MSG_ERROR([Non-functional saxon jar, e.g. crippled saxon-he instead of saxonb])
- fi
- else
- AC_MSG_RESULT([no])
- cat saxontest.java >&5
- AC_MSG_ERROR([saxontest could not be compiled, non-functional saxon jar])
- fi
-else
- AC_MSG_RESULT([internal])
- SYSTEM_SAXON=NO
- NEED_SAXON=TRUE
- SAXON_TARBALL=ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip
-fi
-fi
-AC_SUBST(SYSTEM_SAXON)
-AC_SUBST(SAXON_TARBALL)
-AC_SUBST(SAXON_JAR)
-
-if test -n "$NEED_SAXON"; then
- BUILD_TYPE="$BUILD_TYPE SAXON"
-fi
-
-# ===================================================================
-# Check whether to build stax
-# ===================================================================
-AC_MSG_CHECKING([whether building the stax is required])
-BUILD_STAX=NO
-if test -z "$SOLAR_JAVA"; then
- AC_MSG_RESULT([no (java disabled)])
-elif test "$SYSTEM_SAXON" = "YES"; then
- AC_MSG_RESULT([no (already provided by system saxon)])
-elif test -f "./stax/download/jsr173_1.0_api.jar"; then
- AC_MSG_RESULT([no (will use the prebuilt stax/download/jsr173_1.0_api.jar)])
-else
- BUILD_STAX=YES
- AC_MSG_RESULT([yes (no system saxon and no prebuilt copy)])
-fi
-AC_SUBST(BUILD_STAX)
+AC_SUBST(POSTGRESQL_TARBALL)
dnl ===================================================================
dnl Check for system curl
@@ -7991,9 +7896,11 @@ if test "$with_system_curl" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_CURL=NO
+ CURL_TARBALL="3fa4d5236f2a36ca5c3af6715e837691-curl-7.26.0.tar.gz"
BUILD_TYPE="$BUILD_TYPE CURL"
fi
AC_SUBST(SYSTEM_CURL)
+AC_SUBST(CURL_TARBALL)
AC_SUBST(CURL_CFLAGS)
AC_SUBST(CURL_LIBS)
AC_SUBST([MINGW_CURL_DLL])
@@ -8163,7 +8070,7 @@ dnl ===================================================================
dnl Check for system openldap
dnl ===================================================================
-if test "$_os" != "WINNT"; then
+if test "$_os" != "WINNT" -a "$_os" != "iOS" -a "$_os" != "Android"; then
AC_MSG_CHECKING([which openldap library to use])
if test "$with_system_openldap" = "yes"; then
AC_MSG_RESULT([external])
@@ -8174,12 +8081,12 @@ if test "$with_system_openldap" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_OPENLDAP=NO
+ OPENLDAP_TARBALL="804c6cb5698db30b75ad0ff1c25baefd-openldap-2.4.31.tgz"
BUILD_TYPE="$BUILD_TYPE OPENLDAP"
fi
-else
- SYSTEM_OPENLDAP=NO
fi
AC_SUBST(SYSTEM_OPENLDAP)
+AC_SUBST(OPENLDAP_TARBALL)
dnl ===================================================================
dnl Check for system mozilla
@@ -8380,6 +8287,12 @@ AC_SUBST(MOZ_LIB)
AC_SUBST(MOZ_LIB_XPCOM)
AC_SUBST(MOZ_TARBALL)
+# libxmlsec is mandatory
+if test $_os != Android -a $_os != iOS ; then
+ LIBXMLSEC_TARBALL="1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz"
+fi
+AC_SUBST(LIBXMLSEC_TARBALL)
+
dnl ===================================================================
dnl Check for system NSS
dnl ===================================================================
@@ -8388,8 +8301,16 @@ if test "$with_system_nss" = "yes"; then
AC_MSG_RESULT([external])
SYSTEM_NSS="YES"
PKG_CHECK_MODULES(NSS, nss >= 3.9.3 nspr >= 4.8)
+ libo_MINGW_CHECK_DLL([NSPR4], [libnspr4])
+ libo_MINGW_CHECK_DLL([PLC4], [libplc4])
+ libo_MINGW_CHECK_DLL([PLDS4], [libplds4])
+ libo_MINGW_CHECK_DLL([NSS3], [nss3])
+ libo_MINGW_CHECK_DLL([NSSUTIL3], [nssutil3])
+ libo_MINGW_CHECK_DLL([SMIME3], [smime3])
+ libo_MINGW_CHECK_DLL([SSL3], [ssl3])
else
SYSTEM_NSS="NO"
+ NSS_TARBALL="a0a861f539f0e7a91d05e6b9457e4db1-nss-3.13.5-with-nspr-4.9.1.tar.gz"
BUILD_TYPE="$BUILD_TYPE NSS"
AC_MSG_RESULT([internal])
if test "$build_os" = "cygwin"; then
@@ -8419,6 +8340,8 @@ fi # system nss
AC_SUBST(SYSTEM_NSS)
AC_SUBST(NSS_CFLAGS)
AC_SUBST(NSS_LIBS)
+AC_SUBST(NSS_TARBALL)
+AC_SUBST([MINGW_SMIME3_DLL])
dnl ===================================================================
dnl Check for system mozilla headers
@@ -8580,6 +8503,7 @@ You can use --with-system-icu-for-build=force to use it anyway.])
else
AC_MSG_RESULT([internal])
SYSTEM_ICU="NO"
+ ICU_TARBALL="7c53f83e0327343f4060c0eb83842daf-icu4c-49_1_1-src.tgz"
BUILD_TYPE="$BUILD_TYPE ICU"
fi
@@ -8594,6 +8518,7 @@ AC_SUBST(ICU_RECLASSIFIED_CLOSE_PARENTHESIS)
AC_SUBST([ICU_RECLASSIFIED_CONDITIONAL_JAPANESE_STARTER])
AC_SUBST([ICU_RECLASSIFIED_HEBREW_LETTER])
AC_SUBST(ICU_RECLASSIFIED_PREPEND_SET_EMPTY)
+AC_SUBST(ICU_TARBALL)
AC_SUBST([MINGW_ICUDATA_DLL])
AC_SUBST([MINGW_ICUI18N_DLL])
AC_SUBST([MINGW_ICUUC_DLL])
@@ -8616,14 +8541,16 @@ if test "$_os" = "WINNT" -o "$_os" = "Linux" && test "$enable_graphite" = "" -o
AC_MSG_RESULT([internal])
SYSTEM_GRAPHITE=NO
BUILD_TYPE="$BUILD_TYPE GRAPHITE"
+ GRAPHITE_TARBALL=f5ef3f7f10fa8c3542c6a085a233080b-graphite2-1.2.0.tgz
fi
else
AC_MSG_RESULT([no])
fi
AC_SUBST(ENABLE_GRAPHITE)
AC_SUBST(SYSTEM_GRAPHITE)
-AC_SUBST(GRAPHITE_LIBS)
AC_SUBST(GRAPHITE_CFLAGS)
+AC_SUBST(GRAPHITE_LIBS)
+AC_SUBST(GRAPHITE_TARBALL)
AC_SUBST([MINGW_GRAPHITE2_DLL])
dnl ===================================================================
@@ -8861,11 +8788,13 @@ if test "$with_system_openssl" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_OPENSSL=NO
+ OPENSSL_TARBALL="51a40a81b3b7abe8a5c33670bd3da0ce-openssl-0.9.8v.tar.gz"
BUILD_TYPE="$BUILD_TYPE OPENSSL"
fi
AC_SUBST(SYSTEM_OPENSSL)
AC_SUBST(OPENSSL_CFLAGS)
AC_SUBST(OPENSSL_LIBS)
+AC_SUBST(OPENSSL_TARBALL)
AC_SUBST([MINGW_SSL_DLL])
AC_SUBST([MINGW_CRYPTO_DLL])
@@ -8884,12 +8813,18 @@ if test "$with_system_redland" = "yes"; then
libo_MINGW_TRY_DLL([SQLITE3], [libsqlite3])
else
AC_MSG_RESULT([internal])
+ RAPTOR_TARBALL="284e768eeda0e2898b0d5bf7e26a016e-raptor-1.4.18.tar.gz"
+ RASQAL_TARBALL="fca8706f2c4619e2fa3f8f42f8fc1e9d-rasqal-0.9.16.tar.gz"
+ REDLAND_TARBALL="ca66e26082cab8bb817185a116db809b-redland-1.0.8.tar.gz"
BUILD_TYPE="$BUILD_TYPE REDLAND"
SYSTEM_REDLAND=NO
fi
AC_SUBST(SYSTEM_REDLAND)
+AC_SUBST(RAPTOR_TARBALL)
+AC_SUBST(RASQAL_TARBALL)
AC_SUBST(REDLAND_CFLAGS)
AC_SUBST(REDLAND_LIBS)
+AC_SUBST(REDLAND_TARBALL)
AC_SUBST([MINGW_RAPTOR_DLL])
AC_SUBST([MINGW_RASQAL_DLL])
AC_SUBST([MINGW_REDLAND_DLL])
@@ -8937,9 +8872,13 @@ if test "$with_system_hunspell" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_HUNSPELL=NO
+ HUNSPELL_CFLAGS="-I${WORKDIR}/UnpackedTarball/hunspell/src/hunspell"
+ HUNSPELL_LIBS="-L${OUTDIR}/lib -lhunspell"
+ HUNSPELL_TARBALL="3121aaf3e13e5d88dfff13fb4a5f1ab8-hunspell-1.3.2.tar.gz"
BUILD_TYPE="$BUILD_TYPE HUNSPELL"
fi
AC_SUBST(SYSTEM_HUNSPELL)
+AC_SUBST(HUNSPELL_TARBALL)
AC_SUBST(HUNSPELL_CFLAGS)
AC_SUBST(HUNSPELL_LIBS)
AC_SUBST([MINGW_HUNSPELL_DLL])
@@ -8970,10 +8909,12 @@ if test "$with_system_altlinuxhyph" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_HYPH=NO
+ HYPHEN_TARBALL="a2f6010987e1c601274ab5d63b72c944-hyphen-2.8.4.tar.gz"
BUILD_TYPE="$BUILD_TYPE HYPHEN"
fi
AC_SUBST(SYSTEM_HYPH)
AC_SUBST(HYPHEN_LIB)
+AC_SUBST(HYPHEN_TARBALL)
AC_SUBST([MINGW_HYPHEN_DLL])
dnl ===================================================================
@@ -9003,10 +8944,12 @@ if test "$with_system_mythes" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_MYTHES=NO
+ MYTHES_TARBALL="46e92b68e31e858512b680b3b61dc4c1-mythes-1.2.3.tar.gz"
BUILD_TYPE="$BUILD_TYPE MYTHES"
fi
AC_SUBST(SYSTEM_MYTHES)
AC_SUBST(MYTHES_CFLAGS)
+AC_SUBST(MYTHES_TARBALL)
AC_SUBST(MYTHES_LIBS)
AC_SUBST([MINGW_MYTHES_DLL])
@@ -9030,9 +8973,11 @@ if test "$with_system_lpsolve" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_LPSOLVE=NO
+ LPSOLVE_TARBALL="26b3e95ddf3d9c077c480ea45874b3b8-lp_solve_5.5.tar.gz"
BUILD_TYPE="$BUILD_TYPE LPSOLVE"
fi
AC_SUBST(SYSTEM_LPSOLVE)
+AC_SUBST(LPSOLVE_TARBALL)
AC_SUBST([MINGW_LPSOLVE_DLL])
dnl ===================================================================
@@ -9047,12 +8992,14 @@ if test "$with_system_libexttextcat" = "yes"; then
else
AC_MSG_RESULT([internal])
SYSTEM_LIBEXTTEXTCAT=NO
+ LIBEXTTEXTCAT_TARBALL="6097739c841f671cb21332b9cc593ae7-libexttextcat-3.3.1.tar.bz2"
BUILD_TYPE="$BUILD_TYPE LIBEXTTEXTCAT"
fi
AC_SUBST(SYSTEM_LIBEXTTEXTCAT)
AC_SUBST(SYSTEM_LIBEXTTEXTCAT_DATA)
AC_SUBST(LIBEXTTEXTCAT_CFLAGS)
AC_SUBST(LIBEXTTEXTCAT_LIBS)
+AC_SUBST(LIBEXTTEXTCAT_TARBALL)
dnl ***************************************
dnl testing libc version for Linux...
@@ -9248,11 +9195,10 @@ if test -n "$ENABLE_DIRECTX" -a "$_os" = "WINNT"; then
HAVE_DIRECTXSDK_H="no"
fi
- # MS changed the location of the libraries with Dec 2004 DirectX SDK
- if test -d "$DIRECTXSDK_HOME/lib/x86"; then
- DIRECTXSDK_LIB="$DIRECTXSDK_HOME/lib/x86"
+ if test "$BITNESS_OVERRIDE" = 64; then
+ DIRECTXSDK_LIB="$DIRECTXSDK_HOME/lib/x64"
else
- DIRECTXSDK_LIB="$DIRECTXSDK_HOME/lib"
+ DIRECTXSDK_LIB="$DIRECTXSDK_HOME/lib/x86"
fi
PathFormat "$DIRECTXSDK_LIB"
DIRECTXSDK_LIB="$formatted_path"
@@ -9429,7 +9375,7 @@ dnl ===================================================================
AC_PATH_PROG(ZIP, zip)
test -z "$ZIP" && AC_MSG_ERROR([zip is required])
if ! "$ZIP" --filesync < /dev/null 2>/dev/null > /dev/null; then
- AC_MSG_ERROR([Zip version 3.0 or newer is required to build, please install or use --with-zip-home],,)
+ AC_MSG_ERROR([Zip version 3.0 or newer is required to build, please install it and make sure it is the one found first in PATH],,)
fi
AC_PATH_PROG(UNZIP, unzip)
@@ -9588,32 +9534,42 @@ fi
AC_SUBST(ENABLE_PACKAGEKIT)
AC_MSG_CHECKING([whether to enable sd remotecontrol])
-if test "$ENABLE_DBUS" = "TRUE"; then
- if test -n "$enable_sdremote" -a "$enable_sdremote" != "no"; then
- AC_MSG_RESULT([yes])
- ENABLE_SDREMOTE=YES
+if test -n "$enable_sdremote" -a "$enable_sdremote" != "no"; then
+ AC_MSG_RESULT([yes])
+ ENABLE_SDREMOTE=YES
+ AC_MSG_CHECKING([whether to enable bluetooth support])
+ if test -n "$enable_bluetooth" -a "$enable_bluetooth" != "no"; then
if test "$OS" = "LINUX"; then
- dnl ===================================================================
- dnl Check for system bluez
- dnl ===================================================================
- AC_MSG_CHECKING([which bluetooth header to use])
- if test "$with_system_bluez" = "yes"; then
+ if test "$ENABLE_DBUS" = "TRUE"; then
+ AC_MSG_RESULT([yes])
+ ENABLE_BLUETOOTH=YES
+ dnl ===================================================================
+ dnl Check for system bluez
+ dnl ===================================================================
+ AC_MSG_CHECKING([which bluetooth header to use])
+ if test "$with_system_bluez" = "yes"; then
AC_MSG_RESULT([external])
AC_CHECK_HEADER(bluetooth/bluetooth.h, [],
[AC_MSG_ERROR(bluetooth.h not found. install bluez)], [])
- else
+ else
AC_MSG_RESULT([internal])
BUILD_TYPE="$BUILD_TYPE BLUEZ"
+ fi
+ else
+ AC_MSG_RESULT([no, dbus disabled])
+ ENABLE_BLUETOOTH=NO
fi
+ else
+ AC_MSG_RESULT([no])
+ ENABLE_BLUETOOTH=NO
fi
- else
- ENABLE_SDREMOTE=NO
- AC_MSG_RESULT([no])
fi
else
- AC_MSG_RESULT([no, dbus disabled.])
+ ENABLE_SDREMOTE=NO
+ AC_MSG_RESULT([no])
fi
AC_SUBST(ENABLE_SDREMOTE)
+AC_SUBST(ENABLE_BLUETOOTH)
dnl ===================================================================
dnl Check whether the gtk 2.0 libraries are available.
@@ -9629,10 +9585,14 @@ if test "$test_gtk" = "yes"; then
PKG_CHECK_MODULES(GTHREAD, gthread-2.0,,AC_MSG_ERROR([requirements to build the gtk-plugin not met. Use --disable-gtk or install the missing packages]))
BUILD_TYPE="$BUILD_TYPE GTK"
+ AC_MSG_CHECKING([whether to enable the systray quickstarter])
if test "x$enable_systray" = "xyes"; then
+ AC_MSG_RESULT([yes])
PKG_CHECK_MODULES( GTK210, gtk+-2.0 >= 2.10.0,
[ ENABLE_SYSTRAY_GTK="TRUE" ],
[ ENABLE_SYSTRAY_GTK="" ])
+ else
+ AC_MSG_RESULT([no])
fi
AC_MSG_CHECKING([whether to enable Gtk print dialog support])
@@ -9863,9 +9823,6 @@ if test "x$enable_ext_pdfimport" != "xno" -a "x$enable_extension_integration" !=
AC_MSG_RESULT([external])
SYSTEM_POPPLER=YES
PKG_CHECK_MODULES( POPPLER, poppler >= 0.8.0 )
- # sdext test fails with 0.20.0
- PKG_CHECK_MODULES( POPPLER_NOT_0_20_0, poppler < 0.20.0,
- , [AC_MSG_ERROR([Poppler 0.20.x is broken, do not use --with-system-poppler or use a different version])])
AC_LANG_PUSH([C++])
save_CXXFLAGS=$CXXFLAGS
save_CPPFLAGS=$CPPFLAGS
@@ -9879,6 +9836,7 @@ if test "x$enable_ext_pdfimport" != "xno" -a "x$enable_extension_integration" !=
else
AC_MSG_RESULT([internal])
SYSTEM_POPPLER=NO
+ XPDF_TARBALL="599dc4cc65a07ee868cf92a667a913d2-xpdf-3.02.tar.gz"
BUILD_TYPE="$BUILD_TYPE XPDF"
fi
else
@@ -9890,6 +9848,7 @@ AC_SUBST(ENABLE_PDFIMPORT)
AC_SUBST(SYSTEM_POPPLER)
AC_SUBST(POPPLER_CFLAGS)
AC_SUBST(POPPLER_LIBS)
+AC_SUBST(XPDF_TARBALL)
if test "$ENABLE_PRESENTER_SCREEN" = "YES" -o "$ENABLE_MINIMIZER" = "YES" -o "$ENABLE_PDFIMPORT" = "YES"; then
@@ -10290,6 +10249,7 @@ if test "${enable_scripting_javascript}" != "no" -a "x$with_java" != "xno"; then
AC_MSG_RESULT([internal])
SYSTEM_RHINO=NO
RHINO_TARBALL="798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip"
+ SWING_TARBALL="35c94d2df8893241173de1d16b6034c0-swingExSrc.zip"
BUILD_TYPE="$BUILD_TYPE RHINO"
fi
else
@@ -10301,6 +10261,7 @@ AC_SUBST(ENABLE_SCRIPTING_JAVASCRIPT)
AC_SUBST(SYSTEM_RHINO)
AC_SUBST(RHINO_JAR)
AC_SUBST(RHINO_TARBALL)
+AC_SUBST(SWING_TARBALL)
dnl Scripting provider for Python extension?
dnl We always provide this unless we have disabled Python completely
@@ -10996,10 +10957,12 @@ AC_MSG_CHECKING([for ConvertTextToNumber extension integration])
if test "x$enable_ext_ct2n" = "xyes" -a "x$enable_extension_integration" != "xno"; then
BUILD_TYPE="$BUILD_TYPE CT2N"
SCPDEFS="$SCPDEFS -DWITH_EXTENSION_CT2N"
+ CT2N_TARBALL="451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt"
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
fi
+AC_SUBST([CT2N_TARBALL])
dnl ===================================================================
dnl Test whether to include Numbertext extension
@@ -11167,6 +11130,10 @@ if test "$with_fonts" != "no"; then
FONT_LIBERATION_NARROW_TARBALL="0be45d54cc5e1c2e3102e32b8c190346-liberation-fonts-ttf-1.07.1.tar.gz"
FONT_LIBERATION_TARBALL="5c781723a0d9ed6188960defba8e91cf-liberation-fonts-ttf-2.00.1.tar.gz"
FONT_LINLIBERTINEG_TARBALL="e7a384790b13c29113e22e596ade9687-LinLibertineG-20120116.zip"
+ FONT_OPENSANS_TARBALL="7a15edea7d415ac5150ea403e27401fd-open-sans-font-ttf-1.10.tar.gz"
+ FONT_PTSERIF_TARBALL="c3c1a8ba7452950636e871d25020ce0d-pt-serif-font-1.0000W.tar.gz"
+ FONT_SOURCECODE_TARBALL="0279a21fab6f245e85a6f85fea54f511-source-code-font-1.009.tar.gz"
+ FONT_SOURCESANS_TARBALL="1e9ddfe25ac9577da709d7b2ea36f939-source-sans-font-1.036.tar.gz"
else
AC_MSG_RESULT([no])
WITH_FONTS=NO
@@ -11176,12 +11143,20 @@ else
FONT_LIBERATION_NARROW_TARBALL=
FONT_LIBERATION_TARBALL=
FONT_LINLIBERTINEG_TARBALL=
+ FONT_OPENSANS_TARBALL=
+ FONT_PTSERIF_TARBALL=
+ FONT_SOURCECODE_TARBALL=
+ FONT_SOURCESANS_TARBALL=
fi
AC_SUBST(FONT_DEJAVU_TARBALL)
AC_SUBST(FONT_GENTIUM_TARBALL)
AC_SUBST(FONT_LIBERATION_TARBALL)
AC_SUBST(FONT_LINLIBERTINEG_TARBALL)
AC_SUBST(FONT_LIBERATION_NARROW_TARBALL)
+AC_SUBST(FONT_OPENSANS_TARBALL)
+AC_SUBST(FONT_PTSERIF_TARBALL)
+AC_SUBST(FONT_SOURCECODE_TARBALL)
+AC_SUBST(FONT_SOURCESANS_TARBALL)
AC_SUBST(WITH_FONTS)
@@ -11443,111 +11418,6 @@ AC_SUBST(USE_XINERAMA)
AC_SUBST(XINERAMA_LINK)
dnl ===================================================================
-dnl Checks for librsvg
-dnl ===================================================================
-
-dnl ENABLE_LIBRSVG is set to "" (for NO), SYSTEM or INTERNAL. The
-dnl SYSTEM_LIBRSVG, SYSTEM_GDKPIXBUF etc are redundant.
-
-dnl FIXME: RSVG is a hard dependency now as the impress masterpages use it
-dnl FIXME: thus the --enable-rsvg=no is not really an option anymore and we
-dnl should error out in that case. leaving as is for now as this might be an
-dnl unwelcome buildbreaker otherwise
-ENABLE_LIBRSVG=""
-LIBRSVG_CFLAGS=""
-LIBRSVG_LIBS=""
-
-AC_MSG_CHECKING([what librsvg to use])
-
-case "$enable_librsvg" in
-no|disable)
- AC_MSG_RESULT([none])
- enable_librsvg=no
- ;;
-
-""|yes|auto)
- if test $build_os = cygwin -o \
- $_os = Darwin; then
- dnl When building on/for these OSes always use the internal one,
- dnl if at all. Add more OSes above as needed.
- AC_MSG_RESULT([internal])
- enable_librsvg=internal
- elif test $_os = iOS -o $_os = Android; then
- AC_MSG_RESULT([none])
- enable_librsvg=no
- else
- if test "$with_system_libs" = yes; then
- AC_MSG_RESULT([system])
- PKG_CHECK_MODULES(LIBRSVG, librsvg-2.0 >= 2.14)
- enable_librsvg=system
- elif test "$with_system_libs" = no; then
- AC_MSG_RESULT([internal])
- enable_librsvg=internal
- else
- AC_MSG_RESULT([checking further])
- PKG_CHECK_MODULES(LIBRSVG, librsvg-2.0 >= 2.14,, [:])
- if test -z "$LIBRSVG_PKG_ERRORS"; then
- enable_librsvg=system
- else
- enable_librsvg=internal
- fi
- fi
- fi
- ;;
-
-internal)
- AC_MSG_RESULT([internal])
- ;;
-
-fully-internal)
- AC_MSG_RESULT([fully internal])
- ;;
-
-system)
- if test $_os = WINNT -a "$WITH_MINGW" != yes; then
- AC_MSG_ERROR([Must use internal librsvg when building with MSVC])
- fi
- AC_MSG_RESULT([system])
- PKG_CHECK_MODULES(LIBRSVG, librsvg-2.0 >= 2.14)
- ;;
-
-*)
- AC_MSG_ERROR([Incorrect --enable-librsvg option])
- ;;
-esac
-
-dnl By now enable_librsvg should be "system", "internal", "fully-internal", or
-dnl "no":
-case $enable_librsvg in
-system)
- ENABLE_LIBRSVG=SYSTEM
- SYSTEM_LIBRSVG=YES
- ;;
-
-internal|fully-internal)
- ENABLE_LIBRSVG=INTERNAL
- SYSTEM_LIBRSVG=NO
- BUILD_TYPE="$BUILD_TYPE LIBRSVG"
- LIBRSVG_TARBALL="d7a242ca43e33e1b63d3073f9d46a6a8-librsvg-2.32.1.tar.gz"
- ;;
-
-no)
- ENABLE_LIBRSVG=NO
- SYSTEM_LIBRSVG=NO
- ;;
-
-*)
- AC_MSG_ERROR([Internal configure script error, invalid enable_librsvg value "$enable_librsvg"])
- ;;
-esac
-
-AC_SUBST(ENABLE_LIBRSVG)
-AC_SUBST(LIBRSVG_TARBALL)
-AC_SUBST(LIBRSVG_CFLAGS)
-AC_SUBST(LIBRSVG_LIBS)
-AC_SUBST(SYSTEM_LIBRSVG)
-
-dnl ===================================================================
dnl Test whether to build cairo or rely on the system version
dnl ===================================================================
@@ -11588,17 +11458,21 @@ if test "$test_cairo" = "yes" ; then
if test $_os = WINNT; then
dnl We only need cairo for Windows if we
dnl build librsvg or directx disabled
- if test "$ENABLE_LIBRSVG" != NO -o -z "$ENABLE_DIRECTX"; then
+ if test -z "$ENABLE_DIRECTX"; then
+ CAIRO_TARBALL="f101a9e88b783337b20b2e26dfd26d5f-cairo-1.10.2.tar.gz"
+ PIXMAN_TARBALL="c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2"
BUILD_TYPE="$BUILD_TYPE CAIRO"
fi
else
if test "$enable_cairo_canvas" = "yes"; then
+ CAIRO_TARBALL="f101a9e88b783337b20b2e26dfd26d5f-cairo-1.10.2.tar.gz"
+ PIXMAN_TARBALL="c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2"
BUILD_TYPE="$BUILD_TYPE CAIRO"
else
if test "$with_system_cairo" != "yes"; then
- if test "$ENABLE_LIBRSVG" != NO; then
- BUILD_TYPE="$BUILD_TYPE CAIRO"
- fi
+ CAIRO_TARBALL="f101a9e88b783337b20b2e26dfd26d5f-cairo-1.10.2.tar.gz"
+ PIXMAN_TARBALL="c63f411b3ad147db2bcce1bf262a0e02-pixman-0.24.4.tar.bz2"
+ BUILD_TYPE="$BUILD_TYPE CAIRO"
fi
fi
fi
@@ -11608,81 +11482,14 @@ fi
AC_SUBST(SYSTEM_CAIRO)
AC_SUBST(CAIRO_CFLAGS)
AC_SUBST(CAIRO_LIBS)
+AC_SUBST(CAIRO_TARBALL)
+AC_SUBST(PIXMAN_TARBALL)
AC_SUBST([MINGW_CAIRO_DLL])
AC_SUBST([MINGW_FONTCONFIG_DLL])
AC_SUBST([MINGW_FREETYPE_DLL])
AC_SUBST([MINGW_PIXMAN_DLL])
AC_SUBST([MINGW_PNG15_DLL])
-
-dnl ===================================================================
-dnl Test whether to build gdk-pixbuf or rely on the system version
-dnl ===================================================================
-
-AC_MSG_CHECKING([whether to use the system gdk-pixbuf])
-
-dnl As long as the only thing we need gdk-pixbuf for is below
-dnl librsvg, use the same --enable-librsvg (possibly implied
-dnl by --with-system-libs) to override this.
-
-if test "$SYSTEM_LIBRSVG" = YES; then
- SYSTEM_GDKPIXBUF=YES
- AC_MSG_RESULT([yes])
-elif test "$enable_librsvg" = fully-internal; then
- SYSTEM_GDKPIXBUF=NO
- AC_MSG_RESULT([no])
-else
- case "$_os" in
- WINNT|Darwin|iOS|Android)
- SYSTEM_GDKPIXBUF=NO
- AC_MSG_RESULT([no])
- ;;
- *)
- SYSTEM_GDKPIXBUF=YES
- AC_MSG_RESULT([yes])
- ;;
- esac
-fi
-AC_SUBST(SYSTEM_GDKPIXBUF)
-
-dnl ===================================================================
-dnl Test whether to build GLib or rely on the system version
-dnl ===================================================================
-
-AC_MSG_CHECKING([whether to use the system GLib])
-
-dnl As long as the only thing we need GLib for is below
-dnl librsvg, use the same --enable-librsvg (possibly implied
-dnl by --with-system-libs) to override this.
-
-if test "$SYSTEM_LIBRSVG" = YES; then
- SYSTEM_GLIB=YES
- AC_MSG_RESULT([yes])
-elif test "$enable_librsvg" = fully-internal; then
- SYSTEM_GLIB=NO
- AC_MSG_RESULT([no])
-else
- case "$_os" in
- WINNT|Darwin|iOS|Android)
- SYSTEM_GLIB=NO
- AC_MSG_RESULT([no])
- ;;
- *)
- SYSTEM_GLIB=YES
- AC_MSG_RESULT([yes])
- ;;
- esac
-fi
-AC_SUBST(SYSTEM_GLIB)
-
-if test "$SYSTEM_GLIB" = "YES"; then
- PKG_CHECK_MODULES( GLIB, glib-2.0 )
-elif test $_os != iOS -a $_os != Android; then
- BUILD_TYPE="$BUILD_TYPE GLIB"
-fi
-AC_SUBST(GLIB_CFLAGS)
-AC_SUBST(GLIB_LIBS)
-
dnl ===================================================================
dnl Test whether to use liblangtag
dnl ===================================================================
@@ -11696,10 +11503,12 @@ if test "$enable_liblangtag" = "yes" -o \( "$enable_liblangtag" = "" -a $_os !=
if test "$with_system_liblangtag" = yes; then
SYSTEM_LIBLANGTAG=YES
AC_MSG_RESULT([yes])
- PKG_CHECK_MODULES( LIBLANGTAG, liblangtag >= 0.3)
+ PKG_CHECK_MODULES( LIBLANGTAG, liblangtag >= 0.4.0)
+ libo_MINGW_CHECK_DLL([LIBLANGTAG], [liblangtag])
else
SYSTEM_LIBLANGTAG=NO
AC_MSG_RESULT([no])
+ LIBLANGTAG_TARBALL="54e578c91b1b68e69c72be22adcb2195-liblangtag-0.4.0.tar.bz2"
BUILD_TYPE="$BUILD_TYPE LIBLANGTAG"
fi
else
@@ -11710,125 +11519,8 @@ AC_SUBST(ENABLE_LIBLANGTAG)
AC_SUBST(SYSTEM_LIBLANGTAG)
AC_SUBST(LIBLANGTAG_CFLAGS)
AC_SUBST(LIBLANGTAG_LIBS)
-
-dnl ===================================================================
-dnl Test whether to build gettext runtime (libintl) or rely on the
-dnl system version
-dnl ===================================================================
-
-AC_MSG_CHECKING([whether to use the system gettext runtime])
-
-if test -z "$with_system_gettext"; then
- case "$_os" in
- WINNT|Darwin|iOS|Android)
- with_system_gettext=no
- ;;
- *)
- with_system_gettext=yes
- ;;
- esac
-fi
-if test "$with_system_gettext" = yes; then
- SYSTEM_GETTEXT=YES
- AC_MSG_RESULT([yes])
-elif test "$with_system_gettext" = no; then
- SYSTEM_GETTEXT=NO
- AC_MSG_RESULT([no])
-else
- AC_MSG_ERROR([bad --with-system-gettext=$with_system_gettext])
-fi
-AC_SUBST(SYSTEM_GETTEXT)
-
-dnl ===================================================================
-dnl Test whether to build libcroco or rely on the system version
-dnl ===================================================================
-
-AC_MSG_CHECKING([whether to use the system libcroco])
-
-dnl As long as the only thing we need libcroco for is below
-dnl librsvg, use the same --enable-librsvg (possibly implied
-dnl by --with-system-libs) to override this.
-
-if test "$SYSTEM_LIBRSVG" = YES; then
- SYSTEM_LIBCROCO=YES
- AC_MSG_RESULT([yes])
-elif test "$enable_librsvg" = fully-internal; then
- SYSTEM_LIBCROCO=NO
- AC_MSG_RESULT([no])
-else
- case "$_os" in
- WINNT|Darwin|iOS|Android)
- SYSTEM_LIBCROCO=NO
- AC_MSG_RESULT([no])
- ;;
- *)
- SYSTEM_LIBCROCO=YES
- AC_MSG_RESULT([yes])
- ;;
- esac
-fi
-AC_SUBST(SYSTEM_LIBCROCO)
-
-dnl ===================================================================
-dnl Test whether to build Pango or rely on the system version
-dnl ===================================================================
-
-AC_MSG_CHECKING([whether to use the system pango])
-
-dnl As long as the only thing we need Pango for is below
-dnl librsvg, use the same --enable-librsvg (possibly implied
-dnl by --with-system-libs) to override this.
-
-if test "$SYSTEM_LIBRSVG" = YES; then
- SYSTEM_PANGO=YES
- AC_MSG_RESULT([yes])
-elif test "$enable_librsvg" = fully-internal; then
- SYSTEM_PANGO=NO
- AC_MSG_RESULT([no])
-else
- case "$_os" in
- WINNT|Darwin|iOS|Android)
- SYSTEM_PANGO=NO
- AC_MSG_RESULT([no])
- ;;
- *)
- SYSTEM_PANGO=YES
- AC_MSG_RESULT([yes])
- ;;
- esac
-fi
-AC_SUBST(SYSTEM_PANGO)
-
-dnl ===================================================================
-dnl Test whether to build libgsf or rely on the system version
-dnl ===================================================================
-
-AC_MSG_CHECKING([whether to use the system libgsf])
-
-dnl As long as the only thing we need libgsf for is below librsvg (is
-dnl it?), use the same --enable-librsvg (possibly implied by
-dnl --with-system-libs) to override this.
-
-if test "$SYSTEM_LIBRSVG" = YES; then
- SYSTEM_LIBGSF=YES
- AC_MSG_RESULT([yes])
-elif test "$enable_librsvg" = fully-internal; then
- SYSTEM_LIBGSF=NO
-
- AC_MSG_RESULT([no])
-else
- case "$_os" in
- WINNT|Darwin|iOS|Android)
- SYSTEM_LIBGSF=NO
- AC_MSG_RESULT([no])
- ;;
- *)
- SYSTEM_LIBGSF=YES
- AC_MSG_RESULT([yes])
- ;;
- esac
-fi
-AC_SUBST(SYSTEM_LIBGSF)
+AC_SUBST(LIBLANGTAG_TARBALL)
+AC_SUBST([MINGW_LIBLANGTAG_DLL])
dnl ===================================================================
dnl Test whether to build libpng or rely on the system version
@@ -12164,7 +11856,7 @@ if test -z "$WITH_LANG" -o "$WITH_LANG" = "en-US"; then
AC_MSG_RESULT([en-US])
else
AC_MSG_RESULT([$WITH_LANG])
- GIT_REPO_NAMES="$GIT_REPO_NAMES translations"
+ GIT_NEEDED_SUBMODULES="translations $GIT_NEEDED_SUBMODULES"
fi
# check that the list is valid
for lang in $WITH_LANG; do
@@ -12184,19 +11876,20 @@ WITH_LANG_LIST=`echo $WITH_LANG | sed "s/ALL/$ALL_LANGS/"`
# this variable is used only by bin/distro-install-* helper scripts
# they need a real list of languages
test -z "$WITH_LANG_LIST" && WITH_LANG_LIST="en-US"
-test -z "$WITH_LANG" -o "$WITH_LANG" = "en-US" || BUILD_TYPE="$BUILD_TYPE TRANSLATIONS"
+test "$WITH_LANG" = "en-US" && WITH_LANG=
+test -z "$WITH_LANG" || BUILD_TYPE="$BUILD_TYPE TRANSLATIONS"
AC_SUBST(ALL_LANGS)
AC_SUBST(WITH_LANG)
AC_SUBST(WITH_LANG_LIST)
-AC_SUBST(GIT_REPO_NAMES)
+AC_SUBST(GIT_NEEDED_SUBMODULES)
PathFormat "$SRC_ROOT/translations"
L10N_MODULE="$formatted_path"
WITH_POOR_HELP_LOCALIZATIONS=
-if test -d "./translations"; then
- for l in `ls -1 translations/source`; do
- if test ! -d translations/source/$l/helpcontent2; then
+if test -d "$SRC_ROOT/translations/source"; then
+ for l in `ls -1 $SRC_ROOT/translations/source`; do
+ if test ! -d "$SRC_ROOT/translations/source/$l/helpcontent2"; then
WITH_POOR_HELP_LOCALIZATIONS="$WITH_POOR_HELP_LOCALIZATIONS $l"
fi
done
@@ -12207,7 +11900,7 @@ AC_SUBST(WITH_POOR_HELP_LOCALIZATIONS)
dnl git-new-workdir
dnl ===================================================================
if test -n "${GIT_LINK_SRC}"; then
- for repo in ${GIT_REPO_NAMES}; do
+ for repo in ${GIT_NEEDED_SUBMODULES}; do
if ! test -d "${GIT_LINK_SRC}"/${repo}; then
AC_MSG_ERROR([linked git: required repository does not exist: ${GIT_LINK_SRC}/${repo}])
fi
@@ -12568,32 +12261,63 @@ dnl ===================================================================
dnl Number of CPUs to use during the build
dnl ===================================================================
AC_MSG_CHECKING([for number of processors to use])
-if test -n "$with_num_cpus"; then
- BUILD_NCPUS=$with_num_cpus
+# plain --with-parallelism is just the default
+if test -n "$with_parallelism" -a "$with_parallelism" != "yes"; then
+ if test "$with_parallelism" = "no"; then
+ PARALLELISM=1
+ else
+ PARALLELISM=$with_parallelism
+ fi
else
- case `uname -s` in
+ if test "$enable_icecream" = "yes"; then
+ PARALLELISM="10"
+ else
+ case `uname -s` in
- Darwin|FreeBSD|NetBSD|OpenBSD)
- BUILD_NCPUS=`sysctl -n hw.ncpu`
- ;;
+ Darwin|FreeBSD|NetBSD|OpenBSD)
+ PARALLELISM=`sysctl -n hw.ncpu`
+ ;;
- Linux)
- BUILD_NCPUS=`getconf _NPROCESSORS_ONLN`
- ;;
- # what else than above does profit here *and* has /proc?
- *)
- BUILD_NCPUS=`grep $'^processor\t*:' /proc/cpuinfo | wc -l`
+ Linux)
+ PARALLELISM=`getconf _NPROCESSORS_ONLN`
;;
- esac
+ # what else than above does profit here *and* has /proc?
+ *)
+ PARALLELISM=`grep $'^processor\t*:' /proc/cpuinfo | wc -l`
+ ;;
+ esac
- # If we hit the catch-all case, but /proc/cpuinfo doesn't exist or has an
- # unexpected format, 'wc -l' will have returned 0.
- if test "$BUILD_NCPUS" -eq 0; then
- BUILD_NCPUS=1
+ # If we hit the catch-all case, but /proc/cpuinfo doesn't exist or has an
+ # unexpected format, 'wc -l' will have returned 0.
+ if test "$PARALLELISM" -eq 0; then
+ PARALLELISM=1
+ fi
+ fi
+fi
+
+if test "$no_parallelism_make" = "YES" && test $PARALLELISM -gt 1; then
+ if test -z "$with_parallelism"; then
+ AC_MSG_WARN([gmake 3.81 crashes with parallelism > 1, reducing it to 1. upgrade to 3.82 to avoid this.])
+ add_warning "gmake 3.81 crashes with parallelism > 1, reducing it to 1. upgrade to 3.82 to avoid this."
+ PARALLELISM="1"
+ else
+ add_warning "make 3.81 is prone to crashes with parallelism > 1. Since --with-parallelism was explicitly given, it is honored, but do not complain when make segfaults on you."
fi
fi
-AC_MSG_RESULT([$BUILD_NCPUS])
-AC_SUBST(BUILD_NCPUS)
+
+AC_MSG_RESULT([$PARALLELISM])
+AC_SUBST(PARALLELISM)
+
+# ===================================================================
+# Number of parallel jobs to be executed during subsequenttest
+# ===================================================================
+AC_MSG_CHECKING([for maximum no. of jobs during subsequenttest])
+CHECK_PARALLELISM=$PARALLELISM
+if test "$with_check_jobs" != ""; then
+ CHECK_PARALLELISM="$with_check_jobs"
+fi
+AC_MSG_RESULT([$CHECK_PARALLELISM])
+AC_SUBST(CHECK_PARALLELISM)
#
# Set up ILIB for MSVC build
@@ -12605,7 +12329,7 @@ if test "$build_os" = "cygwin"; then
fi
if test "$BITNESS_OVERRIDE" = 64; then
ILIB="$ILIB;$COMPATH/lib/amd64"
- ILIB="$ILIB;$WINDOWS_SDK_HOME/lib64"
+ ILIB="$ILIB;$WINDOWS_SDK_HOME/lib/x64"
if test "$WINDOWS_SDK_VERSION" = "80"; then
ILIB="$ILIB;$WINDOWS_SDK_HOME/lib/win8/um/x64"
fi
@@ -12631,37 +12355,17 @@ fi
AC_MSG_CHECKING([whether to create huge library])
MERGELIBS=
if test "$enable_mergelibs" = "yes" ; then
- if test $WITH_BINFILTER = YES; then
- add_warning "--enable-mergelibs conflicts with --enable-binfilter. Disabling mergelibs."
- AC_MSG_RESULT([no])
- else
- if test $_os != Linux -a $_os != Android -a $_os != WINNT; then
- add_warning "--enable-mergelibs is not tested for this platform"
- fi
- MERGELIBS="TRUE"
- AC_MSG_RESULT([yes])
+ if test $_os != Linux -a $_os != Android -a $_os != WINNT; then
+ add_warning "--enable-mergelibs is not tested for this platform"
fi
+ MERGELIBS="TRUE"
+ AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
fi
AC_SUBST(MERGELIBS)
dnl ===================================================================
-dnl Number of parallel jobs to be executed by dmake
-dnl ===================================================================
-AC_MSG_CHECKING([for maximum of jobs per processor])
-BUILD_MAX_JOBS="1"
-if test "$with_max_jobs" != ""; then
- BUILD_MAX_JOBS="$with_max_jobs"
-else
- if test "$enable_icecream" = "yes"; then
- BUILD_MAX_JOBS="10"
- fi
-fi
-AC_MSG_RESULT([$BUILD_MAX_JOBS])
-AC_SUBST(BUILD_MAX_JOBS)
-
-dnl ===================================================================
dnl icerun is a wrapper that stops us spawning tens of processes
dnl locally - for tools that can't be executed on the compile cluster
dnl this avoids a dozen javac's ganging up on your laptop to kill it.
@@ -12672,49 +12376,6 @@ if test "$enable_icecream" = "yes"; then
fi
AC_SUBST(ICECREAM_RUN)
-# =====================================================================
-# determine the parallelism for gnu make
-# =====================================================================
-AC_MSG_CHECKING([for maximum parallelism for gmake])
-if test $BUILD_MAX_JOBS -gt $BUILD_NCPUS; then
- GMAKE_PARALLELISM="$BUILD_MAX_JOBS"
-else
- GMAKE_PARALLELISM="$BUILD_NCPUS"
-fi
-GMAKE_MODULE_PARALLELISM="$BUILD_MAX_JOBS"
-if test "$no_parallelism_make" = "YES"; then
- if test -z "$with_num_cpus"; then
- GMAKE_PARALLELISM="1"
- if test $GMAKE_MODULE_PARALLELISM -gt 1; then
- AC_MSG_WARN([gmake 3.81 crashes with parallelism > 1, reducing it to 1. upgrade to 3.82 to avoid this.])
- if test -z "$with_num_cpus"; then
- add_warning "gmake 3.81 crashes with parallelism > 1, reducing it to 1. upgrade to 3.82 to avoid this."
- fi
- GMAKE_MODULE_PARALLELISM="1"
- fi
- else
- GMAKE_PARALLELISM="$BUILD_NCPUS"
- add_warning "make 3.81 is prone to crashes with parallelism > 1. Since --with-num-cpus was explicitly given, it is honored, but do not complain when make segfault on you."
- fi
-fi
-
-# GMAKE_PARALLELISM is used in tail_build
-# GMAKE_MODULE_PARALLELISM is used when building individual gbuildified module
-AC_MSG_RESULT([per module:$GMAKE_MODULE_PARALLELISM, for tail_build:$GMAKE_PARALLELISM])
-AC_SUBST(GMAKE_PARALLELISM)
-AC_SUBST(GMAKE_MODULE_PARALLELISM)
-
-dnl ===================================================================
-dnl Number of parallel jobs to be executed during subsequenttest
-dnl ===================================================================
-AC_MSG_CHECKING([for maximum no. of jobs during subsequenttest])
-CHECK_PARALLELISM=$GMAKE_PARALLELISM
-if test "$with_check_jobs" != ""; then
- CHECK_PARALLELISM="$with_check_jobs"
-fi
-AC_MSG_RESULT([$CHECK_PARALLELISM])
-AC_SUBST(CHECK_PARALLELISM)
-
dnl ===================================================================
dnl Setting up the environment.
dnl ===================================================================
@@ -12851,14 +12512,6 @@ AC_SUBST(LO_PATH)
# make sure config.guess is +x; we execute config.guess, so it has to be so
chmod +x ./config.guess
-dnl Setting up the post_download check script
-dnl Using autoconf here, so that the migration from the previous state
-dnl (checks for the additional Windows downloads were directly in
-dnl configure.in) is as easy as possible
-echo "setting up the post_download check script"
-autoconf post_download.in > post_download
-chmod +x post_download
-
# Generate a configuration timestamp we can use for deps
if test -f config_host.mk; then
mv -f config_host.mk config_host.mk.last
@@ -12866,16 +12519,16 @@ else
echo > config_host.mk.last
fi
-AC_CONFIG_FILES([config_host.mk ooo.lst bin/repo-list])
+AC_CONFIG_FILES([config_host.mk ooo.lst])
AC_OUTPUT
-# touch the config timestamp file set_soenv.stamp
-if test ! -f set_soenv.stamp; then
- echo > set_soenv.stamp
+# touch the config timestamp file
+if test ! -f config_host.mk.stamp; then
+ echo > config_host.mk.stamp
elif diff config_host.mk config_host.mk.last >/dev/null 2>&1; then
echo "Configuration unchanged - avoiding scp2 stamp update"
else
- echo > set_soenv.stamp
+ echo > config_host.mk.stamp
fi
diff --git a/connectivity/CppunitTest_connectivity_ado.mk b/connectivity/CppunitTest_connectivity_ado.mk
new file mode 100644
index 000000000000..784aa7864533
--- /dev/null
+++ b/connectivity/CppunitTest_connectivity_ado.mk
@@ -0,0 +1,75 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_CppunitTest_CppunitTest,connectivity_ado))
+
+$(eval $(call gb_CppunitTest_set_include,connectivity_ado,\
+ -I$(SRCDIR)/connectivity/source/inc \
+ -I$(SRCDIR)/connectivity/source/drivers/ado \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_CppunitTest_use_api,connectivity_ado,\
+ udkapi \
+ offapi \
+))
+
+$(eval $(call gb_CppunitTest_use_ure,connectivity_ado))
+
+$(eval $(call gb_CppunitTest_use_sdk_api,connectivity_ado))
+
+ifeq ($(COM),GCC)
+$(eval $(call gb_CppunitTest_add_cxxflags,connectivity_ado,\
+ -fpermissive \
+))
+endif
+
+ifeq ($(WINDOWS_SDK_VERSION),80)
+$(eval $(call gb_CppunitTest_add_defs,connectivity_ado,\
+ -DNTDDI_VERSION=0x0601 \
+))
+endif
+
+$(eval $(call gb_CppunitTest_add_exception_objects,connectivity_ado, \
+ connectivity/qa/connectivity/ado/DriverTest \
+))
+
+$(eval $(call gb_CppunitTest_use_libraries,connectivity_ado, \
+ comphelper \
+ cppu \
+ cppuhelper \
+ dbtools \
+ i18nisolang1 \
+ ado \
+ sal \
+ salhelper \
+ sb \
+ test \
+ unotest \
+ ucbhelper \
+ utl \
+ $(gb_UWINAPI) \
+))
+
+$(eval $(call gb_CppunitTest_use_components,connectivity_ado,\
+ configmgr/source/configmgr \
+ i18npool/util/i18npool \
+ connectivity/source/drivers/ado/ado \
+ ucb/source/core/ucb1 \
+ ucb/source/ucp/file/ucpfile1 \
+))
+
+$(eval $(call gb_CppunitTest_use_configuration,connectivity_ado))
+
+$(call gb_CppunitTest_get_target,connectivity_ado) : $(WORKDIR)/CppunitTest/TS001018407.mdb
+$(WORKDIR)/CppunitTest/TS001018407.mdb : $(SRCDIR)/connectivity/qa/connectivity/ado/TS001018407.mdb
+ mkdir -p $(dir $@)
+ $(call gb_Deliver_deliver,$<,$@)
+
+# vim: set noet sw=4 ts=4:
diff --git a/connectivity/Library_postgresql-sdbc-impl.mk b/connectivity/Library_postgresql-sdbc-impl.mk
index 7e525a9af7f0..8fbb372c2a7e 100644
--- a/connectivity/Library_postgresql-sdbc-impl.mk
+++ b/connectivity/Library_postgresql-sdbc-impl.mk
@@ -64,7 +64,7 @@ $(eval $(call gb_Library_use_externals,postgresql-sdbc-impl,\
ifneq ($(SYSTEM_POSTGRESQL),YES)
ifneq ($(GUI)$(COM),WNTMSC)
-include $(OUTDIR)/inc/postgresql/libpq-flags.mk
+-include $(OUTDIR)/inc/postgresql/libpq-flags.mk
$(eval $(call gb_Library_add_libs,postgresql-sdbc-impl,\
$(if $(filter-out MACOSX,$(OS)),-Wl$(COMMA)--as-needed) \
diff --git a/connectivity/Module_connectivity.mk b/connectivity/Module_connectivity.mk
index ab3a4513094f..08cae215e1b3 100644
--- a/connectivity/Module_connectivity.mk
+++ b/connectivity/Module_connectivity.mk
@@ -136,6 +136,7 @@ $(eval $(call gb_Module_add_targets,connectivity,\
Configuration_mork \
Executable_mork_helper \
Library_mork \
+ Library_mozbootstrap \
))
$(eval $(call gb_Module_add_check_targets,connectivity,\
@@ -144,6 +145,12 @@ $(eval $(call gb_Module_add_check_targets,connectivity,\
endif
+ifeq ($(GUI),WNT)
+$(eval $(call gb_Module_add_check_targets,connectivity,\
+ CppunitTest_connectivity_ado \
+))
+endif
+
ifneq ($(filter QADEVOOO,$(BUILD_TYPE)),)
$(eval $(call gb_Module_add_subsequentcheck_targets,connectivity,\
Jar_ConnectivityTools \
diff --git a/connectivity/inc/connectivity/PColumn.hxx b/connectivity/inc/connectivity/PColumn.hxx
index 9ac4eb5a272c..7da2c0691769 100644
--- a/connectivity/inc/connectivity/PColumn.hxx
+++ b/connectivity/inc/connectivity/PColumn.hxx
@@ -41,7 +41,6 @@ namespace connectivity
public OParseColumn_BASE, public OParseColumn_PROP
{
::rtl::OUString m_aRealName;
- ::rtl::OUString m_aTableName;
::rtl::OUString m_sLabel;
sal_Bool m_bFunction;
sal_Bool m_bDbasePrecisionChanged;
@@ -65,21 +64,24 @@ namespace connectivity
sal_Int32 _Type,
sal_Bool _IsAutoIncrement,
sal_Bool _IsCurrency,
- sal_Bool _bCase);
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName);
virtual void construct();
void setRealName(const ::rtl::OUString& _rName) { m_aRealName = _rName; }
void setLabel(const ::rtl::OUString& i_sLabel) { m_sLabel = i_sLabel; }
- void setTableName(const ::rtl::OUString& _rName) { m_aTableName = _rName; }
+ void setTableName(const ::rtl::OUString& _rName) { m_TableName = _rName; }
void setFunction(sal_Bool _bFunction) { m_bFunction = _bFunction; }
void setAggregateFunction(sal_Bool _bFunction) { m_bAggregateFunction = _bFunction; }
void setIsSearchable( sal_Bool _bIsSearchable ) { m_bIsSearchable = _bIsSearchable; }
void setDbasePrecisionChanged(sal_Bool _bDbasePrecisionChanged) { m_bDbasePrecisionChanged = _bDbasePrecisionChanged; }
- ::rtl::OUString getRealName() const { return m_aRealName; }
- ::rtl::OUString getLabel() const { return m_sLabel; }
- ::rtl::OUString getTableName() const { return m_aTableName; }
+ const ::rtl::OUString& getRealName() const { return m_aRealName; }
+ const ::rtl::OUString& getLabel() const { return m_sLabel; }
+ const ::rtl::OUString& getTableName() const { return m_TableName; }
sal_Bool getFunction() const { return m_bFunction; }
sal_Bool getDbasePrecisionChanged() const { return m_bDbasePrecisionChanged; }
@@ -118,7 +120,6 @@ namespace connectivity
public OOrderColumn_BASE, public OOrderColumn_PROP
{
const sal_Bool m_bAscending;
- const ::rtl::OUString m_sTableName;
protected:
virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const;
diff --git a/connectivity/inc/connectivity/predicateinput.hxx b/connectivity/inc/connectivity/predicateinput.hxx
index 56abc6e2959a..776e357261b2 100644
--- a/connectivity/inc/connectivity/predicateinput.hxx
+++ b/connectivity/inc/connectivity/predicateinput.hxx
@@ -21,7 +21,7 @@
#define CONNECTIVITY_PREDICATEINPUT_HXX
#include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/sdbc/XConnection.hpp>
#include <com/sun/star/util/XNumberFormatter.hpp>
#include <com/sun/star/i18n/XLocaleData4.hpp>
@@ -42,8 +42,6 @@ namespace dbtools
class OOO_DLLPUBLIC_DBTOOLS OPredicateInputController
{
private:
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >
- m_xORB;
::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >
m_xConnection;
::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter >
@@ -56,7 +54,7 @@ namespace dbtools
public:
OPredicateInputController(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,
const ::connectivity::IParseContext* _pParseContext = NULL
);
diff --git a/connectivity/inc/connectivity/sdbcx/VColumn.hxx b/connectivity/inc/connectivity/sdbcx/VColumn.hxx
index c58e7cf2d81e..ca7a0bcc0b1c 100644
--- a/connectivity/inc/connectivity/sdbcx/VColumn.hxx
+++ b/connectivity/inc/connectivity/sdbcx/VColumn.hxx
@@ -63,6 +63,10 @@ namespace connectivity
sal_Bool m_IsRowVersion;
sal_Bool m_IsCurrency;
+ ::rtl::OUString m_CatalogName;
+ ::rtl::OUString m_SchemaName;
+ ::rtl::OUString m_TableName;
+
using OColumnDescriptor_BASE::rBHelper;
virtual ::cppu::IPropertyArrayHelper* createArrayHelper( sal_Int32 _nId) const;
virtual ::cppu::IPropertyArrayHelper& SAL_CALL getInfoHelper();
@@ -74,17 +78,20 @@ namespace connectivity
OColumn( sal_Bool _bCase);
OColumn( const ::rtl::OUString& _Name,
- const ::rtl::OUString& _TypeName,
- const ::rtl::OUString& _DefaultValue,
- const ::rtl::OUString& _Description,
- sal_Int32 _IsNullable,
- sal_Int32 _Precision,
- sal_Int32 _Scale,
- sal_Int32 _Type,
- sal_Bool _IsAutoIncrement,
- sal_Bool _IsRowVersion,
- sal_Bool _IsCurrency,
- sal_Bool _bCase);
+ const ::rtl::OUString& _TypeName,
+ const ::rtl::OUString& _DefaultValue,
+ const ::rtl::OUString& _Description,
+ sal_Int32 _IsNullable,
+ sal_Int32 _Precision,
+ sal_Int32 _Scale,
+ sal_Int32 _Type,
+ sal_Bool _IsAutoIncrement,
+ sal_Bool _IsRowVersion,
+ sal_Bool _IsCurrency,
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName);
DECLARE_SERVICE_INFO();
//XInterface
diff --git a/connectivity/inc/connectivity/sdbcx/VIndexColumn.hxx b/connectivity/inc/connectivity/sdbcx/VIndexColumn.hxx
index d5c11c40b985..bdccd128f172 100644
--- a/connectivity/inc/connectivity/sdbcx/VIndexColumn.hxx
+++ b/connectivity/inc/connectivity/sdbcx/VIndexColumn.hxx
@@ -50,7 +50,10 @@ namespace connectivity
sal_Bool _IsAutoIncrement,
sal_Bool _IsRowVersion,
sal_Bool _IsCurrency,
- sal_Bool _bCase);
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName);
virtual void construct();
DECLARE_SERVICE_INFO();
diff --git a/connectivity/inc/connectivity/sdbcx/VKeyColumn.hxx b/connectivity/inc/connectivity/sdbcx/VKeyColumn.hxx
index 92624b5caad6..b3624bd69a3a 100644
--- a/connectivity/inc/connectivity/sdbcx/VKeyColumn.hxx
+++ b/connectivity/inc/connectivity/sdbcx/VKeyColumn.hxx
@@ -50,7 +50,10 @@ namespace connectivity
sal_Bool _IsAutoIncrement,
sal_Bool _IsRowVersion,
sal_Bool _IsCurrency,
- sal_Bool _bCase);
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName);
// just to make it not inline
virtual ~OKeyColumn();
diff --git a/connectivity/inc/connectivity/sqlparse.hxx b/connectivity/inc/connectivity/sqlparse.hxx
index a4a64b3a2480..e67aa7d034ce 100644
--- a/connectivity/inc/connectivity/sqlparse.hxx
+++ b/connectivity/inc/connectivity/sqlparse.hxx
@@ -163,7 +163,7 @@ namespace connectivity
m_xFormatter; // current number formatter
sal_Int32 m_nFormatKey; // numberformat, which should be used
sal_Int32 m_nDateFormatKey;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceFactory;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
::com::sun::star::uno::Reference< ::com::sun::star::i18n::XCharacterClassification> m_xCharClass;
static ::com::sun::star::uno::Reference< ::com::sun::star::i18n::XLocaleData4> s_xLocaleData;
::com::sun::star::uno::Reference< ::com::sun::star::i18n::XLocaleData> xDummy; // can be deleted after 627
@@ -183,7 +183,7 @@ namespace connectivity
public:
// if NULL, a default context will be used
// the context must live as long as the parser
- OSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _xServiceFactory,const IParseContext* _pContext = NULL);
+ OSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext, const IParseContext* _pContext = NULL);
~OSQLParser();
// Parsing an SQLStatement
diff --git a/connectivity/inc/connectivity/virtualdbtools.hxx b/connectivity/inc/connectivity/virtualdbtools.hxx
index 0f6f6520ed7b..7551bedac8d6 100644
--- a/connectivity/inc/connectivity/virtualdbtools.hxx
+++ b/connectivity/inc/connectivity/virtualdbtools.hxx
@@ -335,7 +335,7 @@ namespace connectivity
public:
/// creates a simple version of the class OSQLParser
virtual ::rtl::Reference< ISQLParser > createSQLParser(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxServiceFactory,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const IParseContext* _pContext
) const = 0;
diff --git a/connectivity/prj/build.lst b/connectivity/prj/build.lst
index 8dc24e57c014..aa71c79177b8 100644
--- a/connectivity/prj/build.lst
+++ b/connectivity/prj/build.lst
@@ -1,2 +1,2 @@
-cn connectivity : shell comphelper MOZ:moz POSTGRESQL:postgresql svl UNIXODBC:unixODBC unoil javaunohelper HSQLDB:hsqldb QADEVOOO:qadevOOo officecfg NSS:nss LIBXSLT:libxslt NULL
-
+cn connectivity : shell comphelper MOZ:moz POSTGRESQL:postgresql svl UNIXODBC:unixODBC unoil javaunohelper HSQLDB:hsqldb QADEVOOO:qadevOOo officecfg NSS:nss LIBXSLT:libxslt NULL
+cn connectivity\prj nmake - all cn_prj NULL
diff --git a/connectivity/qa/connectivity/ado/DriverTest.cxx b/connectivity/qa/connectivity/ado/DriverTest.cxx
new file mode 100755
index 000000000000..ee96eebd2fa5
--- /dev/null
+++ b/connectivity/qa/connectivity/ado/DriverTest.cxx
@@ -0,0 +1,145 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <test/bootstrapfixture.hxx>
+
+//#include "ado/ADriver.hxx"
+//#include "ado/AConnection.hxx"
+//#include <com/sun/star/sdbc/XDriver.hpp>
+
+#include "ado/AConnection.hxx"
+#include "ado/ADatabaseMetaData.hxx"
+#include "ado/ADriver.hxx"
+#include "ado/AStatement.hxx"
+#include "ado/ACallableStatement.hxx"
+#include "ado/APreparedStatement.hxx"
+#include "ado/ACatalog.hxx"
+#include <com/sun/star/sdbc/ColumnValue.hpp>
+#include <com/sun/star/sdbc/TransactionIsolation.hpp>
+#include <com/sun/star/sdbc/XRow.hpp>
+#include <com/sun/star/lang/DisposedException.hpp>
+#include <cppuhelper/typeprovider.hxx>
+#include "connectivity/dbexception.hxx"
+#include <osl/file.hxx>
+#include "resource/ado_res.hrc"
+
+
+using namespace ::com::sun::star::beans;
+using namespace ::com::sun::star::sdbc;
+using namespace ::com::sun::star::uno;
+
+namespace connectivity { namespace ado {
+
+
+class AdoDriverTest: public test::BootstrapFixture
+{
+public:
+ AdoDriverTest() : test::BootstrapFixture(false, false) {};
+
+ void test_metadata();
+ void test_select_default_all();
+
+ virtual void setUp();
+ virtual void tearDown();
+
+ CPPUNIT_TEST_SUITE(AdoDriverTest);
+
+ CPPUNIT_TEST(test_metadata);
+ CPPUNIT_TEST(test_select_default_all);
+ CPPUNIT_TEST_SUITE_END();
+
+private:
+ Reference<XInterface> m_xAdoComponent;
+ Reference<XConnection> m_xConnection;
+};
+
+void AdoDriverTest::setUp()
+{
+ test::BootstrapFixture::setUp();
+ m_xAdoComponent = getMultiServiceFactory()->createInstance("com.sun.star.comp.sdbc.ado.ODriver");
+ CPPUNIT_ASSERT_MESSAGE("no ado component!", m_xAdoComponent.is());
+
+ OUString url = OUString("sdbc:ado:access:PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=") +
+ getPathFromWorkdir("/CppunitTest/TS001018407.mdb");
+
+ Sequence< PropertyValue > info;
+ Reference< XDriver> xDriver(m_xAdoComponent, UNO_QUERY);
+ if (!xDriver.is())
+ {
+ CPPUNIT_ASSERT_MESSAGE("cannot connect to ado driver!", xDriver.is());
+ }
+
+ m_xConnection = xDriver->connect(url, info);
+ if (!m_xConnection.is())
+ {
+ CPPUNIT_ASSERT_MESSAGE("cannot connect to students data soure!", m_xConnection.is());
+ }
+}
+
+void AdoDriverTest::tearDown()
+{
+ m_xAdoComponent = 0;
+ test::BootstrapFixture::tearDown();
+}
+
+void AdoDriverTest::test_metadata()
+{
+ Reference< XDatabaseMetaData > xDatabaseMetaData = m_xConnection->getMetaData();
+ if (!xDatabaseMetaData.is())
+ {
+ CPPUNIT_ASSERT_MESSAGE("cannot retrieve meta data!", xDatabaseMetaData.is());
+ }
+
+ const Any catalog;
+ const OUString schemaPattern = "%";
+ const OUString tableNamePattern = "%";
+ const Sequence< OUString > types;
+
+ Reference< XResultSet > xResultSet =
+ xDatabaseMetaData->getTables(catalog, schemaPattern, tableNamePattern, types);
+ if (!xResultSet.is())
+ {
+ CPPUNIT_ASSERT_MESSAGE("cannot retrieve tables!", xResultSet.is());
+ }
+}
+
+void AdoDriverTest::test_select_default_all()
+{
+ const OUString sql = "select \"FirstName\" from \"Students\" ORDER BY \"FirstName\"";
+ Reference< XPreparedStatement > xStatement = m_xConnection->prepareStatement(sql);
+ if (!xStatement.is())
+ {
+ CPPUNIT_ASSERT_MESSAGE("cannot create prepared statement!", xStatement.is());
+ }
+
+ Reference< XResultSet > xResultSet = xStatement->executeQuery();
+ if (!xResultSet.is())
+ {
+ CPPUNIT_ASSERT_MESSAGE("cannot execure sql statement!", xResultSet.is());
+ }
+
+ Reference< XRow > xDelegatorRow(xResultSet, UNO_QUERY);
+ if (!xDelegatorRow.is())
+ {
+ CPPUNIT_ASSERT_MESSAGE("cannot extract row from result set!", xDelegatorRow.is());
+ }
+
+ sal_Bool result = xResultSet->first();
+ CPPUNIT_ASSERT_MESSAGE("fetch first row failed!", result);
+/*
+ OUString mail = xDelegatorRow->getString(1);
+ CPPUNIT_ASSERT_MESSAGE("first row is not john@doe.org!", mail.equalsAscii("john@doe.org"));
+*/
+}
+
+CPPUNIT_TEST_SUITE_REGISTRATION(AdoDriverTest);
+
+}}
+
+CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/connectivity/qa/connectivity/ado/TS001018407.mdb b/connectivity/qa/connectivity/ado/TS001018407.mdb
new file mode 100755
index 000000000000..abe9f5ee33b3
--- /dev/null
+++ b/connectivity/qa/connectivity/ado/TS001018407.mdb
Binary files differ
diff --git a/connectivity/source/commontools/ParamterSubstitution.cxx b/connectivity/source/commontools/ParamterSubstitution.cxx
index 5a31a9308cab..68f1e163c7be 100644
--- a/connectivity/source/commontools/ParamterSubstitution.cxx
+++ b/connectivity/source/commontools/ParamterSubstitution.cxx
@@ -86,8 +86,7 @@ namespace connectivity
{
try
{
- uno::Reference< XMultiServiceFactory> xFac(m_xContext->getServiceManager(),uno::UNO_QUERY_THROW);
- OSQLParser aParser( xFac );
+ OSQLParser aParser( m_xContext );
::rtl::OUString sErrorMessage;
::rtl::OUString sNewSql;
OSQLParseNode* pNode = aParser.parseTree(sErrorMessage,_sText);
diff --git a/connectivity/source/commontools/TColumnsHelper.cxx b/connectivity/source/commontools/TColumnsHelper.cxx
index 83bfe69746d1..ad725c4f1e64 100644
--- a/connectivity/source/commontools/TColumnsHelper.cxx
+++ b/connectivity/source/commontools/TColumnsHelper.cxx
@@ -115,6 +115,11 @@ sdbcx::ObjectType OColumnsHelper::createObject(const ::rtl::OUString& _rName)
{
nField11 = ColumnValue::NO_NULLS;
} // if ( xKeys.is() )
+ ::dbtools::OPropertyMap& rPropMap = OMetaConnection::getPropMap();
+ ::rtl::OUString aCatalog, aSchema, aTable;
+ m_pTable->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME)) >>= aCatalog;
+ m_pTable->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_SCHEMANAME)) >>= aSchema;
+ m_pTable->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_NAME)) >>= aTable;
connectivity::sdbcx::OColumn* pRet = new connectivity::sdbcx::OColumn(_rName,
pColDesc->aField6,
pColDesc->sField13,
@@ -126,7 +131,10 @@ sdbcx::ObjectType OColumnsHelper::createObject(const ::rtl::OUString& _rName)
bAutoIncrement,
sal_False,
bIsCurrency,
- isCaseSensitive());
+ isCaseSensitive(),
+ aCatalog,
+ aSchema,
+ aTable);
xRet = pRet;
}
diff --git a/connectivity/source/commontools/TIndexColumns.cxx b/connectivity/source/commontools/TIndexColumns.cxx
index ca0e783fdfc6..c64e94bf1d14 100644
--- a/connectivity/source/commontools/TIndexColumns.cxx
+++ b/connectivity/source/commontools/TIndexColumns.cxx
@@ -47,13 +47,14 @@ OIndexColumns::OIndexColumns( OIndexHelper* _pIndex,
sdbcx::ObjectType OIndexColumns::createObject(const ::rtl::OUString& _rName)
{
::dbtools::OPropertyMap& rPropMap = OMetaConnection::getPropMap();
- ::rtl::OUString aSchema,aTable;
+ ::rtl::OUString aCatalog, aSchema, aTable;
+ ::com::sun::star::uno::Any Catalog(m_pIndex->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME)));
+ Catalog >>= aCatalog;
m_pIndex->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_SCHEMANAME)) >>= aSchema;
m_pIndex->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_NAME)) >>= aTable;
Reference< XResultSet > xResult = m_pIndex->getTable()->getConnection()->getMetaData()->getIndexInfo(
- m_pIndex->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME)),
- aSchema,aTable,sal_False,sal_False);
+ Catalog, aSchema, aTable, sal_False, sal_False);
sal_Bool bAsc = sal_True;
if ( xResult.is() )
@@ -68,8 +69,7 @@ sdbcx::ObjectType OIndexColumns::createObject(const ::rtl::OUString& _rName)
}
xResult = m_pIndex->getTable()->getConnection()->getMetaData()->getColumns(
- m_pIndex->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME)),
- aSchema,aTable,_rName);
+ Catalog, aSchema, aTable, _rName);
sdbcx::ObjectType xRet;
if ( xResult.is() )
@@ -87,14 +87,15 @@ sdbcx::ObjectType OIndexColumns::createObject(const ::rtl::OUString& _rName)
::rtl::OUString aColumnDef(xRow->getString(13));
OIndexColumn* pRet = new OIndexColumn(bAsc,
- _rName,
- aTypeName,
- aColumnDef,
- nNull,
- nSize,
- nDec,
- nDataType,
- sal_False,sal_False,sal_False,sal_True);
+ _rName,
+ aTypeName,
+ aColumnDef,
+ nNull,
+ nSize,
+ nDec,
+ nDataType,
+ sal_False,sal_False,sal_False,sal_True,
+ aCatalog, aSchema, aTable);
xRet = pRet;
break;
}
diff --git a/connectivity/source/commontools/TKeyColumns.cxx b/connectivity/source/commontools/TKeyColumns.cxx
index f9a9a223f82b..bb5a36a38f2a 100644
--- a/connectivity/source/commontools/TKeyColumns.cxx
+++ b/connectivity/source/commontools/TKeyColumns.cxx
@@ -48,13 +48,15 @@ OKeyColumnsHelper::OKeyColumnsHelper( OTableKeyHelper* _pKey,
sdbcx::ObjectType OKeyColumnsHelper::createObject(const ::rtl::OUString& _rName)
{
::dbtools::OPropertyMap& rPropMap = OMetaConnection::getPropMap();
- ::rtl::OUString aSchema,aTable;
+ ::rtl::OUString aCatalog, aSchema, aTable;
+ ::com::sun::star::uno::Any Catalog(m_pKey->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME)));
+ Catalog >>= aCatalog;
m_pKey->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_SCHEMANAME)) >>= aSchema;
m_pKey->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_NAME)) >>= aTable;
// frist get the related column to _rName
Reference< XResultSet > xResult = m_pKey->getTable()->getMetaData()->getImportedKeys(
- m_pKey->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME)),aSchema,aTable);
+ Catalog, aSchema, aTable);
::rtl::OUString aRefColumnName;
if ( xResult.is() )
@@ -75,8 +77,7 @@ sdbcx::ObjectType OKeyColumnsHelper::createObject(const ::rtl::OUString& _rName)
sdbcx::ObjectType xRet;
// now describe the column _rName and set his related column
- xResult = m_pKey->getTable()->getMetaData()->getColumns(
- m_pKey->getTable()->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME)),aSchema,aTable,_rName);
+ xResult = m_pKey->getTable()->getMetaData()->getColumns(Catalog, aSchema, aTable, _rName);
if ( xResult.is() )
{
@@ -101,17 +102,20 @@ sdbcx::ObjectType OKeyColumnsHelper::createObject(const ::rtl::OUString& _rName)
}
OKeyColumn* pRet = new OKeyColumn(aRefColumnName,
- _rName,
- aTypeName,
- sColumnDef,
- nNull,
- nSize,
- nDec,
- nDataType,
- sal_False,
- sal_False,
- sal_False,
- isCaseSensitive());
+ _rName,
+ aTypeName,
+ sColumnDef,
+ nNull,
+ nSize,
+ nDec,
+ nDataType,
+ sal_False,
+ sal_False,
+ sal_False,
+ isCaseSensitive(),
+ aCatalog,
+ aSchema,
+ aTable);
xRet = pRet;
}
}
diff --git a/connectivity/source/commontools/TSortIndex.cxx b/connectivity/source/commontools/TSortIndex.cxx
index a0fc73823167..a9d5bc5028b7 100644
--- a/connectivity/source/commontools/TSortIndex.cxx
+++ b/connectivity/source/commontools/TSortIndex.cxx
@@ -19,6 +19,7 @@
#include "TSortIndex.hxx"
#include <algorithm>
+#include <iterator>
#include <o3tl/compat_functional.hxx>
@@ -107,7 +108,7 @@ void OSortIndex::AddKeyValue(OKeyValue * pKeyValue)
OSL_ENSURE(pKeyValue,"Can not be null here!");
if(m_bFrozen)
{
- m_aKeyValues.push_back(TIntValuePairVector::value_type(pKeyValue->getValue(),NULL));
+ m_aKeyValues.push_back(TIntValuePairVector::value_type(pKeyValue->getValue(),(OKeyValue *)NULL));
delete pKeyValue;
}
else
diff --git a/connectivity/source/commontools/TTableHelper.cxx b/connectivity/source/commontools/TTableHelper.cxx
index cec9e48009eb..6a5ad878f004 100644
--- a/connectivity/source/commontools/TTableHelper.cxx
+++ b/connectivity/source/commontools/TTableHelper.cxx
@@ -36,6 +36,8 @@
#include <o3tl/compat_functional.hxx>
+#include <iterator>
+
using namespace ::comphelper;
using namespace connectivity;
using namespace ::com::sun::star::uno;
diff --git a/connectivity/source/commontools/dbtools.cxx b/connectivity/source/commontools/dbtools.cxx
index 2afd00192482..6c758f88ebdd 100644
--- a/connectivity/source/commontools/dbtools.cxx
+++ b/connectivity/source/commontools/dbtools.cxx
@@ -81,6 +81,7 @@
#include "connectivity/OSubComponent.hxx"
#include <algorithm>
+#include <iterator>
using namespace ::comphelper;
using namespace ::com::sun::star::uno;
diff --git a/connectivity/source/commontools/dbtools2.cxx b/connectivity/source/commontools/dbtools2.cxx
index bb832535cbfe..4092e9e185de 100644
--- a/connectivity/source/commontools/dbtools2.cxx
+++ b/connectivity/source/commontools/dbtools2.cxx
@@ -389,6 +389,8 @@ namespace
Reference<XPropertySet> xProp;
Reference<XDatabaseMetaData> xMetaData = _xConnection->getMetaData();
Reference< XResultSet > xResult = xMetaData->getColumns(_aCatalog, _aSchema, _aTable, _rQueryName);
+ ::rtl::OUString sCatalog;
+ _aCatalog >>= sCatalog;
if ( xResult.is() )
{
@@ -472,7 +474,10 @@ namespace
bAutoIncrement,
sal_False,
bIsCurrency,
- _bCase);
+ _bCase,
+ sCatalog,
+ _aSchema,
+ _aTable);
xProp = pRet;
break;
@@ -515,6 +520,8 @@ Reference<XPropertySet> createSDBCXColumn(const Reference<XPropertySet>& _xTable
Reference<XDatabaseMetaData> xMetaData = _xConnection->getMetaData();
Any aCatalog;
aCatalog = _xTable->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_CATALOGNAME));
+ ::rtl::OUString sCatalog;
+ aCatalog >>= sCatalog;
::rtl::OUString aSchema, aTable;
_xTable->getPropertyValue(rPropMap.getNameByIndex(PROPERTY_ID_SCHEMANAME)) >>= aSchema;
@@ -536,7 +543,10 @@ Reference<XPropertySet> createSDBCXColumn(const Reference<XPropertySet>& _xTable
_bIsAutoIncrement,
sal_False,
_bIsCurrency,
- _bCase);
+ _bCase,
+ sCatalog,
+ aSchema,
+ aTable);
}
diff --git a/connectivity/source/commontools/predicateinput.cxx b/connectivity/source/commontools/predicateinput.cxx
index 4950de6fd7a7..8b6220ba6107 100644
--- a/connectivity/source/commontools/predicateinput.cxx
+++ b/connectivity/source/commontools/predicateinput.cxx
@@ -39,12 +39,12 @@ namespace dbtools
//.........................................................................
using ::com::sun::star::sdbc::XConnection;
- using ::com::sun::star::lang::XMultiServiceFactory;
using ::com::sun::star::util::XNumberFormatsSupplier;
using ::com::sun::star::util::NumberFormatter;
using ::com::sun::star::util::XNumberFormatter;
using ::com::sun::star::uno::UNO_QUERY;
using ::com::sun::star::uno::UNO_QUERY_THROW;
+ using ::com::sun::star::uno::XComponentContext;
using ::com::sun::star::beans::XPropertySet;
using ::com::sun::star::beans::XPropertySetInfo;
using ::com::sun::star::lang::Locale;
@@ -100,19 +100,18 @@ namespace dbtools
//---------------------------------------------------------------------
OPredicateInputController::OPredicateInputController(
- const Reference< XMultiServiceFactory >& _rxORB, const Reference< XConnection >& _rxConnection, const IParseContext* _pParseContext )
- :m_xORB( _rxORB )
- ,m_xConnection( _rxConnection )
- ,m_aParser( m_xORB, _pParseContext )
+ const Reference< XComponentContext >& rxContext, const Reference< XConnection >& _rxConnection, const IParseContext* _pParseContext )
+ : m_xConnection( _rxConnection )
+ ,m_aParser( rxContext, _pParseContext )
{
try
{
// create a number formatter / number formats supplier pair
- OSL_ENSURE( m_xORB.is(), "OPredicateInputController::OPredicateInputController: need a service factory!" );
- if ( m_xORB.is() )
+ OSL_ENSURE( rxContext.is(), "OPredicateInputController::OPredicateInputController: need a service factory!" );
+ if ( rxContext.is() )
{
m_xFormatter = Reference< XNumberFormatter >(
- NumberFormatter::create(comphelper::getComponentContext(m_xORB)),
+ NumberFormatter::create(rxContext),
UNO_QUERY_THROW
);
}
@@ -124,9 +123,9 @@ namespace dbtools
m_xFormatter->attachNumberFormatsSupplier( xNumberFormats );
// create the locale data
- if ( m_xORB.is() )
+ if ( rxContext.is() )
{
- m_xLocaleData = LocaleData::create( comphelper::getComponentContext(m_xORB) );
+ m_xLocaleData = LocaleData::create( rxContext );
}
}
catch( const Exception& )
@@ -374,7 +373,10 @@ namespace dbtools
nType,
sal_False,
sal_False,
- xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers());
+ xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(),
+ ::rtl::OUString(),
+ ::rtl::OUString(),
+ ::rtl::OUString());
Reference<XPropertySet> xColumn = pColumn;
pColumn->setFunction(sal_True);
pColumn->setRealName(sField);
diff --git a/connectivity/source/drivers/ado/AColumn.cxx b/connectivity/source/drivers/ado/AColumn.cxx
index 7780447f7958..4c4e4f23b546 100644
--- a/connectivity/source/drivers/ado/AColumn.cxx
+++ b/connectivity/source/drivers/ado/AColumn.cxx
@@ -57,7 +57,7 @@ void WpADOColumn::Create()
}
// -------------------------------------------------------------------------
OAdoColumn::OAdoColumn(sal_Bool _bCase,OConnection* _pConnection,_ADOColumn* _pColumn)
- : connectivity::sdbcx::OColumn(::rtl::OUString(),::rtl::OUString(),::rtl::OUString(),::rtl::OUString(),0,0,0,0,sal_False,sal_False,sal_False,_bCase)
+ : connectivity::sdbcx::OColumn(_bCase)
,m_pConnection(_pConnection)
{
construct();
diff --git a/connectivity/source/drivers/ado/APreparedStatement.cxx b/connectivity/source/drivers/ado/APreparedStatement.cxx
index fd1e0b196b92..ed2373a4af80 100644
--- a/connectivity/source/drivers/ado/APreparedStatement.cxx
+++ b/connectivity/source/drivers/ado/APreparedStatement.cxx
@@ -25,6 +25,7 @@
#include "ado/ADriver.hxx"
#include <com/sun/star/lang/DisposedException.hpp>
#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/processfactory.hxx>
#include <comphelper/sequence.hxx>
#include "connectivity/dbexception.hxx"
#include "connectivity/dbtools.hxx"
@@ -59,7 +60,7 @@ OPreparedStatement::OPreparedStatement( OConnection* _pConnection,const OTypeInf
{
osl_atomic_increment( &m_refCount );
- OSQLParser aParser(_pConnection->getDriver()->getORB());
+ OSQLParser aParser(comphelper::getComponentContext(_pConnection->getDriver()->getORB()));
::rtl::OUString sErrorMessage;
::rtl::OUString sNewSql;
OSQLParseNode* pNode = aParser.parseTree(sErrorMessage,sql);
diff --git a/connectivity/source/drivers/ado/AStatement.cxx b/connectivity/source/drivers/ado/AStatement.cxx
index 6e97e8ebd729..0d042d84f2e7 100644
--- a/connectivity/source/drivers/ado/AStatement.cxx
+++ b/connectivity/source/drivers/ado/AStatement.cxx
@@ -509,7 +509,19 @@ sal_Int32 OStatement_Base::getMaxRows() const throw(SQLException, RuntimeExcepti
//------------------------------------------------------------------------------
sal_Int32 OStatement_Base::getResultSetConcurrency() const throw(SQLException, RuntimeException)
{
- return m_eLockType;
+ sal_Int32 nValue;
+
+ switch(m_eLockType)
+ {
+ case adLockReadOnly:
+ nValue = ResultSetConcurrency::READ_ONLY;
+ break;
+ default:
+ nValue = ResultSetConcurrency::UPDATABLE;
+ break;
+ }
+
+ return nValue;
}
//------------------------------------------------------------------------------
sal_Int32 OStatement_Base::getResultSetType() const throw(SQLException, RuntimeException)
diff --git a/connectivity/source/drivers/ado/ATable.cxx b/connectivity/source/drivers/ado/ATable.cxx
index f2ae573249f6..2b31601aeeb0 100644
--- a/connectivity/source/drivers/ado/ATable.cxx
+++ b/connectivity/source/drivers/ado/ATable.cxx
@@ -48,7 +48,7 @@ using namespace com::sun::star::lang;
// -------------------------------------------------------------------------
OAdoTable::OAdoTable(sdbcx::OCollection* _pTables,sal_Bool _bCase,OCatalog* _pCatalog,_ADOTable* _pTable)
- : OTable_TYPEDEF(_pTables,_bCase,::rtl::OUString(),::rtl::OUString())
+ : OTable_TYPEDEF(_pTables,_bCase)
,m_pCatalog(_pCatalog)
{
construct();
diff --git a/connectivity/source/drivers/ado/Awrapado.cxx b/connectivity/source/drivers/ado/Awrapado.cxx
index b4eb39746344..08535858cf55 100644
--- a/connectivity/source/drivers/ado/Awrapado.cxx
+++ b/connectivity/source/drivers/ado/Awrapado.cxx
@@ -1031,9 +1031,9 @@ sal_Bool WpADOParameter::put_Size(const sal_Int32& _nSize)
return (SUCCEEDED(pInterface->put_Size(_nSize)));
}
- ::rtl::OUString WpADOColumn::get_Name() const
+::rtl::OUString WpADOColumn::get_Name() const
{
- OSL_ENSURE(pInterface,"Interface is null!");
+ OSL_ENSURE(pInterface,"Interface is null!");
OLEString aBSTR;
pInterface->get_Name(&aBSTR);
return aBSTR;
@@ -1561,6 +1561,13 @@ WpBase::WpBase(IDispatch* pInt)
}
}
+WpBase::WpBase(const WpBase& aWrapper)
+ :pIUnknown(aWrapper.pIUnknown)
+{
+ if (pIUnknown)
+ pIUnknown->AddRef();
+}
+
//inline
WpBase& WpBase::operator=(const WpBase& rhs)
{
@@ -1588,11 +1595,6 @@ WpBase& WpBase::operator=(IDispatch* rhs)
return *this;
}
-WpBase::WpBase(const WpBase& aWrapper)
-{
- operator=(aWrapper);
-}
-
WpBase::~WpBase()
{
if (pIUnknown)
diff --git a/connectivity/source/drivers/calc/CTable.cxx b/connectivity/source/drivers/calc/CTable.cxx
index da8cbe573657..ff3c33319a48 100644
--- a/connectivity/source/drivers/calc/CTable.cxx
+++ b/connectivity/source/drivers/calc/CTable.cxx
@@ -514,7 +514,8 @@ void OCalcTable::fillColumns()
sdbcx::OColumn* pColumn = new sdbcx::OColumn( aAlias, aTypeName, ::rtl::OUString(),::rtl::OUString(),
ColumnValue::NULLABLE, nPrecision, nDecimals,
eType, sal_False, sal_False, bCurrency,
- bStoresMixedCaseQuotedIdentifiers);
+ bStoresMixedCaseQuotedIdentifiers,
+ m_CatalogName, getSchema(), getName());
Reference< XPropertySet> xCol = pColumn;
m_aColumns->get().push_back(xCol);
m_aTypes.push_back(eType);
diff --git a/connectivity/source/drivers/dbase/DIndexColumns.cxx b/connectivity/source/drivers/dbase/DIndexColumns.cxx
index 1fbff248ee24..73aa3d525cda 100644
--- a/connectivity/source/drivers/dbase/DIndexColumns.cxx
+++ b/connectivity/source/drivers/dbase/DIndexColumns.cxx
@@ -59,7 +59,10 @@ sdbcx::ObjectType ODbaseIndexColumns::createObject(const ::rtl::OUString& _rName
,sal_False
,sal_False
,sal_False
- ,pTable->getConnection()->getMetaData()->supportsMixedCaseQuotedIdentifiers());
+ ,pTable->getConnection()->getMetaData()->supportsMixedCaseQuotedIdentifiers()
+ ,getString(xCol->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_CATALOGNAME)))
+ ,getString(xCol->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCHEMANAME)))
+ ,getString(xCol->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME))));
return xRet;
}
diff --git a/connectivity/source/drivers/dbase/DTable.cxx b/connectivity/source/drivers/dbase/DTable.cxx
index 28d4436931ec..499b238284cf 100644
--- a/connectivity/source/drivers/dbase/DTable.cxx
+++ b/connectivity/source/drivers/dbase/DTable.cxx
@@ -436,7 +436,8 @@ OSL_TRACE("column type: %c",aDBFColumn.db_typ);
sal_False,
bIsRowVersion,
bIsCurrency,
- bCase);
+ bCase,
+ m_CatalogName, getSchema(), getName());
m_aColumns->get().push_back(xCol);
} // for (; i < nFieldCount; i++)
OSL_ENSURE(i,"No columns in table!");
@@ -1505,7 +1506,7 @@ sal_Bool ODbaseTable::InsertRow(OValueRefVector& rRow, sal_Bool bFlush,const Ref
sal_uInt32 nTempPos = m_nFilePos;
m_nFilePos = (sal_uIntPtr)m_aHeader.db_anz + 1;
- sal_Bool bInsertRow = UpdateBuffer( rRow, NULL, _xCols );
+ sal_Bool bInsertRow = UpdateBuffer( rRow, NULL, _xCols, true );
if ( bInsertRow )
{
sal_uInt32 nFileSize = 0, nMemoFileSize = 0;
@@ -1567,7 +1568,7 @@ sal_Bool ODbaseTable::UpdateRow(OValueRefVector& rRow, OValueRefRow& pOrgRow,con
m_pMemoStream->Seek(STREAM_SEEK_TO_END);
nMemoFileSize = m_pMemoStream->Tell();
}
- if (!UpdateBuffer(rRow, pOrgRow,_xCols) || !WriteBuffer())
+ if (!UpdateBuffer(rRow, pOrgRow, _xCols, false) || !WriteBuffer())
{
if (HasMemoFields() && m_pMemoStream)
m_pMemoStream->SetStreamSize(nMemoFileSize); // restore old size
@@ -1668,7 +1669,7 @@ static double toDouble(const rtl::OString& rString)
}
//------------------------------------------------------------------
-sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,const Reference<XIndexAccess>& _xCols)
+sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow, const Reference<XIndexAccess>& _xCols, const bool bForceAllFields)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "dbase", "Ocke.Janssen@sun.com", "ODbaseTable::UpdateBuffer" );
OSL_ENSURE(m_pBuffer,"Buffer is NULL!");
@@ -1814,10 +1815,13 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
++nPos; // the row values start at 1
- // If the variable is bound at all?
- if ( !rRow.get()[nPos]->isBound() )
+ const ORowSetValue &thisColVal = rRow.get()[nPos]->get();
+ const bool thisColIsBound = thisColVal.isBound();
+ const bool thisColIsNull = !thisColIsBound || thisColVal.isNull();
+ // don't overwrite non-bound columns
+ if ( ! (bForceAllFields || thisColIsBound) )
{
- // No - the next field.
+ // No - don't overwrite this field, it has not changed.
nByteOffset += nLen;
continue;
}
@@ -1828,19 +1832,19 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
ODbaseIndex* pIndex = reinterpret_cast< ODbaseIndex* >( xTunnel->getSomething(ODbaseIndex::getUnoTunnelImplementationId()) );
OSL_ENSURE(pIndex,"ODbaseTable::UpdateBuffer: No Index returned!");
// Update !!
- if (pOrgRow.is() && !rRow.get()[nPos]->getValue().isNull() )
- pIndex->Update(m_nFilePos,*(pOrgRow->get())[nPos],*rRow.get()[nPos]);
+ if (pOrgRow.is() && !thisColIsNull)
+ pIndex->Update(m_nFilePos, *(pOrgRow->get())[nPos], thisColVal);
else
- pIndex->Insert(m_nFilePos,*rRow.get()[nPos]);
+ pIndex->Insert(m_nFilePos, thisColVal);
}
char* pData = (char *)(m_pBuffer + nByteOffset);
- if (rRow.get()[nPos]->getValue().isNull())
+ if (thisColIsNull)
{
if ( bSetZero )
- memset(pData,0,nLen); // Clear to NULL
+ memset(pData,0,nLen); // Clear to NULL char ('\0')
else
- memset(pData,' ',nLen); // Clear to NULL
+ memset(pData,' ',nLen); // Clear to space/blank ('\0x20')
nByteOffset += nLen;
OSL_ENSURE( nByteOffset <= m_nBufferSize ,"ByteOffset > m_nBufferSize!");
continue;
@@ -1853,7 +1857,7 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
case DataType::TIMESTAMP:
{
sal_Int32 nJulianDate = 0, nJulianTime = 0;
- lcl_CalcJulDate(nJulianDate,nJulianTime,rRow.get()[nPos]->getValue());
+ lcl_CalcJulDate(nJulianDate,nJulianTime, thisColVal);
// Exactly 8 bytes to copy:
memcpy(pData,&nJulianDate,4);
memcpy(pData+4,&nJulianTime,4);
@@ -1862,10 +1866,10 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
case DataType::DATE:
{
::com::sun::star::util::Date aDate;
- if(rRow.get()[nPos]->getValue().getTypeKind() == DataType::DOUBLE)
- aDate = ::dbtools::DBTypeConversion::toDate(rRow.get()[nPos]->getValue().getDouble());
+ if(thisColVal.getTypeKind() == DataType::DOUBLE)
+ aDate = ::dbtools::DBTypeConversion::toDate(thisColVal.getDouble());
else
- aDate = rRow.get()[nPos]->getValue();
+ aDate = thisColVal;
char s[9];
snprintf(s,
sizeof(s),
@@ -1879,13 +1883,13 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
} break;
case DataType::INTEGER:
{
- sal_Int32 nValue = rRow.get()[nPos]->getValue();
+ sal_Int32 nValue = thisColVal;
memcpy(pData,&nValue,nLen);
}
break;
case DataType::DOUBLE:
{
- const double d = rRow.get()[nPos]->getValue();
+ const double d = thisColVal;
m_pColumns->getByIndex(i) >>= xCol;
if (getBOOL(xCol->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISCURRENCY)))) // Currency is treated separately
@@ -1905,7 +1909,7 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
{
memset(pData,' ',nLen); // Clear to NULL
- const double n = rRow.get()[nPos]->getValue();
+ const double n = thisColVal;
// one, because const_cast GetFormatPrecision on SvNumberFormat is not constant,
// even though it really could and should be
@@ -1937,7 +1941,7 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
}
} break;
case DataType::BIT:
- *pData = rRow.get()[nPos]->getValue().getBool() ? 'T' : 'F';
+ *pData = thisColVal.getBool() ? 'T' : 'F';
break;
case DataType::LONGVARBINARY:
case DataType::LONGVARCHAR:
@@ -1949,7 +1953,7 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
// Next initial character restore again:
pData[nLen] = cNext;
- if (!m_pMemoStream || !WriteMemo(rRow.get()[nPos]->get(), nBlockNo))
+ if (!m_pMemoStream || !WriteMemo(thisColVal, nBlockNo))
break;
rtl::OString aBlock(rtl::OString::valueOf(static_cast<sal_Int32>(nBlockNo)));
@@ -1965,7 +1969,7 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
{
memset(pData,' ',nLen); // Clear to NULL
- ::rtl::OUString sStringToWrite( rRow.get()[nPos]->getValue().getString() );
+ ::rtl::OUString sStringToWrite( thisColVal.getString() );
// convert the string, using the connection's encoding
::rtl::OString sEncoded;
@@ -2002,7 +2006,7 @@ sal_Bool ODbaseTable::UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,c
}
// -----------------------------------------------------------------------------
-sal_Bool ODbaseTable::WriteMemo(ORowSetValue& aVariable, sal_uIntPtr& rBlockNr)
+sal_Bool ODbaseTable::WriteMemo(const ORowSetValue& aVariable, sal_uIntPtr& rBlockNr)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "dbase", "Ocke.Janssen@sun.com", "ODbaseTable::WriteMemo" );
// if the BlockNo 0 is given, the block will be appended at the end
diff --git a/connectivity/source/drivers/evoab2/NColumns.cxx b/connectivity/source/drivers/evoab2/NColumns.cxx
index c4cae93cfcfe..b131bc36bb95 100644
--- a/connectivity/source/drivers/evoab2/NColumns.cxx
+++ b/connectivity/source/drivers/evoab2/NColumns.cxx
@@ -37,10 +37,14 @@ using namespace connectivity::evoab;
// -------------------------------------------------------------------------
sdbcx::ObjectType OEvoabColumns::createObject(const ::rtl::OUString& _rName)
{
+ const Any aCatalog;
+ const ::rtl::OUString sCatalogName;
+ const ::rtl::OUString sSchemaName(m_pTable->getSchema());
+ const ::rtl::OUString sTableName(m_pTable->getTableName());
Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(
- Any(),
- m_pTable->getSchema(),
- m_pTable->getTableName(),
+ aCatalog,
+ sSchemaName,
+ sTableName,
_rName);
sdbcx::ObjectType xRet = NULL;
@@ -64,7 +68,10 @@ sdbcx::ObjectType OEvoabColumns::createObject(const ::rtl::OUString& _rName)
sal_False,
sal_False,
sal_False,
- sal_True);
+ sal_True,
+ sCatalogName,
+ sSchemaName,
+ sTableName);
xRet = pRet;
break;
}
diff --git a/connectivity/source/drivers/evoab2/NDriver.hxx b/connectivity/source/drivers/evoab2/NDriver.hxx
index e255a32fa987..a6bcf2ed85e2 100644
--- a/connectivity/source/drivers/evoab2/NDriver.hxx
+++ b/connectivity/source/drivers/evoab2/NDriver.hxx
@@ -22,6 +22,7 @@
#include <com/sun/star/sdbc/XDriver.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <comphelper/processfactory.hxx>
#include <cppuhelper/compbase2.hxx>
#include "connectivity/CommonTools.hxx"
#include <osl/module.h>
@@ -79,7 +80,9 @@ namespace connectivity
public:
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >
- & getMSFactory(void) const { return m_xFactory; }
+ & getMSFactory(void) const { return m_xFactory; }
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >
+ getComponentContext( ) const { return comphelper::getComponentContext( m_xFactory ); }
// static methods
static sal_Bool acceptsURL_Stat( const ::rtl::OUString& url );
diff --git a/connectivity/source/drivers/evoab2/NStatement.cxx b/connectivity/source/drivers/evoab2/NStatement.cxx
index 711f09e8c150..bd377e5ffb55 100644
--- a/connectivity/source/drivers/evoab2/NStatement.cxx
+++ b/connectivity/source/drivers/evoab2/NStatement.cxx
@@ -55,7 +55,7 @@ OCommonStatement::OCommonStatement(OEvoabConnection* _pConnection)
, m_xResultSet(NULL)
, m_pResultSet(NULL)
, m_pConnection(_pConnection)
- , m_aParser(_pConnection->getDriver().getMSFactory())
+ , m_aParser(_pConnection->getDriver().getComponentContext())
, m_aSQLIterator( _pConnection, _pConnection->createCatalog()->getTables(), m_aParser, NULL )
, m_pParseTree(NULL)
, m_nMaxFieldSize(0)
@@ -419,7 +419,7 @@ rtl::OUString OCommonStatement::getTableName()
if( m_pParseTree && m_aSQLIterator.getStatementType() == SQL_STATEMENT_SELECT )
{
Any aCatalog;
- ::rtl::OUString aSchema, aComposedName;
+ ::rtl::OUString aSchema;
const OSQLParseNode *pSelectStmnt = m_aSQLIterator.getParseTree();
const OSQLParseNode *pAllTableNames = pSelectStmnt->getChild( 3 )->getChild( 0 )->getChild( 1 );
diff --git a/connectivity/source/drivers/file/FColumns.cxx b/connectivity/source/drivers/file/FColumns.cxx
index f916b2ddd7bc..199c0acda4d3 100644
--- a/connectivity/source/drivers/file/FColumns.cxx
+++ b/connectivity/source/drivers/file/FColumns.cxx
@@ -37,9 +37,12 @@ using namespace ::com::sun::star::lang;
sdbcx::ObjectType OColumns::createObject(const ::rtl::OUString& _rName)
{
-
+ const Any aCatalog;
+ const ::rtl::OUString sCatalogName;
+ const ::rtl::OUString sSchemaName(m_pTable->getSchema());
+ const ::rtl::OUString sTableName(m_pTable->getName());
Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(Any(),
- m_pTable->getSchema(),m_pTable->getName(),_rName);
+ sSchemaName, sTableName, _rName);
sdbcx::ObjectType xRet = NULL;
if(xResult.is())
@@ -60,7 +63,10 @@ sdbcx::ObjectType OColumns::createObject(const ::rtl::OUString& _rName)
sal_False,
sal_False,
sal_False,
- m_pTable->getConnection()->getMetaData()->supportsMixedCaseQuotedIdentifiers());
+ m_pTable->getConnection()->getMetaData()->supportsMixedCaseQuotedIdentifiers(),
+ sCatalogName,
+ sSchemaName,
+ sTableName);
xRet = pRet;
break;
}
diff --git a/connectivity/source/drivers/file/FPreparedStatement.cxx b/connectivity/source/drivers/file/FPreparedStatement.cxx
index 0d810fcc2b32..f99cf3c959b6 100644
--- a/connectivity/source/drivers/file/FPreparedStatement.cxx
+++ b/connectivity/source/drivers/file/FPreparedStatement.cxx
@@ -506,7 +506,10 @@ sal_uInt32 OPreparedStatement::AddParameter(OSQLParseNode * pParameter, const Re
,eType
,sal_False
,sal_False
- ,m_aSQLIterator.isCaseSensitive());
+ ,m_aSQLIterator.isCaseSensitive()
+ ,::rtl::OUString()
+ ,::rtl::OUString()
+ ,::rtl::OUString());
m_xParamColumns->get().push_back(xParaColumn);
return m_xParamColumns->get().size();
}
diff --git a/connectivity/source/drivers/file/FStatement.cxx b/connectivity/source/drivers/file/FStatement.cxx
index c606bbfe9dfc..49c604664d9b 100644
--- a/connectivity/source/drivers/file/FStatement.cxx
+++ b/connectivity/source/drivers/file/FStatement.cxx
@@ -29,6 +29,7 @@
#include <com/sun/star/sdbc/ResultSetType.hpp>
#include <com/sun/star/sdbc/FetchDirection.hpp>
#include <com/sun/star/lang/DisposedException.hpp>
+#include <comphelper/processfactory.hxx>
#include <comphelper/sequence.hxx>
#include <cppuhelper/typeprovider.hxx>
#include "connectivity/dbexception.hxx"
@@ -57,7 +58,7 @@ OStatement_Base::OStatement_Base(OConnection* _pConnection )
:OStatement_BASE(m_aMutex)
,::comphelper::OPropertyContainer(OStatement_BASE::rBHelper)
,m_xDBMetaData(_pConnection->getMetaData())
- ,m_aParser(_pConnection->getDriver()->getFactory())
+ ,m_aParser( comphelper::getComponentContext(_pConnection->getDriver()->getFactory()) )
,m_aSQLIterator( _pConnection, _pConnection->createCatalog()->getTables(), m_aParser, NULL )
,m_pConnection(_pConnection)
,m_pParseTree(NULL)
diff --git a/connectivity/source/drivers/flat/ETable.cxx b/connectivity/source/drivers/flat/ETable.cxx
index 14732280c6af..0d57cb18b971 100644
--- a/connectivity/source/drivers/flat/ETable.cxx
+++ b/connectivity/source/drivers/flat/ETable.cxx
@@ -109,7 +109,7 @@ void OFlatTable::fillColumns(const ::com::sun::star::lang::Locale& _aLocale)
m_aScales.assign(nFieldCount+1,-1);
const sal_Bool bCase = m_pConnection->getMetaData()->supportsMixedCaseQuotedIdentifiers();
- CharClass aCharClass(pConnection->getDriver()->getFactory(),_aLocale);
+ CharClass aCharClass( comphelper::getComponentContext(pConnection->getDriver()->getFactory()), _aLocale);
// read description
const sal_Unicode cDecimalDelimiter = pConnection->getDecimalDelimiter();
const sal_Unicode cThousandDelimiter = pConnection->getThousandDelimiter();
@@ -171,7 +171,8 @@ void OFlatTable::fillColumns(const ::com::sun::star::lang::Locale& _aLocale)
sal_False,
sal_False,
sal_False,
- bCase);
+ bCase,
+ m_CatalogName, getSchema(), getName());
Reference< XPropertySet> xCol = pColumn;
m_aColumns->get().push_back(xCol);
}
diff --git a/connectivity/source/drivers/hsqldb/HStorageAccess.cxx b/connectivity/source/drivers/hsqldb/HStorageAccess.cxx
index 3de95a3199bb..125681bbe860 100644
--- a/connectivity/source/drivers/hsqldb/HStorageAccess.cxx
+++ b/connectivity/source/drivers/hsqldb/HStorageAccess.cxx
@@ -44,7 +44,7 @@ using namespace ::connectivity::hsqldb;
* Method: openStream
* Signature: (Ljava/lang/String;Ljava/lang/String;I)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_openStream
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_openStream
(JNIEnv * env, jobject /*obj_this*/,jstring name, jstring key, jint mode)
{
#ifdef HSQLDB_DBG
@@ -62,7 +62,7 @@ SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStor
* Method: close
* Signature: (Ljava/lang/String;Ljava/lang/String;)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_close
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_close
(JNIEnv * env, jobject /*obj_this*/,jstring name, jstring key)
{
#ifdef HSQLDB_DBG
@@ -101,7 +101,7 @@ SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStor
* Method: getFilePointer
* Signature: (Ljava/lang/String;Ljava/lang/String;)J
*/
-SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_getFilePointer
+SAL_JNI_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_getFilePointer
(JNIEnv * env, jobject /*obj_this*/,jstring name, jstring key)
{
#ifdef HSQLDB_DBG
@@ -125,7 +125,7 @@ SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeSto
* Method: length
* Signature: (Ljava/lang/String;Ljava/lang/String;)J
*/
-SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_length
+SAL_JNI_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_length
(JNIEnv * env, jobject /*obj_this*/,jstring name, jstring key)
{
#ifdef HSQLDB_DBG
@@ -192,7 +192,7 @@ jint read_from_storage_stream( JNIEnv * env, jobject /*obj_this*/, jstring name,
* Method: read
* Signature: (Ljava/lang/String;Ljava/lang/String;)I
*/
-SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_read__Ljava_lang_String_2Ljava_lang_String_2
+SAL_JNI_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_read__Ljava_lang_String_2Ljava_lang_String_2
(JNIEnv* env, jobject obj_this, jstring name, jstring key)
{
#ifdef HSQLDB_DBG
@@ -265,7 +265,7 @@ jint read_from_storage_stream_into_buffer( JNIEnv * env, jobject /*obj_this*/,js
* Method: read
* Signature: (Ljava/lang/String;Ljava/lang/String;[BII)I
*/
-SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_read__Ljava_lang_String_2Ljava_lang_String_2_3BII
+SAL_JNI_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_read__Ljava_lang_String_2Ljava_lang_String_2_3BII
(JNIEnv * env, jobject obj_this,jstring name, jstring key, jbyteArray buffer, jint off, jint len)
{
#ifdef HSQLDB_DBG
@@ -286,7 +286,7 @@ SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStor
* Method: readInt
* Signature: (Ljava/lang/String;Ljava/lang/String;)I
*/
-SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_readInt
+SAL_JNI_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_readInt
(JNIEnv * env, jobject /*obj_this*/,jstring name, jstring key)
{
#ifdef HSQLDB_DBG
@@ -354,7 +354,7 @@ SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStor
* Method: seek
* Signature: (Ljava/lang/String;Ljava/lang/String;J)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_seek
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_seek
(JNIEnv * env, jobject /*obj_this*/,jstring name, jstring key, jlong position)
{
#ifdef HSQLDB_DBG
@@ -466,7 +466,7 @@ void write_to_storage_stream_from_buffer( JNIEnv* env, jobject /*obj_this*/, jst
* Method: write
* Signature: (Ljava/lang/String;Ljava/lang/String;[BII)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_write
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_write
(JNIEnv * env, jobject obj_this,jstring name, jstring key, jbyteArray buffer, jint off, jint len)
{
#ifdef HSQLDB_DBG
@@ -525,7 +525,7 @@ void write_to_storage_stream( JNIEnv* env, jobject /*obj_this*/, jstring name, j
* Method: writeInt
* Signature: (Ljava/lang/String;Ljava/lang/String;I)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_writeInt
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_NativeStorageAccess_writeInt
(JNIEnv * env, jobject obj_this,jstring name, jstring key, jint v)
{
#ifdef HSQLDB_DBG
diff --git a/connectivity/source/drivers/hsqldb/StorageFileAccess.cxx b/connectivity/source/drivers/hsqldb/StorageFileAccess.cxx
index 897a4ffc8973..38f43765e41b 100644
--- a/connectivity/source/drivers/hsqldb/StorageFileAccess.cxx
+++ b/connectivity/source/drivers/hsqldb/StorageFileAccess.cxx
@@ -46,7 +46,7 @@ using namespace ::connectivity::hsqldb;
* Method: isStreamElement
* Signature: (Ljava/lang/String;Ljava/lang/String;)Z
*/
-SAL_DLLPUBLIC_EXPORT jboolean JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageFileAccess_isStreamElement
+SAL_JNI_EXPORT jboolean JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageFileAccess_isStreamElement
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring name)
{
TStorages::mapped_type aStoragePair = StorageContainer::getRegisteredStorage(StorageContainer::jstring2ustring(env,key));
@@ -98,7 +98,7 @@ SAL_DLLPUBLIC_EXPORT jboolean JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_Storag
* Method: removeElement
* Signature: (Ljava/lang/String;Ljava/lang/String;)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageFileAccess_removeElement
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageFileAccess_removeElement
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring name)
{
#ifdef HSQLDB_DBG
@@ -133,7 +133,7 @@ SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageFil
* Method: renameElement
* Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageFileAccess_renameElement
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageFileAccess_renameElement
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring oldname, jstring newname)
{
#ifdef HSQLDB_DBG
diff --git a/connectivity/source/drivers/hsqldb/StorageNativeInputStream.cxx b/connectivity/source/drivers/hsqldb/StorageNativeInputStream.cxx
index 40f04a5c41ff..b6d578b27bc8 100644
--- a/connectivity/source/drivers/hsqldb/StorageNativeInputStream.cxx
+++ b/connectivity/source/drivers/hsqldb/StorageNativeInputStream.cxx
@@ -57,7 +57,7 @@ using namespace ::connectivity::hsqldb;
* Method: openStream
* Signature: (Ljava/lang/String;Ljava/lang/String;I)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_openStream
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_openStream
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring name, jint mode)
{
#ifdef HSQLDB_DBG
@@ -75,7 +75,7 @@ SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNat
* Method: read
* Signature: (Ljava/lang/String;Ljava/lang/String;)I
*/
-SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_read__Ljava_lang_String_2Ljava_lang_String_2
+SAL_JNI_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_read__Ljava_lang_String_2Ljava_lang_String_2
(JNIEnv * env, jobject obj_this,jstring key, jstring name)
{
#ifdef HSQLDB_DBG
@@ -94,7 +94,7 @@ SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNat
* Method: read
* Signature: (Ljava/lang/String;Ljava/lang/String;[BII)I
*/
-SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_read__Ljava_lang_String_2Ljava_lang_String_2_3BII
+SAL_JNI_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_read__Ljava_lang_String_2Ljava_lang_String_2_3BII
(JNIEnv * env, jobject obj_this,jstring key, jstring name, jbyteArray buffer, jint off, jint len)
{
#ifdef HSQLDB_DBG
@@ -113,7 +113,7 @@ SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNat
* Method: close
* Signature: (Ljava/lang/String;Ljava/lang/String;)V
*/
-SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_close
+SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_close
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring name)
{
#ifdef HSQLDB_DBG
@@ -133,7 +133,7 @@ SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNat
* Method: skip
* Signature: (Ljava/lang/String;Ljava/lang/String;J)J
*/
-SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_skip
+SAL_JNI_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_skip
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring name, jlong n)
{
#ifdef HSQLDB_DBG
@@ -199,7 +199,7 @@ SAL_DLLPUBLIC_EXPORT jlong JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNa
* Method: available
* Signature: (Ljava/lang/String;Ljava/lang/String;)I
*/
-SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_available
+SAL_JNI_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_available
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring name)
{
#ifdef HSQLDB_DBG
@@ -241,7 +241,7 @@ SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNat
* Method: read
* Signature: (Ljava/lang/String;Ljava/lang/String;[B)I
*/
-SAL_DLLPUBLIC_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_read__Ljava_lang_String_2Ljava_lang_String_2_3B
+SAL_JNI_EXPORT jint JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeInputStream_read__Ljava_lang_String_2Ljava_lang_String_2_3B
(JNIEnv * env, jobject /*obj_this*/,jstring key, jstring name, jbyteArray buffer)
{
#ifdef HSQLDB_DBG
diff --git a/connectivity/source/drivers/hsqldb/StorageNativeOutputStream.cxx b/connectivity/source/drivers/hsqldb/StorageNativeOutputStream.cxx
index e81447d5b6dd..61295b3c1a4e 100644
--- a/connectivity/source/drivers/hsqldb/StorageNativeOutputStream.cxx
+++ b/connectivity/source/drivers/hsqldb/StorageNativeOutputStream.cxx
@@ -57,7 +57,7 @@ using namespace ::connectivity::hsqldb;
* Method: openStream
* Signature: (Ljava/lang/String;Ljava/lang/String;I)V
*/
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_openStream
+extern "C" SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_openStream
(JNIEnv * env, jobject /*obj_this*/, jstring name, jstring key, jint mode)
{
#ifdef HSQLDB_DBG
@@ -73,7 +73,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb
* Method: write
* Signature: (Ljava/lang/String;Ljava/lang/String;[BII)V
*/
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_write__Ljava_lang_String_2Ljava_lang_String_2_3BII
+extern "C" SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_write__Ljava_lang_String_2Ljava_lang_String_2_3BII
(JNIEnv * env, jobject obj_this, jstring key, jstring name, jbyteArray buffer, jint off, jint len)
{
#ifdef HSQLDB_DBG
@@ -91,7 +91,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb
* Method: write
* Signature: (Ljava/lang/String;Ljava/lang/String;[B)V
*/
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_write__Ljava_lang_String_2Ljava_lang_String_2_3B
+extern "C" SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_write__Ljava_lang_String_2Ljava_lang_String_2_3B
(JNIEnv * env, jobject obj_this, jstring key, jstring name, jbyteArray buffer)
{
#ifdef HSQLDB_DBG
@@ -109,7 +109,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb
* Method: close
* Signature: (Ljava/lang/String;Ljava/lang/String;)V
*/
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_close
+extern "C" SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_close
(JNIEnv * env, jobject /*obj_this*/, jstring key, jstring name)
{
#ifdef HSQLDB_DBG
@@ -141,7 +141,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb
* Method: write
* Signature: (Ljava/lang/String;Ljava/lang/String;I)V
*/
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_write__Ljava_lang_String_2Ljava_lang_String_2I
+extern "C" SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_write__Ljava_lang_String_2Ljava_lang_String_2I
(JNIEnv * env, jobject obj_this, jstring key, jstring name,jint b)
{
#ifdef HSQLDB_DBG
@@ -159,7 +159,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb
* Method: flush
* Signature: (Ljava/lang/String;Ljava/lang/String;)V
*/
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_flush
+extern "C" SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_flush
(JNIEnv * env, jobject /*obj_this*/, jstring key, jstring name)
{
OSL_UNUSED( env );
@@ -178,7 +178,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb
* Method: sync
* Signature: (Ljava/lang/String;Ljava/lang/String;)V
*/
-extern "C" SAL_DLLPUBLIC_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_sync
+extern "C" SAL_JNI_EXPORT void JNICALL Java_com_sun_star_sdbcx_comp_hsqldb_StorageNativeOutputStream_sync
(JNIEnv * env, jobject /*obj_this*/, jstring key, jstring name)
{
#ifdef HSQLDB_DBG
diff --git a/connectivity/source/drivers/jdbc/JConnection.cxx b/connectivity/source/drivers/jdbc/JConnection.cxx
index 6921c0d96050..a814c1b6665d 100644
--- a/connectivity/source/drivers/jdbc/JConnection.cxx
+++ b/connectivity/source/drivers/jdbc/JConnection.cxx
@@ -469,7 +469,7 @@ Reference< XStatement > SAL_CALL java_sql_Connection::createStatement( ) throw(
{
try
{
- OSQLParser aParser( m_pDriver->getContext().getLegacyServiceFactory() );
+ OSQLParser aParser( m_pDriver->getContext().getUNOContext() );
::rtl::OUString sErrorMessage;
::rtl::OUString sNewSql;
OSQLParseNode* pNode = aParser.parseTree(sErrorMessage,_sSQL);
diff --git a/connectivity/source/drivers/jdbc/jservices.cxx b/connectivity/source/drivers/jdbc/jservices.cxx
index 8ad3d81c1fa1..2d29006d7d61 100644
--- a/connectivity/source/drivers/jdbc/jservices.cxx
+++ b/connectivity/source/drivers/jdbc/jservices.cxx
@@ -75,7 +75,7 @@ struct ProviderRequest
};
extern "C" SAL_DLLPUBLIC_EXPORT void SAL_CALL
-component_getImplementationEnvironment(
+jdbc_component_getImplementationEnvironment(
char const ** ppEnvTypeName, uno_Environment **)
{
// Recent Java 6 VMs make calls to JNI Attach/DetachCurrentThread (which
diff --git a/connectivity/source/drivers/kab/KColumns.cxx b/connectivity/source/drivers/kab/KColumns.cxx
index a047d1afe843..5ab9598073ee 100644
--- a/connectivity/source/drivers/kab/KColumns.cxx
+++ b/connectivity/source/drivers/kab/KColumns.cxx
@@ -37,11 +37,12 @@ using namespace ::com::sun::star::lang;
// -------------------------------------------------------------------------
sdbcx::ObjectType KabColumns::createObject(const ::rtl::OUString& _rName)
{
+ const Any aCatalog;
+ const ::rtl::OUString sCatalogName;
+ const ::rtl::OUString sSchemaName(m_pTable->getSchema());
+ const ::rtl::OUString sTableName(m_pTable->getTableName());
Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(
- Any(),
- m_pTable->getSchema(),
- m_pTable->getTableName(),
- _rName);
+ aCatalog, sSchemaName, sTableName, _rName);
sdbcx::ObjectType xRet = NULL;
if (xResult.is())
@@ -64,7 +65,10 @@ sdbcx::ObjectType KabColumns::createObject(const ::rtl::OUString& _rName)
sal_False,
sal_False,
sal_False,
- sal_True);
+ sal_True,
+ sCatalogName,
+ sSchemaName,
+ sTableName);
xRet = pRet;
break;
}
diff --git a/connectivity/source/drivers/kab/KDriver.hxx b/connectivity/source/drivers/kab/KDriver.hxx
index b51058151279..1243f7425185 100644
--- a/connectivity/source/drivers/kab/KDriver.hxx
+++ b/connectivity/source/drivers/kab/KDriver.hxx
@@ -23,6 +23,7 @@
#include <com/sun/star/sdbc/XDriver.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/frame/XTerminateListener.hpp>
+#include <comphelper/processfactory.hxx>
#include <cppuhelper/compbase3.hxx>
#include <osl/module.h>
@@ -161,8 +162,8 @@ namespace connectivity
static ::rtl::OUString getImplementationName_Static( ) throw(::com::sun::star::uno::RuntimeException);
static ::com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static( ) throw (::com::sun::star::uno::RuntimeException);
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >&
- getMSFactory() const { return m_xMSFactory; }
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >
+ getComponentContext() const { return comphelper::getComponentContext(m_xMSFactory); }
/** returns the driver's implementation name (being pure ASCII) for reference in various places
*/
diff --git a/connectivity/source/drivers/kab/KStatement.cxx b/connectivity/source/drivers/kab/KStatement.cxx
index e898ee48f62f..a5babf0c2de3 100644
--- a/connectivity/source/drivers/kab/KStatement.cxx
+++ b/connectivity/source/drivers/kab/KStatement.cxx
@@ -62,7 +62,7 @@ IMPLEMENT_SERVICE_INFO(KabStatement, "com.sun.star.sdbc.drivers.KabStatement", "
KabCommonStatement::KabCommonStatement(KabConnection* _pConnection )
: KabCommonStatement_BASE(m_aMutex),
OPropertySetHelper(KabCommonStatement_BASE::rBHelper),
- m_aParser(_pConnection->getDriver()->getMSFactory()),
+ m_aParser(_pConnection->getDriver()->getComponentContext()),
m_aSQLIterator(_pConnection, _pConnection->createCatalog()->getTables(), m_aParser, NULL ),
m_pParseTree(NULL),
m_pConnection(_pConnection),
diff --git a/connectivity/source/drivers/macab/MacabColumns.cxx b/connectivity/source/drivers/macab/MacabColumns.cxx
index 4d0b064ce28b..107ab4575784 100644
--- a/connectivity/source/drivers/macab/MacabColumns.cxx
+++ b/connectivity/source/drivers/macab/MacabColumns.cxx
@@ -37,11 +37,12 @@ using namespace ::com::sun::star::lang;
// -------------------------------------------------------------------------
sdbcx::ObjectType MacabColumns::createObject(const ::rtl::OUString& _rName)
{
+ const Any aCatalog;
+ const ::rtl::OUString sCatalogName;
+ const ::rtl::OUString sSchemaName(m_pTable->getSchema());
+ const ::rtl::OUString sTableName(m_pTable->getTableName());
Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(
- Any(),
- m_pTable->getSchema(),
- m_pTable->getTableName(),
- _rName);
+ aCatalog, sSchemaName, sTableName, _rName);
sdbcx::ObjectType xRet = NULL;
if (xResult.is())
@@ -64,7 +65,10 @@ sdbcx::ObjectType MacabColumns::createObject(const ::rtl::OUString& _rName)
sal_False,
sal_False,
sal_False,
- sal_True);
+ sal_True,
+ sCatalogName,
+ sSchemaName,
+ sTableName);
xRet = pRet;
break;
}
diff --git a/connectivity/source/drivers/macab/MacabDriver.hxx b/connectivity/source/drivers/macab/MacabDriver.hxx
index c908ee481d2c..cbfe0c035bdc 100644
--- a/connectivity/source/drivers/macab/MacabDriver.hxx
+++ b/connectivity/source/drivers/macab/MacabDriver.hxx
@@ -23,6 +23,7 @@
#include <com/sun/star/sdbc/XDriver.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/frame/XTerminateListener.hpp>
+#include <comphelper/processfactory.hxx>
#include <cppuhelper/compbase3.hxx>
#include <osl/module.h>
@@ -134,8 +135,8 @@ namespace connectivity
static ::rtl::OUString getImplementationName_Static( ) throw(::com::sun::star::uno::RuntimeException);
static ::com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static( ) throw (::com::sun::star::uno::RuntimeException);
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >&
- getMSFactory() const { return m_xMSFactory; }
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >
+ getComponentContext() const { return comphelper::getComponentContext(m_xMSFactory); }
/** returns the driver's implementation name (being pure ASCII) for reference in various places
*/
diff --git a/connectivity/source/drivers/macab/MacabStatement.cxx b/connectivity/source/drivers/macab/MacabStatement.cxx
index 7ea31f7e35b4..12cf3f4cef20 100644
--- a/connectivity/source/drivers/macab/MacabStatement.cxx
+++ b/connectivity/source/drivers/macab/MacabStatement.cxx
@@ -65,7 +65,7 @@ IMPLEMENT_SERVICE_INFO(MacabStatement, "com.sun.star.sdbc.drivers.MacabStatement
MacabCommonStatement::MacabCommonStatement(MacabConnection* _pConnection )
: MacabCommonStatement_BASE(m_aMutex),
OPropertySetHelper(MacabCommonStatement_BASE::rBHelper),
- m_aParser(_pConnection->getDriver()->getMSFactory()),
+ m_aParser(_pConnection->getDriver()->getComponentContext()),
m_aSQLIterator(_pConnection, _pConnection->createCatalog()->getTables(), m_aParser, NULL ),
m_pParseTree(NULL),
m_pConnection(_pConnection),
diff --git a/connectivity/source/drivers/mork/MColumns.cxx b/connectivity/source/drivers/mork/MColumns.cxx
index 852bb4d4c012..22a2dd7f4495 100644
--- a/connectivity/source/drivers/mork/MColumns.cxx
+++ b/connectivity/source/drivers/mork/MColumns.cxx
@@ -42,8 +42,12 @@ using namespace ::com::sun::star::lang;
sdbcx::ObjectType OColumns::createObject(const ::rtl::OUString& _rName)
{
- Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(Any(),
- m_pTable->getSchema(),m_pTable->getTableName(),_rName);
+ const Any aCatalog;
+ const ::rtl::OUString sCatalogName;
+ const ::rtl::OUString sSchemaName(m_pTable->getSchema());
+ const ::rtl::OUString sTableName(m_pTable->getTableName());
+ Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(
+ aCatalog, sSchemaName, sTableName, _rName);
sdbcx::ObjectType xRet = NULL;
if(xResult.is())
@@ -65,7 +69,10 @@ sdbcx::ObjectType OColumns::createObject(const ::rtl::OUString& _rName)
nPrec,
xRow->getInt(9),
nType,
- sal_False,sal_False,sal_False,sal_True);
+ sal_False,sal_False,sal_False,sal_True,
+ sCatalogName,
+ sSchemaName,
+ sTableName);
xRet = pRet;
break;
}
diff --git a/connectivity/source/drivers/mork/MPreparedStatement.cxx b/connectivity/source/drivers/mork/MPreparedStatement.cxx
index c34de94576e1..803b9606b1d0 100644
--- a/connectivity/source/drivers/mork/MPreparedStatement.cxx
+++ b/connectivity/source/drivers/mork/MPreparedStatement.cxx
@@ -442,7 +442,10 @@ size_t OPreparedStatement::AddParameter(OSQLParseNode * pParameter, const Refere
,sal_False
,sal_False
,sal_False
- ,m_pSQLIterator->isCaseSensitive());
+ ,m_pSQLIterator->isCaseSensitive()
+ ,::rtl::OUString()
+ ,::rtl::OUString()
+ ,::rtl::OUString());
m_xParamColumns->get().push_back(xParaColumn);
return nParameter;
}
diff --git a/connectivity/source/drivers/mork/MStatement.cxx b/connectivity/source/drivers/mork/MStatement.cxx
index 342ac2add17b..2beacfecd95a 100644
--- a/connectivity/source/drivers/mork/MStatement.cxx
+++ b/connectivity/source/drivers/mork/MStatement.cxx
@@ -30,6 +30,7 @@
#include <com/sun/star/lang/DisposedException.hpp>
#include <comphelper/sequence.hxx>
#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/processfactory.hxx>
#include <comphelper/extract.hxx>
#include <comphelper/types.hxx>
#include <connectivity/dbexception.hxx>
@@ -79,7 +80,7 @@ OCommonStatement::OCommonStatement(OConnection* _pConnection )
,OCommonStatement_SBASE((::cppu::OWeakObject*)_pConnection, this)
,m_pTable(NULL)
,m_pConnection(_pConnection)
- ,m_aParser(_pConnection->getDriver()->getFactory())
+ ,m_aParser( comphelper::getComponentContext(_pConnection->getDriver()->getFactory()) )
,m_pSQLIterator( new OSQLParseTreeIterator( _pConnection, _pConnection->createCatalog()->getTables(), m_aParser, NULL ) )
,rBHelper(OCommonStatement_IBASE::rBHelper)
{
diff --git a/connectivity/source/drivers/mozab/MColumns.cxx b/connectivity/source/drivers/mozab/MColumns.cxx
index f6fb6e217942..786280cbbe5e 100644
--- a/connectivity/source/drivers/mozab/MColumns.cxx
+++ b/connectivity/source/drivers/mozab/MColumns.cxx
@@ -43,8 +43,12 @@ using namespace ::com::sun::star::lang;
sdbcx::ObjectType OColumns::createObject(const ::rtl::OUString& _rName)
{
- Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(Any(),
- m_pTable->getSchema(),m_pTable->getTableName(),_rName);
+ const Any aCatalog;
+ const ::rtl::OUString sCatalogName;
+ const ::rtl::OUString sSchemaName(m_pTable->getSchema());
+ const ::rtl::OUString sTableName(m_pTable->getTableName());
+ Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns(
+ aCatalog, sSchemaName, sTableName, _rName);
sdbcx::ObjectType xRet = NULL;
if(xResult.is())
@@ -66,7 +70,10 @@ sdbcx::ObjectType OColumns::createObject(const ::rtl::OUString& _rName)
nPrec,
xRow->getInt(9),
nType,
- sal_False,sal_False,sal_False,sal_True);
+ sal_False,sal_False,sal_False,sal_True,
+ sCatalogName,
+ sSchemaName,
+ sTableName);
xRet = pRet;
break;
}
diff --git a/connectivity/source/drivers/mozab/MPreparedStatement.cxx b/connectivity/source/drivers/mozab/MPreparedStatement.cxx
index 9a650effd215..971749d03cc0 100644
--- a/connectivity/source/drivers/mozab/MPreparedStatement.cxx
+++ b/connectivity/source/drivers/mozab/MPreparedStatement.cxx
@@ -443,7 +443,10 @@ size_t OPreparedStatement::AddParameter(OSQLParseNode * pParameter, const Refere
,sal_False
,sal_False
,sal_False
- ,m_pSQLIterator->isCaseSensitive());
+ ,m_pSQLIterator->isCaseSensitive()
+ ,::rtl::OUString()
+ ,::rtl::OUString()
+ ,::rtl::OUString());
m_xParamColumns->get().push_back(xParaColumn);
return nParameter;
}
diff --git a/connectivity/source/drivers/mozab/MStatement.cxx b/connectivity/source/drivers/mozab/MStatement.cxx
index c1041d909cae..9f6b2d5420d6 100644
--- a/connectivity/source/drivers/mozab/MStatement.cxx
+++ b/connectivity/source/drivers/mozab/MStatement.cxx
@@ -32,6 +32,7 @@
#include <cppuhelper/typeprovider.hxx>
#include <comphelper/extract.hxx>
#include <comphelper/types.hxx>
+#include <comphelper/processfactory.hxx>
#include <connectivity/dbexception.hxx>
#include <com/sun/star/container/XIndexAccess.hpp>
@@ -73,7 +74,8 @@ OCommonStatement::OCommonStatement(OConnection* _pConnection )
,m_xDBMetaData(_pConnection->getMetaData())
,m_pTable(NULL)
,m_pConnection(_pConnection)
- ,m_aParser(_pConnection->getDriver()->getMSFactory())
+ ,m_aParser(::comphelper::getComponentContext(
+ _pConnection->getDriver()->getMSFactory()))
,m_pSQLIterator( new OSQLParseTreeIterator( _pConnection, _pConnection->createCatalog()->getTables(), m_aParser, NULL ) )
,m_pParseTree(NULL)
,rBHelper(OCommonStatement_IBASE::rBHelper)
diff --git a/connectivity/source/drivers/odbcbase/OPreparedStatement.cxx b/connectivity/source/drivers/odbcbase/OPreparedStatement.cxx
index a5d24dddc628..f5c05b80f76f 100644
--- a/connectivity/source/drivers/odbcbase/OPreparedStatement.cxx
+++ b/connectivity/source/drivers/odbcbase/OPreparedStatement.cxx
@@ -30,6 +30,7 @@
#include "odbc/OResultSet.hxx"
#include "odbc/OResultSetMetaData.hxx"
#include <cppuhelper/typeprovider.hxx>
+#include <comphelper/processfactory.hxx>
#include <comphelper/sequence.hxx>
#include <com/sun/star/lang/DisposedException.hpp>
#include "connectivity/dbtools.hxx"
@@ -37,6 +38,8 @@
#include "connectivity/FValue.hxx"
#include "resource/common_res.hrc"
#include "connectivity/sqlparse.hxx"
+#include <boost/type_traits/remove_reference.hpp>
+#include <boost/type_traits/is_same.hpp>
using namespace ::comphelper;
using namespace connectivity;
@@ -52,6 +55,13 @@ using namespace com::sun::star::util;
IMPLEMENT_SERVICE_INFO(OPreparedStatement,"com.sun.star.sdbcx.OPreparedStatement","com.sun.star.sdbc.PreparedStatement");
+namespace
+{
+ // for now, never use wchar,
+ // but most of code is prepared to handle it
+ // in case we make this configurable
+ const bool useWChar = false;
+}
OPreparedStatement::OPreparedStatement( OConnection* _pConnection,const ::rtl::OUString& sql)
:OStatement_BASE2(_pConnection)
@@ -64,7 +74,7 @@ OPreparedStatement::OPreparedStatement( OConnection* _pConnection,const ::rtl::O
{
if(_pConnection->isParameterSubstitutionEnabled())
{
- OSQLParser aParser(_pConnection->getDriver()->getORB());
+ OSQLParser aParser( comphelper::getComponentContext(_pConnection->getDriver()->getORB()) );
::rtl::OUString sErrorMessage;
::rtl::OUString sNewSql;
::std::auto_ptr<OSQLParseNode> pNode( aParser.parseTree(sErrorMessage,sql) );
@@ -199,31 +209,6 @@ sal_Bool SAL_CALL OPreparedStatement::execute( ) throw(SQLException, RuntimeExc
{
}
- // Now loop while more data is needed (i.e. a data-at-
- // execution parameter was given). For each parameter
- // that needs data, put the data from the input stream.
-
- while (needData) {
-
- // Get the parameter number that requires data
-
- sal_Int32* paramIndex = 0;
- N3SQLParamData (m_aStatementHandle,(SQLPOINTER*)&paramIndex);
-
- // If the parameter index is -1, there is no more
- // data required
-
- if (*paramIndex == -1) {
- needData = sal_False;
- }
- else {
- // Now we have the proper parameter index,
- // get the data from the input stream
- // and do a SQLPutData
- putParamData(*paramIndex);
- }
- }
-
// Now determine if there is a result set associated with
// the SQL statement that was executed. Get the column
// count, and if it is not zero, there is a result set.
@@ -258,8 +243,7 @@ sal_Int32 SAL_CALL OPreparedStatement::executeUpdate( ) throw(SQLException, Run
void SAL_CALL OPreparedStatement::setString( sal_Int32 parameterIndex, const ::rtl::OUString& x ) throw(SQLException, RuntimeException)
{
- ::rtl::OString aString(::rtl::OUStringToOString(x,getOwnConnection()->getTextEncoding()));
- setParameter(parameterIndex,DataType::CHAR,aString.getLength(),(void*)&x);
+ setParameter(parameterIndex, DataType::CHAR, invalid_scale, x);
}
// -------------------------------------------------------------------------
@@ -294,111 +278,189 @@ Reference< XResultSet > SAL_CALL OPreparedStatement::executeQuery( ) throw(SQLE
void SAL_CALL OPreparedStatement::setBoolean( sal_Int32 parameterIndex, sal_Bool x ) throw(SQLException, RuntimeException)
{
- ::osl::MutexGuard aGuard( m_aMutex );
+ // Set the parameter as if it were an integer
+ setInt (parameterIndex, x ? 1 : 0 );
+}
+// -------------------------------------------------------------------------
+// The MutexGuard must _already_ be taken!
+void OPreparedStatement::setParameterPre(sal_Int32 parameterIndex)
+{
checkDisposed(OStatement_BASE::rBHelper.bDisposed);
+ prepareStatement();
+ checkParameterIndex(parameterIndex);
+ OSL_ENSURE(m_aStatementHandle,"StatementHandle is null!");
+}
+// -------------------------------------------------------------------------
+template <typename T> void OPreparedStatement::setScalarParameter(const sal_Int32 parameterIndex, const sal_Int32 i_nType, const SQLULEN i_nColSize, const T i_Value)
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+ setParameterPre(parameterIndex);
- sal_Int32 value = 0;
+ typedef typename boost::remove_reference< T >::type TnoRef;
- // If the parameter is sal_True, set the value to 1
- if (x) {
- value = 1;
- }
+ TnoRef *bindBuf = static_cast< TnoRef* >( allocBindBuf(parameterIndex, sizeof(i_Value)) );
+ *bindBuf = i_Value;
- // Set the parameter as if it were an integer
- setInt (parameterIndex, value);
+ setParameter(parameterIndex, i_nType, i_nColSize, invalid_scale, bindBuf, sizeof(i_Value), sizeof(i_Value));
}
// -------------------------------------------------------------------------
-void OPreparedStatement::setParameter(sal_Int32 parameterIndex,sal_Int32 _nType,sal_Int32 _nSize,void* _pData)
+
+void OPreparedStatement::setParameter(const sal_Int32 parameterIndex, const sal_Int32 _nType, const sal_Int16 _nScale, const ::rtl::OUString &_sData)
{
::osl::MutexGuard aGuard( m_aMutex );
- checkDisposed(OStatement_BASE::rBHelper.bDisposed);
+ setParameterPre(parameterIndex);
- prepareStatement();
- // Allocate a buffer to be used in binding. This will be
- // a 'permanent' buffer that the bridge will fill in with
- // the bound data in native format.
+ assert (_nType == DataType::VARCHAR || _nType == DataType::CHAR || _nType == DataType::DECIMAL || _nType == DataType::NUMERIC);
-
- checkParameterIndex(parameterIndex);
- sal_Int32 nRealSize = _nSize;
- SQLSMALLINT fSqlType = static_cast<SQLSMALLINT>(OTools::jdbcTypeToOdbc(_nType));
- switch(fSqlType)
+ sal_Int32 nCharLen;
+ sal_Int32 nByteLen;
+ void *pData;
+ if (useWChar)
{
- case SQL_CHAR:
- case SQL_VARCHAR:
- case SQL_DECIMAL:
- case SQL_NUMERIC:
- ++nRealSize;
- break;
- case SQL_BINARY:
- case SQL_VARBINARY:
- nRealSize=1; //dummy buffer, binary data isn't copied
- break;
- default:
- break;
+ /*
+ * On Windows, wchar is 16 bits (UTF-16 encoding), the ODBC "W" variants functions take UTF-16 encoded strings
+ * and character lengths are number of UTF-16 codepoints.
+ * Reference: http://msdn.microsoft.com/en-us/library/windows/desktop/ms716246%28v=vs.85%29.aspx
+ * ODBC Programmer's reference > Developing Applications > Programming Considerations > Unicode > Unicode Function Arguments
+ * http://support.microsoft.com/kb/294169
+ *
+ * UnixODBC can be configured at compile-time so that the "W" variants expect
+ * UTF-16 or UTF-32 encoded strings, and character lengths are number of codepoints.
+ * However, UTF-16 is the default, what all/most distributions do
+ * and the established API that most drivers implement.
+ * As wchar is often 32 bits, this differs from C-style strings of wchar!
+ *
+ * Our internal OUString storage is always UTF-16, so no conversion to do here.
+ */
+ BOOST_STATIC_ASSERT( sizeof(sal_Unicode) == 2 );
+ nCharLen = _sData.getLength();
+ nByteLen = nCharLen * sizeof(sal_Unicode);
+ pData = allocBindBuf(parameterIndex, nByteLen);
+ memcpy(pData, _sData.getStr(), nByteLen);
+ }
+ else
+ {
+ ::rtl::OString sOData( ::rtl::OUStringToOString(_sData, getOwnConnection()->getTextEncoding()) );
+ nCharLen = sOData.getLength();
+ nByteLen = nCharLen;
+ pData = allocBindBuf(parameterIndex, nByteLen);
+ memcpy(pData, sOData.getStr(), nByteLen);
}
- sal_Int8* bindBuf = allocBindBuf(parameterIndex, nRealSize);
+ setParameter( parameterIndex, _nType, nCharLen, _nScale, pData, nByteLen, nByteLen );
+}
+// -------------------------------------------------------------------------
+void OPreparedStatement::setParameter(const sal_Int32 parameterIndex, const sal_Int32 _nType, const Sequence< sal_Int8 > &x)
+{
+ ::osl::MutexGuard aGuard( m_aMutex );
+ setParameterPre(parameterIndex);
- OSL_ENSURE(m_aStatementHandle,"StatementHandle is null!");
- OTools::bindParameter( m_pConnection,
- m_aStatementHandle,
- parameterIndex,
- bindBuf,
- getLengthBuf(parameterIndex),
- fSqlType,
- sal_False,
- m_pConnection->useOldDateFormat(),
- _pData,
- (Reference <XInterface>)*this,
- getOwnConnection()->getTextEncoding());
+ assert(_nType == DataType::BINARY || _nType == DataType::VARBINARY);
+
+ // don't copy the sequence, just point the ODBC directly at the sequence's storage array
+ // Why BINARY/Sequence is treated differently than strings (which are copied), I'm not sure
+ OSL_VERIFY(allocBindBuf(parameterIndex, 0) == NULL);
+ boundParams[parameterIndex-1].setSequence(x); // this ensures that the sequence stays alive
+
+ setParameter( parameterIndex, _nType, x.getLength(), invalid_scale, x.getConstArray(), x.getLength(), x.getLength() );
+}
+// -------------------------------------------------------------------------
+void OPreparedStatement::setParameter(const sal_Int32 parameterIndex, const sal_Int32 _nType, const SQLULEN _nColumnSize, const sal_Int32 _nScale, const void* const _pData, const SQLULEN _nDataLen, const SQLLEN _nDataAllocLen)
+{
+ SQLSMALLINT fCType, fSqlType;
+ OTools::getBindTypes(useWChar, m_pConnection->useOldDateFormat(), OTools::jdbcTypeToOdbc(_nType), fCType, fSqlType);
+
+ SQLLEN *pDataLen=boundParams[parameterIndex-1].getBindLengthBuffer();
+ *pDataLen=_nDataLen;
+
+ SQLRETURN nRetcode;
+ nRetcode = (*(T3SQLBindParameter)m_pConnection->getOdbcFunction(ODBC3SQLBindParameter))(
+ m_aStatementHandle,
+ // checkParameterIndex guarantees this is safe
+ static_cast<SQLUSMALLINT>(parameterIndex),
+ SQL_PARAM_INPUT,
+ fCType,
+ fSqlType,
+ _nColumnSize,
+ _nScale,
+ // we trust the ODBC driver not to touch it because SQL_PARAM_INPUT
+ const_cast<void*>(_pData),
+ _nDataAllocLen,
+ pDataLen);
+
+ OTools::ThrowException(m_pConnection, nRetcode, m_aStatementHandle, SQL_HANDLE_STMT, *this);
}
// -----------------------------------------------------------------------------
-void SAL_CALL OPreparedStatement::setByte( sal_Int32 parameterIndex, sal_Int8 x ) throw(SQLException, RuntimeException)
+void SAL_CALL OPreparedStatement::setByte( const sal_Int32 parameterIndex, const sal_Int8 x ) throw(SQLException, RuntimeException)
{
- setParameter(parameterIndex,DataType::TINYINT,sizeof(sal_Int8),&x);
+ setScalarParameter(parameterIndex, DataType::TINYINT, 3, x);
}
// -------------------------------------------------------------------------
-
+// For older compilers (that do not support partial specialisation of class templates)
+// uncomment if necessary (safe also on compilers that *do* support partial specialisation)
+//BOOST_BROKEN_COMPILER_TYPE_TRAITS_SPECIALIZATION(DATE_STRUCT);
+//BOOST_STATIC_ASSERT((boost::is_same<DATE_STRUCT, boost::remove_reference<DATE_STRUCT&>::type>::value));
void SAL_CALL OPreparedStatement::setDate( sal_Int32 parameterIndex, const Date& aData ) throw(SQLException, RuntimeException)
{
- DATE_STRUCT x = OTools::DateToOdbcDate(aData);
- setParameter(parameterIndex,DataType::DATE,sizeof(DATE_STRUCT),&x);
+ DATE_STRUCT x(OTools::DateToOdbcDate(aData));
+ setScalarParameter<DATE_STRUCT&>(parameterIndex, DataType::DATE, 10, x);
}
// -------------------------------------------------------------------------
-
void SAL_CALL OPreparedStatement::setTime( sal_Int32 parameterIndex, const Time& aVal ) throw(SQLException, RuntimeException)
{
- TIME_STRUCT x = OTools::TimeToOdbcTime(aVal);
- setParameter(parameterIndex,DataType::TIME,sizeof(TIME_STRUCT),&x);
+ const sal_uInt16 hundredths (aVal.HundredthSeconds);
+ SQLULEN nColSize;
+ if(hundredths == 0)
+ nColSize = 8;
+ else if(hundredths % 10 == 0)
+ nColSize = 10;
+ else
+ nColSize = 11;
+ TIME_STRUCT x(OTools::TimeToOdbcTime(aVal));
+ setScalarParameter<TIME_STRUCT&>(parameterIndex, DataType::TIME, nColSize, x);
}
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setTimestamp( sal_Int32 parameterIndex, const DateTime& aVal ) throw(SQLException, RuntimeException)
{
- TIMESTAMP_STRUCT x = OTools::DateTimeToTimestamp(aVal);
- setParameter(parameterIndex,DataType::TIMESTAMP,sizeof(TIMESTAMP_STRUCT),&x);
+ sal_uInt16 s(aVal.Seconds);
+ sal_uInt16 hundredths(aVal.HundredthSeconds);
+ SQLULEN nColSize;
+ if(hundredths == 0)
+ {
+ if (s == 0)
+ nColSize=16;
+ else
+ nColSize=19;
+ }
+ else if(hundredths % 10 == 0)
+ nColSize = 21;
+ else
+ nColSize = 22;
+
+ TIMESTAMP_STRUCT x(OTools::DateTimeToTimestamp(aVal));
+ setScalarParameter<TIMESTAMP_STRUCT&>(parameterIndex, DataType::TIMESTAMP, nColSize, x);
}
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setDouble( sal_Int32 parameterIndex, double x ) throw(SQLException, RuntimeException)
{
- setParameter(parameterIndex,DataType::DOUBLE,sizeof(double),&x);
+ setScalarParameter(parameterIndex, DataType::DOUBLE, 15, x);
}
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setFloat( sal_Int32 parameterIndex, float x ) throw(SQLException, RuntimeException)
{
- setParameter(parameterIndex,DataType::FLOAT,sizeof(float),&x);
+ setScalarParameter(parameterIndex, DataType::FLOAT, 15, x);
}
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setInt( sal_Int32 parameterIndex, sal_Int32 x ) throw(SQLException, RuntimeException)
{
- setParameter(parameterIndex,DataType::INTEGER,sizeof(sal_Int32),&x);
+ setScalarParameter(parameterIndex, DataType::INTEGER, 10, x);
}
// -------------------------------------------------------------------------
@@ -406,57 +468,44 @@ void SAL_CALL OPreparedStatement::setLong( sal_Int32 parameterIndex, sal_Int64 x
{
try
{
- setParameter(parameterIndex,DataType::BIGINT,sizeof(sal_Int64),&x);
+ setScalarParameter(parameterIndex, DataType::BIGINT, 19, x);
}
catch(SQLException&)
{
- setString(parameterIndex,ORowSetValue(x));
+ setString(parameterIndex, ORowSetValue(x));
}
}
// -------------------------------------------------------------------------
-void SAL_CALL OPreparedStatement::setNull( sal_Int32 parameterIndex, sal_Int32 sqlType ) throw(SQLException, RuntimeException)
+void SAL_CALL OPreparedStatement::setNull( sal_Int32 parameterIndex, const sal_Int32 _nType ) throw(SQLException, RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
- checkDisposed(OStatement_BASE::rBHelper.bDisposed);
+ setParameterPre(parameterIndex);
+ OSL_VERIFY(allocBindBuf(parameterIndex, 0) == NULL);
+ SQLLEN * const lenBuf = getLengthBuf (parameterIndex);
+ *lenBuf = SQL_NULL_DATA;
- prepareStatement();
- // Get the buffer needed for the length
- checkParameterIndex(parameterIndex);
-
- sal_Int8* lenBuf = getLengthBuf (parameterIndex);
- *(SQLLEN*)lenBuf = SQL_NULL_DATA;
+ SQLSMALLINT fCType;
+ SQLSMALLINT fSqlType;
- SQLLEN prec = 0;
- SQLULEN nColumnSize = 0;
- if (sqlType == SQL_CHAR || sqlType == SQL_VARCHAR || sqlType == SQL_LONGVARCHAR)
- {
- prec = 1;
- nColumnSize = 1;
- }
-
- SQLSMALLINT fCType = 0;
- SQLSMALLINT fSqlType = 0;
-
- SQLSMALLINT nDecimalDigits = 0;
- OTools::getBindTypes( sal_False,
+ OTools::getBindTypes( useWChar,
m_pConnection->useOldDateFormat(),
- (SQLSMALLINT)sqlType,
+ OTools::jdbcTypeToOdbc(_nType),
fCType,
fSqlType);
SQLRETURN nReturn = N3SQLBindParameter( m_aStatementHandle,
- (SQLUSMALLINT)parameterIndex,
- (SQLSMALLINT)SQL_PARAM_INPUT,
+ static_cast<SQLUSMALLINT>(parameterIndex),
+ SQL_PARAM_INPUT,
fCType,
fSqlType,
- nColumnSize,
- nDecimalDigits,
+ 0,
+ 0,
NULL,
- prec,
- (SQLLEN*)lenBuf
+ 0,
+ lenBuf
);
OTools::ThrowException(m_pConnection,nReturn,m_aStatementHandle,SQL_HANDLE_STMT,*this);
}
@@ -465,14 +514,14 @@ void SAL_CALL OPreparedStatement::setNull( sal_Int32 parameterIndex, sal_Int32 s
void SAL_CALL OPreparedStatement::setClob( sal_Int32 parameterIndex, const Reference< XClob >& x ) throw(SQLException, RuntimeException)
{
if ( x.is() )
- setStream(parameterIndex, x->getCharacterStream(), (SQLLEN)x->length(), DataType::LONGVARCHAR);
+ setStream(parameterIndex, x->getCharacterStream(), x->length(), DataType::LONGVARCHAR);
}
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setBlob( sal_Int32 parameterIndex, const Reference< XBlob >& x ) throw(SQLException, RuntimeException)
{
if ( x.is() )
- setStream(parameterIndex, x->getBinaryStream(), (SQLLEN)x->length(), DataType::LONGVARCHAR);
+ setStream(parameterIndex, x->getBinaryStream(), x->length(), DataType::LONGVARBINARY);
}
// -------------------------------------------------------------------------
@@ -487,12 +536,6 @@ void SAL_CALL OPreparedStatement::setRef( sal_Int32 /*parameterIndex*/, const Re
::dbtools::throwFunctionNotSupportedException( "XParameters::setRef", *this );
}
// -------------------------------------------------------------------------
-void OPreparedStatement::setDecimal( sal_Int32 parameterIndex, const ::rtl::OUString& x )
-{
- ::rtl::OString aString(::rtl::OUStringToOString(x,getOwnConnection()->getTextEncoding()));
- setParameter(parameterIndex,DataType::DECIMAL,aString.getLength(),(void*)&x);
-}
-// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setObjectWithInfo( sal_Int32 parameterIndex, const Any& x, sal_Int32 sqlType, sal_Int32 scale ) throw(SQLException, RuntimeException)
{
checkDisposed(OStatement_BASE::rBHelper.bDisposed);
@@ -504,31 +547,29 @@ void SAL_CALL OPreparedStatement::setObjectWithInfo( sal_Int32 parameterIndex, c
switch (sqlType)
{
+ case DataType::CHAR:
case DataType::VARCHAR:
case DataType::LONGVARCHAR:
if(x.hasValue())
{
::rtl::OUString sStr;
x >>= sStr;
- ::rtl::OString aString(::rtl::OUStringToOString(sStr,getOwnConnection()->getTextEncoding()));
- setParameter(parameterIndex,sqlType,aString.getLength(),&aString);
+ setParameter(parameterIndex, sqlType, scale, sStr);
}
else
setNull(parameterIndex,sqlType);
break;
case DataType::DECIMAL:
- {
- ORowSetValue aValue;
- aValue.fill(x);
- setDecimal(parameterIndex,aValue);
- }
- break;
case DataType::NUMERIC:
+ if(x.hasValue())
{
ORowSetValue aValue;
aValue.fill(x);
- setString(parameterIndex,aValue);
+ // TODO: make sure that this calls the string overload
+ setParameter(parameterIndex, sqlType, scale, aValue);
}
+ else
+ setNull(parameterIndex,sqlType);
break;
default:
::dbtools::setObjectWithInfo(this,parameterIndex,x,sqlType,scale);
@@ -538,9 +579,6 @@ void SAL_CALL OPreparedStatement::setObjectWithInfo( sal_Int32 parameterIndex, c
void SAL_CALL OPreparedStatement::setObjectNull( sal_Int32 parameterIndex, sal_Int32 sqlType, const ::rtl::OUString& /*typeName*/ ) throw(SQLException, RuntimeException)
{
- ::osl::MutexGuard aGuard( m_aMutex );
- checkDisposed(OStatement_BASE::rBHelper.bDisposed);
-
setNull(parameterIndex,sqlType);
}
// -------------------------------------------------------------------------
@@ -556,20 +594,21 @@ void SAL_CALL OPreparedStatement::setObject( sal_Int32 parameterIndex, const Any
void SAL_CALL OPreparedStatement::setShort( sal_Int32 parameterIndex, sal_Int16 x ) throw(SQLException, RuntimeException)
{
- setParameter(parameterIndex,DataType::SMALLINT,sizeof(sal_Int16),&x);
+ setScalarParameter(parameterIndex, DataType::SMALLINT, 5, x);
}
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setBytes( sal_Int32 parameterIndex, const Sequence< sal_Int8 >& x ) throw(SQLException, RuntimeException)
{
- setParameter(parameterIndex,DataType::BINARY,x.getLength(),(void*)&x);
- boundParams[parameterIndex-1].setSequence(x); // this assures that the sequence stays alive
+ setParameter(parameterIndex, DataType::BINARY, x);
}
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::setCharacterStream( sal_Int32 parameterIndex, const Reference< ::com::sun::star::io::XInputStream >& x, sal_Int32 length ) throw(SQLException, RuntimeException)
{
+ // LEM: It is quite unclear to me what the interface here is.
+ // The XInputStream provides *bytes*, not characters.
setStream(parameterIndex, x, length, DataType::LONGVARCHAR);
}
// -------------------------------------------------------------------------
@@ -582,6 +621,7 @@ void SAL_CALL OPreparedStatement::setBinaryStream( sal_Int32 parameterIndex, con
void SAL_CALL OPreparedStatement::clearParameters( ) throw(SQLException, RuntimeException)
{
+ ::osl::MutexGuard aGuard( m_aMutex );
prepareStatement();
OSL_ENSURE(m_aStatementHandle,"StatementHandle is null!");
SQLRETURN nRet = N3SQLFreeStmt (m_aStatementHandle, SQL_RESET_PARAMS);
@@ -591,6 +631,7 @@ void SAL_CALL OPreparedStatement::clearParameters( ) throw(SQLException, Runtim
// -------------------------------------------------------------------------
void SAL_CALL OPreparedStatement::clearBatch( ) throw(SQLException, RuntimeException)
{
+ ::dbtools::throwFunctionNotSupportedException( "XPreparedBatchExecution::clearBatch", *this );
// clearParameters( );
// m_aBatchList.erase();
}
@@ -598,11 +639,14 @@ void SAL_CALL OPreparedStatement::clearBatch( ) throw(SQLException, RuntimeExce
void SAL_CALL OPreparedStatement::addBatch( ) throw(SQLException, RuntimeException)
{
+ ::dbtools::throwFunctionNotSupportedException( "XPreparedBatchExecution::addBatch", *this );
}
// -------------------------------------------------------------------------
Sequence< sal_Int32 > SAL_CALL OPreparedStatement::executeBatch( ) throw(SQLException, RuntimeException)
{
+ ::dbtools::throwFunctionNotSupportedException( "XPreparedBatchExecution::executeBatch", *this );
+ // not reached, but keep -Werror happy
return Sequence< sal_Int32 > ();
}
// -------------------------------------------------------------------------
@@ -632,12 +676,6 @@ void OPreparedStatement::initBoundParam () throw(SQLException)
boundParams = new OBoundParam[numParams];
- // initialize each bound parameter
-
- for (sal_Int32 i = 0; i < numParams; i++)
- {
- boundParams[i].initialize ();
- }
}
}
// -------------------------------------------------------------------------
@@ -648,14 +686,13 @@ void OPreparedStatement::initBoundParam () throw(SQLException)
// parameter.
//--------------------------------------------------------------------
-sal_Int8* OPreparedStatement::allocBindBuf( sal_Int32 index,sal_Int32 bufLen)
+void* OPreparedStatement::allocBindBuf( sal_Int32 index,sal_Int32 bufLen)
{
- sal_Int8* b = NULL;
+ void* b = NULL;
// Sanity check the parameter number
- if ((index >= 1) &&
- (index <= numParams) && bufLen > 0 )
+ if ((index >= 1) && (index <= numParams))
{
b = boundParams[index - 1].allocBindDataBuffer(bufLen);
}
@@ -669,9 +706,9 @@ sal_Int8* OPreparedStatement::allocBindBuf( sal_Int32 index,sal_Int32 bufLen)
// Gets the length buffer for the given parameter index
//--------------------------------------------------------------------
-sal_Int8* OPreparedStatement::getLengthBuf (sal_Int32 index)
+SQLLEN* OPreparedStatement::getLengthBuf (sal_Int32 index)
{
- sal_Int8* b = NULL;
+ SQLLEN* b = NULL;
// Sanity check the parameter number
@@ -762,7 +799,7 @@ void OPreparedStatement::setStream(
sal_Int32 ParameterIndex,
const Reference< XInputStream>& x,
SQLLEN length,
- sal_Int32 SQLtype)
+ sal_Int32 _nType)
throw(SQLException)
{
::osl::MutexGuard aGuard( m_aMutex );
@@ -774,35 +811,33 @@ void OPreparedStatement::setStream(
checkParameterIndex(ParameterIndex);
// Get the buffer needed for the length
- sal_Int8* lenBuf = getLengthBuf(ParameterIndex);
+ SQLLEN * const lenBuf = getLengthBuf(ParameterIndex);
// Allocate a new buffer for the parameter data. This buffer
// will be returned by SQLParamData (it is set to the parameter
- // number, a 4-sal_Int8 integer)
+ // number, a sal_Int32)
- sal_Int8* dataBuf = allocBindBuf (ParameterIndex, 4);
+ sal_Int32* dataBuf = static_cast<sal_Int32*>( allocBindBuf(ParameterIndex, sizeof(ParameterIndex)) );
+ *dataBuf = ParameterIndex;
// Bind the parameter with SQL_LEN_DATA_AT_EXEC
- SQLSMALLINT Ctype = SQL_C_CHAR;
- SQLLEN atExec = SQL_LEN_DATA_AT_EXEC (length);
- memcpy (dataBuf, &ParameterIndex, sizeof(ParameterIndex));
- memcpy (lenBuf, &atExec, sizeof (atExec));
+ *lenBuf = SQL_LEN_DATA_AT_EXEC (length);
- if ((SQLtype == SQL_BINARY) || (SQLtype == SQL_VARBINARY) || (SQLtype == SQL_LONGVARBINARY))
- Ctype = SQL_C_BINARY;
+ SQLSMALLINT fCType, fSqlType;
+ OTools::getBindTypes(useWChar, m_pConnection->useOldDateFormat(), OTools::jdbcTypeToOdbc(_nType), fCType, fSqlType);
OSL_ENSURE(m_aStatementHandle,"StatementHandle is null!");
N3SQLBindParameter(m_aStatementHandle,
- (SQLUSMALLINT)ParameterIndex,
- (SQLUSMALLINT)SQL_PARAM_INPUT,
- Ctype,
- (SQLSMALLINT)SQLtype,
- (SQLULEN)length,
- 0,
- dataBuf,
- sizeof(ParameterIndex),
- (SQLLEN*)lenBuf);
+ static_cast<SQLUSMALLINT>(ParameterIndex),
+ SQL_PARAM_INPUT,
+ fCType,
+ fSqlType,
+ length,
+ invalid_scale,
+ dataBuf,
+ sizeof(ParameterIndex),
+ lenBuf);
// Save the input stream
boundParams[ParameterIndex - 1].setInputStream (x, length);
@@ -865,7 +900,9 @@ void OPreparedStatement::prepareStatement()
// -----------------------------------------------------------------------------
void OPreparedStatement::checkParameterIndex(sal_Int32 _parameterIndex)
{
- if( !_parameterIndex || _parameterIndex > numParams)
+ if( _parameterIndex > numParams ||
+ _parameterIndex < 1 ||
+ _parameterIndex > std::numeric_limits<SQLUSMALLINT>::max() )
{
::connectivity::SharedResources aResources;
const ::rtl::OUString sError( aResources.getResourceStringWithSubstitution(STR_WRONG_PARAM_INDEX,
diff --git a/connectivity/source/drivers/odbcbase/OResultSet.cxx b/connectivity/source/drivers/odbcbase/OResultSet.cxx
index 7cfebcb23f4d..96d7d8ee4672 100644
--- a/connectivity/source/drivers/odbcbase/OResultSet.cxx
+++ b/connectivity/source/drivers/odbcbase/OResultSet.cxx
@@ -1058,7 +1058,7 @@ void SAL_CALL OResultSet::updateDouble( sal_Int32 columnIndex, double x ) throw(
void SAL_CALL OResultSet::updateString( sal_Int32 columnIndex, const ::rtl::OUString& x ) throw(SQLException, RuntimeException)
{
sal_Int32 nType = m_aRow[columnIndex].getTypeKind();
- SQLSMALLINT nOdbcType = static_cast<SQLSMALLINT>(OTools::jdbcTypeToOdbc(nType));
+ SQLSMALLINT nOdbcType = OTools::jdbcTypeToOdbc(nType);
m_aRow[columnIndex] = x;
m_aRow[columnIndex].setTypeKind(nType); // OJ: otherwise longvarchar will be recognized by fillNeededData
updateValue(columnIndex,nOdbcType,(void*)&x);
@@ -1067,7 +1067,7 @@ void SAL_CALL OResultSet::updateString( sal_Int32 columnIndex, const ::rtl::OUSt
void SAL_CALL OResultSet::updateBytes( sal_Int32 columnIndex, const Sequence< sal_Int8 >& x ) throw(SQLException, RuntimeException)
{
sal_Int32 nType = m_aRow[columnIndex].getTypeKind();
- SQLSMALLINT nOdbcType = static_cast<SQLSMALLINT>(OTools::jdbcTypeToOdbc(nType));
+ SQLSMALLINT nOdbcType = OTools::jdbcTypeToOdbc(nType);
m_aRow[columnIndex] = x;
m_aRow[columnIndex].setTypeKind(nType); // OJ: otherwise longvarbinary will be recognized by fillNeededData
updateValue(columnIndex,nOdbcType,(void*)&x);
diff --git a/connectivity/source/drivers/odbcbase/OTools.cxx b/connectivity/source/drivers/odbcbase/OTools.cxx
index b38dd2b29766..3e327803513a 100644
--- a/connectivity/source/drivers/odbcbase/OTools.cxx
+++ b/connectivity/source/drivers/odbcbase/OTools.cxx
@@ -150,190 +150,6 @@ void OTools::getValue( OConnection* _pConnection,
_aStatementHandle,SQL_HANDLE_STMT,_xInterface,sal_False);
_bWasNull = pcbValue == SQL_NULL_DATA;
}
-// -----------------------------------------------------------------------------
-void OTools::bindParameter( OConnection* _pConnection,
- SQLHANDLE _hStmt,
- sal_Int32 nPos,
- sal_Int8*& pDataBuffer,
- sal_Int8* pLenBuffer,
- SQLSMALLINT _nODBCtype,
- sal_Bool _bUseWChar,
- sal_Bool _bUseOldTimeDate,
- const void* _pValue,
- const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xInterface,
- rtl_TextEncoding _nTextEncoding)
- throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException)
-{
- RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "odbc", "Ocke.Janssen@sun.com", "OTools::bindParameter" );
- SQLRETURN nRetcode;
- SQLSMALLINT fSqlType;
- SQLSMALLINT fCType;
- SQLLEN nMaxLen = 0;
- SQLLEN* pLen = (SQLLEN*)pLenBuffer;
- SQLULEN nColumnSize=0;
- SQLSMALLINT nDecimalDigits=0;
- bool atExec;
-
- OTools::getBindTypes(_bUseWChar,_bUseOldTimeDate,_nODBCtype,fCType,fSqlType);
-
- OTools::bindData(_nODBCtype,_bUseWChar,pDataBuffer,pLen,_pValue,_nTextEncoding,nColumnSize, atExec);
- if ((nColumnSize == 0) && (fSqlType == SQL_CHAR || fSqlType == SQL_VARCHAR || fSqlType == SQL_LONGVARCHAR))
- nColumnSize = 1;
-
- if (atExec)
- memcpy(pDataBuffer,&nPos,sizeof(nPos));
-
- nRetcode = (*(T3SQLBindParameter)_pConnection->getOdbcFunction(ODBC3SQLBindParameter))(_hStmt,
- (SQLUSMALLINT)nPos,
- SQL_PARAM_INPUT,
- fCType,
- fSqlType,
- nColumnSize,
- nDecimalDigits,
- pDataBuffer,
- nMaxLen,
- pLen);
-
- OTools::ThrowException(_pConnection,nRetcode,_hStmt,SQL_HANDLE_STMT,_xInterface);
-}
-// -----------------------------------------------------------------------------
-void OTools::bindData( SQLSMALLINT _nOdbcType,
- sal_Bool _bUseWChar,
- sal_Int8 *&_pData,
- SQLLEN*& pLen,
- const void* _pValue,
- rtl_TextEncoding _nTextEncoding,
- SQLULEN& _nColumnSize,
- bool &atExec)
-{
- RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "odbc", "Ocke.Janssen@sun.com", "OTools::bindData" );
- _nColumnSize = 0;
- atExec = false;
-
- switch (_nOdbcType)
- {
- case SQL_CHAR:
- case SQL_VARCHAR:
- case SQL_DECIMAL:
- if(_bUseWChar)
- {
- *pLen = SQL_NTS;
- ::rtl::OUString sStr(*(::rtl::OUString*)_pValue);
- _nColumnSize = sStr.getLength();
- *((rtl::OUString*)_pData) = sStr;
-
- // Pointer on Char*
- _pData = (sal_Int8*)((rtl::OUString*)_pData)->getStr();
- }
- else
- {
- ::rtl::OString aString(::rtl::OUStringToOString(*(::rtl::OUString*)_pValue,_nTextEncoding));
- *pLen = SQL_NTS;
- _nColumnSize = aString.getLength();
- memcpy(_pData,aString.getStr(),aString.getLength());
- ((sal_Int8*)_pData)[aString.getLength()] = '\0';
- }
- break;
-
- case SQL_BIGINT:
- *((sal_Int64*)_pData) = *(sal_Int64*)_pValue;
- *pLen = sizeof(sal_Int64);
- _nColumnSize = *pLen;
- break;
-
- case SQL_NUMERIC:
- if(_bUseWChar)
- {
- ::rtl::OUString aString = rtl::OUString::valueOf(*(double*)_pValue);
- _nColumnSize = aString.getLength();
- *pLen = _nColumnSize;
- *((rtl::OUString*)_pData) = aString;
- // Pointer on Char*
- _pData = (sal_Int8*)((rtl::OUString*)_pData)->getStr();
- }
- else
- {
- ::rtl::OString aString = ::rtl::OString::valueOf(*(double*)_pValue);
- _nColumnSize = aString.getLength();
- *pLen = _nColumnSize;
- memcpy(_pData,aString.getStr(),aString.getLength());
- ((sal_Int8*)_pData)[_nColumnSize] = '\0';
- } break;
- case SQL_BIT:
- case SQL_TINYINT:
- *((sal_Int8*)_pData) = *(sal_Int8*)_pValue;
- *pLen = sizeof(sal_Int8);
- break;
-
- case SQL_SMALLINT:
- *((sal_Int16*)_pData) = *(sal_Int16*)_pValue;
- *pLen = sizeof(sal_Int16);
- break;
- case SQL_INTEGER:
- *((sal_Int32*)_pData) = *(sal_Int32*)_pValue;
- *pLen = sizeof(sal_Int32);
- break;
- case SQL_FLOAT:
- *((float*)_pData) = *(float*)_pValue;
- *pLen = sizeof(float);
- break;
- case SQL_REAL:
- case SQL_DOUBLE:
- *((double*)_pData) = *(double*)_pValue;
- *pLen = sizeof(double);
- break;
- case SQL_BINARY:
- case SQL_VARBINARY:
- {
- const ::com::sun::star::uno::Sequence< sal_Int8 >* pSeq = static_cast< const ::com::sun::star::uno::Sequence< sal_Int8 >* >(_pValue);
- OSL_ENSURE(pSeq,"OTools::bindData: Sequence is null!");
-
- if(pSeq)
- {
- _pData = (sal_Int8*)pSeq->getConstArray();
- *pLen = pSeq->getLength();
- }
- }
- break;
- case SQL_LONGVARBINARY:
- {
- sal_Int32 nLen = 0;
- nLen = ((const ::com::sun::star::uno::Sequence< sal_Int8 > *)_pValue)->getLength();
- *pLen = (SQLLEN)SQL_LEN_DATA_AT_EXEC(nLen);
- }
- atExec = true;
- break;
- case SQL_LONGVARCHAR:
- {
- sal_Int32 nLen = 0;
- if(_bUseWChar)
- nLen = sizeof(sal_Unicode) * ((::rtl::OUString*)_pValue)->getLength();
- else
- {
- ::rtl::OString aString(::rtl::OUStringToOString(*(::rtl::OUString*)_pValue,_nTextEncoding));
- nLen = aString.getLength();
- }
- *pLen = (SQLLEN)SQL_LEN_DATA_AT_EXEC(nLen);
- atExec = true;
- } break;
- case SQL_DATE:
- *(DATE_STRUCT*)_pData = *(DATE_STRUCT*)_pValue;
- *pLen = (SQLLEN)sizeof(DATE_STRUCT);
- _nColumnSize = 10;
- break;
- case SQL_TIME:
- *(TIME_STRUCT*)_pData = *(TIME_STRUCT*)_pValue;
- *pLen = (SQLLEN)sizeof(TIME_STRUCT);
- _nColumnSize = 8;
- break;
- case SQL_TIMESTAMP:
- *(TIMESTAMP_STRUCT*)_pData = *(TIMESTAMP_STRUCT*)_pValue;
- *pLen = (SQLLEN)sizeof(TIMESTAMP_STRUCT);
- // 20+sub-zero precision; we have hundredths of seconds
- _nColumnSize = 22;
- break;
- }
-}
// -------------------------------------------------------------------------
void OTools::bindValue( OConnection* _pConnection,
SQLHANDLE _aStatementHandle,
@@ -342,7 +158,7 @@ void OTools::bindValue( OConnection* _pConnection,
SQLSMALLINT _nMaxLen,
const void* _pValue,
void* _pData,
- SQLLEN *pLen,
+ SQLLEN * const pLen,
const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xInterface,
rtl_TextEncoding _nTextEncoding,
sal_Bool _bUseOldTimeDate) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException)
@@ -779,7 +595,7 @@ void OTools::GetInfo(OConnection* _pConnection,
_aConnectionHandle,SQL_HANDLE_DBC,_xInterface);
}
// -------------------------------------------------------------------------
-sal_Int32 OTools::MapOdbcType2Jdbc(sal_Int32 _nType)
+sal_Int32 OTools::MapOdbcType2Jdbc(SQLSMALLINT _nType)
{
sal_Int32 nValue = DataType::VARCHAR;
switch(_nType)
@@ -857,7 +673,7 @@ sal_Int32 OTools::MapOdbcType2Jdbc(sal_Int32 _nType)
// jdbcTypeToOdbc
// Convert the JDBC SQL type to the correct ODBC type
//--------------------------------------------------------------------
-sal_Int32 OTools::jdbcTypeToOdbc(sal_Int32 jdbcType)
+SQLSMALLINT OTools::jdbcTypeToOdbc(sal_Int32 jdbcType)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "odbc", "Ocke.Janssen@sun.com", "OTools::jdbcTypeToOdbc" );
// For the most part, JDBC types match ODBC types. We'll
@@ -876,6 +692,11 @@ sal_Int32 OTools::jdbcTypeToOdbc(sal_Int32 jdbcType)
case DataType::TIMESTAMP:
odbcType = SQL_TIMESTAMP;
break;
+ // ODBC doesn't have any notion of CLOB or BLOB
+ case DataType::CLOB:
+ odbcType = SQL_LONGVARCHAR;
+ case DataType::BLOB:
+ odbcType = SQL_LONGVARBINARY;
}
return odbcType;
diff --git a/connectivity/source/inc/ado/Aolewrap.hxx b/connectivity/source/inc/ado/Aolewrap.hxx
index 6f428bfd19f1..c4462a1eb11a 100644
--- a/connectivity/source/inc/ado/Aolewrap.hxx
+++ b/connectivity/source/inc/ado/Aolewrap.hxx
@@ -94,8 +94,8 @@ namespace connectivity
}
WpOLEBase(const WpOLEBase<T>& aWrapper)
- : WpBase(aWrapper)
- , pInterface(aWrapper.pInterface)
+ : WpBase( aWrapper )
+ , pInterface( aWrapper.pInterface )
{
}
diff --git a/connectivity/source/inc/dbase/DTable.hxx b/connectivity/source/inc/dbase/DTable.hxx
index ad352d0a4ccf..691b65469ed2 100644
--- a/connectivity/source/inc/dbase/DTable.hxx
+++ b/connectivity/source/inc/dbase/DTable.hxx
@@ -105,9 +105,9 @@ namespace connectivity
sal_Bool ReadMemoHeader();
sal_Bool ReadMemo(sal_uIntPtr nBlockNo, ORowSetValue& aVariable);
- sal_Bool WriteMemo(ORowSetValue& aVariable, sal_uIntPtr& rBlockNr);
+ sal_Bool WriteMemo(const ORowSetValue& aVariable, sal_uIntPtr& rBlockNr);
sal_Bool WriteBuffer();
- sal_Bool UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess>& _xCols);
+ sal_Bool UpdateBuffer(OValueRefVector& rRow, OValueRefRow pOrgRow,const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess>& _xCols, bool bForceAllFields);
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> isUniqueByColumnName(sal_Int32 _nColumnPos);
void AllocBuffer();
diff --git a/connectivity/source/inc/odbc/OBoundParam.hxx b/connectivity/source/inc/odbc/OBoundParam.hxx
index 8e587b4f2fc2..fca532bcade9 100644
--- a/connectivity/source/inc/odbc/OBoundParam.hxx
+++ b/connectivity/source/inc/odbc/OBoundParam.hxx
@@ -20,6 +20,7 @@
#define _CONNECTIVITY_OBOUNPARAM_HXX_
#include <com/sun/star/io/XInputStream.hpp>
+#include <com/sun/star/sdbc/DataType.hpp>
#include "odbc/odbcbasedllapi.hxx"
namespace connectivity
@@ -31,50 +32,29 @@ namespace connectivity
public:
OBoundParam()
+ : binaryData(NULL)
+ , paramInputStreamLen(0)
+ , sqlType(::com::sun::star::sdbc::DataType::SQLNULL)
+ , outputParameter(false)
{
- paramLength = NULL;
- binaryData = NULL;
- pA1=0;
- pA2=0;
- pB1=0;
- pB2=0;
- pC1=0;
- pC2=0;
- pS1=0;
- pS2=0;
}
~OBoundParam()
{
- delete [] binaryData;
- delete [] paramLength;
+ free(binaryData);
}
//--------------------------------------------------------------------
- // initialize
- // Perform an necessary initialization
- //--------------------------------------------------------------------
- void initialize ()
- {
- // Allocate storage for the length. Note - the length is
- // stored in native format, and will have to be converted
- // to a Java sal_Int32. The jdbcodbc 'C' bridge provides an
- // interface to do this.
-
- paramLength = new sal_Int8[sizeof(SQLLEN)];
- }
-
- //--------------------------------------------------------------------
// allocBindDataBuffer
// Allocates and returns a new bind data buffer of the specified
// length
//--------------------------------------------------------------------
- sal_Int8* allocBindDataBuffer (sal_Int32 bufLen)
+ void* allocBindDataBuffer (sal_Int32 bufLen)
{
- if ( binaryData )
- delete [] binaryData;
- binaryData = new sal_Int8[bufLen];
-
- // Reset the input stream, we are doing a new bind
+ // Reset the input stream and sequence, we are doing a new bind
setInputStream (NULL, 0);
+ aSequence.realloc(0);
+
+ free(binaryData);
+ binaryData = (bufLen > 0) ? malloc(bufLen) : NULL;
return binaryData;
}
@@ -83,7 +63,7 @@ namespace connectivity
// getBindDataBuffer
// Returns the data buffer to be used when binding to a parameter
//--------------------------------------------------------------------
- sal_Int8* getBindDataBuffer ()
+ void* getBindDataBuffer ()
{
return binaryData;
}
@@ -92,9 +72,9 @@ namespace connectivity
// getBindLengthBuffer
// Returns the length buffer to be used when binding to a parameter
//--------------------------------------------------------------------
- sal_Int8* getBindLengthBuffer ()
+ SQLLEN* getBindLengthBuffer ()
{
- return paramLength;
+ return &paramLength;
}
//--------------------------------------------------------------------
@@ -176,20 +156,20 @@ namespace connectivity
// Data attributes
//====================================================================
- sal_Int8* binaryData; // Storage area to be used
- // when binding the parameter
+ void *binaryData; // Storage area to be used
+ // when binding the parameter
- sal_Int8* paramLength; // Storage area to be used
- // for the bound length of the
- // parameter. Note that this
- // data is in native format.
+ SQLLEN paramLength; // Storage area to be used
+ // for the bound length of the
+ // parameter. Note that this
+ // data is in native format.
::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream> paramInputStream;
::com::sun::star::uno::Sequence< sal_Int8 > aSequence;
// When an input stream is
- // bound to a parameter, the
- // input stream is saved
- // until needed.
+ // bound to a parameter, a
+ // reference to the input stream is saved
+ // until not needed anymore.
sal_Int32 paramInputStreamLen; // Length of input stream
@@ -197,16 +177,6 @@ namespace connectivity
// register an OUT parameter
sal_Bool outputParameter; // true for OUTPUT parameters
-
-
- sal_Int32 pA1; //pointers
- sal_Int32 pA2;
- sal_Int32 pB1;
- sal_Int32 pB2;
- sal_Int32 pC1;
- sal_Int32 pC2;
- sal_Int32 pS1;
- sal_Int32 pS2;// reserved for strings(UTFChars)
};
}
}
diff --git a/connectivity/source/inc/odbc/OPreparedStatement.hxx b/connectivity/source/inc/odbc/OPreparedStatement.hxx
index 0d34099f39ab..139ea3fda327 100644
--- a/connectivity/source/inc/odbc/OPreparedStatement.hxx
+++ b/connectivity/source/inc/odbc/OPreparedStatement.hxx
@@ -46,6 +46,7 @@ namespace connectivity
public OPreparedStatement_BASE
{
protected:
+ static const short invalid_scale = -1;
struct Parameter
{
::com::sun::star::uno::Any aValue;
@@ -74,15 +75,20 @@ namespace connectivity
void putParamData (sal_Int32 index) throw(::com::sun::star::sdbc::SQLException);
void setStream (sal_Int32 ParameterIndex,const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream>& x,
SQLLEN length,sal_Int32 SQLtype) throw(::com::sun::star::sdbc::SQLException);
- sal_Int8* getLengthBuf (sal_Int32 index);
- sal_Int8* allocBindBuf ( sal_Int32 index, sal_Int32 bufLen);
+ SQLLEN* getLengthBuf (sal_Int32 index);
+ void* allocBindBuf ( sal_Int32 index, sal_Int32 bufLen);
void initBoundParam () throw(::com::sun::star::sdbc::SQLException);
- void setParameter(sal_Int32 parameterIndex,sal_Int32 _nType,sal_Int32 _nSize,void* _pData);
+ void setParameterPre(sal_Int32 parameterIndex);
+ template <typename T> void setScalarParameter(sal_Int32 parameterIndex, sal_Int32 _nType, SQLULEN _nColumnSize, const T i_Value);
+ void setParameter(sal_Int32 parameterIndex, sal_Int32 _nType, SQLULEN _nColumnSize, sal_Int32 _nScale, const void* _pData, SQLULEN _nDataLen, SQLLEN _nDataAllocLen);
+ void setParameter(sal_Int32 parameterIndex, sal_Int32 _nType, sal_Int32 _nColumnSize, sal_Int32 _nByteSize, void* _pData);
+ // Wrappers for special cases
+ void setParameter(sal_Int32 parameterIndex, sal_Int32 _nType, sal_Int16 _nScale, const ::rtl::OUString &_sData);
+ void setParameter(sal_Int32 parameterIndex, sal_Int32 _nType, const com::sun::star::uno::Sequence< sal_Int8 > &_Data);
sal_Bool isPrepared() const { return m_bPrepared;}
void prepareStatement();
void checkParameterIndex(sal_Int32 _parameterIndex);
- void setDecimal( sal_Int32 parameterIndex, const ::rtl::OUString& x );
/**
creates the driver specific resultset (factory)
diff --git a/connectivity/source/inc/odbc/OTools.hxx b/connectivity/source/inc/odbc/OTools.hxx
index 99339e23bf31..a971d4c8edaa 100644
--- a/connectivity/source/inc/odbc/OTools.hxx
+++ b/connectivity/source/inc/odbc/OTools.hxx
@@ -138,8 +138,8 @@ namespace connectivity
sal_Bool &_rValue,
const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xInterface) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException);
- static sal_Int32 MapOdbcType2Jdbc(sal_Int32 _nType);
- static sal_Int32 jdbcTypeToOdbc(sal_Int32 jdbcType);
+ static sal_Int32 MapOdbcType2Jdbc(SQLSMALLINT _nType);
+ static SQLSMALLINT jdbcTypeToOdbc(sal_Int32 jdbcType);
static DATE_STRUCT DateToOdbcDate(const ::com::sun::star::util::Date& x)
{
@@ -206,40 +206,6 @@ namespace connectivity
void* _pValue,
SQLLEN _nSize) throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException);
- /**
- bindData copies data from pValue to pData
- @param _nOdbcType [in] the ODBC sql type
- @param _bUseWChar [in] true when Unicode should be used
- @param _pData [in/out] data copy destination
- @param pLen [out] buffer length of data written to _pData
- @param _pValue [in] contains the data to be copied
- @param _nTextEncoding [in] the text encoding
- @param _nColumnSize [out] columnSize of data written to _pData
- @param atExec [out] data was not copied, but setup for data-at-execution;
- caller is responsible for writing a token in _pData
- */
- static void bindData( SQLSMALLINT _nOdbcType,
- sal_Bool _bUseWChar,
- sal_Int8 *&_pData,
- SQLLEN*& pLen,
- const void* _pValue,
- rtl_TextEncoding _nTextEncoding,
- SQLULEN& _nColumnSize,
- bool &atExec);
-
- static void bindParameter( OConnection* _pConnection,
- SQLHANDLE _hStmt,
- sal_Int32 nPos,
- sal_Int8*& pDataBuffer,
- sal_Int8* pLenBuffer,
- SQLSMALLINT _nJDBCtype,
- sal_Bool _bUseWChar,
- sal_Bool _bUseOldTimeDate,
- const void* _pValue,
- const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xInterface,
- rtl_TextEncoding _nTextEncoding)
- throw(::com::sun::star::sdbc::SQLException, ::com::sun::star::uno::RuntimeException);
-
static void bindValue( OConnection* _pConnection,
SQLHANDLE _aStatementHandle,
sal_Int32 columnIndex,
diff --git a/connectivity/source/manager/mdrivermanager.cxx b/connectivity/source/manager/mdrivermanager.cxx
index 743d38a35e8d..7f2d8fb30c2c 100644
--- a/connectivity/source/manager/mdrivermanager.cxx
+++ b/connectivity/source/manager/mdrivermanager.cxx
@@ -35,6 +35,7 @@
#include <osl/diagnose.h>
#include <algorithm>
+#include <iterator>
#include <o3tl/compat_functional.hxx>
diff --git a/connectivity/source/parse/PColumn.cxx b/connectivity/source/parse/PColumn.cxx
index f9523c98fcac..7649044bd168 100644
--- a/connectivity/source/parse/PColumn.cxx
+++ b/connectivity/source/parse/PColumn.cxx
@@ -25,6 +25,8 @@
#include <comphelper/types.hxx>
#include <tools/diagnose_ex.h>
+#include <bitset>
+
using namespace ::comphelper;
using namespace connectivity;
using namespace dbtools;
@@ -48,6 +50,9 @@ OParseColumn::OParseColumn(const Reference<XPropertySet>& _xColumn,sal_Bool
, sal_False
, getBOOL(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISCURRENCY)))
, _bCase
+ , getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_CATALOGNAME)))
+ , getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCHEMANAME)))
+ , getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME)))
)
, m_bFunction(sal_False)
, m_bDbasePrecisionChanged(sal_False)
@@ -68,7 +73,10 @@ OParseColumn::OParseColumn( const ::rtl::OUString& _Name,
sal_Int32 _Type,
sal_Bool _IsAutoIncrement,
sal_Bool _IsCurrency,
- sal_Bool _bCase
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName
) : connectivity::sdbcx::OColumn(_Name,
_TypeName,
_DefaultValue,
@@ -80,7 +88,10 @@ OParseColumn::OParseColumn( const ::rtl::OUString& _Name,
_IsAutoIncrement,
sal_False,
_IsCurrency,
- _bCase)
+ _bCase,
+ _CatalogName,
+ _SchemaName,
+ _TableName)
, m_bFunction(sal_False)
, m_bDbasePrecisionChanged(sal_False)
, m_bAggregateFunction(sal_False)
@@ -116,7 +127,7 @@ OParseColumn::OParseColumn( const ::rtl::OUString& _Name,
// -------------------------------------------------------------------------
OParseColumn* OParseColumn::createColumnForResultSet( const Reference< XResultSetMetaData >& _rxResMetaData,
- const Reference< XDatabaseMetaData >& _rxDBMetaData, sal_Int32 _nColumnPos,StringMap& _rColumns )
+ const Reference< XDatabaseMetaData >& _rxDBMetaData, sal_Int32 _nColumnPos, StringMap& _rColumns )
{
::rtl::OUString sLabel = _rxResMetaData->getColumnLabel( _nColumnPos );
// retrieve the name of the column
@@ -143,17 +154,11 @@ OParseColumn* OParseColumn::createColumnForResultSet( const Reference< XResultSe
_rxResMetaData->getColumnType( _nColumnPos ),
_rxResMetaData->isAutoIncrement( _nColumnPos ),
_rxResMetaData->isCurrency( _nColumnPos ),
- _rxDBMetaData->supportsMixedCaseQuotedIdentifiers()
+ _rxDBMetaData->supportsMixedCaseQuotedIdentifiers(),
+ _rxResMetaData->getCatalogName( _nColumnPos ),
+ _rxResMetaData->getSchemaName( _nColumnPos ),
+ _rxResMetaData->getTableName( _nColumnPos )
);
- const ::rtl::OUString sTableName = _rxResMetaData->getTableName( _nColumnPos );
- if ( !sTableName.isEmpty() )
- pColumn->setTableName( ::dbtools::composeTableName( _rxDBMetaData,
- _rxResMetaData->getCatalogName( _nColumnPos ),
- _rxResMetaData->getSchemaName( _nColumnPos ),
- sTableName,
- sal_False,
- eComplete
- ) );
pColumn->setIsSearchable( _rxResMetaData->isSearchable( _nColumnPos ) );
pColumn->setRealName(_rxResMetaData->getColumnName( _nColumnPos ));
pColumn->setLabel(sLabel);
@@ -167,13 +172,12 @@ OParseColumn::~OParseColumn()
// -------------------------------------------------------------------------
void OParseColumn::construct()
{
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_FUNCTION), PROPERTY_ID_FUNCTION, 0, &m_bFunction, ::getCppuType(static_cast< sal_Bool*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_AGGREGATEFUNCTION), PROPERTY_ID_AGGREGATEFUNCTION, 0, &m_bAggregateFunction, ::getCppuType(static_cast< sal_Bool*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME), PROPERTY_ID_TABLENAME, 0, &m_aTableName, ::getCppuType(static_cast< ::rtl::OUString*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_REALNAME), PROPERTY_ID_REALNAME, 0, &m_aRealName, ::getCppuType(static_cast< ::rtl::OUString*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_DBASEPRECISIONCHANGED), PROPERTY_ID_DBASEPRECISIONCHANGED, 0, &m_bDbasePrecisionChanged, ::getCppuType(static_cast<sal_Bool*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISSEARCHABLE), PROPERTY_ID_ISSEARCHABLE, 0, &m_bIsSearchable, ::getCppuType(static_cast< sal_Bool*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_LABEL), PROPERTY_ID_LABEL, 0, &m_sLabel, ::getCppuType(static_cast< ::rtl::OUString*>(0)));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_FUNCTION), PROPERTY_ID_FUNCTION, 0, &m_bFunction, ::getCppuType(&m_bFunction));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_AGGREGATEFUNCTION), PROPERTY_ID_AGGREGATEFUNCTION, 0, &m_bAggregateFunction, ::getCppuType(&m_bAggregateFunction));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_REALNAME), PROPERTY_ID_REALNAME, 0, &m_aRealName, ::getCppuType(&m_aRealName));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_DBASEPRECISIONCHANGED), PROPERTY_ID_DBASEPRECISIONCHANGED, 0, &m_bDbasePrecisionChanged, ::getCppuType(&m_bDbasePrecisionChanged));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISSEARCHABLE), PROPERTY_ID_ISSEARCHABLE, 0, &m_bIsSearchable, ::getCppuType(&m_bIsSearchable));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_LABEL), PROPERTY_ID_LABEL, 0, &m_sLabel, ::getCppuType(&m_sLabel));
}
// -----------------------------------------------------------------------------
::cppu::IPropertyArrayHelper* OParseColumn::createArrayHelper() const
@@ -188,24 +192,6 @@ void OParseColumn::construct()
}
// -----------------------------------------------------------------------------
-namespace
-{
- ::rtl::OUString lcl_getColumnTableName( const Reference< XPropertySet >& i_parseColumn )
- {
- ::rtl::OUString sColumnTableName;
- try
- {
- OSL_VERIFY( i_parseColumn->getPropertyValue( OMetaConnection::getPropMap().getNameByIndex( PROPERTY_ID_TABLENAME ) ) >>= sColumnTableName );
- }
- catch( const Exception& )
- {
- DBG_UNHANDLED_EXCEPTION();
- }
- return sColumnTableName;
- }
-}
-
-// -----------------------------------------------------------------------------
OOrderColumn::OOrderColumn( const Reference<XPropertySet>& _xColumn, const ::rtl::OUString& i_rOriginatingTableName,
sal_Bool _bCase, sal_Bool _bAscending )
: connectivity::sdbcx::OColumn(
@@ -220,12 +206,17 @@ OOrderColumn::OOrderColumn( const Reference<XPropertySet>& _xColumn, const ::rtl
getBOOL(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISAUTOINCREMENT))),
sal_False,
getBOOL(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISCURRENCY))),
- _bCase
+ _bCase,
+ getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_CATALOGNAME))),
+ getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCHEMANAME))),
+ i_rOriginatingTableName
)
,m_bAscending(_bAscending)
- ,m_sTableName( i_rOriginatingTableName )
{
construct();
+ OSL_ENSURE( getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME))).isEmpty() ||
+ i_rOriginatingTableName == getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME)) ),
+ "dbaccess::OOrderColumn::OOrderColumn: forced originating table name != underlying column table name" );
}
// -----------------------------------------------------------------------------
@@ -242,10 +233,12 @@ OOrderColumn::OOrderColumn( const Reference<XPropertySet>& _xColumn, sal_Bool _b
getBOOL(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISAUTOINCREMENT))),
sal_False,
getBOOL(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISCURRENCY))),
- _bCase
+ _bCase,
+ getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_CATALOGNAME))),
+ getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCHEMANAME))),
+ getString(_xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME)))
)
,m_bAscending(_bAscending)
- ,m_sTableName( lcl_getColumnTableName( _xColumn ) )
{
construct();
}
@@ -259,9 +252,7 @@ OOrderColumn::~OOrderColumn()
void OOrderColumn::construct()
{
registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISASCENDING), PROPERTY_ID_ISASCENDING,
- PropertyAttribute::READONLY, const_cast< sal_Bool* >( &m_bAscending ), ::getCppuType( static_cast< sal_Bool* >( 0 ) ) );
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME), PROPERTY_ID_TABLENAME,
- PropertyAttribute::READONLY, const_cast< ::rtl::OUString* >( &m_sTableName ), ::getCppuType(static_cast< ::rtl::OUString*>(0)));
+ PropertyAttribute::READONLY, const_cast< sal_Bool* >( &m_bAscending ), ::getCppuType( &m_bAscending ) );
}
// -----------------------------------------------------------------------------
::cppu::IPropertyArrayHelper* OOrderColumn::createArrayHelper() const
diff --git a/connectivity/source/parse/sqliterator.cxx b/connectivity/source/parse/sqliterator.cxx
index f30aca2fe41f..7d91655b6394 100644
--- a/connectivity/source/parse/sqliterator.cxx
+++ b/connectivity/source/parse/sqliterator.cxx
@@ -40,6 +40,9 @@
#include "diagnose_ex.h"
#include <rtl/logfile.hxx>
+
+#include <iterator>
+
using namespace ::comphelper;
using namespace ::connectivity;
using namespace ::connectivity::sdbcx;
@@ -896,7 +899,8 @@ void OSQLParseTreeIterator::traverseCreateColumns(const OSQLParseNode* pSelectNo
{
//TODO:Create a new class for create statement to handle field length
OParseColumn* pColumn = new OParseColumn(aColumnName,aTypeName,::rtl::OUString(),::rtl::OUString(),
- ColumnValue::NULLABLE_UNKNOWN,0,0,nType,sal_False,sal_False,isCaseSensitive());
+ ColumnValue::NULLABLE_UNKNOWN,0,0,nType,sal_False,sal_False,isCaseSensitive(),
+ ::rtl::OUString(),::rtl::OUString(),::rtl::OUString());
pColumn->setFunction(sal_False);
pColumn->setRealName(aColumnName);
@@ -1497,7 +1501,10 @@ void OSQLParseTreeIterator::traverseParameter(const OSQLParseNode* _pParseNode
nType,
sal_False,
sal_False,
- isCaseSensitive());
+ isCaseSensitive(),
+ ::rtl::OUString(),
+ ::rtl::OUString(),
+ ::rtl::OUString());
pColumn->setFunction(sal_True);
pColumn->setAggregateFunction(sal_True);
pColumn->setRealName(sFunctionName);
@@ -1561,7 +1568,10 @@ void OSQLParseTreeIterator::traverseParameter(const OSQLParseNode* _pParseNode
nType,
sal_False,
sal_False,
- isCaseSensitive() );
+ isCaseSensitive(),
+ ::rtl::OUString(),
+ ::rtl::OUString(),
+ ::rtl::OUString());
pColumn->setName(aNewColName);
pColumn->setRealName(sParameterName);
m_aParameters->get().push_back(pColumn);
@@ -1704,7 +1714,10 @@ void OSQLParseTreeIterator::appendColumns(::rtl::Reference<OSQLColumns>& _rColum
, getINT32(xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TYPE)))
, getBOOL(xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISAUTOINCREMENT)))
, getBOOL(xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISCURRENCY)))
- , isCaseSensitive() );
+ , isCaseSensitive()
+ , getString(xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_CATALOGNAME)))
+ , getString(xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCHEMANAME)))
+ , getString(xColumn->getPropertyValue(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME))));
pColumn->setTableName(_rTableAlias);
pColumn->setRealName(*pBegin);
@@ -1782,7 +1795,10 @@ void OSQLParseTreeIterator::setSelectColumnName(::rtl::Reference<OSQLColumns>& _
_nType,
sal_False,
sal_False,
- isCaseSensitive()
+ isCaseSensitive(),
+ ::rtl::OUString(),
+ ::rtl::OUString(),
+ ::rtl::OUString()
);
xNewColumn = pColumn;
@@ -1796,7 +1812,8 @@ void OSQLParseTreeIterator::setSelectColumnName(::rtl::Reference<OSQLColumns>& _
::rtl::OUString aNewColName(getUniqueColumnName(rColumnAlias));
OParseColumn* pColumn = new OParseColumn(aNewColName,::rtl::OUString(),::rtl::OUString(),::rtl::OUString(),
- ColumnValue::NULLABLE_UNKNOWN,0,0,_nType,sal_False,sal_False,isCaseSensitive());
+ ColumnValue::NULLABLE_UNKNOWN,0,0,_nType,sal_False,sal_False,isCaseSensitive(),
+ ::rtl::OUString(),::rtl::OUString(),::rtl::OUString());
pColumn->setFunction(sal_True);
pColumn->setAggregateFunction(bAggFkt);
pColumn->setRealName(rColumnName);
@@ -1817,7 +1834,8 @@ void OSQLParseTreeIterator::setSelectColumnName(::rtl::Reference<OSQLColumns>& _
::rtl::OUString aNewColName(getUniqueColumnName(rColumnAlias));
OParseColumn* pColumn = new OParseColumn(aNewColName,::rtl::OUString(),::rtl::OUString(),::rtl::OUString(),
- ColumnValue::NULLABLE_UNKNOWN,0,0,_nType,sal_False,sal_False,isCaseSensitive());
+ ColumnValue::NULLABLE_UNKNOWN,0,0,_nType,sal_False,sal_False,isCaseSensitive(),
+ ::rtl::OUString(),::rtl::OUString(),::rtl::OUString());
pColumn->setFunction(sal_True);
pColumn->setAggregateFunction(bAggFkt);
pColumn->setRealName(rColumnName);
@@ -1854,7 +1872,8 @@ void OSQLParseTreeIterator::setSelectColumnName(::rtl::Reference<OSQLColumns>& _
::rtl::OUString aNewColName(getUniqueColumnName(rColumnAlias));
OParseColumn* pColumn = new OParseColumn(aNewColName,::rtl::OUString(),::rtl::OUString(),::rtl::OUString(),
- ColumnValue::NULLABLE_UNKNOWN,0,0,DataType::VARCHAR,sal_False,sal_False,isCaseSensitive());
+ ColumnValue::NULLABLE_UNKNOWN,0,0,DataType::VARCHAR,sal_False,sal_False,isCaseSensitive(),
+ ::rtl::OUString(),::rtl::OUString(),::rtl::OUString());
pColumn->setFunction(sal_True);
pColumn->setAggregateFunction(bAggFkt);
diff --git a/connectivity/source/parse/sqlnode.cxx b/connectivity/source/parse/sqlnode.cxx
index daf8ff5e768a..73fd5101c7cb 100644
--- a/connectivity/source/parse/sqlnode.cxx
+++ b/connectivity/source/parse/sqlnode.cxx
@@ -44,6 +44,7 @@
#include <com/sun/star/util/NumberFormat.hpp>
#include <com/sun/star/i18n/KParseType.hpp>
#include <com/sun/star/i18n/KParseTokens.hpp>
+#include <com/sun/star/i18n/CharacterClassification.hpp>
#include "connectivity/dbconversion.hxx"
#include <com/sun/star/util/DateTime.hpp>
#include <com/sun/star/util/Time.hpp>
@@ -1068,8 +1069,8 @@ OSQLParseNode* OSQLParser::buildNode_STR_NUM(OSQLParseNode*& _pLiteral)
{
::rtl::OUString aValue;
if(!m_xCharClass.is())
- m_xCharClass = Reference<XCharacterClassification>(m_xServiceFactory->createInstance(::rtl::OUString("com.sun.star.i18n.CharacterClassification")),UNO_QUERY);
- if(m_xCharClass.is() && s_xLocaleData.is())
+ m_xCharClass = CharacterClassification::create( m_xContext );
+ if( s_xLocaleData.is() )
{
try
{
@@ -1259,13 +1260,13 @@ OSQLParseNode* OSQLParser::predicateTree(::rtl::OUString& rErrorMessage, const :
//=============================================================================
//-----------------------------------------------------------------------------
-OSQLParser::OSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _xServiceFactory,const IParseContext* _pContext)
+OSQLParser::OSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext, const IParseContext* _pContext)
:m_pContext(_pContext)
,m_pParseTree(NULL)
- ,m_pData( new OSQLParser_Data( _xServiceFactory ) )
+ ,m_pData( new OSQLParser_Data( uno::Reference<lang::XMultiServiceFactory>(rxContext->getServiceManager(), uno::UNO_QUERY_THROW) ) )
,m_nFormatKey(0)
,m_nDateFormatKey(0)
- ,m_xServiceFactory(_xServiceFactory)
+ ,m_xContext(rxContext)
{
@@ -1286,7 +1287,7 @@ OSQLParser::OSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star:
s_pGarbageCollector = new OSQLParseNodesGarbageCollector();
if(!s_xLocaleData.is())
- s_xLocaleData = LocaleData::create(comphelper::getComponentContext(m_xServiceFactory));
+ s_xLocaleData = LocaleData::create(m_xContext);
// reset to 0
memset(OSQLParser::s_nRuleIDs,0,sizeof(OSQLParser::s_nRuleIDs[0]) * (OSQLParseNode::rule_count+1));
diff --git a/connectivity/source/sdbcx/VColumn.cxx b/connectivity/source/sdbcx/VColumn.cxx
index f69cb5e7ae85..8de64c8ff189 100644
--- a/connectivity/source/sdbcx/VColumn.cxx
+++ b/connectivity/source/sdbcx/VColumn.cxx
@@ -87,7 +87,10 @@ OColumn::OColumn( const ::rtl::OUString& _Name,
sal_Bool _IsAutoIncrement,
sal_Bool _IsRowVersion,
sal_Bool _IsCurrency,
- sal_Bool _bCase)
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName)
:OColumnDescriptor_BASE(m_aMutex)
,ODescriptor(OColumnDescriptor_BASE::rBHelper,_bCase)
,m_TypeName(_TypeName)
@@ -100,6 +103,9 @@ OColumn::OColumn( const ::rtl::OUString& _Name,
,m_IsAutoIncrement(_IsAutoIncrement)
,m_IsRowVersion(_IsRowVersion)
,m_IsCurrency(_IsCurrency)
+ ,m_CatalogName(_CatalogName)
+ ,m_SchemaName(_SchemaName)
+ ,m_TableName(_TableName)
{
m_Name = _Name;
@@ -157,16 +163,19 @@ void OColumn::construct()
sal_Int32 nAttrib = isNew() ? 0 : PropertyAttribute::READONLY;
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TYPENAME), PROPERTY_ID_TYPENAME, nAttrib,&m_TypeName, ::getCppuType(static_cast< ::rtl::OUString*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_DESCRIPTION), PROPERTY_ID_DESCRIPTION, nAttrib,&m_Description, ::getCppuType(static_cast< ::rtl::OUString*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_DEFAULTVALUE), PROPERTY_ID_DEFAULTVALUE, nAttrib,&m_DefaultValue, ::getCppuType(static_cast< ::rtl::OUString*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_PRECISION), PROPERTY_ID_PRECISION, nAttrib,&m_Precision, ::getCppuType(static_cast<sal_Int32*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TYPE), PROPERTY_ID_TYPE, nAttrib,&m_Type, ::getCppuType(static_cast<sal_Int32*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCALE), PROPERTY_ID_SCALE, nAttrib,&m_Scale, ::getCppuType(static_cast<sal_Int32*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISNULLABLE), PROPERTY_ID_ISNULLABLE, nAttrib,&m_IsNullable, ::getCppuType(static_cast<sal_Int32*>(0)));
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISAUTOINCREMENT), PROPERTY_ID_ISAUTOINCREMENT, nAttrib,&m_IsAutoIncrement, ::getBooleanCppuType());
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISROWVERSION), PROPERTY_ID_ISROWVERSION, nAttrib,&m_IsRowVersion, ::getBooleanCppuType());
- registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISCURRENCY), PROPERTY_ID_ISCURRENCY, nAttrib,&m_IsCurrency, ::getBooleanCppuType());
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TYPENAME), PROPERTY_ID_TYPENAME, nAttrib, &m_TypeName, ::getCppuType(&m_TypeName));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_DESCRIPTION), PROPERTY_ID_DESCRIPTION, nAttrib, &m_Description, ::getCppuType(&m_Description));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_DEFAULTVALUE), PROPERTY_ID_DEFAULTVALUE, nAttrib, &m_DefaultValue, ::getCppuType(&m_DefaultValue));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_PRECISION), PROPERTY_ID_PRECISION, nAttrib, &m_Precision, ::getCppuType(&m_Precision));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TYPE), PROPERTY_ID_TYPE, nAttrib, &m_Type, ::getCppuType(&m_Type));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCALE), PROPERTY_ID_SCALE, nAttrib, &m_Scale, ::getCppuType(&m_Scale));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISNULLABLE), PROPERTY_ID_ISNULLABLE, nAttrib, &m_IsNullable, ::getCppuType(&m_IsNullable));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISAUTOINCREMENT), PROPERTY_ID_ISAUTOINCREMENT, nAttrib, &m_IsAutoIncrement, ::getBooleanCppuType());
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISROWVERSION), PROPERTY_ID_ISROWVERSION, nAttrib, &m_IsRowVersion, ::getBooleanCppuType());
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_ISCURRENCY), PROPERTY_ID_ISCURRENCY, nAttrib, &m_IsCurrency, ::getBooleanCppuType());
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_CATALOGNAME), PROPERTY_ID_CATALOGNAME, nAttrib, &m_CatalogName, ::getCppuType(&m_CatalogName));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_SCHEMANAME), PROPERTY_ID_SCHEMANAME, nAttrib, &m_SchemaName, ::getCppuType(&m_SchemaName));
+ registerProperty(OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_TABLENAME), PROPERTY_ID_TABLENAME, nAttrib, &m_TableName, ::getCppuType(&m_TableName));
}
// -------------------------------------------------------------------------
void OColumn::disposing(void)
@@ -195,7 +204,10 @@ Reference< XPropertySet > SAL_CALL OColumn::createDataDescriptor( ) throw(Runti
m_IsAutoIncrement,
m_IsRowVersion,
m_IsCurrency,
- isCaseSensitive());
+ isCaseSensitive(),
+ m_CatalogName,
+ m_SchemaName,
+ m_TableName);
pNewColumn->setNew(sal_True);
return pNewColumn;
}
diff --git a/connectivity/source/sdbcx/VIndexColumn.cxx b/connectivity/source/sdbcx/VIndexColumn.cxx
index be5fd014ff72..15a20a2dec59 100644
--- a/connectivity/source/sdbcx/VIndexColumn.cxx
+++ b/connectivity/source/sdbcx/VIndexColumn.cxx
@@ -71,7 +71,10 @@ OIndexColumn::OIndexColumn( sal_Bool _IsAscending,
sal_Bool _IsAutoIncrement,
sal_Bool _IsRowVersion,
sal_Bool _IsCurrency,
- sal_Bool _bCase
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName
) : OColumn(_Name,
_TypeName,
_DefaultValue,
@@ -83,7 +86,10 @@ OIndexColumn::OIndexColumn( sal_Bool _IsAscending,
_IsAutoIncrement,
_IsRowVersion,
_IsCurrency,
- _bCase)
+ _bCase,
+ _CatalogName,
+ _SchemaName,
+ _TableName)
, m_IsAscending(_IsAscending)
{
construct();
diff --git a/connectivity/source/sdbcx/VKeyColumn.cxx b/connectivity/source/sdbcx/VKeyColumn.cxx
index edb052277d2b..48e1df5154f3 100644
--- a/connectivity/source/sdbcx/VKeyColumn.cxx
+++ b/connectivity/source/sdbcx/VKeyColumn.cxx
@@ -71,7 +71,10 @@ OKeyColumn::OKeyColumn( const ::rtl::OUString& _ReferencedColumn,
sal_Bool _IsAutoIncrement,
sal_Bool _IsRowVersion,
sal_Bool _IsCurrency,
- sal_Bool _bCase
+ sal_Bool _bCase,
+ const ::rtl::OUString& _CatalogName,
+ const ::rtl::OUString& _SchemaName,
+ const ::rtl::OUString& _TableName
) : OColumn(_Name,
_TypeName,
_DefaultValue,
@@ -83,7 +86,10 @@ OKeyColumn::OKeyColumn( const ::rtl::OUString& _ReferencedColumn,
_IsAutoIncrement,
_IsRowVersion,
_IsCurrency,
- _bCase)
+ _bCase,
+ _CatalogName,
+ _SchemaName,
+ _TableName)
, m_ReferencedColumn(_ReferencedColumn)
{
construct();
diff --git a/connectivity/source/simpledbt/dbtfactory.cxx b/connectivity/source/simpledbt/dbtfactory.cxx
index 616a7fa6dded..29d000423ed0 100644
--- a/connectivity/source/simpledbt/dbtfactory.cxx
+++ b/connectivity/source/simpledbt/dbtfactory.cxx
@@ -94,9 +94,9 @@ namespace connectivity
SAL_WNODEPRECATED_DECLARATIONS_POP
//----------------------------------------------------------------
- ::rtl::Reference< simple::ISQLParser > ODataAccessToolsFactory::createSQLParser(const Reference< XMultiServiceFactory >& _rxServiceFactory,const IParseContext* _pContext) const
+ ::rtl::Reference< simple::ISQLParser > ODataAccessToolsFactory::createSQLParser(const Reference< XComponentContext >& rxContext, const IParseContext* _pContext) const
{
- return new OSimpleSQLParser(_rxServiceFactory,_pContext);
+ return new OSimpleSQLParser(rxContext, _pContext);
}
//........................................................................
diff --git a/connectivity/source/simpledbt/dbtfactory.hxx b/connectivity/source/simpledbt/dbtfactory.hxx
index ba9d9c7e532f..40005ecbdd9f 100644
--- a/connectivity/source/simpledbt/dbtfactory.hxx
+++ b/connectivity/source/simpledbt/dbtfactory.hxx
@@ -44,7 +44,7 @@ namespace connectivity
// IDataAccessToolsFactory
virtual ::rtl::Reference< simple::ISQLParser > createSQLParser(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxServiceFactory,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const IParseContext* _pContext
) const;
diff --git a/connectivity/source/simpledbt/parser_s.cxx b/connectivity/source/simpledbt/parser_s.cxx
index 302099d53622..b49c4bfe9a49 100644
--- a/connectivity/source/simpledbt/parser_s.cxx
+++ b/connectivity/source/simpledbt/parser_s.cxx
@@ -35,8 +35,8 @@ namespace connectivity
//= OSimpleSQLParser
//================================================================
//----------------------------------------------------------------
- OSimpleSQLParser::OSimpleSQLParser(const Reference< XMultiServiceFactory >& _rxServiceFactory,const IParseContext* _pContext)
- :m_aFullParser(_rxServiceFactory,_pContext)
+ OSimpleSQLParser::OSimpleSQLParser(const Reference< XComponentContext >& rxContext, const IParseContext* _pContext)
+ :m_aFullParser(rxContext, _pContext)
{
}
diff --git a/connectivity/source/simpledbt/parser_s.hxx b/connectivity/source/simpledbt/parser_s.hxx
index 6d2555e7b099..155ef739b233 100644
--- a/connectivity/source/simpledbt/parser_s.hxx
+++ b/connectivity/source/simpledbt/parser_s.hxx
@@ -40,7 +40,7 @@ namespace connectivity
OSQLParser m_aFullParser;
public:
- OSimpleSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxServiceFactory,const IParseContext* _pContext);
+ OSimpleSQLParser(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext, const IParseContext* _pContext);
// ISQLParser
virtual ::rtl::Reference< simple::ISQLParseNode > predicateTree(
diff --git a/connectivity/workben/postgresql/ddl.py b/connectivity/workben/postgresql/ddl.py
deleted file mode 100644
index 151f0b8c1fe1..000000000000
--- a/connectivity/workben/postgresql/ddl.py
+++ /dev/null
@@ -1,179 +0,0 @@
-#*************************************************************************
-#
-# The Contents of this file are made available subject to the terms of
-# either of the following licenses
-#
-# - GNU Lesser General Public License Version 2.1
-# - Sun Industry Standards Source License Version 1.1
-#
-# Sun Microsystems Inc., October, 2000
-#
-# GNU Lesser General Public License Version 2.1
-# =============================================
-# Copyright 2000 by Sun Microsystems, Inc.
-# 901 San Antonio Road, Palo Alto, CA 94303, USA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License version 2.1, as published by the Free Software Foundation.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-#
-# Sun Industry Standards Source License Version 1.1
-# =================================================
-# The contents of this file are subject to the Sun Industry Standards
-# Source License Version 1.1 (the "License"); You may not use this file
-# except in compliance with the License. You may obtain a copy of the
-# License at http://www.openoffice.org/license.html.
-#
-# Software provided under this License is provided on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
-# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
-# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
-# See the License for the specific provisions governing your rights and
-# obligations concerning the Software.
-#
-# The Initial Developer of the Original Code is: Ralph Thomas
-#
-# Copyright: 2000 by Sun Microsystems, Inc.
-#
-# All Rights Reserved.
-#
-# Contributor(s): Ralph Thomas, Joerg Budischewski
-#
-#*************************************************************************
-from com.sun.star.sdbc import SQLException
-import sys
-
-def dumpResultSet( rs ):
- meta = rs.getMetaData()
- for i in range(1, meta.getColumnCount()+1):
- sys.stdout.write(meta.getColumnName( i ) + "\t")
- sys.stdout.write( "\n" )
- while rs.next():
- for i in range( 1, meta.getColumnCount()+1):
- sys.stdout.write( rs.getString( i ) + "\t" )
- sys.stdout.write( "\n" )
- rs.beforeFirst()
-
-
-
-def executeIgnoringException( stmt, sql ):
- try:
- stmt.executeUpdate(sql)
- except SQLException:
- pass
-
-def cleanGroupsAndUsers( stmt ):
- rs = stmt.executeQuery("SELECT groname FROM pg_group WHERE groname LIKE 'pqsdbc_%'" )
- stmt2 = stmt.getConnection().createStatement()
- while rs.next():
- stmt2.executeUpdate("DROP GROUP " + rs.getString(1) )
-
- rs.close()
- rs = stmt.executeQuery( "SELECT usename FROM pg_user WHERE usename LIKE 'pqsdbc_%'" )
- while rs.next():
- stmt2.executeUpdate( "DROP USER " + rs.getString(1) )
-
-
-
-
-def executeDDLs( connection ):
-
- stmt = connection.createStatement()
-
-
- executeIgnoringException( stmt, "DROP VIEW customer2" )
- executeIgnoringException( stmt, "DROP TABLE orderpos" )
- executeIgnoringException( stmt, "DROP TABLE ordertab" )
- executeIgnoringException( stmt, "DROP TABLE product" )
- executeIgnoringException( stmt, "DROP TABLE customer" )
- executeIgnoringException( stmt, "DROP TABLE blub" )
- executeIgnoringException( stmt, "DROP TABLE foo" )
- executeIgnoringException( stmt, "DROP TABLE nooid" )
- executeIgnoringException( stmt, "DROP TABLE nooid2" )
- cleanGroupsAndUsers( stmt )
- executeIgnoringException( stmt, "DROP DOMAIN pqsdbc_short" )
- executeIgnoringException( stmt, "DROP DOMAIN pqsdbc_amount" )
- executeIgnoringException( stmt, "DROP SCHEMA pqsdbc_test" )
-
- ddls = (
- "BEGIN",
- "CREATE DOMAIN pqsdbc_short AS int2",
- "CREATE DOMAIN pqsdbc_amount AS integer",
- "CREATE USER pqsdbc_joe",
- "CREATE USER pqsdbc_susy",
- "CREATE USER pqsdbc_boss",
- "CREATE USER pqsdbc_customer", # technical user (e.g. a webfrontend)
- "CREATE GROUP pqsdbc_employees WITH USER pqsdbc_joe,pqsdbc_susy",
- "CREATE GROUP pqsdbc_admin WITH USER pqsdbc_susy,pqsdbc_boss",
- "CREATE SCHEMA pqsdbc_test",
- "CREATE TABLE customer ( "+
- "id char(8) UNIQUE PRIMARY KEY, "+
- "name text, " +
- "dummySerial serial UNIQUE) WITH OIDS",
- "COMMENT ON TABLE customer IS 'contains customer attributes'",
- "COMMENT ON COLUMN customer.id IS 'unique id'",
- "CREATE TABLE product ("+
- "id char(8) UNIQUE PRIMARY KEY,"+
- "name text,"+
- "price numeric(10,2),"+
- "image bytea) WITH OIDS",
-
- "CREATE TABLE ordertab ( "+
- "id char(8) UNIQUE PRIMARY KEY,"+
- "customerid char(8) CONSTRAINT cust REFERENCES customer(id) ON DELETE CASCADE ON UPDATE RESTRICT,"+
- "orderdate char(8),"+
- "delivered boolean ) WITH OIDS",
- "CREATE TABLE orderpos ( "+
- "orderid char(8) REFERENCES ordertab(id),"+
- "id char(3),"+
- "productid char(8) REFERENCES product(id),"+
- "amount pqsdbc_amount,"+
- "shortamount pqsdbc_short,"+
- "PRIMARY KEY (orderid,id)) WITH OIDS",
- "CREATE TABLE nooid ("+
- "id char(8) UNIQUE PRIMARY KEY,"+
- "name text) "+
- "WITHOUT OIDS",
- "CREATE TABLE nooid2 ("+
- "id serial UNIQUE PRIMARY KEY,"+
- "name text) "+
- "WITHOUT OIDS",
- "CREATE VIEW customer2 AS SELECT id,name FROM customer",
- "GRANT SELECT ON TABLE customer,product,orderpos,ordertab TO pqsdbc_customer",
- "GRANT SELECT ON TABLE product TO GROUP pqsdbc_employees",
- "GRANT SELECT,UPDATE, INSERT ON TABLE customer TO GROUP pqsdbc_employees",
- "GRANT ALL ON TABLE orderpos,ordertab TO GROUP pqsdbc_employees, GROUP pqsdbc_admin",
- "GRANT ALL ON TABLE customer TO GROUP pqsdbc_admin", # the admin is allowed to delete customers
- "GRANT ALL ON TABLE product TO pqsdbc_boss", # only the boss may change the product table
- "INSERT INTO public.customer VALUES ('C1','John Doe')",
- "INSERT INTO \"public\" . \"customer\" VALUES ('C2','Bruce Springsteen')",
-
- "INSERT INTO \"public\".product VALUES ('PZZ2','Pizza Mista',6.95,'\\003foo\\005')",
- "INSERT INTO product VALUES ('PZZ5','Pizza Funghi',5.95,'\\001foo\\005')",
- "INSERT INTO product VALUES ('PAS1','Lasagne',5.49,NULL)",
-
- "INSERT INTO ordertab VALUES ( '1', 'C2', '20030403','true')",
- "INSERT INTO ordertab VALUES ( '2', 'C1', '20030402','false')",
-
- "INSERT INTO orderpos VALUES ( '1','001', 'PZZ2',2,0)",
- "INSERT INTO orderpos VALUES ( '1','002', 'PZZ5',3,-1)",
- "INSERT INTO orderpos VALUES ( '2','001', 'PAS1',5,1)",
- "INSERT INTO orderpos VALUES ( '2','002', 'PZZ2',3,2)",
- "COMMIT" )
- for i in ddls:
- stmt.executeUpdate(i)
-
- connection.getTables() # force refresh of metadata
-
- stmt.close()
diff --git a/connectivity/workben/postgresql/main.py b/connectivity/workben/postgresql/main.py
deleted file mode 100644
index 71c803799e31..000000000000
--- a/connectivity/workben/postgresql/main.py
+++ /dev/null
@@ -1,84 +0,0 @@
-#*************************************************************************
-#
-# The Contents of this file are made available subject to the terms of
-# either of the following licenses
-#
-# - GNU Lesser General Public License Version 2.1
-# - Sun Industry Standards Source License Version 1.1
-#
-# Sun Microsystems Inc., October, 2000
-#
-# GNU Lesser General Public License Version 2.1
-# =============================================
-# Copyright 2000 by Sun Microsystems, Inc.
-# 901 San Antonio Road, Palo Alto, CA 94303, USA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License version 2.1, as published by the Free Software Foundation.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-#
-# Sun Industry Standards Source License Version 1.1
-# =================================================
-# The contents of this file are subject to the Sun Industry Standards
-# Source License Version 1.1 (the "License"); You may not use this file
-# except in compliance with the License. You may obtain a copy of the
-# License at http://www.openoffice.org/license.html.
-#
-# Software provided under this License is provided on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
-# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
-# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
-# See the License for the specific provisions governing your rights and
-# obligations concerning the Software.
-#
-# The Initial Developer of the Original Code is: Joerg Budischewski
-#
-# Copyright: 2000 by Sun Microsystems, Inc.
-#
-# All Rights Reserved.
-#
-# Contributor(s): Joerg Budischewski
-#
-#
-#
-#*************************************************************************
-import uno
-import unohelper
-import unittest
-import statement
-import preparedstatement
-import metadata
-import sdbcx
-import sys
-import os
-
-ctx = uno.getComponentContext()
-
-# needed for the tests
-unohelper.addComponentsToContext(
- ctx,ctx,
- ("postgresql-sdbc.uno","postgresql-sdbc-impl.uno","typeconverter.uno"),
- "com.sun.star.loader.SharedLibrary")
-
-runner = unittest.TextTestRunner(sys.stderr,1,2)
-dburl = sys.argv[1] # os.environ['USER'] + "_pqtest"
-print "dburl=" + dburl
-
-suite = unittest.TestSuite()
-suite.addTest(statement.suite(ctx,dburl))
-suite.addTest(preparedstatement.suite(ctx,dburl))
-suite.addTest(metadata.suite(ctx,dburl))
-suite.addTest(sdbcx.suite(ctx,dburl))
-
-runner.run(suite)
diff --git a/connectivity/workben/postgresql/makefile.mk b/connectivity/workben/postgresql/makefile.mk
deleted file mode 100644
index bc7b9c2697aa..000000000000
--- a/connectivity/workben/postgresql/makefile.mk
+++ /dev/null
@@ -1,97 +0,0 @@
-#*************************************************************************
-#
-# The Contents of this file are made available subject to the terms of
-# either of the following licenses
-#
-# - GNU Lesser General Public License Version 2.1
-# - Sun Industry Standards Source License Version 1.1
-#
-# Sun Microsystems Inc., October, 2000
-#
-# GNU Lesser General Public License Version 2.1
-# =============================================
-# Copyright 2000 by Sun Microsystems, Inc.
-# 901 San Antonio Road, Palo Alto, CA 94303, USA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License version 2.1, as published by the Free Software Foundation.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-#
-# Sun Industry Standards Source License Version 1.1
-# =================================================
-# The contents of this file are subject to the Sun Industry Standards
-# Source License Version 1.1 (the "License"); You may not use this file
-# except in compliance with the License. You may obtain a copy of the
-# License at http://www.openoffice.org/license.html.
-#
-# Software provided under this License is provided on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
-# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
-# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
-# See the License for the specific provisions governing your rights and
-# obligations concerning the Software.
-#
-# The Initial Developer of the Original Code is: Sun Microsystems, Inc.
-#
-# Copyright: 2000 by Sun Microsystems, Inc.
-#
-# All Rights Reserved.
-#
-# Contributor(s): _______________________________________
-#
-#
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=connectivity
-TARGET=postgresql-test
-LIBTARGET=NO
-TARGETTYPE=CUI
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-.INCLUDE : sv.mk
-# --- Files --------------------------------------------------------
-
-
-PYFILES = \
- $(DLLDEST)$/statement.py \
- $(DLLDEST)$/preparedstatement.py \
- $(DLLDEST)$/main.py \
- $(DLLDEST)$/ddl.py \
- $(DLLDEST)$/sdbcx.py \
- $(DLLDEST)$/metadata.py
-
-ALL : \
- $(PYFILES) \
- doc
-
-.INCLUDE : target.mk
-
-$(DLLDEST)$/%.py: %.py
- +cp $? $@
-
-
-.PHONY doc:
- @echo "start test with dmake runtest dburl=your-url"
- @echo " e.g. dmake runtest dburl=sdbc:postgresql:dbname=pqtest"
- @echo " MUST: Create a separate datbases before (here pqtest),"
- @echo " (SOME TABLES GET DROPPED)"
-
-runtest : ALL
- +cd $(DLLDEST) && python main.py "$(dburl)"
diff --git a/connectivity/workben/postgresql/metadata.py b/connectivity/workben/postgresql/metadata.py
deleted file mode 100644
index 90764d557768..000000000000
--- a/connectivity/workben/postgresql/metadata.py
+++ /dev/null
@@ -1,145 +0,0 @@
-#*************************************************************************
-#
-# The Contents of this file are made available subject to the terms of
-# either of the following licenses
-#
-# - GNU Lesser General Public License Version 2.1
-# - Sun Industry Standards Source License Version 1.1
-#
-# Sun Microsystems Inc., October, 2000
-#
-# GNU Lesser General Public License Version 2.1
-# =============================================
-# Copyright 2000 by Sun Microsystems, Inc.
-# 901 San Antonio Road, Palo Alto, CA 94303, USA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License version 2.1, as published by the Free Software Foundation.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-#
-# Sun Industry Standards Source License Version 1.1
-# =================================================
-# The contents of this file are subject to the Sun Industry Standards
-# Source License Version 1.1 (the "License"); You may not use this file
-# except in compliance with the License. You may obtain a copy of the
-# License at http://www.openoffice.org/license.html.
-#
-# Software provided under this License is provided on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
-# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
-# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
-# See the License for the specific provisions governing your rights and
-# obligations concerning the Software.
-#
-# The Initial Developer of the Original Code is: Ralph Thomas
-#
-# Copyright: 2000 by Sun Microsystems, Inc.
-#
-# All Rights Reserved.
-#
-# Contributor(s): Ralph Thomas, Joerg Budischewski
-#
-#*************************************************************************
-import unittest
-import sys
-import ddl
-
-from com.sun.star.sdbc.DataType import SMALLINT, INTEGER, BIGINT , DATE, TIME, TIMESTAMP, NUMERIC
-
-def dumpResultSet( rs , count ):
-# for i in range(1, count):
-# sys.stdout.write(meta.getColumnName( i ) + "\t")
- sys.stdout.write( "\n" )
- while rs.next():
- for i in range( 1, count+1):
- sys.stdout.write( rs.getString( i ) + "\t" )
- sys.stdout.write( "\n" )
- rs.beforeFirst()
-
-
-
-
-def suite(ctx,dburl):
- suite = unittest.TestSuite()
- suite.addTest(TestCase("testDatabaseMetaData",ctx,dburl))
- suite.addTest(TestCase("testTypeGuess",ctx,dburl))
- return suite
-
-class TestCase(unittest.TestCase):
- def __init__(self,method,ctx,dburl):
- unittest.TestCase.__init__(self,method)
- self.ctx = ctx
- self.dburl = dburl
-
-
- def setUp( self ):
- self.driver = self.ctx.ServiceManager.createInstanceWithContext(
- 'org.openoffice.comp.connectivity.pq.Driver.noext' , self.ctx )
- self.connection = self.driver.connect( self.dburl, () )
- ddl.executeDDLs( self.connection )
-
- def tearDown( self ):
- self.connection.close()
-
- def testDatabaseMetaData( self ):
- meta = self.connection.getMetaData()
-
- rs = meta.getTables( None, "public", "%", () )
-# dumpResultSet( rs, 5)
-
- rs = meta.getColumns( None, "%", "customer", "%" )
-# dumpResultSet( rs, 18 )
-
- rs = meta.getPrimaryKeys( None, "public" , "%" )
-# dumpResultSet( rs , 6 )
- rs = meta.getTablePrivileges( None, "public" , "%" )
-# dumpResultSet( rs , 7 )
- rs = meta.getColumns( None, "public" , "customer", "%" )
-# dumpResultSet( rs , 18 )
- rs = meta.getTypeInfo()
-# dumpResultSet(rs, 18)
- while rs.next():
- if rs.getString(1) == "pqsdbc_short":
- self.failUnless( rs.getInt(2) == SMALLINT )
- break
- self.failUnless( not rs.isAfterLast() ) # domain type cannot be found
-
-
- rs = meta.getIndexInfo( None, "public" , "customer", False, False )
-# dumpResultSet( rs, 13 )
-
- def testTypeGuess( self ):
- stmt = self.connection.createStatement()
- rs = stmt.executeQuery( "SELECT sum(amount) FROM orderpos" )
- meta = rs.getMetaData()
- self.failUnless( meta.getColumnType(1) == BIGINT )
-
- stmt = self.connection.createStatement()
- rs = stmt.executeQuery( "SELECT sum(price) FROM product" )
- meta = rs.getMetaData()
- self.failUnless( meta.getColumnType(1) == NUMERIC )
-
- rs = stmt.executeQuery( "SELECT max(ttime) FROM firsttable" )
- meta = rs.getMetaData()
- self.failUnless( meta.getColumnType(1) == TIME )
-
- rs = stmt.executeQuery( "SELECT max(tdate) FROM firsttable" )
- meta = rs.getMetaData()
- self.failUnless( meta.getColumnType(1) == DATE )
-
- rs = stmt.executeQuery( "SELECT max(ttimestamp) FROM firsttable" )
- meta = rs.getMetaData()
- self.failUnless( meta.getColumnType(1) == TIMESTAMP )
-# rs.next()
-# print rs.getString( 1 )
diff --git a/connectivity/workben/postgresql/preparedstatement.py b/connectivity/workben/postgresql/preparedstatement.py
deleted file mode 100644
index a44f2ae55472..000000000000
--- a/connectivity/workben/postgresql/preparedstatement.py
+++ /dev/null
@@ -1,222 +0,0 @@
-#*************************************************************************
-#
-# The Contents of this file are made available subject to the terms of
-# either of the following licenses
-#
-# - GNU Lesser General Public License Version 2.1
-# - Sun Industry Standards Source License Version 1.1
-#
-# Sun Microsystems Inc., October, 2000
-#
-# GNU Lesser General Public License Version 2.1
-# =============================================
-# Copyright 2000 by Sun Microsystems, Inc.
-# 901 San Antonio Road, Palo Alto, CA 94303, USA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License version 2.1, as published by the Free Software Foundation.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-#
-# Sun Industry Standards Source License Version 1.1
-# =================================================
-# The contents of this file are subject to the Sun Industry Standards
-# Source License Version 1.1 (the "License"); You may not use this file
-# except in compliance with the License. You may obtain a copy of the
-# License at http://www.openoffice.org/license.html.
-#
-# Software provided under this License is provided on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
-# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
-# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
-# See the License for the specific provisions governing your rights and
-# obligations concerning the Software.
-#
-# The Initial Developer of the Original Code is: Ralph Thomas
-#
-# Copyright: 2000 by Sun Microsystems, Inc.
-#
-# All Rights Reserved.
-#
-# Contributor(s): Ralph Thomas, Joerg Budischewski
-#
-#*************************************************************************
-import unittest
-import sys
-import ddl
-from uno import ByteSequence
-from com.sun.star.sdbc import SQLException
-from com.sun.star.sdbc.ResultSetConcurrency import UPDATABLE
-from com.sun.star.sdbc.DataType import NUMERIC,VARCHAR
-
-def suite(ctx,dburl):
- suite = unittest.TestSuite()
- suite.addTest(TestCase("testQuery",ctx,dburl))
- suite.addTest(TestCase("testGeneratedResultSet",ctx,dburl))
- suite.addTest(TestCase("testUpdateableResultSet",ctx,dburl))
- suite.addTest(TestCase("testQuoteQuote",ctx,dburl))
- return suite
-
-def realEquals( a,b,eps ):
- val = a - b
- if val < 0:
- val = -1. * val
- return val < eps
-
-class TestCase(unittest.TestCase):
- def __init__(self,method,ctx,dburl):
- unittest.TestCase.__init__(self,method)
- self.ctx = ctx
- self.dburl = dburl
-
- def setUp(self):
- self.driver = self.ctx.ServiceManager.createInstanceWithContext(
- 'org.openoffice.comp.connectivity.pq.Driver.noext', self.ctx )
- self.connection = self.driver.connect( self.dburl, () )
- ddl.executeDDLs( self.connection )
-
- def testDown( self ):
- self.connection.close()
-
- def testQuery( self ):
-
- stmts = "SELECT product.id FROM product WHERE product.price > :lowprice AND product.price < :upprice", \
- "SELECT product.id FROM product WHERE product.price > ? AND product.price < ?" , \
- "SELECT \"product\".\"id\" FROM product WHERE \"product\".\"price\" > :lowprice AND \"product\".\"price\" < :upprice"
-
-
- for stmt in stmts:
- prepstmt = self.connection.prepareStatement( stmt )
- prepstmt.setDouble( 1, 5.80 )
- prepstmt.setObjectWithInfo( 2, 7. , NUMERIC, 2)
- prepstmt.setObjectWithInfo( 2, "7.0000", NUMERIC, 2 )
- rs = prepstmt.executeQuery( )
- self.failUnless( rs.getMetaData().getColumnCount() == 1 )
- self.failUnless( rs.getMetaData().getColumnName(1) == "id")
- self.failUnless( prepstmt.getMetaData().getColumnCount() == 1 )
- self.failUnless( prepstmt.getMetaData().getColumnName(1) == "id" )
- self.failUnless( rs.next() )
- self.failUnless( rs.getString( 1 ).strip() == "PZZ2" )
- self.failUnless( rs.next() )
- self.failUnless( rs.getString( 1 ).strip() == "PZZ5" )
- self.failUnless( rs.isLast() )
-
- prepstmt = self.connection.prepareStatement(
- "SELECT name FROM product WHERE id = ?" )
- prepstmt.setString( 1, 'PZZ2' )
- rs = prepstmt.executeQuery()
- self.failUnless( rs.next() )
- self.failUnless( rs.getString( 1 ) == "Pizza Mista" )
- self.failUnless( rs.isLast() )
-
- prepstmt = self.connection.prepareStatement(
- "SELECT name FROM product WHERE image = ?" )
- prepstmt.setBytes( 1, ByteSequence( "\001foo\005" ) )
- rs = prepstmt.executeQuery()
- self.failUnless( rs.next() )
- self.failUnless( rs.getString( 1 ) == "Pizza Funghi" )
- self.failUnless( rs.isLast() )
-
- prepstmt = self.connection.prepareStatement(
- "SELECT * FROM ordertab WHERE delivered = ?" )
- prepstmt.setBoolean( 1 , False )
- rs = prepstmt.executeQuery()
- self.failUnless( rs.next() )
- self.failUnless( rs.getString( 1 ).strip() == "2" )
- self.failUnless( rs.isLast() )
-
- stmt = self.connection.createStatement()
- rs = stmt.executeQuery( "SELECT * FROM \"public\".\"customer\"" )
-
- stmt.executeUpdate( "DELETE FROM product where id='PAS5'" )
- prepstmt =self.connection.prepareStatement(
- "INSERT INTO product VALUES(?,'Ravioli',?,NULL)" );
- prepstmt.setObjectWithInfo( 1, "PAS5" ,VARCHAR,0)
- prepstmt.setObjectWithInfo( 2, "9.223" ,NUMERIC,2)
- prepstmt.executeUpdate()
- rs= stmt.executeQuery( "SELECT price FROM product WHERE id = 'PAS5'" )
- self.failUnless( rs.next() )
- self.failUnless( rs.getString( 1 ).strip() == "9.22" )
-
- stmt.executeUpdate( "DELETE FROM product where id='PAS5'" )
- prepstmt =self.connection.prepareStatement(
- "INSERT INTO product VALUES('PAS5','Ravioli',?,NULL)" );
- prepstmt.setObjectWithInfo( 1, 9.223,NUMERIC,2 )
- prepstmt.executeUpdate()
- rs= stmt.executeQuery( "SELECT price FROM product WHERE id = 'PAS5'" )
- self.failUnless( rs.next() )
- self.failUnless( rs.getString( 1 ).strip() == "9.22" )
-
- def testGeneratedResultSet( self ):
- prepstmt = self.connection.prepareStatement(
- "INSERT INTO customer VALUES( ?, ? )" )
- prepstmt.setString( 1, "C3" )
- prepstmt.setString( 2, "Norah Jones" )
- prepstmt.executeUpdate()
- rs = prepstmt.getGeneratedValues()
- self.failUnless( rs.next() )
- self.failUnless( rs.getInt( 3 ) == 3 )
-
- prepstmt = self.connection.prepareStatement(
- "INSERT INTO public.nooid (id,name) VALUES( ?, ? )" )
- prepstmt.setString( 1, "C3" )
- prepstmt.setString( 2, "Norah Jones" )
- prepstmt.executeUpdate()
- rs = prepstmt.getGeneratedValues()
- self.failUnless( rs.next() )
- self.failUnless( rs.getString(1).rstrip() == "C3" )
-
- prepstmt = self.connection.prepareStatement(
- "INSERT INTO public.nooid2 (name) VALUES( ? )" )
- prepstmt.setString( 1, "Norah Jones" )
- prepstmt.executeUpdate()
- rs = prepstmt.getGeneratedValues()
- self.failUnless( rs )
- self.failUnless( rs.next() )
- self.failUnless( rs.getString(2) == "Norah Jones" )
- self.failUnless( rs.getString(1) == "1" )
-
- def testUpdateableResultSet( self ):
- stmt = self.connection.createStatement()
- stmt.ResultSetConcurrency = UPDATABLE
- rs = stmt.executeQuery( "SELECT * FROM orderpos" )
-# ddl.dumpResultSet( rs )
- rs.next()
- rs.deleteRow()
- rs.next()
- rs.updateInt( 4 , 32 )
- rs.updateRow()
-
- rs.moveToInsertRow()
- rs.updateString( 1 , '2' )
- rs.updateString( 2, '003' )
- rs.updateString( 3, 'PZZ5' )
- rs.updateInt( 4, 22 )
- rs.insertRow()
-
- rs = stmt.executeQuery( "SELECT * FROM orderpos" )
- rs = stmt.executeQuery( "SELECT * FROM \"public\".\"orderpos\"" )
-# ddl.dumpResultSet( rs )
-
- def testQuoteQuote( self ):
- stmt = self.connection.prepareStatement( "select 'foo''l'" )
- rs = stmt.executeQuery()
- self.failUnless( rs )
- self.failUnless( rs.next() )
- self.failUnless( rs.getString(1) == "foo'l" )
-
- stmt = self.connection.prepareStatement( "select 'foo''''l'" )
- rs = stmt.executeQuery()
- self.failUnless( rs )
- self.failUnless( rs.next() )
- self.failUnless( rs.getString(1) == "foo''l" )
diff --git a/connectivity/workben/postgresql/sdbcx.py b/connectivity/workben/postgresql/sdbcx.py
deleted file mode 100644
index 7c5e97136544..000000000000
--- a/connectivity/workben/postgresql/sdbcx.py
+++ /dev/null
@@ -1,300 +0,0 @@
-#*************************************************************************
-#
-# The Contents of this file are made available subject to the terms of
-# either of the following licenses
-#
-# - GNU Lesser General Public License Version 2.1
-# - Sun Industry Standards Source License Version 1.1
-#
-# Sun Microsystems Inc., October, 2000
-#
-# GNU Lesser General Public License Version 2.1
-# =============================================
-# Copyright 2000 by Sun Microsystems, Inc.
-# 901 San Antonio Road, Palo Alto, CA 94303, USA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License version 2.1, as published by the Free Software Foundation.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-#
-# Sun Industry Standards Source License Version 1.1
-# =================================================
-# The contents of this file are subject to the Sun Industry Standards
-# Source License Version 1.1 (the "License"); You may not use this file
-# except in compliance with the License. You may obtain a copy of the
-# License at http://www.openoffice.org/license.html.
-#
-# Software provided under this License is provided on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
-# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
-# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
-# See the License for the specific provisions governing your rights and
-# obligations concerning the Software.
-#
-# The Initial Developer of the Original Code is: Joerg Budischewski
-#
-# Copyright: 2000 by Sun Microsystems, Inc.
-#
-# All Rights Reserved.
-#
-# Contributor(s): Joerg Budischewski
-#
-#
-#
-#*************************************************************************
-import unittest
-import ddl
-import unohelper
-import sys
-from com.sun.star.sdbc import SQLException
-from com.sun.star.sdbc.DataType import VARCHAR, CHAR, DECIMAL, DOUBLE, BIGINT, NUMERIC
-from com.sun.star.sdbc.ColumnValue import NO_NULLS, NULLABLE
-from com.sun.star.sdbcx.KeyType import PRIMARY, FOREIGN, UNIQUE
-from com.sun.star.sdbc.KeyRule import RESTRICT, CASCADE, NO_ACTION
-
-def suite(ctx,dburl):
- suite = unittest.TestSuite()
- suite.addTest(TestCase("testTables",ctx,dburl))
- suite.addTest(TestCase("testViews",ctx,dburl))
- suite.addTest(TestCase("testKeys",ctx,dburl))
- suite.addTest(TestCase("testUsers",ctx,dburl))
- suite.addTest(TestCase("testIndexes",ctx,dburl))
- return suite
-
-def nullable2Str( v ):
- if v == NO_NULLS:
- return "NOT NULL"
- return ""
-
-def autoIncremtent2Str( v ):
- if v:
- return "auto increment"
- return ""
-
-def dumpColumns( columns ):
- n = columns.getCount()
- print "Name\t type\t prec\t scale\t"
- for i in range( 0, n ):
- col = columns.getByIndex( i )
- print col.Name + "\t "+col.TypeName + "\t " + str(col.Precision) + "\t " + str(col.Scale) + "\t "+\
- str( col.DefaultValue ) + "\t " + str( col.Description ) + "\t " +\
- autoIncremtent2Str( col.IsAutoIncrement ) + "\t " + \
- nullable2Str( col.IsNullable )
-
-
-class TestCase(unittest.TestCase):
- def __init__(self,method,ctx,dburl):
- unittest.TestCase.__init__(self,method)
- self.ctx = ctx
- self.dburl = dburl
-
- def setUp( self ):
- self.driver = self.ctx.ServiceManager.createInstanceWithContext(
- 'org.openoffice.comp.connectivity.pq.Driver.noext' , self.ctx )
- self.connection = self.driver.connect( self.dburl, () )
- ddl.executeDDLs( self.connection )
-
- def tearDown( self ):
- self.connection.close()
-
- def checkDescriptor( self, descriptor, name, typeName, type, prec, scale, defaultValue, desc ):
- self.failUnless( descriptor.Name == name )
- self.failUnless( descriptor.TypeName == typeName )
- self.failUnless( descriptor.Type == type )
- self.failUnless( descriptor.Precision == prec )
- self.failUnless( descriptor.Scale == scale )
-# print descriptor.DefaultValue + " == " + defaultValue
-# self.failUnless( descriptor.DefaultValue == defaultValue )
- self.failUnless( descriptor.Description == desc )
-
-
- def testKeys( self ):
- dd = self.driver.getDataDefinitionByConnection( self.connection )
- tables = dd.getTables()
- t = tables.getByName( "public.ordertab" )
- keys = t.getKeys()
- key = keys.getByName( "cust" )
- self.failUnless( key.Name == "cust" )
- self.failUnless( key.Type == FOREIGN )
- self.failUnless( key.ReferencedTable == "public.customer" )
- self.failUnless( key.UpdateRule == RESTRICT )
- self.failUnless( key.DeleteRule == CASCADE )
-
- keycolumns = keys.getByName( "ordertab_pkey" ).getColumns()
- self.failUnless( keycolumns.getElementNames() == (u"id",) )
-
- key = keys.getByName( "ordertab_pkey" )
- self.failUnless( key.Name == "ordertab_pkey" )
- self.failUnless( key.Type == PRIMARY )
- self.failUnless( key.UpdateRule == NO_ACTION )
- self.failUnless( key.DeleteRule == NO_ACTION )
-
- keys = tables.getByName( "public.customer" ).getKeys()
- key = keys.getByName( "customer_dummyserial_key" )
- self.failUnless( key.Name == "customer_dummyserial_key" )
- self.failUnless( key.Type == UNIQUE )
- self.failUnless( key.UpdateRule == NO_ACTION )
- self.failUnless( key.DeleteRule == NO_ACTION )
-
- keys = tables.getByName( "public.orderpos" ).getKeys()
- keyEnum = keys.createEnumeration()
- while keyEnum.hasMoreElements():
- key = keyEnum.nextElement()
- cols = key.getColumns()
- colEnum = cols.createEnumeration()
- while colEnum.hasMoreElements():
- col = colEnum.nextElement()
-
- def testViews( self ):
- dd = self.driver.getDataDefinitionByConnection( self.connection )
- views = dd.getViews()
-
- v = views.getByName( "public.customer2" )
- self.failUnless( v.Name == "customer2" )
- self.failUnless( v.SchemaName == "public" )
- self.failUnless( v.Command != "" )
-
- def testIndexes( self ):
- dd = self.driver.getDataDefinitionByConnection( self.connection )
- tables = dd.getTables()
- t = tables.getByName( "public.ordertab" )
- indexes = t.getIndexes()
- index = indexes.getByName( "ordertab_pkey" )
-
- self.failUnless( index.Name == "ordertab_pkey" )
- self.failUnless( index.IsPrimaryKeyIndex )
- self.failUnless( index.IsUnique )
- self.failUnless( not index.IsClustered )
-
- columns = index.getColumns()
- self.failUnless( columns.hasByName( "id" ) )
-
- self.failUnless( columns.getByIndex(0).Name == "id" )
-
- def checkRenameTable( self, t , tables):
- t.rename( "foo" )
- self.failUnless( tables.hasByName( "public.foo" ) )
-
- t.rename( "public.foo2" )
- self.failUnless( tables.hasByName( "public.foo2" ) )
-
- try:
- t.rename( "pqsdbc_test.foo2" )
- self.failUnless( tables.hasByName( "pqsdbc_test.foo2" ) )
- print "looks like a server 8.1 or later (changing a schema succeeded)"
- t.rename( "pqsdbc_test.foo" )
- self.failUnless( tables.hasByName( "pqsdbc_test.foo" ) )
- t.rename( "public.foo2" )
- self.failUnless( tables.hasByName( "public.foo2" ) )
- except SQLException,e:
- if e.Message.find( "support changing" ) >= 0:
- print "looks like a server prior to 8.1 (changing schema failed with Message [" + e.Message.replace("\n", " ") + "])"
- else:
- raise e
- tables.dropByName( "public.foo2" )
-
- def testTables( self ):
- dd = self.driver.getDataDefinitionByConnection( self.connection )
- tables = dd.getTables()
- t = tables.getByName( "public.customer" )
- self.failUnless( t.Name == "customer" )
- self.failUnless( t.SchemaName == "public" )
- self.failUnless( t.Type == "TABLE" )
-
- cols = t.getColumns()
- self.failUnless( cols.hasByName( 'name' ) )
- self.failUnless( cols.hasByName( 'id' ) )
- col = cols.getByName( "dummyserial" )
-# dumpColumns( cols )
- self.checkDescriptor( cols.getByName( "id" ), "id", "bpchar", CHAR, 8, 0, "", "unique id" )
- self.checkDescriptor( cols.getByName( "name" ), "name", "text", VARCHAR, 0, 0, "", "" )
-
- dd = cols.createDataDescriptor()
- dd.Name = "foo"
- dd.TypeName = "CHAR"
- dd.Type = CHAR
- dd.Precision = 25
- dd.IsNullable = NULLABLE
- cols.appendByDescriptor( dd )
-
- dd.Name = "foo2"
- dd.TypeName = "DECIMAL"
- dd.Type = DECIMAL
- dd.Precision = 12
- dd.Scale = 5
- dd.DefaultValue = "2.3423"
- dd.Description = "foo2 description"
- cols.appendByDescriptor( dd )
-
- dd.Name = "cash"
- dd.TypeName = "MONEY"
- dd.Type = DOUBLE
-# dd.IsNullable = NO_NULLS
- dd.DefaultValue = "'2.42'"
- cols.appendByDescriptor( dd )
-
- cols.refresh()
-
- self.checkDescriptor( cols.getByName( "foo"), "foo", "bpchar", CHAR, 25,0,"","")
- self.checkDescriptor(
- cols.getByName( "foo2"), "foo2", "numeric", NUMERIC, 12,5,"2.3423","foo2 description")
-# dumpColumns( cols )
-
- datadesc = tables.createDataDescriptor()
- datadesc.SchemaName = "public"
- datadesc.Name = "blub"
- datadesc.Description = "This describes blub"
-
- tables.appendByDescriptor( datadesc )
-
- # make the appended descriptors known
- tables.refresh()
-
- t = tables.getByName( "public.blub" )
- self.failUnless( t.Name == "blub" )
- self.failUnless( t.SchemaName == "public" )
- self.failUnless( t.Description == "This describes blub" )
-
- cols = t.getColumns()
- dd = cols.createDataDescriptor()
- dd.Name = "mytext"
- dd.TypeName = "text"
- dd.Type = VARCHAR
- dd.IsNullable = NO_NULLS
- cols.appendByDescriptor( dd )
-
- cols.refresh()
-
- dd.DefaultValue = "'myDefault'"
- dd.Name = "mytext2"
- dd.IsNullable = NULLABLE
- dd.Description = "mytext-Description"
- t.alterColumnByName( "mytext" , dd )
-
- cols.refresh()
-
- self.checkDescriptor( cols.getByName( "mytext2" ), "mytext2", "text", VARCHAR, 0,0,"'myDefault'","mytext-Description" )
-
- t = tables.getByName( "public.customer2" )
- self.checkRenameTable( t,tables )
-
- t = tables.getByName( "public.blub" )
- self.checkRenameTable( t,tables )
-
-
-
- def testUsers( self ):
- dd = self.driver.getDataDefinitionByConnection( self.connection )
- users = dd.getUsers()
- self.failUnless( "pqsdbc_joe" in users.getElementNames() )
diff --git a/connectivity/workben/postgresql/statement.py b/connectivity/workben/postgresql/statement.py
deleted file mode 100644
index 1e752e81bbae..000000000000
--- a/connectivity/workben/postgresql/statement.py
+++ /dev/null
@@ -1,271 +0,0 @@
-#*************************************************************************
-#
-# The Contents of this file are made available subject to the terms of
-# either of the following licenses
-#
-# - GNU Lesser General Public License Version 2.1
-# - Sun Industry Standards Source License Version 1.1
-#
-# Sun Microsystems Inc., October, 2000
-#
-# GNU Lesser General Public License Version 2.1
-# =============================================
-# Copyright 2000 by Sun Microsystems, Inc.
-# 901 San Antonio Road, Palo Alto, CA 94303, USA
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License version 2.1, as published by the Free Software Foundation.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
-# MA 02111-1307 USA
-#
-#
-# Sun Industry Standards Source License Version 1.1
-# =================================================
-# The contents of this file are subject to the Sun Industry Standards
-# Source License Version 1.1 (the "License"); You may not use this file
-# except in compliance with the License. You may obtain a copy of the
-# License at http://www.openoffice.org/license.html.
-#
-# Software provided under this License is provided on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
-# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
-# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
-# See the License for the specific provisions governing your rights and
-# obligations concerning the Software.
-#
-# The Initial Developer of the Original Code is: Joerg Budischewski
-#
-# Copyright: 2000 by Sun Microsystems, Inc.
-#
-# All Rights Reserved.
-#
-# Contributor(s): Joerg Budischewski
-#
-#
-#
-#*************************************************************************
-import unohelper
-import unittest
-import ddl
-from com.sun.star.sdbc import SQLException, XArray
-from com.sun.star.sdbc.DataType import VARCHAR
-from com.sun.star.util import Date
-from com.sun.star.util import Time
-from com.sun.star.util import DateTime
-
-# todo
-class MyArray( unohelper.Base, XArray ):
- def __init__( self, data ):
- self.data = data
- def getBaseType( self ):
- return VARCHAR
- def getBaseTypeName( self ):
- return "varchar"
- def getArray( self, foo ):
- return self.data
- def getArrayAtIndex( self, startIndex, count, foo ):
- return self.data[startIndex:startIndex+count-1]
- def getResultSet( self, foo):
- return None
- def getResultSetAtIndex( self, startIndex, count, foo ):
- return None
-
-def suite(ctx,dburl):
- suite = unittest.TestSuite()
- suite.addTest(TestCase("testRobustness",ctx,dburl))
- suite.addTest(TestCase("testRow",ctx,dburl))
- suite.addTest(TestCase("testNavigation",ctx,dburl))
- suite.addTest(TestCase("testDatabaseMetaData",ctx,dburl))
- suite.addTest(TestCase("testGeneratedResultSet",ctx,dburl))
- suite.addTest(TestCase("testResultSetMetaData",ctx,dburl))
- suite.addTest(TestCase("testArray",ctx,dburl))
- return suite
-
-def realEquals( a,b,eps ):
- val = a - b
- if val < 0:
- val = -1. * val
- return val < eps
-
-class TestCase(unittest.TestCase):
- def __init__(self,method,ctx,dburl):
- unittest.TestCase.__init__(self,method)
- self.ctx = ctx
- self.dburl = dburl
-
- def setUp(self):
- self.driver = self.ctx.ServiceManager.createInstanceWithContext(
- 'org.openoffice.comp.connectivity.pq.Driver.noext' , self.ctx )
- self.connection = self.driver.connect( self.dburl, () )
- self.stmt = self.connection.createStatement()
- try:
- self.stmt.executeUpdate( "DROP TABLE firsttable" )
- except SQLException,e:
- pass
-
- ddls = (
- "BEGIN",
- "CREATE TABLE firsttable (tString text,tInteger integer,tShort smallint,tLong bigint,tFloat real,"+
- "tDouble double precision,tByteSeq bytea,tBool boolean, tDate date, tTime time, tTimestamp timestamp, tIntArray integer[], tStringArray text[], tSerial serial ) WITH OIDS",
- "INSERT INTO firsttable VALUES ( 'foo', 70000, 12000, 70001, 2.4, 2.45, 'huhu', 'true', '1999-01-08','04:05:06','1999-01-08 04:05:06', '{2,3,4}', '{\"huhu\",\"hi\"}')",
- "INSERT INTO firsttable VALUES ( 'foo2', 69999, 12001, 70002, -2.4, 2.55, 'huhu', 'false', '1999-01-08','04:05:06','1999-01-08 04:05:06', NULL , '{\"bla\"}' )",
- "INSERT INTO firsttable VALUES ( 'foo2', 69999, 12001, 70002, -2.4, 2.55, 'huhu', null, '1999-01-08', '04:05:06','1999-01-08 04:05:06', '{}' , '{\"bl ubs\",\"bl\\\\\\\\a}}b\\\\\"a\",\"blub\"}' )",
- "COMMIT" )
- for i in ddls:
- self.stmt.executeUpdate(i)
-
- def tearDown(self):
- self.stmt.close()
- self.connection.close()
-
- def testRow(self):
- row = ("foo",70000,12000,70001,2.4,2.45, "huhu", True ,
- Date(8,1,1999), Time(0,6,5,4),DateTime(0,6,5,4,8,1,1999) )
- row2 = ("foo2",69999,12001,70002,-2.4,2.55, "huhu", False )
-
- rs = self.stmt.executeQuery( "SELECT * from firsttable" )
- self.failUnless( rs.next() )
-
- self.failUnless( rs.getString(1) == row[0] )
- self.failUnless( rs.getInt(2) == row[1] )
- self.failUnless( rs.getShort(3) == row[2] )
- self.failUnless( rs.getLong(4) == row[3] )
- self.failUnless( realEquals(rs.getFloat(5), row[4], 0.001))
- self.failUnless( realEquals(rs.getDouble(6), row[5], 0.00001))
- self.failUnless( rs.getBytes(7) == row[6] )
- self.failUnless( rs.getBoolean(8) == row[7] )
- self.failUnless( rs.getDate(9) == row[8] )
- self.failUnless( rs.getTime(10) == row[9] )
- self.failUnless( rs.getTimestamp(11) == row[10] )
-
- a = rs.getArray(12)
- data = a.getArray( None )
- self.failUnless( len( data ) == 3 )
- self.failUnless( int(data[0] ) == 2 )
- self.failUnless( int(data[1] ) == 3 )
- self.failUnless( int(data[2] ) == 4 )
-
- self.failUnless( rs.next() )
-
- self.failUnless( rs.next() )
- data = rs.getArray(13).getArray(None)
- self.failUnless( data[0] == "bl ubs" )
- self.failUnless( data[1] == "bl\\a}}b\"a" ) # check special keys
- self.failUnless( data[2] == "blub" )
-
- rs.getString(8)
- self.failUnless( rs.wasNull() )
- rs.getString(7)
- self.failUnless( not rs.wasNull() )
-
- self.failUnless( rs.findColumn( "tShort" ) == 3 )
- rs.close()
-
- def testNavigation( self ):
- rs = self.stmt.executeQuery( "SELECT * from firsttable" )
- self.failUnless( rs.isBeforeFirst() )
- self.failUnless( not rs.isAfterLast() )
- self.failUnless( rs.isBeforeFirst() )
-
- self.failUnless( rs.next() )
- self.failUnless( rs.isFirst() )
- self.failUnless( not rs.isLast() )
- self.failUnless( not rs.isBeforeFirst() )
-
- self.failUnless( rs.next() )
- self.failUnless( rs.next() )
- self.failUnless( not rs.next() )
- self.failUnless( rs.isAfterLast() )
-
- rs.absolute( 1 )
- self.failUnless( rs.isFirst() )
-
- rs.absolute( 3 )
- self.failUnless( rs.isLast() )
-
- rs.relative( -1 )
- self.failUnless( rs.getRow() == 2 )
-
- rs.relative( 1 )
- self.failUnless( rs.getRow() == 3 )
-
- rs.close()
-
- def testRobustness( self ):
- rs = self.stmt.executeQuery( "SELECT * from firsttable" )
-
- self.failUnlessRaises( SQLException, rs.getString , 1 )
-
- rs.next()
- self.failUnlessRaises( SQLException, rs.getString , 24 )
- self.failUnlessRaises( SQLException, rs.getString , 0 )
-
- self.connection.close()
- self.failUnlessRaises( SQLException, rs.getString , 1 )
- self.failUnlessRaises( SQLException, self.stmt.executeQuery, "SELECT * from firsttable" )
- rs.close()
-
-
- def testDatabaseMetaData( self ):
- meta = self.connection.getMetaData()
-
- self.failUnless( not meta.isReadOnly() )
-
- def testGeneratedResultSet( self ):
- self.stmt.executeUpdate(
- "INSERT INTO firsttable VALUES ( 'foo3', 69998, 12001, 70002, -2.4, 2.55, 'huhu2')" )
- #ddl.dumpResultSet( self.stmt.getGeneratedValues() )
- rs = self.stmt.getGeneratedValues()
- self.failUnless( rs.next() )
- self.failUnless( rs.getInt( 14 ) == 4 )
-
- def testResultSetMetaData( self ):
- rs = self.stmt.executeQuery( "SELECT * from firsttable" )
-
- # just check, if we get results !
- meta = rs.getMetaData()
-
- count = meta.getColumnCount()
- for i in range( 1, count+1):
- meta.isNullable( i )
- meta.isCurrency( i )
- meta.isCaseSensitive( i )
- meta.isSearchable( i )
- meta.isSigned( i )
- meta.getColumnDisplaySize( i )
- meta.getColumnName( i )
- meta.getColumnLabel( i )
- meta.getSchemaName( i )
- meta.getPrecision( i )
- meta.getScale( i )
- meta.getTableName( i )
- meta.getColumnTypeName( i )
- meta.getColumnType( i )
- meta.isReadOnly( i )
- meta.isWritable( i )
- meta.isDefinitelyWritable( i )
- meta.getColumnServiceName( i )
-
- def testArray( self ):
- stmt = self.connection.prepareStatement(
- "INSERT INTO firsttable VALUES ( 'insertedArray', 70000, 12000, 70001, 2.4, 2.45, 'huhu', 'true', '1999-01-08','04:05:06','1999-01-08 04:05:06', '{2,3,4}', ? )" )
- myarray = ( "a", "\"c", "}d{" )
- stmt.setArray( 1, MyArray( myarray ) )
- stmt.executeUpdate()
-
- stmt = self.connection.createStatement()
- rs = stmt.executeQuery( "SELECT tStringArray FROM firsttable WHERE tString = 'insertedArray'" )
- rs.next()
- data = rs.getArray(1).getArray(None)
- self.failUnless( data[0] == myarray[0] )
- self.failUnless( data[1] == myarray[1] )
- self.failUnless( data[2] == myarray[2] )
diff --git a/cosv/StaticLibrary_cosv.mk b/cosv/StaticLibrary_cosv.mk
index d6f3229ee3e3..666da6b2bac7 100644
--- a/cosv/StaticLibrary_cosv.mk
+++ b/cosv/StaticLibrary_cosv.mk
@@ -11,6 +11,8 @@ $(eval $(call gb_StaticLibrary_StaticLibrary,cosv))
$(eval $(call gb_StaticLibrary_use_packages,cosv,\
cosv_inc \
+ sal_generated \
+ sal_inc \
))
$(eval $(call gb_StaticLibrary_add_exception_objects,cosv,\
diff --git a/cppcanvas/Library_cppcanvas.mk b/cppcanvas/Library_cppcanvas.mk
index 3fa5f1a13cd0..bd6f8742514c 100644
--- a/cppcanvas/Library_cppcanvas.mk
+++ b/cppcanvas/Library_cppcanvas.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_Library_Library,cppcanvas))
@@ -64,7 +55,6 @@ $(eval $(call gb_Library_add_exception_objects,cppcanvas,\
cppcanvas/source/mtfrenderer/mtftools \
cppcanvas/source/mtfrenderer/pointaction \
cppcanvas/source/mtfrenderer/polypolyaction \
- cppcanvas/source/mtfrenderer/rendergraphicaction \
cppcanvas/source/mtfrenderer/textaction \
cppcanvas/source/mtfrenderer/transparencygroupaction \
cppcanvas/source/tools/canvasgraphichelper \
diff --git a/cppcanvas/Library_mtfrenderer.mk b/cppcanvas/Library_mtfrenderer.mk
index ac3f4185c3d0..f479b84e5f37 100644
--- a/cppcanvas/Library_mtfrenderer.mk
+++ b/cppcanvas/Library_mtfrenderer.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2011 Novell Inc.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_Library_Library,mtfrenderer))
diff --git a/cppcanvas/Makefile b/cppcanvas/Makefile
index ccb1c85a04da..0997e628485b 100644
--- a/cppcanvas/Makefile
+++ b/cppcanvas/Makefile
@@ -1,4 +1,11 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
diff --git a/cppcanvas/Module_cppcanvas.mk b/cppcanvas/Module_cppcanvas.mk
index edf7d83c9f3e..fc310b282271 100644
--- a/cppcanvas/Module_cppcanvas.mk
+++ b/cppcanvas/Module_cppcanvas.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_Module_Module,cppcanvas))
diff --git a/cppcanvas/Package_inc.mk b/cppcanvas/Package_inc.mk
index 090fc6cb974f..759cd30fa2bc 100644
--- a/cppcanvas/Package_inc.mk
+++ b/cppcanvas/Package_inc.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_Package_Package,cppcanvas_inc,$(SRCDIR)/cppcanvas/inc))
$(eval $(call gb_Package_add_file,cppcanvas_inc,inc/cppcanvas/canvas.hxx,cppcanvas/canvas.hxx))
diff --git a/cppcanvas/inc/cppcanvas/basegfxfactory.hxx b/cppcanvas/inc/cppcanvas/basegfxfactory.hxx
index 0aecf8002480..4170e7bc8879 100644
--- a/cppcanvas/inc/cppcanvas/basegfxfactory.hxx
+++ b/cppcanvas/inc/cppcanvas/basegfxfactory.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_BASEGFXFACTORY_HXX
#define _CPPCANVAS_BASEGFXFACTORY_HXX
diff --git a/cppcanvas/inc/cppcanvas/cppcanvasdllapi.h b/cppcanvas/inc/cppcanvas/cppcanvasdllapi.h
index 2f8befc64ada..be641aad8b2b 100644
--- a/cppcanvas/inc/cppcanvas/cppcanvasdllapi.h
+++ b/cppcanvas/inc/cppcanvas/cppcanvasdllapi.h
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_CPPCANVASDLLAPI_H
#define INCLUDED_CPPCANVASDLLAPI_H
diff --git a/cppcanvas/inc/cppcanvas/vclfactory.hxx b/cppcanvas/inc/cppcanvas/vclfactory.hxx
index 14f4c5167b28..62d4de8707db 100644
--- a/cppcanvas/inc/cppcanvas/vclfactory.hxx
+++ b/cppcanvas/inc/cppcanvas/vclfactory.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_VCLFACTORY_HXX
#define _CPPCANVAS_VCLFACTORY_HXX
diff --git a/cppcanvas/source/inc/action.hxx b/cppcanvas/source/inc/action.hxx
index c961f82a900c..3beaa8ce2b05 100644
--- a/cppcanvas/source/inc/action.hxx
+++ b/cppcanvas/source/inc/action.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_ACTION_HXX
#define _CPPCANVAS_ACTION_HXX
diff --git a/cppcanvas/source/inc/implrenderer.hxx b/cppcanvas/source/inc/implrenderer.hxx
index a0f59f498715..7f34ad88d965 100644
--- a/cppcanvas/source/inc/implrenderer.hxx
+++ b/cppcanvas/source/inc/implrenderer.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_IMPLRENDERER_HXX
#define _CPPCANVAS_IMPLRENDERER_HXX
diff --git a/cppcanvas/source/mtfrenderer/bitmapaction.cxx b/cppcanvas/source/mtfrenderer/bitmapaction.cxx
index 83e7a0aac296..87dcbabd2eb0 100644
--- a/cppcanvas/source/mtfrenderer/bitmapaction.cxx
+++ b/cppcanvas/source/mtfrenderer/bitmapaction.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/logfile.hxx>
diff --git a/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx b/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx
index 19e8badfbec3..4c7750cac409 100644
--- a/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx
+++ b/cppcanvas/source/mtfrenderer/cachedprimitivebase.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/logfile.hxx>
diff --git a/cppcanvas/source/mtfrenderer/cachedprimitivebase.hxx b/cppcanvas/source/mtfrenderer/cachedprimitivebase.hxx
index 2b105a48cc93..e7b4248473eb 100644
--- a/cppcanvas/source/mtfrenderer/cachedprimitivebase.hxx
+++ b/cppcanvas/source/mtfrenderer/cachedprimitivebase.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_CACHEDPRIMITIVEBASE_HXX
#define _CPPCANVAS_CACHEDPRIMITIVEBASE_HXX
diff --git a/cppcanvas/source/mtfrenderer/emfplus.cxx b/cppcanvas/source/mtfrenderer/emfplus.cxx
index 2c028bcd9d18..ba04a9f533b9 100644
--- a/cppcanvas/source/mtfrenderer/emfplus.cxx
+++ b/cppcanvas/source/mtfrenderer/emfplus.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2010 Novell, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <tools/stream.hxx>
#include <vcl/metaact.hxx>
diff --git a/cppcanvas/source/mtfrenderer/implrenderer.cxx b/cppcanvas/source/mtfrenderer/implrenderer.cxx
index b257dd625845..b7f1677d8682 100644
--- a/cppcanvas/source/mtfrenderer/implrenderer.cxx
+++ b/cppcanvas/source/mtfrenderer/implrenderer.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <canvas/debug.hxx>
#include <tools/diagnose_ex.h>
@@ -81,7 +71,6 @@
#include <lineaction.hxx>
#include <pointaction.hxx>
#include <polypolyaction.hxx>
-#include <rendergraphicaction.hxx>
#include <textaction.hxx>
#include <transparencygroupaction.hxx>
#include <vector>
@@ -156,6 +145,28 @@ namespace
break;
}
+ switch(rLineInfo.GetLineCap())
+ {
+ default: /* com::sun::star::drawing::LineCap_BUTT */
+ {
+ o_rStrokeAttributes.StartCapType = rendering::PathCapType::BUTT;
+ o_rStrokeAttributes.EndCapType = rendering::PathCapType::BUTT;
+ break;
+ }
+ case com::sun::star::drawing::LineCap_ROUND:
+ {
+ o_rStrokeAttributes.StartCapType = rendering::PathCapType::ROUND;
+ o_rStrokeAttributes.EndCapType = rendering::PathCapType::ROUND;
+ break;
+ }
+ case com::sun::star::drawing::LineCap_SQUARE:
+ {
+ o_rStrokeAttributes.StartCapType = rendering::PathCapType::SQUARE;
+ o_rStrokeAttributes.EndCapType = rendering::PathCapType::SQUARE;
+ break;
+ }
+ }
+
if( LINE_DASH == rLineInfo.GetStyle() )
{
const ::cppcanvas::internal::OutDevState& rState( rParms.mrStates.getState() );
@@ -685,23 +696,10 @@ namespace cppcanvas
case GradientStyle_AXIAL:
{
- // Adapt the border so that it is suitable
- // for the axial gradient. An axial
- // gradient consists of two linear
- // gradients. Each of those covers half
- // of the total size. In order to
- // compensate for the condensed display of
- // the linear gradients, we have to
- // enlarge the area taken up by the actual
- // gradient (1-fBorder). After that we
- // have to turn the result back into a
- // border value, hence the second (left
- // most 1-...
- const double fAxialBorder (1-2*(1-fBorder));
- basegfx::tools::createAxialODFGradientInfo(aGradInfo,
+ basegfx::tools::createLinearODFGradientInfo(aGradInfo,
aBounds,
nSteps,
- fAxialBorder,
+ fBorder,
fRotation);
// map odf to svg gradient orientation - x
// instead of y direction
@@ -1045,7 +1043,7 @@ namespace cppcanvas
{
long nWidth = rParms.mrVDev.GetTextWidth( rString,nIndex,nLength );
- xub_Unicode pChars[4];
+ sal_Unicode pChars[4];
if ( rState.textStrikeoutStyle == STRIKEOUT_X )
pChars[0] = 'X';
else
@@ -2676,32 +2674,6 @@ namespace cppcanvas
}
break;
- case META_RENDERGRAPHIC_ACTION:
- {
- MetaRenderGraphicAction* pAct = static_cast<MetaRenderGraphicAction*>(pCurrAct);
-
- ActionSharedPtr pRenderGraphicAction(
- internal::RenderGraphicActionFactory::createRenderGraphicAction(
- pAct->GetRenderGraphic(),
- rStates.getState().mapModeTransform *
- ::vcl::unotools::b2DPointFromPoint( pAct->GetPoint() ),
- rStates.getState().mapModeTransform *
- ::vcl::unotools::b2DSizeFromSize( pAct->GetSize() ),
- rCanvas,
- rStates.getState() ) );
-
- if( pRenderGraphicAction )
- {
- maActions.push_back(
- MtfAction(
- pRenderGraphicAction,
- io_rCurrActionIndex ) );
-
- io_rCurrActionIndex += pRenderGraphicAction->getActionCount()-1;
- }
- }
- break;
-
default:
OSL_FAIL( "Unknown meta action type encountered" );
break;
diff --git a/cppcanvas/source/mtfrenderer/lineaction.cxx b/cppcanvas/source/mtfrenderer/lineaction.cxx
index f27eab0706b2..ecc16b3d92a3 100644
--- a/cppcanvas/source/mtfrenderer/lineaction.cxx
+++ b/cppcanvas/source/mtfrenderer/lineaction.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <lineaction.hxx>
diff --git a/cppcanvas/source/mtfrenderer/mtftools.cxx b/cppcanvas/source/mtfrenderer/mtftools.cxx
index 3b929a861725..5ca31a7806d2 100644
--- a/cppcanvas/source/mtfrenderer/mtftools.cxx
+++ b/cppcanvas/source/mtfrenderer/mtftools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <canvas/debug.hxx>
diff --git a/cppcanvas/source/mtfrenderer/mtftools.hxx b/cppcanvas/source/mtfrenderer/mtftools.hxx
index 1cfc46b76c99..323b11e432e7 100644
--- a/cppcanvas/source/mtfrenderer/mtftools.hxx
+++ b/cppcanvas/source/mtfrenderer/mtftools.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_RENDERER_MTFTOOLS_HXX
#define _CPPCANVAS_RENDERER_MTFTOOLS_HXX
diff --git a/cppcanvas/source/mtfrenderer/pointaction.cxx b/cppcanvas/source/mtfrenderer/pointaction.cxx
index 5f4fec511bdf..72b2895b175b 100644
--- a/cppcanvas/source/mtfrenderer/pointaction.cxx
+++ b/cppcanvas/source/mtfrenderer/pointaction.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/logfile.hxx>
diff --git a/cppcanvas/source/mtfrenderer/polypolyaction.cxx b/cppcanvas/source/mtfrenderer/polypolyaction.cxx
index 9f480f5acfc7..723dea5dcf4d 100644
--- a/cppcanvas/source/mtfrenderer/polypolyaction.cxx
+++ b/cppcanvas/source/mtfrenderer/polypolyaction.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/logfile.hxx>
diff --git a/cppcanvas/source/mtfrenderer/rendergraphicaction.cxx b/cppcanvas/source/mtfrenderer/rendergraphicaction.cxx
deleted file mode 100644
index 6ef35869529a..000000000000
--- a/cppcanvas/source/mtfrenderer/rendergraphicaction.cxx
+++ /dev/null
@@ -1,202 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#include <rtl/logfile.hxx>
-#include <com/sun/star/rendering/XBitmap.hpp>
-#include <com/sun/star/rendering/RepaintResult.hpp>
-#include <com/sun/star/rendering/XCachedPrimitive.hpp>
-#include <vcl/rendergraphicrasterizer.hxx>
-#include <tools/gen.hxx>
-#include <vcl/canvastools.hxx>
-#include <canvas/canvastools.hxx>
-#include <basegfx/matrix/b2dhommatrix.hxx>
-#include <basegfx/vector/b2dsize.hxx>
-#include <basegfx/point/b2dpoint.hxx>
-#include <basegfx/range/b2drange.hxx>
-#include <basegfx/tools/canvastools.hxx>
-#include <boost/utility.hpp>
-#include "cachedprimitivebase.hxx"
-#include "rendergraphicaction.hxx"
-#include "outdevstate.hxx"
-#include "mtftools.hxx"
-#include <basegfx/matrix/b2dhommatrixtools.hxx>
-
-
-using namespace ::com::sun::star;
-
-namespace cppcanvas
-{
- namespace internal
- {
- namespace
- {
-
- class RenderGraphicAction : public CachedPrimitiveBase
- {
- public:
- RenderGraphicAction( const ::vcl::RenderGraphic& rRenderGraphic,
- const ::basegfx::B2DPoint& rDstPoint,
- const ::basegfx::B2DVector& rDstSize,
- const CanvasSharedPtr&,
- const OutDevState& );
-
- virtual bool renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
- const Subset& rSubset ) const;
-
- virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const;
- virtual ::basegfx::B2DRange getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
- const Subset& rSubset ) const;
-
- virtual sal_Int32 getActionCount() const;
-
- private:
- using Action::render;
- virtual bool renderPrimitive( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
- const ::basegfx::B2DHomMatrix& rTransformation ) const;
-
- ::vcl::RenderGraphic maRenderGraphic;
- uno::Reference< rendering::XBitmap > mxBitmap;
- CanvasSharedPtr mpCanvas;
- rendering::RenderState maState;
- };
-
- RenderGraphicAction::RenderGraphicAction( const ::vcl::RenderGraphic& rRenderGraphic,
- const ::basegfx::B2DPoint& rDstPoint,
- const ::basegfx::B2DVector& rDstSize,
- const CanvasSharedPtr& rCanvas,
- const OutDevState& rState ) :
- CachedPrimitiveBase( rCanvas, true ),
- maRenderGraphic( rRenderGraphic ),
- mpCanvas( rCanvas )
- {
- tools::initRenderState( maState,rState );
-
- const ::vcl::RenderGraphicRasterizer aRasterizer( rRenderGraphic );
- const BitmapEx aBmpEx( aRasterizer.Rasterize( ::vcl::unotools::sizeFromB2DSize( rDstSize ) ) );
- const Size aRasteredSizePixel( aBmpEx.GetSizePixel() );
-
- if( aRasteredSizePixel.Width() && aRasteredSizePixel.Height() )
- {
- const ::basegfx::B2DVector aScale( rDstSize.getX() / aRasteredSizePixel.Width(),
- rDstSize.getY() / aRasteredSizePixel.Height() );
- const basegfx::B2DHomMatrix aLocalTransformation(
- basegfx::tools::createScaleTranslateB2DHomMatrix( aScale, rDstPoint)) ;
-
- ::canvas::tools::appendToRenderState( maState, aLocalTransformation );
-
- // correct clip (which is relative to original transform)
- tools::modifyClip( maState, rState, rCanvas, rDstPoint, &aScale, NULL );
-
- mxBitmap = ::vcl::unotools::xBitmapFromBitmapEx( rCanvas->getUNOCanvas()->getDevice(), aBmpEx );
- }
- }
-
- bool RenderGraphicAction::renderPrimitive( uno::Reference< rendering::XCachedPrimitive >& rCachedPrimitive,
- const ::basegfx::B2DHomMatrix& rTransformation ) const
- {
- RTL_LOGFILE_CONTEXT( aLog, "::cppcanvas::internal::RenderGraphicAction::renderPrimitive()" );
- RTL_LOGFILE_CONTEXT_TRACE1( aLog, "::cppcanvas::internal::RenderGraphicAction: 0x%X", this );
-
- if( mxBitmap.is() )
- {
- rendering::RenderState aLocalState( maState );
- ::canvas::tools::prependToRenderState(aLocalState, rTransformation);
-
- rCachedPrimitive = mpCanvas->getUNOCanvas()->drawBitmap( mxBitmap,
- mpCanvas->getViewState(),
- aLocalState );
- }
-
- return true;
- }
-
- bool RenderGraphicAction::renderSubset( const ::basegfx::B2DHomMatrix& rTransformation,
- const Subset& rSubset ) const
- {
- // rendergraphic only contains a single action, fail if subset
- // requests different range
- if( rSubset.mnSubsetBegin != 0 ||
- rSubset.mnSubsetEnd != 1 )
- return false;
-
- return CachedPrimitiveBase::render( rTransformation );
- }
-
- ::basegfx::B2DRange RenderGraphicAction::getBounds( const ::basegfx::B2DHomMatrix& rTransformation ) const
- {
- ::basegfx::B2DRange aRet;
-
- if( mxBitmap.is() )
- {
- rendering::RenderState aLocalState( maState );
- ::canvas::tools::prependToRenderState(aLocalState, rTransformation);
-
- geometry::IntegerSize2D aSize( mxBitmap->getSize() );
-
- aRet = tools::calcDevicePixelBounds( ::basegfx::B2DRange( 0, 0, aSize.Width, aSize.Height ),
- mpCanvas->getViewState(), aLocalState );
- }
-
- return( aRet );
- }
-
- ::basegfx::B2DRange RenderGraphicAction::getBounds( const ::basegfx::B2DHomMatrix& rTransformation,
- const Subset& rSubset ) const
- {
- // rendergraphic only contains a single action, empty bounds
- // if subset requests different range
- if( rSubset.mnSubsetBegin != 0 ||
- rSubset.mnSubsetEnd != 1 )
- return ::basegfx::B2DRange();
-
- return getBounds( rTransformation );
- }
-
- sal_Int32 RenderGraphicAction::getActionCount() const
- {
- return 1;
- }
- }
-
- ActionSharedPtr RenderGraphicActionFactory::createRenderGraphicAction( const ::vcl::RenderGraphic& rRenderGraphic,
- const ::basegfx::B2DPoint& rDstPoint,
- const ::basegfx::B2DVector& rDstSize,
- const CanvasSharedPtr& rCanvas,
- const OutDevState& rState )
- {
- return ActionSharedPtr( new RenderGraphicAction(rRenderGraphic,
- rDstPoint,
- rDstSize,
- rCanvas,
- rState ) );
- }
- }
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cppcanvas/source/mtfrenderer/rendergraphicaction.hxx b/cppcanvas/source/mtfrenderer/rendergraphicaction.hxx
deleted file mode 100644
index 684adeb6fb49..000000000000
--- a/cppcanvas/source/mtfrenderer/rendergraphicaction.hxx
+++ /dev/null
@@ -1,80 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef _CPPCANVAS_RENDERGRAPHICACTION_HXX
-#define _CPPCANVAS_RENDERGRAPHICACTION_HXX
-
-#include <cppcanvas/canvas.hxx>
-#include <action.hxx>
-
-namespace basegfx {
- class B2DPoint;
- class B2DVector;
-}
-namespace vcl {
- class RenderGraphic;
-}
-
-/* Definition of internal::RenderGraphicActionFactory class */
-
-namespace cppcanvas
-{
- namespace internal
- {
- struct OutDevState;
-
- /** Creates encapsulated converters between GDIMetaFile and
- XCanvas. The Canvas argument is deliberately placed at the
- constructor, to force reconstruction of this object for a
- new canvas. This considerably eases internal state
- handling, since a lot of the internal state (e.g. fonts,
- text layout) is Canvas-dependent.
- */
- class RenderGraphicActionFactory
- {
- public:
- /// Scaled rendergraphic action, dest point and dest size
- static ActionSharedPtr createRenderGraphicAction( const ::vcl::RenderGraphic& rRenderGraphic,
- const ::basegfx::B2DPoint& rDstPoint,
- const ::basegfx::B2DVector& rDstSize,
- const CanvasSharedPtr&,
- const OutDevState& );
-
- private:
- // static factory, disable big four
- RenderGraphicActionFactory();
- ~RenderGraphicActionFactory();
- RenderGraphicActionFactory(const RenderGraphicActionFactory&);
- RenderGraphicActionFactory& operator=( const RenderGraphicActionFactory& );
- };
- }
-}
-
-#endif /*_CPPCANVAS_RENDERGRAPHICACTION_HXX */
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cppcanvas/source/mtfrenderer/textaction.cxx b/cppcanvas/source/mtfrenderer/textaction.cxx
index 13b283760522..ab9478e1469f 100644
--- a/cppcanvas/source/mtfrenderer/textaction.cxx
+++ b/cppcanvas/source/mtfrenderer/textaction.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <canvas/debug.hxx>
diff --git a/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx b/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx
index 69b5173f589e..eb814afd0912 100644
--- a/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx
+++ b/cppcanvas/source/mtfrenderer/transparencygroupaction.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <tools/gen.hxx>
@@ -328,7 +318,6 @@ namespace cppcanvas
case META_TEXTLINE_ACTION:
case META_TEXTRECT_ACTION:
case META_STRETCHTEXT_ACTION:
- case META_RENDERGRAPHIC_ACTION:
// output-generating action - only
// copy, if we're within the
// requested subset
diff --git a/cppcanvas/source/mtfrenderer/transparencygroupaction.hxx b/cppcanvas/source/mtfrenderer/transparencygroupaction.hxx
index 8f37aaeb0227..dbe58b382bcb 100644
--- a/cppcanvas/source/mtfrenderer/transparencygroupaction.hxx
+++ b/cppcanvas/source/mtfrenderer/transparencygroupaction.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_TRANSPARENCYGROUPACTION_HXX
#define _CPPCANVAS_TRANSPARENCYGROUPACTION_HXX
diff --git a/cppcanvas/source/uno/mtfrenderer.component b/cppcanvas/source/uno/mtfrenderer.component
index 68bf37e1b933..29ab06557db8 100644
--- a/cppcanvas/source/uno/mtfrenderer.component
+++ b/cppcanvas/source/uno/mtfrenderer.component
@@ -1,4 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
<component loader="com.sun.star.loader.SharedLibrary" prefix="mtfrenderer"
xmlns="http://openoffice.org/2010/uno-components">
<implementation name="com.sun.star.comp.rendering.MtfRenderer">
diff --git a/cppcanvas/source/uno/uno_mtfrenderer.cxx b/cppcanvas/source/uno/uno_mtfrenderer.cxx
index ab480af456f5..63271d7940df 100644
--- a/cppcanvas/source/uno/uno_mtfrenderer.cxx
+++ b/cppcanvas/source/uno/uno_mtfrenderer.cxx
@@ -1,30 +1,11 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2010 Novell, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
#include "uno_mtfrenderer.hxx"
#include <cppcanvas/vclfactory.hxx>
diff --git a/cppcanvas/source/uno/uno_mtfrenderer.hxx b/cppcanvas/source/uno/uno_mtfrenderer.hxx
index e462c6732cc4..afd9e82a8676 100644
--- a/cppcanvas/source/uno/uno_mtfrenderer.hxx
+++ b/cppcanvas/source/uno/uno_mtfrenderer.hxx
@@ -1,30 +1,11 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2010 Novell, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
#ifndef _UNO_MTF_RENDERER_HXX_
#define _UNO_MTF_RENDERER_HXX_
diff --git a/cppcanvas/source/wrapper/basegfxfactory.cxx b/cppcanvas/source/wrapper/basegfxfactory.cxx
index 97d42f905496..96020de28a95 100644
--- a/cppcanvas/source/wrapper/basegfxfactory.cxx
+++ b/cppcanvas/source/wrapper/basegfxfactory.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/instance.hxx>
diff --git a/cppcanvas/source/wrapper/implsprite.cxx b/cppcanvas/source/wrapper/implsprite.cxx
index 9ff68ef327c1..5f58ba210e30 100644
--- a/cppcanvas/source/wrapper/implsprite.cxx
+++ b/cppcanvas/source/wrapper/implsprite.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/rendering/XSprite.hpp>
diff --git a/cppcanvas/source/wrapper/implsprite.hxx b/cppcanvas/source/wrapper/implsprite.hxx
index 025d3e34ba33..73dd7e49d2f1 100644
--- a/cppcanvas/source/wrapper/implsprite.hxx
+++ b/cppcanvas/source/wrapper/implsprite.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_IMPLSPRITE_HXX
#define _CPPCANVAS_IMPLSPRITE_HXX
diff --git a/cppcanvas/source/wrapper/implspritecanvas.cxx b/cppcanvas/source/wrapper/implspritecanvas.cxx
index 3358dc090a50..c6b43a6a9af1 100644
--- a/cppcanvas/source/wrapper/implspritecanvas.cxx
+++ b/cppcanvas/source/wrapper/implspritecanvas.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <basegfx/tools/canvastools.hxx>
diff --git a/cppcanvas/source/wrapper/implspritecanvas.hxx b/cppcanvas/source/wrapper/implspritecanvas.hxx
index 5981a9d7607a..2e70b9aa42f1 100644
--- a/cppcanvas/source/wrapper/implspritecanvas.hxx
+++ b/cppcanvas/source/wrapper/implspritecanvas.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _CPPCANVAS_IMPLSPRITECANVAS_HXX
#define _CPPCANVAS_IMPLSPRITECANVAS_HXX
diff --git a/cppcanvas/source/wrapper/vclfactory.cxx b/cppcanvas/source/wrapper/vclfactory.cxx
index e404c31bbf91..a24025e34f4e 100644
--- a/cppcanvas/source/wrapper/vclfactory.cxx
+++ b/cppcanvas/source/wrapper/vclfactory.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/instance.hxx>
#include <osl/getglobalmutex.hxx>
diff --git a/cppuhelper/Module_cppuhelper.mk b/cppuhelper/Module_cppuhelper.mk
index b28a8634fbba..b1d89b547d27 100644
--- a/cppuhelper/Module_cppuhelper.mk
+++ b/cppuhelper/Module_cppuhelper.mk
@@ -43,8 +43,4 @@ $(eval $(call gb_Module_add_check_targets,cppuhelper,\
))
# CppunitTest_cppuhelper_qa_weak depends on module bridges
-# TODO ? (I don't think OOO_SUBSEQUENT_TESTS != "" can be true..
-# someone would have to do it on command line)
-# qa/propertysetmixin/makefile.mk
-
# vim: set noet sw=4 ts=4:
diff --git a/cross_tail_build/prj/build.lst b/cross_tail_build/prj/build.lst
index 308c85155f24..ec26db2f61bf 100644
--- a/cross_tail_build/prj/build.lst
+++ b/cross_tail_build/prj/build.lst
@@ -1,2 +1,2 @@
-ctb cross_tail_build :: BERKELEYDB:berkeleydb BOOST:boost CPPUNIT:cppunit EXPAT:expat external ICU:icu LIBLANGTAG:liblangtag LIBXML2:libxml2 LIBXSLT:libxslt sal solenv soltools ZLIB:zlib NULL
+ctb cross_tail_build :: BERKELEYDB:berkeleydb BOOST:boost CPPUNIT:cppunit EXPAT:expat external ICU:icu LIBLANGTAG:liblangtag LIBXML2:libxml2 LIBXSLT:libxslt solenv soltools ZLIB:zlib NULL
ctb tail_build\prj nmake - all ctb_prj NULL
diff --git a/cross_toolset/Makefile b/cross_toolset/Makefile
index 24484930846f..2ea36198cc7c 100644
--- a/cross_toolset/Makefile
+++ b/cross_toolset/Makefile
@@ -9,5 +9,5 @@ include ../config_build.mk
.PHONY : build
build:
- $(SOLARENV)/bin/build.pl -P$(BUILD_NCPUS) --all -- -P$(GMAKE_PARALLELISM)
+ $(SOLARENV)/bin/build.pl -P$(PARALLELISM) --all -- -P$(PARALLELISM)
diff --git a/ct2n/ConvertTextToNumber-1.3.2-no-license.patch b/ct2n/ConvertTextToNumber-1.3.2-no-license.patch
index 1d8b805ceaa8..cd17fc00da70 100644
--- a/ct2n/ConvertTextToNumber-1.3.2-no-license.patch
+++ b/ct2n/ConvertTextToNumber-1.3.2-no-license.patch
@@ -2,15 +2,15 @@ diff -purN misc/description.xml misc/build/description.xml
--- misc/description.xml 2009-02-03 00:07:30.000000000 +0100
+++ misc/build/description.xml 2010-03-05 21:38:48.000000000 +0100
@@ -5,12 +5,4 @@
- xmlns:xlink="http://www.w3.org/1999/xlink">
- <identifier value="nl.nouenoff.ct2n"/>
- <version value="1.3.2"/>
-- <!-- <dependencies>
--
-- </dependencies> -->
-- <registration>
-- <simple-license accept-by="admin" default-license-id="ID0" suppress-on-update="true" >
-- <license-text xlink:href="registration/COPYING" lang="en" license-id="ID0" />
-- </simple-license>
-- </registration>
- </description>
+ xmlns:xlink="http://www.w3.org/1999/xlink">
+ <identifier value="nl.nouenoff.ct2n"/>
+ <version value="1.3.2"/>
+- <!-- <dependencies>
+-
+- </dependencies> -->
+- <registration>
+- <simple-license accept-by="admin" default-license-id="ID0" suppress-on-update="true" >
+- <license-text xlink:href="registration/COPYING" lang="en" license-id="ID0" />
+- </simple-license>
+- </registration>
+ </description>
diff --git a/ct2n/ConvertTextToNumber-1.3.2-no-visible-by-default.patch b/ct2n/ConvertTextToNumber-1.3.2-no-visible-by-default.patch
index e764b55e3b8b..50dd4b5f4775 100644
--- a/ct2n/ConvertTextToNumber-1.3.2-no-visible-by-default.patch
+++ b/ct2n/ConvertTextToNumber-1.3.2-no-visible-by-default.patch
@@ -2,103 +2,103 @@ diff -purN misc/Office/UI/BaseWindowState.xcu misc/build/Office/UI/BaseWindowSta
--- misc/Office/UI/BaseWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/BaseWindowState.xcu 2010-03-05 21:36:37.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff -purN misc/Office/UI/BasicIDEWindowState.xcu misc/build/Office/UI/BasicIDEWindowState.xcu
--- misc/Office/UI/BasicIDEWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/BasicIDEWindowState.xcu 2010-03-05 21:36:46.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff -purN misc/Office/UI/CalcWindowState.xcu misc/build/Office/UI/CalcWindowState.xcu
--- misc/Office/UI/CalcWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/CalcWindowState.xcu 2010-03-05 21:36:32.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff -purN misc/Office/UI/DrawWindowState.xcu misc/build/Office/UI/DrawWindowState.xcu
--- misc/Office/UI/DrawWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/DrawWindowState.xcu 2010-03-05 21:36:54.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff -purN misc/Office/UI/ImpressWindowState.xcu misc/build/Office/UI/ImpressWindowState.xcu
--- misc/Office/UI/ImpressWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/ImpressWindowState.xcu 2010-03-05 21:36:59.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff -purN misc/Office/UI/MathWindowState.xcu misc/build/Office/UI/MathWindowState.xcu
--- misc/Office/UI/MathWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/MathWindowState.xcu 2010-03-05 21:37:03.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff -purN misc/Office/UI/StartModuleWindowState.xcu misc/build/Office/UI/StartModuleWindowState.xcu
--- misc/Office/UI/StartModuleWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/StartModuleWindowState.xcu 2010-03-05 21:37:09.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff -purN misc/Office/UI/WriterWindowState.xcu misc/build/Office/UI/WriterWindowState.xcu
--- misc/Office/UI/WriterWindowState.xcu 2008-02-09 23:26:50.000000000 +0100
+++ misc/build/Office/UI/WriterWindowState.xcu 2010-03-05 21:37:17.000000000 +0100
@@ -9,6 +9,9 @@
- <prop oor:name="UIName" oor:type="xs:string">
- <value>CT2N</value>
- </prop>
-+ <prop oor:name="Visible" oor:type="xs:boolean">
-+ <value>false</value>
-+ </prop>
- </node>
- </node>
- </node>
+ <prop oor:name="UIName" oor:type="xs:string">
+ <value>CT2N</value>
+ </prop>
++ <prop oor:name="Visible" oor:type="xs:boolean">
++ <value>false</value>
++ </prop>
+ </node>
+ </node>
+ </node>
diff --git a/librsvg/Makefile b/ct2n/Makefile
index ccb1c85a04da..ccb1c85a04da 100644
--- a/librsvg/Makefile
+++ b/ct2n/Makefile
diff --git a/ct2n/Module_ct2n.mk b/ct2n/Module_ct2n.mk
new file mode 100644
index 000000000000..189222d4fce3
--- /dev/null
+++ b/ct2n/Module_ct2n.mk
@@ -0,0 +1,21 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,ConvertTextToNumber))
+
+ifneq (,$(filter CT2N,$(BUILD_TYPE)))
+
+$(eval $(call gb_Module_add_targets,ConvertTextToNumber,\
+ UnpackedTarball_ct2n \
+ Zip_ct2n \
+))
+
+endif
+
+# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/ct2n/README b/ct2n/README
index 25d4d57a406f..7d5d278883ff 100644
--- a/ct2n/README
+++ b/ct2n/README
@@ -1,4 +1,4 @@
-From [http://extensions.libreoffice.org/extension-center/ct2n-convert-text-to-number-and-dates].
-
-ConvertTextToNumber replaces numbers and dates, formatted
+From [http://extensions.libreoffice.org/extension-center/ct2n-convert-text-to-number-and-dates].
+
+ConvertTextToNumber replaces numbers and dates, formatted
as text, with real numbers. \ No newline at end of file
diff --git a/ct2n/UnpackedTarball_ct2n.mk b/ct2n/UnpackedTarball_ct2n.mk
new file mode 100644
index 000000000000..df9f4664dc06
--- /dev/null
+++ b/ct2n/UnpackedTarball_ct2n.mk
@@ -0,0 +1,31 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,ConvertTextToNumber))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,ConvertTextToNumber,$(CT2N_TARBALL),0))
+
+$(eval $(call gb_UnpackedTarball_add_patches,ConvertTextToNumber,\
+ ct2n/ConvertTextToNumber-1.3.2-no-license.patch \
+ ct2n/ConvertTextToNumber-1.3.2-no-visible-by-default.patch \
+))
+
+$(eval $(call gb_UnpackedTarball_fix_end_of_line,ConvertTextToNumber,\
+ description.xml \
+ Office/UI/BaseWindowState.xcu \
+ Office/UI/BasicIDEWindowState.xcu \
+ Office/UI/CalcWindowState.xcu \
+ Office/UI/DrawWindowState.xcu \
+ Office/UI/ImpressWindowState.xcu \
+ Office/UI/MathWindowState.xcu \
+ Office/UI/StartModuleWindowState.xcu \
+ Office/UI/WriterWindowState.xcu \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/ct2n/Zip_ct2n.mk b/ct2n/Zip_ct2n.mk
new file mode 100644
index 000000000000..c365dc97d90a
--- /dev/null
+++ b/ct2n/Zip_ct2n.mk
@@ -0,0 +1,59 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Zip_Zip,ct2n,$(call gb_UnpackedTarball_get_dir,ConvertTextToNumber)))
+
+$(eval $(call gb_Zip_use_unpacked,ct2n,ConvertTextToNumber))
+
+$(eval $(call gb_Zip_add_files,ct2n,\
+ Addons.xcu \
+ CT2N \
+ CT2N/MainCode.xba \
+ CT2N/ToClipbord.xba \
+ CT2N/Language.xba \
+ CT2N/dialog.xlb \
+ CT2N/dlgCode.xba \
+ CT2N/script.xlb \
+ CT2N/dlgCT2N.xdl \
+ CT2N/UserSettings.xba \
+ META-INF \
+ META-INF/manifest.xml \
+ Office \
+ Office/UI \
+ Office/UI/BaseWindowState.xcu \
+ Office/UI/ImpressWindowState.xcu \
+ Office/UI/StartModuleWindowState.xcu \
+ Office/UI/BasicIDEWindowState.xcu \
+ Office/UI/CalcWindowState.xcu \
+ Office/UI/WriterWindowState.xcu \
+ Office/UI/DrawWindowState.xcu \
+ Office/UI/MathWindowState.xcu \
+ description.xml \
+ icons \
+ icons/image1_26.bmp \
+ icons/image1_16.bmp \
+ pkg-desc \
+ pkg-desc/pkg-description.txt \
+ registration \
+ registration/COPYING \
+))
+
+# UGLY: the Zip target always has .zip suffix, so copy the file to .oxt here...
+
+$(call gb_Zip_get_final_target,ct2n) : $(OUTDIR)/bin/ConvertTextToNumber.oxt
+$(call gb_Zip_get_clean_target,ct2n) : Clean_ConvertTextToNumber_oxt
+
+$(OUTDIR)/bin/ConvertTextToNumber.oxt : $(call gb_Zip_get_target,ct2n)
+ $(call gb_Deliver_deliver,$<,$@)
+
+.PHONY : Clean_ConvertTextToNumber_oxt
+Clean_ConvertTextToNumber_oxt :
+ rm -f $(OUTDIR)/bin/ConvertTextToNumber.oxt
+
+# vim: set noet sw=4 ts=4:
diff --git a/ct2n/delzip b/ct2n/delzip
deleted file mode 100644
index 00d6fa1d41c7..000000000000
--- a/ct2n/delzip
+++ /dev/null
@@ -1,2 +0,0 @@
-*.orig
-so_*_ct2n
diff --git a/ct2n/description-en-US.txt b/ct2n/description-en-US.txt
new file mode 100644
index 000000000000..a91393b5acf5
--- /dev/null
+++ b/ct2n/description-en-US.txt
@@ -0,0 +1,4 @@
+From [http://extensions.libreoffice.org/extension-center/ct2n-convert-text-to-number-and-dates].
+
+ConvertTextToNumber replaces numbers and dates, formatted
+ as text, with real numbers.
diff --git a/ct2n/makefile.mk b/ct2n/makefile.mk
deleted file mode 100644
index 0a4a7b7851cf..000000000000
--- a/ct2n/makefile.mk
+++ /dev/null
@@ -1,66 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2008 by Sun Microsystems, Inc.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=ct2n
-TARGET=ct2n
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-TARFILE_MD5=451ccf439a36a568653b024534669971
-TARFILE_NAME=ConvertTextToNumber-1.3.2
-TARFILE_ROOTDIR=.
-BUILD_DIR=.
-
-PATCH_FILES=\
- ConvertTextToNumber-1.3.2-no-license.patch \
- ConvertTextToNumber-1.3.2-no-visible-by-default.patch
-
-CONFIGURE_DIR=
-CONFIGURE_ACTION=
-CONFIGURE_FLAGS=
-BUILD_ACTION=
-
-ZIP1TARGET=ConvertTextToNumber
-ZIP1EXT=.oxt
-ZIP1FLAGS=-u -r
-ZIP1DIR=$(MISC)/build$/$(TARFILE_ROOTDIR)
-ZIP1LIST= * -x "*.orig" -x "so_*_ct2n"
-ZIP1DEPS=$(PACKAGE_DIR)/$(PREDELIVER_FLAG_FILE)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : tg_ext.mk
-.INCLUDE : target.mk
-
-ZIP1TARGET : $(PACKAGE_DIR)/$(PREDELIVER_FLAG_FILE)
diff --git a/ct2n/prj/build.lst b/ct2n/prj/build.lst
index 714d9265d372..a594256b1410 100644
--- a/ct2n/prj/build.lst
+++ b/ct2n/prj/build.lst
@@ -1,3 +1,2 @@
-ct2n ct2n : solenv NULL
-ct2n ct2n usr1 - all ct2n_mkout NULL
-ct2n ct2n nmake - all ct2n_ct2n NULL
+ct2n ct2n : solenv NULL
+ct2n ct2n\prj nmake - all ct2n_ct2n NULL
diff --git a/ct2n/prj/d.lst b/ct2n/prj/d.lst
index bb394d57baef..e69de29bb2d1 100644
--- a/ct2n/prj/d.lst
+++ b/ct2n/prj/d.lst
@@ -1 +0,0 @@
-..\%__SRC%\bin\ConvertTextToNumber*.oxt %_DEST%\bin\*
diff --git a/cui/AllLangResTarget_cui.mk b/cui/AllLangResTarget_cui.mk
index 6a395fc91c2c..9ec65f94b431 100644
--- a/cui/AllLangResTarget_cui.mk
+++ b/cui/AllLangResTarget_cui.mk
@@ -53,7 +53,6 @@ $(eval $(call gb_SrsTarget_add_files,cui/res,\
cui/source/customize/cfg.src \
cui/source/customize/eventdlg.src \
cui/source/customize/macropg.src \
- cui/source/customize/selector.src \
cui/source/dialogs/about.src \
cui/source/dialogs/colorpicker.src \
cui/source/dialogs/commonlingui.src \
@@ -67,7 +66,6 @@ $(eval $(call gb_SrsTarget_add_files,cui/res,\
cui/source/dialogs/hlmarkwn.src \
cui/source/dialogs/hyperdlg.src \
cui/source/dialogs/iconcdlg.src \
- cui/source/dialogs/insrc.src \
cui/source/dialogs/multipat.src \
cui/source/dialogs/newtabledlg.src \
cui/source/dialogs/passwdomdlg.src \
diff --git a/cui/UI_cui.mk b/cui/UI_cui.mk
index c1b2a3ec5e41..119f8d60ef4b 100644
--- a/cui/UI_cui.mk
+++ b/cui/UI_cui.mk
@@ -13,8 +13,12 @@ $(eval $(call gb_UI_add_uifiles,cui,\
cui/uiconfig/ui/charnamepage \
cui/uiconfig/ui/effectspage \
cui/uiconfig/ui/hyphenate \
+ cui/uiconfig/ui/insertfloatingframe \
cui/uiconfig/ui/insertoleobject \
cui/uiconfig/ui/insertplugin \
+ cui/uiconfig/ui/insertrowcolumn \
+ cui/uiconfig/ui/scriptorganizer \
+ cui/uiconfig/ui/macroselectordialog \
cui/uiconfig/ui/positionpage \
cui/uiconfig/ui/specialcharacters \
cui/uiconfig/ui/thesaurus \
diff --git a/cui/source/customize/acccfg.cxx b/cui/source/customize/acccfg.cxx
index 1bfbfd48853f..a3ac4500cc61 100644
--- a/cui/source/customize/acccfg.cxx
+++ b/cui/source/customize/acccfg.cxx
@@ -622,18 +622,18 @@ static long AccCfgTabs[] =
class SfxAccCfgLBoxString_Impl : public SvLBoxString
{
public:
- SfxAccCfgLBoxString_Impl( SvLBoxEntry* pEntry,
+ SfxAccCfgLBoxString_Impl( SvTreeListEntry* pEntry,
sal_uInt16 nFlags,
const String& sText );
virtual ~SfxAccCfgLBoxString_Impl();
virtual void Paint(
- const Point& aPos, SvTreeListBox& rDevice, sal_uInt16 nFlags, SvLBoxEntry* pEntry);
+ const Point& aPos, SvTreeListBox& rDevice, sal_uInt16 nFlags, SvTreeListEntry* pEntry);
};
//-----------------------------------------------
-SfxAccCfgLBoxString_Impl::SfxAccCfgLBoxString_Impl( SvLBoxEntry* pEntry,
+SfxAccCfgLBoxString_Impl::SfxAccCfgLBoxString_Impl( SvTreeListEntry* pEntry,
sal_uInt16 nFlags,
const String& sText )
: SvLBoxString(pEntry, nFlags, sText)
@@ -646,7 +646,7 @@ SfxAccCfgLBoxString_Impl::~SfxAccCfgLBoxString_Impl()
}
void SfxAccCfgLBoxString_Impl::Paint(
- const Point& aPos, SvTreeListBox& rDevice, sal_uInt16 /*nFlags*/, SvLBoxEntry* pEntry)
+ const Point& aPos, SvTreeListBox& rDevice, sal_uInt16 /*nFlags*/, SvTreeListEntry* pEntry)
{
if (!pEntry)
return;
@@ -663,13 +663,13 @@ void SfxAccCfgLBoxString_Impl::Paint(
}
//-----------------------------------------------
-void SfxAccCfgTabListBox_Impl::InitEntry( SvLBoxEntry* pEntry ,
- const XubString& sText ,
- const Image& aImage1,
- const Image& aImage2,
- SvLBoxButtonKind eButtonKind)
+void SfxAccCfgTabListBox_Impl::InitEntry(SvTreeListEntry* pEntry,
+ const OUString& rText,
+ const Image& rImage1,
+ const Image& rImage2,
+ SvLBoxButtonKind eButtonKind)
{
- SvTabListBox::InitEntry(pEntry, sText, aImage1, aImage2, eButtonKind);
+ SvTabListBox::InitEntry(pEntry, rText, rImage1, rImage2, eButtonKind);
}
//-----------------------------------------------
@@ -692,7 +692,7 @@ void SfxAccCfgTabListBox_Impl::KeyInput(const KeyEvent& aKey)
(nCode1 != KEY_PAGEDOWN)
)
{
- SvLBoxEntry* pEntry = First();
+ SvTreeListEntry* pEntry = First();
while (pEntry)
{
TAccInfo* pUserData = (TAccInfo*)pEntry->GetUserData();
@@ -798,7 +798,7 @@ SfxAcceleratorConfigPage::SfxAcceleratorConfigPage( Window* pParent, const SfxIt
SfxAcceleratorConfigPage::~SfxAcceleratorConfigPage()
{
// free memory - remove all dynamic user data
- SvLBoxEntry* pEntry = aEntriesBox.First();
+ SvTreeListEntry* pEntry = aEntriesBox.First();
while (pEntry)
{
TAccInfo* pUserData = (TAccInfo*)pEntry->GetUserData();
@@ -876,7 +876,7 @@ void SfxAcceleratorConfigPage::InitAccCfg()
This is needed as we have to paint disabled entries by ourself. No support for that in the
original SvTabListBox!
*/
-void SfxAcceleratorConfigPage::CreateCustomItems( SvLBoxEntry* pEntry,
+void SfxAcceleratorConfigPage::CreateCustomItems( SvTreeListEntry* pEntry,
const String& sCol1 ,
const String& sCol2 )
{
@@ -921,7 +921,7 @@ void SfxAcceleratorConfigPage::Init(const css::uno::Reference< css::ui::XAcceler
if (!sKey.Len())
continue;
TAccInfo* pEntry = new TAccInfo(i1, nListPos, aKey);
- SvLBoxEntry* pLBEntry = aEntriesBox.InsertEntryToColumn(sKey, 0L, LIST_APPEND, 0xFFFF);
+ SvTreeListEntry* pLBEntry = aEntriesBox.InsertEntryToColumn(sKey, 0L, LIST_APPEND, 0xFFFF);
pLBEntry->SetUserData(pEntry);
}
@@ -944,7 +944,7 @@ void SfxAcceleratorConfigPage::Init(const css::uno::Reference< css::ui::XAcceler
aEntriesBox.SetEntryText(sLabel, nPos, nCol);
- SvLBoxEntry* pLBEntry = aEntriesBox.GetEntry(0, nPos);
+ SvTreeListEntry* pLBEntry = aEntriesBox.GetEntry(0, nPos);
TAccInfo* pEntry = (TAccInfo*)pLBEntry->GetUserData();
pEntry->m_bIsConfigurable = sal_True;
@@ -964,7 +964,7 @@ void SfxAcceleratorConfigPage::Init(const css::uno::Reference< css::ui::XAcceler
continue;
// Hardcoded function mapped so no ID possible and mark entry as not changeable
- SvLBoxEntry* pLBEntry = aEntriesBox.GetEntry(0, nPos);
+ SvTreeListEntry* pLBEntry = aEntriesBox.GetEntry(0, nPos);
TAccInfo* pEntry = (TAccInfo*)pLBEntry->GetUserData();
pEntry->m_bIsConfigurable = sal_False;
@@ -981,7 +981,7 @@ void SfxAcceleratorConfigPage::Apply(const css::uno::Reference< css::ui::XAccele
// Go through the list from the bottom to the top ...
// because logical accelerator must be preferred instead of
// physical ones!
- SvLBoxEntry* pEntry = aEntriesBox.First();
+ SvTreeListEntry* pEntry = aEntriesBox.First();
while (pEntry)
{
TAccInfo* pUserData = (TAccInfo*)pEntry->GetUserData();
@@ -1115,7 +1115,7 @@ IMPL_LINK( SfxAcceleratorConfigPage, SelectHdl, Control*, pListBox )
aChangeButton.Enable( sal_False );
// #i36994 First selected can return zero!
- SvLBoxEntry* pLBEntry = aEntriesBox.FirstSelected();
+ SvTreeListEntry* pLBEntry = aEntriesBox.FirstSelected();
if ( pLBEntry != 0 )
{
sal_uInt16 nPos = (sal_uInt16) aEntriesBox.GetModel()->GetRelPos( pLBEntry );
@@ -1131,14 +1131,14 @@ IMPL_LINK( SfxAcceleratorConfigPage, SelectHdl, Control*, pListBox )
// update key box
aKeyBox.Clear();
- SvLBoxEntry* pIt = aEntriesBox.First();
+ SvTreeListEntry* pIt = aEntriesBox.First();
while ( pIt )
{
TAccInfo* pUserData = (TAccInfo*)pIt->GetUserData();
if ( pUserData && pUserData->m_sCommand == sPossibleNewCommand )
{
TAccInfo* pU1 = new TAccInfo(-1, -1, pUserData->m_aKey);
- SvLBoxEntry* pE1 = aKeyBox.InsertEntry( pUserData->m_aKey.GetName(), 0L, sal_True, LIST_APPEND );
+ SvTreeListEntry* pE1 = aKeyBox.InsertEntry( pUserData->m_aKey.GetName(), 0L, sal_True, LIST_APPEND );
pE1->SetUserData(pU1);
pE1->EnableChildrenOnDemand( sal_False );
}
@@ -1149,10 +1149,10 @@ IMPL_LINK( SfxAcceleratorConfigPage, SelectHdl, Control*, pListBox )
else
{
// goto selected "key" entry of the key box
- SvLBoxEntry* pE2 = 0;
+ SvTreeListEntry* pE2 = 0;
TAccInfo* pU2 = 0;
sal_uInt16 nP2 = LISTBOX_ENTRY_NOTFOUND;
- SvLBoxEntry* pE3 = 0;
+ SvTreeListEntry* pE3 = 0;
pE2 = aKeyBox.FirstSelected();
if (pE2)
@@ -1194,7 +1194,7 @@ IMPL_LINK_NOARG(SfxAcceleratorConfigPage, RadioHdl)
pGroupLBox->Init(m_xSMGR, m_xFrame, m_sModuleLongName);
// pb: #133213# do not select NULL entries
- SvLBoxEntry* pEntry = aEntriesBox.GetEntry( 0, 0 );
+ SvTreeListEntry* pEntry = aEntriesBox.GetEntry( 0, 0 );
if ( pEntry )
aEntriesBox.Select( pEntry );
pEntry = pGroupLBox->GetEntry( 0, 0 );
@@ -1472,7 +1472,7 @@ void SfxAcceleratorConfigPage::Reset( const SfxItemSet& rSet )
sal_uInt16 SfxAcceleratorConfigPage::MapKeyCodeToPos(const KeyCode& aKey) const
{
sal_uInt16 nCode1 = aKey.GetCode()+aKey.GetModifier();
- SvLBoxEntry* pEntry = aEntriesBox.First();
+ SvTreeListEntry* pEntry = aEntriesBox.First();
sal_uInt16 i = 0;
while (pEntry)
diff --git a/cui/source/customize/acccfg.hrc b/cui/source/customize/acccfg.hrc
index 63c24e785d63..fbcd2d3da7c6 100644
--- a/cui/source/customize/acccfg.hrc
+++ b/cui/source/customize/acccfg.hrc
@@ -36,12 +36,6 @@
#define STR_LOADACCELCONFIG 46
#define STR_SAVEACCELCONFIG 47
-#define IMG_HARDDISK 48
-#define STR_PRODMACROS 50
-#define STR_MYMACROS 51
-#define IMG_LIB 52
-#define IMG_MACRO 54
-#define IMG_DOC 56
#define STR_GROUP_STYLES 58
#define STR_PDF_EXPORT_SEND 59
#define IMG_INFO 61
@@ -49,6 +43,5 @@
#define BMP_COLLAPSED 63
#define BMP_EXPANDED 64
#define STR_BASICMACROS 67
-#define STR_DLG_MACROS 68
#define STR_HUMAN_APPNAME 69
#define STR_FILTERNAME_CFG 70
diff --git a/cui/source/customize/acccfg.src b/cui/source/customize/acccfg.src
index c1b03221f743..1eaf6f35245a 100644
--- a/cui/source/customize/acccfg.src
+++ b/cui/source/customize/acccfg.src
@@ -198,22 +198,10 @@ TabPage RID_SVXPAGE_KEYBOARD
Resource RID_SVXPAGE_CONFIGGROUPBOX
{
- String STR_MYMACROS
- {
- Text [ en-US ] = "My Macros";
- };
- String STR_PRODMACROS
- {
- Text [ en-US ] = "%PRODUCTNAME Macros";
- };
String STR_BASICMACROS
{
Text [ en-US ] = "BASIC Macros" ;
};
- String STR_DLG_MACROS
- {
- Text [ en-US ] = "%PRODUCTNAME Macros" ;
- };
String STR_HUMAN_APPNAME
{
TEXT = "%PRODUCTNAME" ;
@@ -222,26 +210,6 @@ Resource RID_SVXPAGE_CONFIGGROUPBOX
{
Text [ en-US ] = "Styles" ;
};
- Image IMG_HARDDISK
- {
- ImageBitmap = Bitmap { File = "harddisk_16.bmp" ; };
- MASKCOLOR
- };
- Image IMG_LIB
- {
- ImageBitmap = Bitmap { File = "im30820.png"; };
- MASKCOLOR
- };
- Image IMG_MACRO
- {
- ImageBitmap = Bitmap { File = "im30821.png"; };
- MASKCOLOR
- };
- Image IMG_DOC
- {
- ImageBitmap = Bitmap { File = "im30826.png"; };
- MASKCOLOR
- };
Image BMP_COLLAPSED
{
ImageBitmap = Bitmap
diff --git a/cui/source/customize/cfg.cxx b/cui/source/customize/cfg.cxx
index 50e21ff19710..03ca2fe25865 100644
--- a/cui/source/customize/cfg.cxx
+++ b/cui/source/customize/cfg.cxx
@@ -1256,7 +1256,7 @@ void MenuSaveInData::Apply(
SvxConfigEntry* pRootEntry_,
uno::Reference< container::XIndexContainer >& rMenuBar,
uno::Reference< lang::XSingleComponentFactory >& rFactory,
- SvLBoxEntry *pParentEntry )
+ SvTreeListEntry *pParentEntry )
{
(void)pRootEntry_;
(void)pParentEntry;
@@ -1353,14 +1353,14 @@ MenuSaveInData::Reset()
class PopupPainter : public SvLBoxString
{
public:
- PopupPainter( SvLBoxEntry* pEntry, const String& rStr )
+ PopupPainter( SvTreeListEntry* pEntry, const String& rStr )
: SvLBoxString( pEntry, 0, rStr )
{ }
~PopupPainter() { }
void Paint( const Point& rPos, SvTreeListBox& rOutDev,
- sal_uInt16 nViewDataEntryFlags, SvLBoxEntry* pEntry )
+ sal_uInt16 nViewDataEntryFlags, SvTreeListEntry* pEntry )
{
SvLBoxString::Paint( rPos, rOutDev, nViewDataEntryFlags, pEntry );
@@ -1438,7 +1438,7 @@ SvxMenuEntriesListBox::~SvxMenuEntriesListBox()
// drag and drop support
DragDropMode SvxMenuEntriesListBox::NotifyStartDrag(
- TransferDataContainer& aTransferDataContainer, SvLBoxEntry* pEntry )
+ TransferDataContainer& aTransferDataContainer, SvTreeListEntry* pEntry )
{
(void)aTransferDataContainer;
(void)pEntry;
@@ -1470,14 +1470,14 @@ sal_Int8 SvxMenuEntriesListBox::AcceptDrop( const AcceptDropEvent& rEvt )
return SvTreeListBox::AcceptDrop( aNewAcceptDropEvent );
}
-sal_Bool SvxMenuEntriesListBox::NotifyAcceptDrop( SvLBoxEntry* )
+sal_Bool SvxMenuEntriesListBox::NotifyAcceptDrop( SvTreeListEntry* )
{
return sal_True;
}
sal_Bool SvxMenuEntriesListBox::NotifyMoving(
- SvLBoxEntry* pTarget, SvLBoxEntry* pSource,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos)
+ SvTreeListEntry* pTarget, SvTreeListEntry* pSource,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos)
{
// only try to do a move if we are dragging within the list box
if ( m_bIsInternalDrag )
@@ -1500,8 +1500,8 @@ sal_Bool SvxMenuEntriesListBox::NotifyMoving(
}
sal_Bool SvxMenuEntriesListBox::NotifyCopying(
- SvLBoxEntry* pTarget, SvLBoxEntry* pSource,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos)
+ SvTreeListEntry* pTarget, SvTreeListEntry* pSource,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos)
{
(void)pSource;
(void)rpNewParent;
@@ -2063,8 +2063,8 @@ SvxEntries* SvxConfigPage::FindParentForChild(
return NULL;
}
-SvLBoxEntry* SvxConfigPage::AddFunction(
- SvLBoxEntry* pTarget, bool bFront, bool bAllowDuplicates )
+SvTreeListEntry* SvxConfigPage::AddFunction(
+ SvTreeListEntry* pTarget, bool bFront, bool bAllowDuplicates )
{
String aDisplayName = pSelectorDlg->GetSelectedDisplayName();
String aHelpText = pSelectorDlg->GetSelectedHelpText();
@@ -2106,16 +2106,16 @@ SvLBoxEntry* SvxConfigPage::AddFunction(
return InsertEntry( pNewEntryData, pTarget, bFront );
}
-SvLBoxEntry* SvxConfigPage::InsertEntry(
+SvTreeListEntry* SvxConfigPage::InsertEntry(
SvxConfigEntry* pNewEntryData,
- SvLBoxEntry* pTarget,
+ SvTreeListEntry* pTarget,
bool bFront )
{
// Grab the entries list for the currently selected menu
SvxEntries* pEntries = GetTopLevelSelection()->GetEntries();
- SvLBoxEntry* pNewEntry = NULL;
- SvLBoxEntry* pCurEntry =
+ SvTreeListEntry* pNewEntry = NULL;
+ SvTreeListEntry* pCurEntry =
pTarget != NULL ? pTarget : aContentsListBox->GetCurEntry();
if ( bFront )
@@ -2166,10 +2166,10 @@ SvLBoxEntry* SvxConfigPage::InsertEntry(
return pNewEntry;
}
-SvLBoxEntry* SvxConfigPage::InsertEntryIntoUI(
+SvTreeListEntry* SvxConfigPage::InsertEntryIntoUI(
SvxConfigEntry* pNewEntryData, sal_uLong nPos )
{
- SvLBoxEntry* pNewEntry = NULL;
+ SvTreeListEntry* pNewEntry = NULL;
if (pNewEntryData->IsSeparator())
{
@@ -2227,9 +2227,9 @@ IMPL_LINK( SvxConfigPage, MoveHdl, Button *, pButton )
void SvxConfigPage::MoveEntry( bool bMoveUp )
{
- SvLBoxEntry *pSourceEntry = aContentsListBox->FirstSelected();
- SvLBoxEntry *pTargetEntry = NULL;
- SvLBoxEntry *pToSelect = NULL;
+ SvTreeListEntry *pSourceEntry = aContentsListBox->FirstSelected();
+ SvTreeListEntry *pTargetEntry = NULL;
+ SvTreeListEntry *pToSelect = NULL;
if ( !pSourceEntry )
{
@@ -2260,7 +2260,7 @@ void SvxConfigPage::MoveEntry( bool bMoveUp )
}
bool SvxConfigPage::MoveEntryData(
- SvLBoxEntry* pSourceEntry, SvLBoxEntry* pTargetEntry )
+ SvTreeListEntry* pSourceEntry, SvTreeListEntry* pTargetEntry )
{
//modified by shizhoubo for issue53677
if ( NULL == pSourceEntry || NULL == pTargetEntry )
@@ -2400,7 +2400,7 @@ void SvxMenuConfigPage::UpdateButtonStates()
PopupMenu* pPopup = aModifyCommandButton.GetPopupMenu();
// Disable Up and Down buttons depending on current selection
- SvLBoxEntry* selection = aContentsListBox->GetCurEntry();
+ SvTreeListEntry* selection = aContentsListBox->GetCurEntry();
if ( aContentsListBox->GetEntryCount() == 0 || selection == NULL )
{
@@ -2416,8 +2416,8 @@ void SvxMenuConfigPage::UpdateButtonStates()
return;
}
- SvLBoxEntry* first = aContentsListBox->First();
- SvLBoxEntry* last = aContentsListBox->Last();
+ SvTreeListEntry* first = aContentsListBox->First();
+ SvTreeListEntry* last = aContentsListBox->Last();
aMoveUpButton.Enable( selection != first );
aMoveDownButton.Enable( selection != last );
@@ -2460,7 +2460,7 @@ void SvxMenuConfigPage::DeleteSelectedTopLevel()
bool SvxMenuConfigPage::DeleteSelectedContent()
{
- SvLBoxEntry *pActEntry = aContentsListBox->FirstSelected();
+ SvTreeListEntry *pActEntry = aContentsListBox->FirstSelected();
if ( pActEntry != NULL )
{
@@ -2651,7 +2651,7 @@ IMPL_LINK( SvxMenuConfigPage, EntrySelectHdl, MenuButton *, pButton )
}
case ID_RENAME:
{
- SvLBoxEntry* pActEntry = aContentsListBox->GetCurEntry();
+ SvTreeListEntry* pActEntry = aContentsListBox->GetCurEntry();
SvxConfigEntry* pEntry =
(SvxConfigEntry*) pActEntry->GetUserData();
@@ -2782,7 +2782,7 @@ SvxMainMenuOrganizerDialog::SvxMainMenuOrganizerDialog(
if ( entries != NULL )
{
SvxConfigEntry* pEntry;
- SvLBoxEntry* pLBEntry;
+ SvTreeListEntry* pLBEntry;
pEntries = new SvxEntries();
SvxEntries::const_iterator iter = entries->begin();
@@ -2911,9 +2911,9 @@ IMPL_LINK( SvxMainMenuOrganizerDialog, SelectHdl, Control*, pCtrl )
void SvxMainMenuOrganizerDialog::UpdateButtonStates()
{
// Disable Up and Down buttons depending on current selection
- SvLBoxEntry* selection = aMenuListBox.GetCurEntry();
- SvLBoxEntry* first = aMenuListBox.First();
- SvLBoxEntry* last = aMenuListBox.Last();
+ SvTreeListEntry* selection = aMenuListBox.GetCurEntry();
+ SvTreeListEntry* first = aMenuListBox.First();
+ SvTreeListEntry* last = aMenuListBox.Last();
aMoveUpButton.Enable( selection != first );
aMoveDownButton.Enable( selection != last );
@@ -2921,8 +2921,8 @@ void SvxMainMenuOrganizerDialog::UpdateButtonStates()
IMPL_LINK( SvxMainMenuOrganizerDialog, MoveHdl, Button *, pButton )
{
- SvLBoxEntry *pSourceEntry = aMenuListBox.FirstSelected();
- SvLBoxEntry *pTargetEntry = NULL;
+ SvTreeListEntry *pSourceEntry = aMenuListBox.FirstSelected();
+ SvTreeListEntry *pTargetEntry = NULL;
if ( !pSourceEntry )
{
@@ -3205,7 +3205,7 @@ void SvxToolbarConfigPage::DeleteSelectedTopLevel()
bool SvxToolbarConfigPage::DeleteSelectedContent()
{
- SvLBoxEntry *pActEntry = aContentsListBox->FirstSelected();
+ SvTreeListEntry *pActEntry = aContentsListBox->FirstSelected();
if ( pActEntry != NULL )
{
@@ -3375,7 +3375,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
{
case ID_RENAME:
{
- SvLBoxEntry* pActEntry = aContentsListBox->GetCurEntry();
+ SvTreeListEntry* pActEntry = aContentsListBox->GetCurEntry();
SvxConfigEntry* pEntry =
(SvxConfigEntry*) pActEntry->GetUserData();
@@ -3402,7 +3402,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
}
case ID_DEFAULT_COMMAND:
{
- SvLBoxEntry* pActEntry = aContentsListBox->GetCurEntry();
+ SvTreeListEntry* pActEntry = aContentsListBox->GetCurEntry();
SvxConfigEntry* pEntry =
(SvxConfigEntry*) pActEntry->GetUserData();
@@ -3449,7 +3449,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
aContentsListBox->GetModel()->Remove( pActEntry );
- SvLBoxEntry* pNewLBEntry =
+ SvTreeListEntry* pNewLBEntry =
InsertEntryIntoUI( pEntry, nSelectionPos );
aContentsListBox->SetCheckButtonState( pNewLBEntry,
@@ -3472,7 +3472,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
SvxConfigEntry* pNewEntryData = new SvxConfigEntry;
pNewEntryData->SetUserDefined( sal_True );
- SvLBoxEntry* pNewLBEntry = InsertEntry( pNewEntryData );
+ SvTreeListEntry* pNewLBEntry = InsertEntry( pNewEntryData );
aContentsListBox->SetCheckButtonState(
pNewLBEntry, SV_BUTTON_TRISTATE );
@@ -3499,7 +3499,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
}
case ID_CHANGE_SYMBOL:
{
- SvLBoxEntry* pActEntry = aContentsListBox->GetCurEntry();
+ SvTreeListEntry* pActEntry = aContentsListBox->GetCurEntry();
SvxConfigEntry* pEntry =
(SvxConfigEntry*) pActEntry->GetUserData();
@@ -3556,7 +3556,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
Image aImage( newgraphic );
aContentsListBox->GetModel()->Remove( pActEntry );
- SvLBoxEntry* pNewLBEntry =
+ SvTreeListEntry* pNewLBEntry =
InsertEntryIntoUI( pEntry, nSelectionPos );
aContentsListBox->SetCheckButtonState( pNewLBEntry,
@@ -3582,7 +3582,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
}
case ID_RESET_SYMBOL:
{
- SvLBoxEntry* pActEntry = aContentsListBox->GetCurEntry();
+ SvTreeListEntry* pActEntry = aContentsListBox->GetCurEntry();
SvxConfigEntry* pEntry =
(SvxConfigEntry*) pActEntry->GetUserData();
@@ -3616,7 +3616,7 @@ IMPL_LINK( SvxToolbarConfigPage, EntrySelectHdl, MenuButton *, pButton )
Image aImage( backup );
aContentsListBox->GetModel()->Remove( pActEntry );
- SvLBoxEntry* pNewLBEntry =
+ SvTreeListEntry* pNewLBEntry =
InsertEntryIntoUI( pEntry, nSelectionPos );
aContentsListBox->SetCheckButtonState( pNewLBEntry,
@@ -4525,7 +4525,7 @@ void SvxToolbarConfigPage::UpdateButtonStates()
aDescriptionField.Clear();
- SvLBoxEntry* selection = aContentsListBox->GetCurEntry();
+ SvTreeListEntry* selection = aContentsListBox->GetCurEntry();
if ( aContentsListBox->GetEntryCount() == 0 || selection == NULL )
{
return;
@@ -4621,7 +4621,7 @@ IMPL_LINK( SvxToolbarConfigPage, SelectToolbar, ListBox *, pBox )
{
SvxConfigEntry* pEntry = *iter;
- SvLBoxEntry* pNewLBEntry = InsertEntryIntoUI( pEntry );
+ SvTreeListEntry* pNewLBEntry = InsertEntryIntoUI( pEntry );
if (pEntry->IsBinding())
{
@@ -4741,10 +4741,10 @@ IMPL_LINK( SvxToolbarConfigPage, AddFunctionHdl,
return 0;
}
-SvLBoxEntry* SvxToolbarConfigPage::AddFunction(
- SvLBoxEntry* pTarget, bool bFront, bool bAllowDuplicates )
+SvTreeListEntry* SvxToolbarConfigPage::AddFunction(
+ SvTreeListEntry* pTarget, bool bFront, bool bAllowDuplicates )
{
- SvLBoxEntry* pNewLBEntry =
+ SvTreeListEntry* pNewLBEntry =
SvxConfigPage::AddFunction( pTarget, bFront, bAllowDuplicates );
SvxConfigEntry* pEntry = (SvxConfigEntry*) pNewLBEntry->GetUserData();
@@ -4864,7 +4864,7 @@ void SvxToolbarEntriesListBox::DataChanged( const DataChangedEvent& rDCEvt )
// --------------------------------------------------------
-void SvxToolbarEntriesListBox::ChangeVisibility( SvLBoxEntry* pEntry )
+void SvxToolbarEntriesListBox::ChangeVisibility( SvTreeListEntry* pEntry )
{
if ( pEntry != NULL )
{
@@ -4908,8 +4908,8 @@ void SvxToolbarEntriesListBox::KeyInput( const KeyEvent& rKeyEvent )
}
sal_Bool SvxToolbarEntriesListBox::NotifyMoving(
- SvLBoxEntry* pTarget, SvLBoxEntry* pSource,
- SvLBoxEntry*& rpNewParent, sal_uLong& rNewChildPos)
+ SvTreeListEntry* pTarget, SvTreeListEntry* pSource,
+ SvTreeListEntry*& rpNewParent, sal_uLong& rNewChildPos)
{
bool result = SvxMenuEntriesListBox::NotifyMoving(
pTarget, pSource, rpNewParent, rNewChildPos );
@@ -4930,9 +4930,9 @@ sal_Bool SvxToolbarEntriesListBox::NotifyMoving(
}
sal_Bool SvxToolbarEntriesListBox::NotifyCopying(
- SvLBoxEntry* pTarget,
- SvLBoxEntry* pSource,
- SvLBoxEntry*& rpNewParent,
+ SvTreeListEntry* pTarget,
+ SvTreeListEntry* pSource,
+ SvTreeListEntry*& rpNewParent,
sal_uLong& rNewChildPos)
{
(void)pSource;
diff --git a/cui/source/customize/cfgutil.cxx b/cui/source/customize/cfgutil.cxx
index b457e5899d93..e79f1c61d7b6 100644
--- a/cui/source/customize/cfgutil.cxx
+++ b/cui/source/customize/cfgutil.cxx
@@ -320,7 +320,7 @@ void SfxConfigFunctionListBox_Impl::ClearAll()
String SfxConfigFunctionListBox_Impl::GetSelectedScriptURI()
{
- SvLBoxEntry *pEntry = FirstSelected();
+ SvTreeListEntry *pEntry = FirstSelected();
if ( pEntry )
{
SfxGroupInfo_Impl *pData = (SfxGroupInfo_Impl*) pEntry->GetUserData();
@@ -332,7 +332,7 @@ String SfxConfigFunctionListBox_Impl::GetSelectedScriptURI()
String SfxConfigFunctionListBox_Impl::GetCurCommand()
{
- SvLBoxEntry *pEntry = FirstSelected();
+ SvTreeListEntry *pEntry = FirstSelected();
if (!pEntry)
return String();
SfxGroupInfo_Impl *pData = (SfxGroupInfo_Impl*) pEntry->GetUserData();
@@ -343,7 +343,7 @@ String SfxConfigFunctionListBox_Impl::GetCurCommand()
String SfxConfigFunctionListBox_Impl::GetCurLabel()
{
- SvLBoxEntry *pEntry = FirstSelected();
+ SvTreeListEntry *pEntry = FirstSelected();
if (!pEntry)
return String();
SfxGroupInfo_Impl *pData = (SfxGroupInfo_Impl*) pEntry->GetUserData();
@@ -387,16 +387,16 @@ struct SvxConfigGroupBoxResource_Impl : public Resource
SvxConfigGroupBoxResource_Impl::SvxConfigGroupBoxResource_Impl() :
Resource(CUI_RES(RID_SVXPAGE_CONFIGGROUPBOX)),
- m_hdImage(CUI_RES(IMG_HARDDISK)),
- m_libImage(CUI_RES(IMG_LIB)),
- m_macImage(CUI_RES(IMG_MACRO)),
- m_docImage(CUI_RES(IMG_DOC)),
- m_sMyMacros(String(CUI_RES(STR_MYMACROS))),
- m_sProdMacros(String(CUI_RES(STR_PRODMACROS))),
- m_sMacros(String(CUI_RES(STR_BASICMACROS))),
- m_sDlgMacros(String(CUI_RES(STR_DLG_MACROS))),
- m_aHumanAppName(String(CUI_RES(STR_HUMAN_APPNAME))),
- m_aStrGroupStyles(String(CUI_RES(STR_GROUP_STYLES))),
+ m_hdImage(CUI_RES(RID_CUIIMG_HARDDISK)),
+ m_libImage(CUI_RES(RID_CUIIMG_LIB)),
+ m_macImage(CUI_RES(RID_CUIIMG_MACRO)),
+ m_docImage(CUI_RES(RID_CUIIMG_DOC)),
+ m_sMyMacros(CUI_RESSTR(RID_SVXSTR_MYMACROS)),
+ m_sProdMacros(CUI_RESSTR(RID_SVXSTR_PRODMACROS)),
+ m_sMacros(CUI_RESSTR(STR_BASICMACROS)),
+ m_sDlgMacros(CUI_RESSTR(RID_SVXSTR_PRODMACROS)),
+ m_aHumanAppName(CUI_RESSTR(STR_HUMAN_APPNAME)),
+ m_aStrGroupStyles(CUI_RESSTR(STR_GROUP_STYLES)),
m_collapsedImage(CUI_RES(BMP_COLLAPSED)),
m_expandedImage(CUI_RES(BMP_EXPANDED))
{
@@ -448,7 +448,7 @@ String SfxConfigGroupListBox_Impl::GetGroup()
Returns the name of the selected function group/the selected basic.
*/
{
- SvLBoxEntry *pEntry = FirstSelected();
+ SvTreeListEntry *pEntry = FirstSelected();
while ( pEntry )
{
SfxGroupInfo_Impl *pInfo = (SfxGroupInfo_Impl*) pEntry->GetUserData();
@@ -486,7 +486,7 @@ void SfxConfigGroupListBox_Impl::InitModule()
catch(const css::container::NoSuchElementException&)
{ continue; }
- SvLBoxEntry* pEntry = InsertEntry(sGroupName, NULL);
+ SvTreeListEntry* pEntry = InsertEntry(sGroupName, NULL);
SfxGroupInfo_Impl* pInfo = new SfxGroupInfo_Impl(SFX_CFGGROUP_FUNCTION, rGroupID);
pEntry->SetUserData(pInfo);
}
@@ -616,7 +616,7 @@ void SfxConfigGroupListBox_Impl::Init(const css::uno::Reference< css::lang::XMul
static_cast<void *>(rootNode.get()));
String aTitle(pImp->m_sDlgMacros);
- SvLBoxEntry *pNewEntry = InsertEntry( aTitle, NULL );
+ SvTreeListEntry *pNewEntry = InsertEntry( aTitle, NULL );
pNewEntry->SetUserData( pInfo );
pNewEntry->EnableChildrenOnDemand( sal_True );
aArr.push_back( pInfo );
@@ -687,7 +687,7 @@ void SfxConfigGroupListBox_Impl::Init(const css::uno::Reference< css::lang::XMul
0, static_cast<void *>( theChild.get()));
Image aImage = GetImage( theChild, xCtx, bIsRootNode );
- SvLBoxEntry* pNewEntry =
+ SvTreeListEntry* pNewEntry =
InsertEntry( uiName, NULL);
SetExpandedEntryBmp( pNewEntry, aImage );
SetCollapsedEntryBmp( pNewEntry, aImage );
@@ -723,7 +723,7 @@ void SfxConfigGroupListBox_Impl::Init(const css::uno::Reference< css::lang::XMul
if ( m_xSMGR.is() )
{
String sStyle( pImp->m_aStrGroupStyles );
- SvLBoxEntry *pEntry = InsertEntry( sStyle, 0 );
+ SvTreeListEntry *pEntry = InsertEntry( sStyle, 0 );
SfxGroupInfo_Impl *pInfo = new SfxGroupInfo_Impl( SFX_CFGGROUP_STYLES, 0, 0 ); // TODO last parameter should contain user data
aArr.push_back( pInfo );
pEntry->SetUserData( pInfo );
@@ -866,7 +866,7 @@ void SfxConfigGroupListBox_Impl::GroupSelected()
All functions/macros are displayed in the functionlistbox.
*/
{
- SvLBoxEntry *pEntry = FirstSelected();
+ SvTreeListEntry *pEntry = FirstSelected();
SfxGroupInfo_Impl *pInfo = (SfxGroupInfo_Impl*) pEntry->GetUserData();
pFunctionListBox->SetUpdateMode(sal_False);
pFunctionListBox->ClearAll();
@@ -892,7 +892,7 @@ void SfxConfigGroupListBox_Impl::GroupSelected()
{
const css::frame::DispatchInformation& rInfo = lCommands[i];
::rtl::OUString sUIName = MapCommand2UIName(rInfo.Command);
- SvLBoxEntry* pFuncEntry = pFunctionListBox->InsertEntry(sUIName, NULL);
+ SvTreeListEntry* pFuncEntry = pFunctionListBox->InsertEntry(sUIName, NULL);
SfxGroupInfo_Impl* pGrpInfo = new SfxGroupInfo_Impl(SFX_CFGFUNCTION_SLOT, 0);
pGrpInfo->sCommand = rInfo.Command;
pGrpInfo->sLabel = sUIName;
@@ -935,7 +935,7 @@ void SfxConfigGroupListBox_Impl::GroupSelected()
SfxGroupInfo_Impl* pGrpInfo = new SfxGroupInfo_Impl( SFX_CFGFUNCTION_SCRIPT, 0, pScriptURI );
Image aImage = GetImage( children[n], Reference< XComponentContext >(), sal_False );
- SvLBoxEntry* pNewEntry =
+ SvTreeListEntry* pNewEntry =
pFunctionListBox->InsertEntry( children[n]->getName(), NULL );
pFunctionListBox->SetExpandedEntryBmp( pNewEntry, aImage );
pFunctionListBox->SetCollapsedEntryBmp(pNewEntry, aImage );
@@ -969,7 +969,7 @@ void SfxConfigGroupListBox_Impl::GroupSelected()
++pIt )
{
SfxStyleInfo_Impl* pStyle = new SfxStyleInfo_Impl(*pIt);
- SvLBoxEntry* pFuncEntry = pFunctionListBox->InsertEntry( pStyle->sLabel, NULL );
+ SvTreeListEntry* pFuncEntry = pFunctionListBox->InsertEntry( pStyle->sLabel, NULL );
SfxGroupInfo_Impl *pGrpInfo = new SfxGroupInfo_Impl( SFX_CFGGROUP_STYLES, 0, pStyle );
pFunctionListBox->aArr.push_back( pGrpInfo );
pGrpInfo->sCommand = pStyle->sCommand;
@@ -990,7 +990,7 @@ void SfxConfigGroupListBox_Impl::GroupSelected()
pFunctionListBox->SetUpdateMode(sal_True);
}
-sal_Bool SfxConfigGroupListBox_Impl::Expand( SvLBoxEntry* pParent )
+sal_Bool SfxConfigGroupListBox_Impl::Expand( SvTreeListEntry* pParent )
{
sal_Bool bRet = SvTreeListBox::Expand( pParent );
if ( bRet )
@@ -1005,7 +1005,7 @@ sal_Bool SfxConfigGroupListBox_Impl::Expand( SvLBoxEntry* pParent )
}
else
{
- SvLBoxEntry *pEntry = GetFirstEntryInView();
+ SvTreeListEntry *pEntry = GetFirstEntryInView();
sal_uLong nParentPos = 0;
while ( pEntry && pEntry != pParent )
{
@@ -1021,7 +1021,7 @@ sal_Bool SfxConfigGroupListBox_Impl::Expand( SvLBoxEntry* pParent )
return bRet;
}
-void SfxConfigGroupListBox_Impl::RequestingChildren( SvLBoxEntry *pEntry )
+void SfxConfigGroupListBox_Impl::RequestingChildren( SvTreeListEntry *pEntry )
/* Description
A basic or a library is opened.
*/
@@ -1089,7 +1089,7 @@ void SfxConfigGroupListBox_Impl::RequestingChildren( SvLBoxEntry *pEntry )
0, static_cast<void *>( theChild.get()));
Image aImage = GetImage( theChild, Reference< XComponentContext >(), sal_False );
- SvLBoxEntry* pNewEntry =
+ SvTreeListEntry* pNewEntry =
InsertEntry( theChild->getName(), pEntry );
SetExpandedEntryBmp( pNewEntry, aImage );
SetCollapsedEntryBmp(pNewEntry, aImage );
@@ -1133,7 +1133,7 @@ void SfxConfigGroupListBox_Impl::RequestingChildren( SvLBoxEntry *pEntry )
++pIt )
{
SfxStyleInfo_Impl* pFamily = new SfxStyleInfo_Impl(*pIt);
- SvLBoxEntry* pStyleEntry = InsertEntry( pFamily->sLabel, pEntry );
+ SvTreeListEntry* pStyleEntry = InsertEntry( pFamily->sLabel, pEntry );
SfxGroupInfo_Impl *pGrpInfo = new SfxGroupInfo_Impl( SFX_CFGGROUP_STYLES, 0, pFamily );
aArr.push_back( pGrpInfo );
pStyleEntry->SetUserData( pGrpInfo );
@@ -1170,21 +1170,21 @@ void SfxConfigGroupListBox_Impl::SelectMacro( const String& rBasic,
aModule = rMacro.GetToken( nCount-2, '.' );
}
- SvLBoxEntry *pEntry = FirstChild(0);
+ SvTreeListEntry *pEntry = FirstChild(0);
while ( pEntry )
{
String aEntryBas = GetEntryText( pEntry );
if ( aEntryBas == aBasicName )
{
Expand( pEntry );
- SvLBoxEntry *pLib = FirstChild( pEntry );
+ SvTreeListEntry *pLib = FirstChild( pEntry );
while ( pLib )
{
String aEntryLib = GetEntryText( pLib );
if ( aEntryLib == aLib )
{
Expand( pLib );
- SvLBoxEntry *pMod = FirstChild( pLib );
+ SvTreeListEntry *pMod = FirstChild( pLib );
while ( pMod )
{
String aEntryMod = GetEntryText( pMod );
@@ -1193,7 +1193,7 @@ void SfxConfigGroupListBox_Impl::SelectMacro( const String& rBasic,
Expand( pMod );
MakeVisible( pMod );
Select( pMod );
- SvLBoxEntry *pMethod = pFunctionListBox->First();
+ SvTreeListEntry *pMethod = pFunctionListBox->First();
while ( pMethod )
{
String aEntryMethod = GetEntryText( pMethod );
diff --git a/cui/source/customize/macropg.cxx b/cui/source/customize/macropg.cxx
index 7aa0c95e3101..2b0e57d2aa71 100644
--- a/cui/source/customize/macropg.cxx
+++ b/cui/source/customize/macropg.cxx
@@ -194,7 +194,7 @@ void _HeaderTabListBox::Enable( bool bEnable, bool bChild )
// and it is not read only
void _SvxMacroTabPage::EnableButtons()
{
- const SvLBoxEntry* pE = mpImpl->pEventLB->GetListBox().FirstSelected();
+ const SvTreeListEntry* pE = mpImpl->pEventLB->GetListBox().FirstSelected();
if ( pE )
{
SvLBoxString* pEventMacro = (SvLBoxString*)pE->GetItem( LB_MACROS_ITEMPOS );
@@ -222,7 +222,7 @@ _SvxMacroTabPage::~_SvxMacroTabPage()
{
// need to delete the user data
SvHeaderTabListBox& rListBox = mpImpl->pEventLB->GetListBox();
- SvLBoxEntry* pE = rListBox.GetEntry( 0 );
+ SvTreeListEntry* pE = rListBox.GetEntry( 0 );
while( pE )
{
::rtl::OUString* pEventName = (::rtl::OUString*)pE->GetUserData();
@@ -433,13 +433,13 @@ class IconLBoxString : public SvLBoxString
int m_nxImageOffset;
public:
- IconLBoxString( SvLBoxEntry* pEntry, sal_uInt16 nFlags, const String& sText,
+ IconLBoxString( SvTreeListEntry* pEntry, sal_uInt16 nFlags, const String& sText,
Image* pMacroImg, Image* pComponentImg );
- virtual void Paint(const Point& aPos, SvTreeListBox& aDevice, sal_uInt16 nFlags, SvLBoxEntry* pEntry );
+ virtual void Paint(const Point& aPos, SvTreeListBox& aDevice, sal_uInt16 nFlags, SvTreeListEntry* pEntry );
};
-IconLBoxString::IconLBoxString( SvLBoxEntry* pEntry, sal_uInt16 nFlags, const String& sText,
+IconLBoxString::IconLBoxString( SvTreeListEntry* pEntry, sal_uInt16 nFlags, const String& sText,
Image* pMacroImg, Image* pComponentImg )
: SvLBoxString( pEntry, nFlags, sText )
, m_pMacroImg( pMacroImg )
@@ -450,7 +450,7 @@ IconLBoxString::IconLBoxString( SvLBoxEntry* pEntry, sal_uInt16 nFlags, const St
//===============================================
void IconLBoxString::Paint( const Point& aPos, SvTreeListBox& aDevice,
- sal_uInt16 /*nFlags*/, SvLBoxEntry* /*pEntry*/ )
+ sal_uInt16 /*nFlags*/, SvTreeListEntry* /*pEntry*/ )
{
String aTxt( GetText() );
if( aTxt.Len() )
@@ -490,7 +490,7 @@ void _SvxMacroTabPage::DisplayAppEvents( bool appEvents)
SvHeaderTabListBox& rListBox = mpImpl->pEventLB->GetListBox();
mpImpl->pEventLB->SetUpdateMode( sal_False );
rListBox.Clear();
- SvLBoxEntry* pE = rListBox.GetEntry( 0 );
+ SvTreeListEntry* pE = rListBox.GetEntry( 0 );
EventsHash* eventsHash;
Reference< container::XNameReplace> nameReplace;
if(bAppEvents)
@@ -538,7 +538,7 @@ void _SvxMacroTabPage::DisplayAppEvents( bool appEvents)
String displayName( CUI_RES( displayableEvent->nEventResourceID ) );
displayName += '\t';
- SvLBoxEntry* _pE = rListBox.InsertEntry( displayName );
+ SvTreeListEntry* _pE = rListBox.InsertEntry( displayName );
::rtl::OUString* pEventName = new ::rtl::OUString( sEventName );
_pE->SetUserData( (void*)pEventName );
String sNew( eventURL );
@@ -565,7 +565,7 @@ IMPL_STATIC_LINK( _SvxMacroTabPage, SelectEvent_Impl, SvTabListBox*, EMPTYARG )
{
_SvxMacroTabPage_Impl* pImpl = pThis->mpImpl;
SvHeaderTabListBox& rListBox = pImpl->pEventLB->GetListBox();
- SvLBoxEntry* pE = rListBox.FirstSelected();
+ SvTreeListEntry* pE = rListBox.FirstSelected();
sal_uLong nPos;
if( !pE || LISTBOX_ENTRY_NOTFOUND ==
@@ -594,7 +594,7 @@ long _SvxMacroTabPage::GenericHandler_Impl( _SvxMacroTabPage* pThis, PushButton*
{
_SvxMacroTabPage_Impl* pImpl = pThis->mpImpl;
SvHeaderTabListBox& rListBox = pImpl->pEventLB->GetListBox();
- SvLBoxEntry* pE = rListBox.FirstSelected();
+ SvTreeListEntry* pE = rListBox.FirstSelected();
sal_uLong nPos;
if( !pE || LISTBOX_ENTRY_NOTFOUND ==
( nPos = rListBox.GetModel()->GetAbsPos( pE ) ) )
@@ -844,7 +844,7 @@ SvxMacroTabPage::SvxMacroTabPage( Window* pParent, const Reference< frame::XFram
InitAndSetHandler( xNameReplace, Reference< container::XNameReplace>(0), Reference< util::XModifiable >(0));
DisplayAppEvents(true);
SvHeaderTabListBox& rListBox = mpImpl->pEventLB->GetListBox();
- SvLBoxEntry* pE = rListBox.GetEntry( (sal_uLong)nSelectedIndex );
+ SvTreeListEntry* pE = rListBox.GetEntry( (sal_uLong)nSelectedIndex );
if( pE )
rListBox.Select(pE);
}
diff --git a/cui/source/customize/selector.cxx b/cui/source/customize/selector.cxx
index c7424aab776f..039c14ec967e 100644
--- a/cui/source/customize/selector.cxx
+++ b/cui/source/customize/selector.cxx
@@ -20,9 +20,9 @@
#include <vcl/help.hxx>
#include <vcl/msgbox.hxx>
#include <vcl/metric.hxx>
+#include <vcl/vclmedit.hxx>
#include "selector.hxx"
#include <dialmgr.hxx>
-#include "selector.hrc"
#include <svx/fmresids.hrc> // for RID_SVXIMG_...
#include <svx/dialmgr.hxx> // for RID_SVXIMG_...
#include <cuires.hrc>
@@ -67,29 +67,47 @@ using namespace ::com::sun::star::container;
#include <tools/diagnose_ex.h>
/*
- * The implementations of SvxConfigFunctionListBox_Impl and
- * SvxConfigGroupListBox_Impl are copied from sfx2/source/dialog/cfg.cxx
+ * The implementations of SvxConfigFunctionListBox and
+ * SvxConfigGroupListBox are copied from sfx2/source/dialog/cfg.cxx
*/
-SvxConfigFunctionListBox_Impl::SvxConfigFunctionListBox_Impl( Window* pParent, const ResId& rResId)
+SvxConfigFunctionListBox::SvxConfigFunctionListBox( Window* pParent, const ResId& rResId)
: SvTreeListBox( pParent, rResId )
, pCurEntry( 0 )
, m_pDraggingEntry( 0 )
{
SetStyle( GetStyle() | WB_CLIPCHILDREN | WB_HSCROLL | WB_SORT );
+ Init();
+}
+
+SvxConfigFunctionListBox::SvxConfigFunctionListBox(Window* pParent)
+ : SvTreeListBox(pParent, WB_CLIPCHILDREN | WB_HSCROLL | WB_SORT)
+ , pCurEntry(0)
+ , m_pDraggingEntry(0)
+{
+ Init();
+}
+
+void SvxConfigFunctionListBox::Init()
+{
GetModel()->SetSortMode( SortAscending );
// Timer for the BallonHelp
aTimer.SetTimeout( 200 );
aTimer.SetTimeoutHdl(
- LINK( this, SvxConfigFunctionListBox_Impl, TimerHdl ) );
+ LINK( this, SvxConfigFunctionListBox, TimerHdl ) );
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeSvxConfigFunctionListBox(Window *pParent, VclBuilder::stringmap &)
+{
+ return new SvxConfigFunctionListBox(pParent);
}
-SvxConfigFunctionListBox_Impl::~SvxConfigFunctionListBox_Impl()
+SvxConfigFunctionListBox::~SvxConfigFunctionListBox()
{
ClearAll();
}
-SvLBoxEntry* SvxConfigFunctionListBox_Impl::GetLastSelectedEntry()
+SvTreeListEntry* SvxConfigFunctionListBox::GetLastSelectedEntry()
{
if ( m_pDraggingEntry != NULL )
{
@@ -101,7 +119,7 @@ SvLBoxEntry* SvxConfigFunctionListBox_Impl::GetLastSelectedEntry()
}
}
-void SvxConfigFunctionListBox_Impl::MouseMove( const MouseEvent& rMEvt )
+void SvxConfigFunctionListBox::MouseMove( const MouseEvent& rMEvt )
{
Point aMousePos = rMEvt.GetPosPixel();
pCurEntry = GetCurEntry();
@@ -116,23 +134,23 @@ void SvxConfigFunctionListBox_Impl::MouseMove( const MouseEvent& rMEvt )
}
-IMPL_LINK_NOARG(SvxConfigFunctionListBox_Impl, TimerHdl)
+IMPL_LINK_NOARG(SvxConfigFunctionListBox, TimerHdl)
{
aTimer.Stop();
Point aMousePos = GetPointerPosPixel();
- SvLBoxEntry *pEntry = GetCurEntry();
+ SvTreeListEntry *pEntry = GetCurEntry();
if ( pEntry && GetEntry( aMousePos ) == pEntry && pCurEntry == pEntry )
Help::ShowBalloon( this, OutputToScreenPixel( aMousePos ), GetHelpText( pEntry ) );
return 0L;
}
-void SvxConfigFunctionListBox_Impl::ClearAll()
+void SvxConfigFunctionListBox::ClearAll()
{
aArr.clear();
Clear();
}
-String SvxConfigFunctionListBox_Impl::GetHelpText( SvLBoxEntry *pEntry )
+String SvxConfigFunctionListBox::GetHelpText( SvTreeListEntry *pEntry )
{
SvxGroupInfo_Impl *pInfo =
pEntry ? (SvxGroupInfo_Impl*) pEntry->GetUserData(): 0;
@@ -156,41 +174,41 @@ String SvxConfigFunctionListBox_Impl::GetHelpText( SvLBoxEntry *pEntry )
return String();
}
-void SvxConfigFunctionListBox_Impl::FunctionSelected()
+void SvxConfigFunctionListBox::FunctionSelected()
{
Help::ShowBalloon( this, Point(), String() );
}
// drag and drop support
-DragDropMode SvxConfigFunctionListBox_Impl::NotifyStartDrag(
- TransferDataContainer& /*aTransferDataContainer*/, SvLBoxEntry* pEntry )
+DragDropMode SvxConfigFunctionListBox::NotifyStartDrag(
+ TransferDataContainer& /*aTransferDataContainer*/, SvTreeListEntry* pEntry )
{
m_pDraggingEntry = pEntry;
return GetDragDropMode();
}
-void SvxConfigFunctionListBox_Impl::DragFinished( sal_Int8 /*nDropAction*/ )
+void SvxConfigFunctionListBox::DragFinished( sal_Int8 /*nDropAction*/ )
{
m_pDraggingEntry = NULL;
}
sal_Int8
-SvxConfigFunctionListBox_Impl::AcceptDrop( const AcceptDropEvent& /*rEvt*/ )
+SvxConfigFunctionListBox::AcceptDrop( const AcceptDropEvent& /*rEvt*/ )
{
return DND_ACTION_NONE;
}
-SvxConfigGroupListBox_Impl::SvxConfigGroupListBox_Impl(
+SvxConfigGroupListBox::SvxConfigGroupListBox(
Window* pParent, const ResId& rResId,
bool _bShowSlots, const Reference< frame::XFrame >& xFrame )
: SvTreeListBox( pParent, rResId )
- , m_bShowSlots( _bShowSlots ),
- m_hdImage(ResId(IMG_HARDDISK,*rResId.GetResMgr())),
- m_libImage(ResId(IMG_LIB,*rResId.GetResMgr())),
- m_macImage(ResId(IMG_MACRO,*rResId.GetResMgr())),
- m_docImage(ResId(IMG_DOC,*rResId.GetResMgr())),
- m_sMyMacros(String(ResId(STR_MYMACROS,*rResId.GetResMgr()))),
- m_sProdMacros(String(ResId(STR_PRODMACROS,*rResId.GetResMgr())))
+ , m_bShowSlots( _bShowSlots )
+ , m_hdImage(CUI_RES(RID_CUIIMG_HARDDISK))
+ , m_libImage(CUI_RES(RID_CUIIMG_LIB))
+ , m_macImage(CUI_RES(RID_CUIIMG_MACRO))
+ , m_docImage(CUI_RES(RID_CUIIMG_DOC))
+ , m_sMyMacros(CUI_RESSTR(RID_SVXSTR_MYMACROS))
+ , m_sProdMacros(CUI_RESSTR(RID_SVXSTR_PRODMACROS))
{
FreeResource();
@@ -209,13 +227,36 @@ SvxConfigGroupListBox_Impl::SvxConfigGroupListBox_Impl(
);
}
+SvxConfigGroupListBox::SvxConfigGroupListBox(Window* pParent)
+ : SvTreeListBox(pParent,
+ WB_CLIPCHILDREN | WB_HSCROLL | WB_HASBUTTONS | WB_HASLINES | WB_HASLINESATROOT | WB_HASBUTTONSATROOT)
+ , m_bShowSlots(false)
+ , m_hdImage(CUI_RES(RID_CUIIMG_HARDDISK))
+ , m_libImage(CUI_RES(RID_CUIIMG_LIB))
+ , m_macImage(CUI_RES(RID_CUIIMG_MACRO))
+ , m_docImage(CUI_RES(RID_CUIIMG_DOC))
+ , m_sMyMacros(CUI_RESSTR(RID_SVXSTR_MYMACROS))
+ , m_sProdMacros(CUI_RESSTR(RID_SVXSTR_PRODMACROS))
+{
+ ImageList aNavigatorImages( SVX_RES( RID_SVXIMGLIST_FMEXPL ) );
+
+ SetNodeBitmaps(
+ aNavigatorImages.GetImage( RID_SVXIMG_COLLAPSEDNODE ),
+ aNavigatorImages.GetImage( RID_SVXIMG_EXPANDEDNODE )
+ );
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeSvxConfigGroupListBox(Window *pParent, VclBuilder::stringmap &)
+{
+ return new SvxConfigGroupListBox(pParent);
+}
-SvxConfigGroupListBox_Impl::~SvxConfigGroupListBox_Impl()
+SvxConfigGroupListBox::~SvxConfigGroupListBox()
{
ClearAll();
}
-void SvxConfigGroupListBox_Impl::ClearAll()
+void SvxConfigGroupListBox::ClearAll()
{
aArr.clear();
Clear();
@@ -275,9 +316,9 @@ namespace
}
}
-void SvxConfigGroupListBox_Impl::fillScriptList( const Reference< browse::XBrowseNode >& _rxRootNode, SvLBoxEntry* _pParentEntry, bool _bCheapChildrenOnDemand )
+void SvxConfigGroupListBox::fillScriptList( const Reference< browse::XBrowseNode >& _rxRootNode, SvTreeListEntry* _pParentEntry, bool _bCheapChildrenOnDemand )
{
- OSL_PRECOND( _rxRootNode.is(), "SvxConfigGroupListBox_Impl::fillScriptList: invalid root node!" );
+ OSL_PRECOND( _rxRootNode.is(), "SvxConfigGroupListBox::fillScriptList: invalid root node!" );
if ( !_rxRootNode.is() )
return;
@@ -340,7 +381,7 @@ void SvxConfigGroupListBox_Impl::fillScriptList( const Reference< browse::XBrows
if ( children[n]->getType() == browse::BrowseNodeTypes::SCRIPT )
continue;
- SvLBoxEntry* pNewEntry = InsertEntry( sUIName, _pParentEntry );
+ SvTreeListEntry* pNewEntry = InsertEntry( sUIName, _pParentEntry );
Image aImage = GetImage( theChild, comphelper::getProcessComponentContext(), bIsRootNode );
SetExpandedEntryBmp( pNewEntry, aImage );
@@ -384,8 +425,11 @@ void SvxConfigGroupListBox_Impl::fillScriptList( const Reference< browse::XBrows
}
}
-void SvxConfigGroupListBox_Impl::Init()
+void SvxConfigGroupListBox::Init(bool bShowSlots, const Reference< frame::XFrame >& xFrame)
{
+ m_bShowSlots = bShowSlots;
+ m_xFrame.set(xFrame);
+
SetUpdateMode(sal_False);
ClearAll();
@@ -475,7 +519,7 @@ void SvxConfigGroupListBox_Impl::Init()
{
}
- SvLBoxEntry *pEntry = InsertEntry( group, NULL );
+ SvTreeListEntry *pEntry = InsertEntry( group, NULL );
SvxGroupInfo_Impl *pInfo =
new SvxGroupInfo_Impl( SVX_CFGGROUP_FUNCTION, gids[i] );
@@ -507,10 +551,9 @@ void SvxConfigGroupListBox_Impl::Init()
SvxGroupInfo_Impl *pInfo =
new SvxGroupInfo_Impl( SVX_CFGGROUP_SCRIPTCONTAINER, 0, rootNode );
- String aTitle =
- String( CUI_RES( STR_SELECTOR_MACROS ) );
+ String aTitle = CUI_RESSTR(RID_SVXSTR_PRODMACROS);
- SvLBoxEntry *pNewEntry = InsertEntry( aTitle, NULL );
+ SvTreeListEntry *pNewEntry = InsertEntry( aTitle, NULL );
pNewEntry->SetUserData( pInfo );
pNewEntry->EnableChildrenOnDemand( sal_True );
aArr.push_back( pInfo );
@@ -524,7 +567,7 @@ void SvxConfigGroupListBox_Impl::Init()
SetUpdateMode( sal_True );
}
-Image SvxConfigGroupListBox_Impl::GetImage(
+Image SvxConfigGroupListBox::GetImage(
Reference< browse::XBrowseNode > node,
Reference< XComponentContext > xCtx,
bool bIsRootNode
@@ -586,7 +629,7 @@ Image SvxConfigGroupListBox_Impl::GetImage(
}
Reference< XInterface >
-SvxConfigGroupListBox_Impl::getDocumentModel(
+SvxConfigGroupListBox::getDocumentModel(
Reference< XComponentContext >& xCtx, OUString& docName )
{
Reference< XInterface > xModel;
@@ -618,9 +661,9 @@ SvxConfigGroupListBox_Impl::getDocumentModel(
return xModel;
}
-void SvxConfigGroupListBox_Impl::GroupSelected()
+void SvxConfigGroupListBox::GroupSelected()
{
- SvLBoxEntry *pEntry = FirstSelected();
+ SvTreeListEntry *pEntry = FirstSelected();
SvxGroupInfo_Impl *pInfo = (SvxGroupInfo_Impl*) pEntry->GetUserData();
pFunctionListBox->SetUpdateMode(sal_False);
pFunctionListBox->ClearAll();
@@ -635,7 +678,7 @@ void SvxConfigGroupListBox_Impl::GroupSelected()
{
case SVX_CFGGROUP_FUNCTION :
{
- SvLBoxEntry *_pEntry = FirstSelected();
+ SvTreeListEntry *_pEntry = FirstSelected();
if ( _pEntry != NULL )
{
SvxGroupInfo_Impl *_pInfo =
@@ -697,7 +740,7 @@ void SvxConfigGroupListBox_Impl::GroupSelected()
aLabel = commands[i].Command;
}
- SvLBoxEntry* pFuncEntry = NULL;
+ SvTreeListEntry* pFuncEntry = NULL;
if ( !!aImage )
{
pFuncEntry = pFunctionListBox->InsertEntry(
@@ -764,7 +807,7 @@ void SvxConfigGroupListBox_Impl::GroupSelected()
SVX_CFGFUNCTION_SCRIPT, 123, uri, description );
Image aImage = GetImage( children[n], Reference< XComponentContext >(), sal_False );
- SvLBoxEntry* pNewEntry =
+ SvTreeListEntry* pNewEntry =
pFunctionListBox->InsertEntry( children[n]->getName(), NULL );
pFunctionListBox->SetExpandedEntryBmp( pNewEntry, aImage );
pFunctionListBox->SetCollapsedEntryBmp(pNewEntry, aImage );
@@ -796,7 +839,7 @@ void SvxConfigGroupListBox_Impl::GroupSelected()
pFunctionListBox->SetUpdateMode(sal_True);
}
-sal_Bool SvxConfigGroupListBox_Impl::Expand( SvLBoxEntry* pParent )
+sal_Bool SvxConfigGroupListBox::Expand( SvTreeListEntry* pParent )
{
sal_Bool bRet = SvTreeListBox::Expand( pParent );
if ( bRet )
@@ -811,7 +854,7 @@ sal_Bool SvxConfigGroupListBox_Impl::Expand( SvLBoxEntry* pParent )
}
else
{
- SvLBoxEntry *pEntry = GetFirstEntryInView();
+ SvTreeListEntry *pEntry = GetFirstEntryInView();
sal_uLong nParentPos = 0;
while ( pEntry && pEntry != pParent )
{
@@ -827,7 +870,7 @@ sal_Bool SvxConfigGroupListBox_Impl::Expand( SvLBoxEntry* pParent )
return bRet;
}
-void SvxConfigGroupListBox_Impl::RequestingChildren( SvLBoxEntry *pEntry )
+void SvxConfigGroupListBox::RequestingChildren( SvTreeListEntry *pEntry )
{
SvxGroupInfo_Impl *pInfo = (SvxGroupInfo_Impl*) pEntry->GetUserData();
pInfo->bWasOpened = sal_True;
@@ -857,115 +900,52 @@ void SvxConfigGroupListBox_Impl::RequestingChildren( SvLBoxEntry *pEntry )
*/
SvxScriptSelectorDialog::SvxScriptSelectorDialog(
- Window* pParent, sal_Bool bShowSlots, const Reference< frame::XFrame >& xFrame )
- :
- ModelessDialog( pParent, CUI_RES( RID_DLG_SCRIPTSELECTOR ) ),
- aDialogDescription( this, CUI_RES( TXT_SELECTOR_DIALOG_DESCRIPTION ) ),
- aGroupText( this, CUI_RES( TXT_SELECTOR_CATEGORIES ) ),
- aCategories( this, CUI_RES( BOX_SELECTOR_CATEGORIES ), bShowSlots, xFrame ),
- aFunctionText( this, CUI_RES( TXT_SELECTOR_COMMANDS ) ),
- aCommands( this, CUI_RES( BOX_SELECTOR_COMMANDS ) ),
- aOKButton( this, CUI_RES( BTN_SELECTOR_OK ) ),
- aCancelButton( this, CUI_RES( BTN_SELECTOR_CANCEL ) ),
- aHelpButton( this, CUI_RES( BTN_SELECTOR_HELP ) ),
- aDescription( this, CUI_RES( GRP_SELECTOR_DESCRIPTION ) ),
- aDescriptionText( this, CUI_RES( TXT_SELECTOR_DESCRIPTION ) ),
- m_bShowSlots( bShowSlots )
+ Window* pParent, sal_Bool bShowSlots, const Reference< frame::XFrame >& xFrame)
+ : ModelessDialog(pParent, "MacroSelectorDialog", "cui/ui/macroselectordialog.ui")
+ , m_bShowSlots(bShowSlots)
{
-
- ResMgr& rMgr = CUI_MGR();
-
- // If we are showing Slot API commands update labels in the UI, and
- // enable drag'n'drop
- if ( m_bShowSlots )
+ get<FixedText>("libraryft")->Show(!m_bShowSlots);
+ get<FixedText>("categoryft")->Show(m_bShowSlots);
+ get<FixedText>("macronameft")->Show(!m_bShowSlots);
+ get<FixedText>("commandsft")->Show(m_bShowSlots);
+ get(m_pDescriptionText, "description");
+ get(m_pCommands, "commands");
+ if (m_bShowSlots)
{
- aGroupText.SetText( String( ResId( STR_SELECTOR_CATEGORIES, rMgr ) ) );
- aOKButton.SetText( String( ResId( STR_SELECTOR_ADD, rMgr ) ) );
- aCancelButton.SetText( String( ResId( STR_SELECTOR_CLOSE, rMgr ) ) );
- aFunctionText.SetText( String( ResId( STR_SELECTOR_COMMANDS, rMgr ) ) );
- SetDialogDescription(
- String( ResId( STR_SELECTOR_ADD_COMMANDS_DESCRIPTION, rMgr ) ) );
- SetText( String( ResId( STR_SELECTOR_ADD_COMMANDS, rMgr ) ) );
-
- aCommands.SetDragDropMode( SV_DRAGDROP_APP_COPY );
+ // If we are showing Slot API commands update labels in the UI, and
+ // enable drag'n'drop
+ SetText(CUI_RESSTR(RID_SVXSTR_SELECTOR_ADD_COMMANDS));
+ m_pCommands->SetDragDropMode( SV_DRAGDROP_APP_COPY );
+
+ get(m_pCancelButton, "close");
+ get(m_pDialogDescription, "helptoolbar");
+ get(m_pOKButton, "add");
}
+ else
+ {
+ get(m_pCancelButton, "cancel");
+ get(m_pDialogDescription, "helpmacro");
+ get(m_pOKButton, "ok");
+ }
+ m_pCancelButton->Show();
+ m_pDialogDescription->Show();
+ m_pOKButton->Show();
- ResizeControls();
-
- aCategories.SetFunctionListBox( &aCommands );
- aCategories.Init();
+ get(m_pCategories, "categories");
+ m_pCategories->SetFunctionListBox(m_pCommands);
+ m_pCategories->Init(bShowSlots, xFrame);
- aCategories.SetSelectHdl(
+ m_pCategories->SetSelectHdl(
LINK( this, SvxScriptSelectorDialog, SelectHdl ) );
- aCommands.SetSelectHdl( LINK( this, SvxScriptSelectorDialog, SelectHdl ) );
- aCommands.SetDoubleClickHdl( LINK( this, SvxScriptSelectorDialog, FunctionDoubleClickHdl ) );
+ m_pCommands->SetSelectHdl( LINK( this, SvxScriptSelectorDialog, SelectHdl ) );
+ m_pCommands->SetDoubleClickHdl( LINK( this, SvxScriptSelectorDialog, FunctionDoubleClickHdl ) );
- aOKButton.SetClickHdl( LINK( this, SvxScriptSelectorDialog, ClickHdl ) );
- aCancelButton.SetClickHdl( LINK( this, SvxScriptSelectorDialog, ClickHdl ) );
+ m_pOKButton->SetClickHdl( LINK( this, SvxScriptSelectorDialog, ClickHdl ) );
+ m_pCancelButton->SetClickHdl( LINK( this, SvxScriptSelectorDialog, ClickHdl ) );
- UpdateUI();
- FreeResource();
-}
+ m_sDefaultDesc = m_pDescriptionText->GetText();
-void SvxScriptSelectorDialog::ResizeControls()
-{
- Point p, newp;
- Size s, news;
- long gap;
-
- sal_uInt16 style = TEXT_DRAW_MULTILINE | TEXT_DRAW_TOP |
- TEXT_DRAW_LEFT | TEXT_DRAW_WORDBREAK;
-
- // get dimensions of dialog instructions control
- p = aDialogDescription.GetPosPixel();
- s = aDialogDescription.GetSizePixel();
-
- // get dimensions occupied by text in the control
- Rectangle rect =
- GetTextRect( Rectangle( p, s ), aDialogDescription.GetText(), style );
- news = rect.GetSize();
-
- // the gap is the difference between the control height and its text height
- gap = s.Height() - news.Height();
-
- // resize the dialog instructions control
- news = Size( s.Width(), s.Height() - gap );
- aDialogDescription.SetSizePixel( news );
-
- // resize other controls to fill the gap
- p = aGroupText.GetPosPixel();
- newp = Point( p.X(), p.Y() - gap );
- aGroupText.SetPosPixel( newp );
-
- p = aCategories.GetPosPixel();
- newp = Point( p.X(), p.Y() - gap );
- aCategories.SetPosPixel( newp );
- s = aCategories.GetSizePixel();
- news = Size( s.Width(), s.Height() + gap );
- aCategories.SetSizePixel( news );
-
- p = aFunctionText.GetPosPixel();
- newp = Point( p.X(), p.Y() - gap );
- aFunctionText.SetPosPixel( newp );
-
- p = aCommands.GetPosPixel();
- newp = Point( p.X(), p.Y() - gap );
- aCommands.SetPosPixel( newp );
- s = aCommands.GetSizePixel();
- news = Size( s.Width(), s.Height() + gap );
- aCommands.SetSizePixel( news );
-
- p = aOKButton.GetPosPixel();
- newp = Point( p.X(), p.Y() - gap );
- aOKButton.SetPosPixel( newp );
-
- p = aCancelButton.GetPosPixel();
- newp = Point( p.X(), p.Y() - gap );
- aCancelButton.SetPosPixel( newp );
-
- p = aHelpButton.GetPosPixel();
- newp = Point( p.X(), p.Y() - gap );
- aHelpButton.SetPosPixel( newp );
+ UpdateUI();
}
SvxScriptSelectorDialog::~SvxScriptSelectorDialog()
@@ -974,13 +954,13 @@ SvxScriptSelectorDialog::~SvxScriptSelectorDialog()
IMPL_LINK( SvxScriptSelectorDialog, SelectHdl, Control*, pCtrl )
{
- if ( pCtrl == &aCategories )
+ if (pCtrl == m_pCategories)
{
- aCategories.GroupSelected();
+ m_pCategories->GroupSelected();
}
- else if ( pCtrl == &aCommands )
+ else if (pCtrl == m_pCommands)
{
- aCommands.FunctionSelected();
+ m_pCommands->FunctionSelected();
}
UpdateUI();
return 0;
@@ -989,8 +969,8 @@ IMPL_LINK( SvxScriptSelectorDialog, SelectHdl, Control*, pCtrl )
IMPL_LINK( SvxScriptSelectorDialog, FunctionDoubleClickHdl, Control*, pCtrl )
{
(void)pCtrl;
- if ( aOKButton.IsEnabled() )
- return ClickHdl( &aOKButton );
+ if (m_pOKButton->IsEnabled())
+ return ClickHdl(m_pOKButton);
return 0;
}
@@ -1002,22 +982,22 @@ SvxScriptSelectorDialog::UpdateUI()
OUString url = GetScriptURL();
if ( url != NULL && !url.isEmpty() )
{
- String rMessage =
- aCommands.GetHelpText( aCommands.FirstSelected() );
- aDescriptionText.SetText( rMessage );
+ OUString sMessage =
+ m_pCommands->GetHelpText(m_pCommands->FirstSelected());
+ m_pDescriptionText->SetText(sMessage.isEmpty() ? m_sDefaultDesc : sMessage);
- aOKButton.Enable( sal_True );
+ m_pOKButton->Enable( sal_True );
}
else
{
- aDescriptionText.SetText( String() );
- aOKButton.Enable( sal_False );
+ m_pDescriptionText->SetText(m_sDefaultDesc);
+ m_pOKButton->Enable( sal_False );
}
}
IMPL_LINK( SvxScriptSelectorDialog, ClickHdl, Button *, pButton )
{
- if ( pButton == &aCancelButton )
+ if (pButton == m_pCancelButton)
{
// If we are displaying Slot API commands then the dialog is being
// run from Tools/Configure and we should not close it, just hide it
@@ -1030,7 +1010,7 @@ IMPL_LINK( SvxScriptSelectorDialog, ClickHdl, Button *, pButton )
Hide();
}
}
- else if ( pButton == &aOKButton )
+ else if (pButton == m_pOKButton)
{
GetAddHdl().Call( this );
@@ -1043,12 +1023,12 @@ IMPL_LINK( SvxScriptSelectorDialog, ClickHdl, Button *, pButton )
else
{
// Select the next entry in the list if possible
- SvLBoxEntry* current = aCommands.FirstSelected();
- SvLBoxEntry* next = aCommands.NextSibling( current );
+ SvTreeListEntry* current = m_pCommands->FirstSelected();
+ SvTreeListEntry* next = m_pCommands->NextSibling( current );
if ( next != NULL )
{
- aCommands.Select( next );
+ m_pCommands->Select( next );
}
}
}
@@ -1059,13 +1039,13 @@ IMPL_LINK( SvxScriptSelectorDialog, ClickHdl, Button *, pButton )
void
SvxScriptSelectorDialog::SetRunLabel()
{
- aOKButton.SetText( String( CUI_RES( STR_SELECTOR_RUN ) ) );
+ m_pOKButton->SetText(CUI_RESSTR(RID_SVXSTR_SELECTOR_RUN));
}
void
SvxScriptSelectorDialog::SetDialogDescription( const String& rDescription )
{
- aDialogDescription.SetText( rDescription );
+ m_pDialogDescription->SetText( rDescription );
}
String
@@ -1073,7 +1053,7 @@ SvxScriptSelectorDialog::GetScriptURL() const
{
OUString result;
- SvLBoxEntry *pEntry = const_cast< SvxScriptSelectorDialog* >( this )->aCommands.GetLastSelectedEntry();
+ SvTreeListEntry *pEntry = const_cast< SvxScriptSelectorDialog* >( this )->m_pCommands->GetLastSelectedEntry();
if ( pEntry )
{
SvxGroupInfo_Impl *pData = (SvxGroupInfo_Impl*) pEntry->GetUserData();
@@ -1091,13 +1071,13 @@ SvxScriptSelectorDialog::GetScriptURL() const
String
SvxScriptSelectorDialog::GetSelectedDisplayName()
{
- return aCommands.GetEntryText( aCommands.GetLastSelectedEntry() );
+ return m_pCommands->GetEntryText( m_pCommands->GetLastSelectedEntry() );
}
String
SvxScriptSelectorDialog::GetSelectedHelpText()
{
- return aCommands.GetHelpText( aCommands.GetLastSelectedEntry() );
+ return m_pCommands->GetHelpText( m_pCommands->GetLastSelectedEntry() );
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/customize/selector.hrc b/cui/source/customize/selector.hrc
deleted file mode 100644
index 0e35802e1b7a..000000000000
--- a/cui/source/customize/selector.hrc
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#define TXT_SELECTOR_DIALOG_DESCRIPTION 1
-#define TXT_SELECTOR_CATEGORIES 2
-#define BOX_SELECTOR_CATEGORIES 3
-#define TXT_SELECTOR_COMMANDS 4
-#define BOX_SELECTOR_COMMANDS 5
-#define BTN_SELECTOR_OK 6
-#define BTN_SELECTOR_CANCEL 7
-#define BTN_SELECTOR_HELP 8
-#define GRP_SELECTOR_DESCRIPTION 9
-#define TXT_SELECTOR_DESCRIPTION 10
-
-#define IMG_HARDDISK 1
-#define IMG_LIB 3
-#define IMG_MACRO 5
-#define IMG_DOC 7
-
-#define STR_SELECTOR_ADD 310
-#define STR_SELECTOR_CLOSE 311
-#define STR_SELECTOR_COMMANDS 312
-#define STR_SELECTOR_ADD_COMMANDS 313
-#define STR_SELECTOR_ADD_COMMANDS_DESCRIPTION 314
-#define STR_SELECTOR_MACROS 315
-#define STR_SELECTOR_CATEGORIES 316
-#define STR_BASICMACROS 317
-#define STR_SELECTOR_RUN 318
-#define STR_MYMACROS 319
-#define STR_PRODMACROS 320
diff --git a/cui/source/customize/selector.src b/cui/source/customize/selector.src
deleted file mode 100644
index 533e91edf54c..000000000000
--- a/cui/source/customize/selector.src
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#include "helpid.hrc"
-#include <cuires.hrc>
-#include "selector.hrc"
-
-#define MASKCOLOR MaskColor = \
- Color { Red = 0xFFFF ; Green = 0x0000 ; Blue = 0xFFFF ; };
-
-#define FIXEDTEXT_DIALOG_DESCRIPTION \
-Text [ en-US ] = "Select the library that contains the macro you want. Then select the macro under 'Macro name'." ;\
-
-String STR_SELECTOR_ADD_COMMANDS
-{
- TEXT [ en-US ] = "Add Commands" ;
-};
-
-String STR_SELECTOR_MACROS
-{
- Text [ en-US ] = "%PRODUCTNAME Macros" ;
-};
-
-String STR_SELECTOR_CATEGORIES
-{
- Text [ en-US ] = "~Category" ;
-};
-
-String STR_SELECTOR_COMMANDS
-{
- Text [ en-US ] = "Commands" ;
-};
-
-String STR_SELECTOR_ADD
-{
- TEXT [ en-US ] = "Add" ;
-};
-
-String STR_SELECTOR_RUN
-{
- TEXT [ en-US ] = "Run" ;
-
-};
-
-String STR_SELECTOR_CLOSE
-{
- TEXT [ en-US ] = "Close" ;
-
-};
-
-String STR_SELECTOR_ADD_COMMANDS_DESCRIPTION
-{
- TEXT [ en-US ] = "To add a command to a toolbar, select the category and then the command. Then drag the command to the Commands list of the Toolbars tab page in the Customize dialog.";
-};
-
-String STR_BASICMACROS
-{
- Text [ en-US ] = "BASIC Macros" ;
-};
-
-
-ModelessDialog RID_DLG_SCRIPTSELECTOR
-{
- OutputSize = TRUE ;
- Size = MAP_APPFONT ( 256 , 233 ) ;
- Text [ en-US ] = "Macro Selector" ;
- HelpId = HID_SELECTOR_DIALOG;
- SvLook = TRUE ;
- Moveable = TRUE ;
- Hide = TRUE;
- FixedText TXT_SELECTOR_DIALOG_DESCRIPTION
- {
- Pos = MAP_APPFONT ( 6 , 8 ) ;
- Size = MAP_APPFONT ( 190 , 48 ) ;
- Group = TRUE ;
- Left = TRUE ;
- WordBreak = TRUE ;
- FIXEDTEXT_DIALOG_DESCRIPTION
- };
- FixedText TXT_SELECTOR_CATEGORIES
- {
- Pos = MAP_APPFONT ( 6 , 62 ) ;
- Size = MAP_APPFONT ( 83 , 8 ) ;
- Group = TRUE ;
- Left = TRUE ;
- Text [ en-US ] = "Library" ;
- };
- Control BOX_SELECTOR_CATEGORIES
- {
- Border = TRUE ;
- Pos = MAP_APPFONT ( 6 , 73 ) ;
- Size = MAP_APPFONT ( 83 , 89 ) ;
- TabStop = TRUE;
- HelpId = HID_SELECTOR_CATEGORIES;
- String STR_MYMACROS
- {
- Text [ en-US ] = "My Macros";
- };
- String STR_PRODMACROS
- {
- Text [ en-US ] = "%PRODUCTNAME Macros";
- };
- Image IMG_HARDDISK
- {
- ImageBitmap = Bitmap { File = "harddisk_16.bmp" ; };
- MASKCOLOR
- };
- Image IMG_LIB
- {
- ImageBitmap = Bitmap { File = "im30820.png"; };
- MASKCOLOR
- };
- Image IMG_MACRO
- {
- ImageBitmap = Bitmap { File = "im30821.png"; };
- MASKCOLOR
- };
- Image IMG_DOC
- {
- ImageBitmap = Bitmap { File = "im30826.png"; };
- MASKCOLOR
- };
- };
- FixedText TXT_SELECTOR_COMMANDS
- {
- Pos = MAP_APPFONT ( 101 , 62 ) ;
- Size = MAP_APPFONT ( 93 , 8 ) ;
- Left = TRUE ;
- Text [ en-US ] = "Macro name" ;
- };
- Control BOX_SELECTOR_COMMANDS
- {
- Border = TRUE ;
- Pos = MAP_APPFONT ( 101 , 73 ) ;
- Size = MAP_APPFONT ( 93 , 89 ) ;
- TabStop = TRUE;
- HelpId = HID_SELECTOR_COMMANDS;
- };
- OKButton BTN_SELECTOR_OK
- {
- Pos = MAP_APPFONT ( 200 , 73 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- DefButton = TRUE;
- };
- CancelButton BTN_SELECTOR_CANCEL
- {
- Pos = MAP_APPFONT ( 200 , 90 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- };
- HelpButton BTN_SELECTOR_HELP
- {
- Pos = MAP_APPFONT ( 200 , 107 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- };
- FixedLine GRP_SELECTOR_DESCRIPTION
- {
- Pos = MAP_APPFONT ( 6 , 168 ) ;
- Size = MAP_APPFONT ( 224 , 8 ) ;
- Group = TRUE ;
- Text [ en-US ] = "Description" ;
- };
- FixedText TXT_SELECTOR_DESCRIPTION
- {
- Pos = MAP_APPFONT ( 12 , 179 ) ;
- Size = MAP_APPFONT ( 224 , 48 ) ;
- WordBreak = TRUE ;
- };
-};
- // ********************************************************************** EOF
diff --git a/cui/source/dialogs/about.cxx b/cui/source/dialogs/about.cxx
index 23b9bd5b6542..f89081a053d5 100644
--- a/cui/source/dialogs/about.cxx
+++ b/cui/source/dialogs/about.cxx
@@ -44,7 +44,9 @@
#include <sfx2/app.hxx>
#include <rtl/ustrbuf.hxx>
#include <vcl/bitmap.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
+#ifdef FIXME_REMOVE_WHEN_RE_BASE_COMPLETE
+# include <vcl/rendergraphicrasterizer.hxx>
+#endif
#include <officecfg/Office/Common.hxx>
using namespace ::com::sun::star::uno;
@@ -166,6 +168,7 @@ void AboutDialog::StyleControls()
// Version Text
aLargeFont.SetSize( Size( 0, aLabelFont.GetSize().Height() * 1.2 ) );
aVersionText.SetControlFont( aLargeFont );
+ aVersionText.EnableCursor( sal_False );
// Copyright Text
aCopyrightText.SetTextSelectable( sal_False );
@@ -207,6 +210,7 @@ void AboutDialog::LayoutControls()
Size aLogoSize( aIdealTextWidth, aIdealTextWidth / 20 );
Point aLogoPos( 0, 0 );
+#ifdef FIXME_REMOVE_WHEN_RE_BASE_COMPLETE
vcl::RenderGraphicRasterizer aRasterizerLogo = Application::LoadBrandSVG("flat_logo");
if ( !aRasterizerLogo.GetRenderGraphic().IsEmpty() &&
aRasterizerLogo.GetDefaultSizePixel().Width() > 0 && aRasterizerLogo.GetDefaultSizePixel().Height() > 0 )
@@ -221,6 +225,7 @@ void AboutDialog::LayoutControls()
aLogoImage.Show();
}
else
+#endif
{
aLogoPos.X() = aDialogBorder;
aLogoPos.Y() = aDialogBorder;
@@ -273,6 +278,7 @@ void AboutDialog::LayoutControls()
// Layout background image
+#ifdef FIXME_REMOVE_WHEN_RE_BASE_COMPLETE
if ( !(Application::GetSettings().GetStyleSettings().GetHighContrastMode()) ) {
vcl::RenderGraphicRasterizer aRasterizerBackground = Application::LoadBrandSVG("shell/about");
@@ -292,6 +298,7 @@ void AboutDialog::LayoutControls()
aBackgroundBitmap = aRasterizerBackground.Rasterize( aBackgroundSize );
}
}
+#endif
SetOutputSizePixel( aDialogSize );
diff --git a/cui/source/dialogs/colorpicker.cxx b/cui/source/dialogs/colorpicker.cxx
index 5d19c61b83ea..e66403c664a5 100644
--- a/cui/source/dialogs/colorpicker.cxx
+++ b/cui/source/dialogs/colorpicker.cxx
@@ -1383,8 +1383,8 @@ IMPL_LINK( ColorPickerDialog, ColorModifyHdl, void *, p )
if( aColor != GetColor() )
{
mdRed = ((double)aColor.GetRed()) / 255.0;
- mdGreen = ((double)aColor.GetRed()) / 255.0;
- mdBlue = ((double)aColor.GetRed()) / 255.0;
+ mdGreen = ((double)aColor.GetGreen()) / 255.0;
+ mdBlue = ((double)aColor.GetBlue()) / 255.0;
RGBtoHSV( mdRed, mdGreen, mdBlue, mdHue, mdSat, mdBri );
RGBtoCMYK( mdRed, mdGreen, mdBlue, mdCyan, mdMagenta, mdYellow, mdKey );
diff --git a/cui/source/dialogs/cuifmsearch.cxx b/cui/source/dialogs/cuifmsearch.cxx
index 0e6ace4302de..2f2f32374845 100644
--- a/cui/source/dialogs/cuifmsearch.cxx
+++ b/cui/source/dialogs/cuifmsearch.cxx
@@ -83,7 +83,7 @@ void FmSearchDialog::initCommon( const Reference< XResultSet >& _rxCursor )
}
//------------------------------------------------------------------------
-FmSearchDialog::FmSearchDialog(Window* pParent, const UniString& sInitialText, const ::std::vector< String >& _rContexts, sal_Int16 nInitialContext,
+FmSearchDialog::FmSearchDialog(Window* pParent, const OUString& sInitialText, const ::std::vector< String >& _rContexts, sal_Int16 nInitialContext,
const Link& lnkContextSupplier)
:ModalDialog(pParent, CUI_RES(RID_SVXDLG_SEARCHFORM))
,m_flSearchFor (this, CUI_RES(FL_SEARCHFOR))
@@ -226,7 +226,7 @@ FmSearchDialog::~FmSearchDialog()
}
//------------------------------------------------------------------------
-void FmSearchDialog::Init(const UniString& strVisibleFields, const UniString& sInitialText)
+void FmSearchDialog::Init(const OUString& strVisibleFields, const OUString& sInitialText)
{
//the initialization of all the Controls
m_rbSearchForText.SetClickHdl(LINK(this, FmSearchDialog, OnClickedFieldRadios));
@@ -279,10 +279,10 @@ void FmSearchDialog::Init(const UniString& strVisibleFields, const UniString& sI
m_cmbSearchText.SetText(sInitialText);
// if the Edit-line has changed the text (e.g. because it contains
// control characters, as can be the case with memo fields), I use
- // an empty UniString.
- UniString sRealSetText = m_cmbSearchText.GetText();
- if (!sRealSetText.Equals(sInitialText))
- m_cmbSearchText.SetText(UniString());
+ // an empty OUString.
+ OUString sRealSetText = m_cmbSearchText.GetText();
+ if (!sRealSetText.equals(sInitialText))
+ m_cmbSearchText.SetText(OUString());
LINK(this, FmSearchDialog, OnSearchTextModified).Call(&m_cmbSearchText);
// initial
@@ -336,17 +336,17 @@ IMPL_LINK_NOARG(FmSearchDialog, OnClickedSearchAgain)
{
if (m_pbClose.IsEnabled())
{ // the button has the function 'search'
- UniString strThisRoundText = m_cmbSearchText.GetText();
+ OUString strThisRoundText = m_cmbSearchText.GetText();
// to history
m_cmbSearchText.RemoveEntry(strThisRoundText);
m_cmbSearchText.InsertEntry(strThisRoundText, 0);
- // the remove/insert makes sure that a) the UniString does not appear twice and
+ // the remove/insert makes sure that a) the OUString does not appear twice and
// that b) the last searched strings are at the beginning and limit the list length
while (m_cmbSearchText.GetEntryCount() > MAX_HISTORY_ENTRIES)
m_cmbSearchText.RemoveEntry(m_cmbSearchText.GetEntryCount()-1);
// take out the 'overflow' hint
- m_ftHint.SetText(UniString());
+ m_ftHint.SetText(OUString());
m_ftHint.Invalidate();
if (m_cbStartOver.IsChecked())
@@ -457,7 +457,7 @@ IMPL_LINK(FmSearchDialog, OnFieldSelected, ListBox*, pBox)
sal_Int32 nCurrentContext = m_lbForm.GetSelectEntryPos();
if (nCurrentContext != LISTBOX_ENTRY_NOTFOUND)
- m_arrContextFields[nCurrentContext] = UniString(m_lbField.GetSelectEntry());
+ m_arrContextFields[nCurrentContext] = OUString(m_lbField.GetSelectEntry());
return 0;
}
diff --git a/cui/source/dialogs/cuigaldlg.cxx b/cui/source/dialogs/cuigaldlg.cxx
index fb1bbdf7897b..4e50bb363932 100644
--- a/cui/source/dialogs/cuigaldlg.cxx
+++ b/cui/source/dialogs/cuigaldlg.cxx
@@ -43,6 +43,7 @@
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/ucb/XContentAccess.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.hpp>
#include <sfx2/sfxuno.hxx>
#include "dialmgr.hxx"
@@ -1035,34 +1036,27 @@ IMPL_LINK_NOARG(TPGalleryThemeProperties, ClickSearchHdl)
try
{
// setup folder picker
- ::com::sun::star::uno::Reference< XMultiServiceFactory > xMgr( ::comphelper::getProcessServiceFactory() );
- if( xMgr.is() )
- {
- xFolderPicker = ::com::sun::star::uno::Reference< XFolderPicker >(
- xMgr->createInstance( OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.ui.dialogs.FolderPicker" ))), UNO_QUERY );
-
- if ( xFolderPicker.is() )
- {
- String aDlgPathName( SvtPathOptions().GetGraphicPath() );
- xFolderPicker->setDisplayDirectory(aDlgPathName);
+ com::sun::star::uno::Reference< XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ xFolderPicker = FolderPicker::create(xContext);
- aPreviewTimer.Stop();
+ String aDlgPathName( SvtPathOptions().GetGraphicPath() );
+ xFolderPicker->setDisplayDirectory(aDlgPathName);
- ::com::sun::star::uno::Reference< XAsynchronousExecutableDialog > xAsyncDlg( xFolderPicker, UNO_QUERY );
- if ( xAsyncDlg.is() )
- xAsyncDlg->startExecuteModal( xDialogListener.get() );
- else
- {
- if( xFolderPicker->execute() == RET_OK )
- {
- aURL = INetURLObject( xFolderPicker->getDirectory() );
- bSearchRecursive = sal_True; // UI choice no longer possible, windows file picker allows no user controls
- SearchFiles();
- }
+ aPreviewTimer.Stop();
- nCurFilterPos = aCbbFileType.GetEntryPos( aCbbFileType.GetText() );
- }
+ com::sun::star::uno::Reference< XAsynchronousExecutableDialog > xAsyncDlg( xFolderPicker, UNO_QUERY );
+ if ( xAsyncDlg.is() )
+ xAsyncDlg->startExecuteModal( xDialogListener.get() );
+ else
+ {
+ if( xFolderPicker->execute() == RET_OK )
+ {
+ aURL = INetURLObject( xFolderPicker->getDirectory() );
+ bSearchRecursive = sal_True; // UI choice no longer possible, windows file picker allows no user controls
+ SearchFiles();
}
+
+ nCurFilterPos = aCbbFileType.GetEntryPos( aCbbFileType.GetText() );
}
}
catch (const IllegalArgumentException&)
diff --git a/cui/source/dialogs/cuires.src b/cui/source/dialogs/cuires.src
index 6b7e8fc1aab5..8fa9695cd509 100644
--- a/cui/source/dialogs/cuires.src
+++ b/cui/source/dialogs/cuires.src
@@ -14,4 +14,66 @@ String RID_SVXSTR_ERR_TEXTNOTFOUND
Text [ en-US ] = "No alternatives found." ;
};
+String RID_SVXSTR_SELECT_FILE_IFRAME
+{
+ Text [ en-US ] = "Select File for Floating Frame" ;
+};
+
+String RID_SVXSTR_MYMACROS
+{
+ Text [ en-US ] = "My Macros";
+};
+
+String RID_SVXSTR_PRODMACROS
+{
+ Text [ en-US ] = "%PRODUCTNAME Macros";
+};
+
+String RID_SVXSTR_SELECTOR_ADD_COMMANDS
+{
+ TEXT [ en-US ] = "Add Commands" ;
+};
+
+String RID_SVXSTR_SELECTOR_RUN
+{
+ TEXT [ en-US ] = "Run" ;
+};
+
+String RID_SVXSTR_ROW
+{
+ Text [ en-US ] = "Insert Rows" ;
+};
+
+String RID_SVXSTR_COL
+{
+ Text [ en-US ] = "Insert Columns" ;
+};
+
+#define MASKCOLOR MaskColor = \
+ Color { Red = 0xFFFF ; Green = 0x0000 ; Blue = 0xFFFF ; };
+
+Image RID_CUIIMG_HARDDISK
+{
+ ImageBitmap = Bitmap { File = "harddisk_16.bmp" ; };
+ MASKCOLOR
+};
+
+Image RID_CUIIMG_LIB
+{
+ ImageBitmap = Bitmap { File = "im30820.png"; };
+ MASKCOLOR
+};
+
+Image RID_CUIIMG_MACRO
+{
+ ImageBitmap = Bitmap { File = "im30821.png"; };
+ MASKCOLOR
+};
+
+Image RID_CUIIMG_DOC
+{
+ ImageBitmap = Bitmap { File = "im30826.png"; };
+ MASKCOLOR
+};
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/dialogs/hangulhanjadlg.cxx b/cui/source/dialogs/hangulhanjadlg.cxx
index b79feb12d2d2..50d0644a0b8e 100644
--- a/cui/source/dialogs/hangulhanjadlg.cxx
+++ b/cui/source/dialogs/hangulhanjadlg.cxx
@@ -985,7 +985,7 @@ namespace svx
while( nCnt )
{
Reference< XConversionDictionary > xDict = m_aDictList[ n ];
- SvLBoxEntry* pEntry = m_aDictsLB.SvTreeListBox::GetEntry( n );
+ SvTreeListEntry* pEntry = m_aDictsLB.SvTreeListBox::GetEntry( n );
DBG_ASSERT( xDict.is(), "-HangulHanjaOptionsDialog::OkHdl(): someone is evaporated..." );
DBG_ASSERT( pEntry, "-HangulHanjaOptionsDialog::OkHdl(): no one there in list?" );
@@ -1071,7 +1071,7 @@ namespace svx
IMPL_LINK_NOARG(HangulHanjaOptionsDialog, EditDictHdl)
{
- SvLBoxEntry* pEntry = m_aDictsLB.FirstSelected();
+ SvTreeListEntry* pEntry = m_aDictsLB.FirstSelected();
DBG_ASSERT( pEntry, "+HangulHanjaEditDictDialog::EditDictHdl(): call of edit should not be possible with no selection!" );
if( pEntry )
{
@@ -1165,7 +1165,7 @@ namespace svx
HangulHanjaOptionsDialog::~HangulHanjaOptionsDialog()
{
- SvLBoxEntry* pEntry = m_aDictsLB.First();
+ SvTreeListEntry* pEntry = m_aDictsLB.First();
String* pDel;
while( pEntry )
{
@@ -1181,7 +1181,7 @@ namespace svx
void HangulHanjaOptionsDialog::AddDict( const String& _rName, bool _bChecked )
{
- SvLBoxEntry* pEntry = m_aDictsLB.SvTreeListBox::InsertEntry( _rName );
+ SvTreeListEntry* pEntry = m_aDictsLB.SvTreeListBox::InsertEntry( _rName );
m_aDictsLB.SetCheckButtonState( pEntry, _bChecked? SV_BUTTON_CHECKED : SV_BUTTON_UNCHECKED );
pEntry->SetUserData( new String( _rName ) );
}
diff --git a/cui/source/dialogs/hldocntp.cxx b/cui/source/dialogs/hldocntp.cxx
index 1f4157dc4271..6e1a971750a1 100644
--- a/cui/source/dialogs/hldocntp.cxx
+++ b/cui/source/dialogs/hldocntp.cxx
@@ -36,7 +36,7 @@
#include "hyperdlg.hrc"
#include <comphelper/processfactory.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
using namespace ::com::sun::star::lang;
@@ -399,9 +399,8 @@ void SvxHyperlinkNewDocTp::DoApply ()
IMPL_LINK_NOARG(SvxHyperlinkNewDocTp, ClickNewHdl_Impl)
{
- rtl::OUString aService( RTL_CONSTASCII_USTRINGPARAM( FOLDER_PICKER_SERVICE_NAME ) );
- uno::Reference < XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
- uno::Reference < XFolderPicker > xFolderPicker( xFactory->createInstance( aService ), UNO_QUERY );
+ uno::Reference < XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ uno::Reference < XFolderPicker2 > xFolderPicker = FolderPicker::create(xContext);
String aStrURL;
String aTempStrURL( maCbbPath.GetText() );
diff --git a/cui/source/dialogs/hlmarkwn.cxx b/cui/source/dialogs/hlmarkwn.cxx
index 69d9ff63fac8..848f8b1d657a 100644
--- a/cui/source/dialogs/hlmarkwn.cxx
+++ b/cui/source/dialogs/hlmarkwn.cxx
@@ -311,7 +311,7 @@ sal_Bool SvxHlinkDlgMarkWnd::RefreshFromDoc( OUString aURL )
|*
|************************************************************************/
-int SvxHlinkDlgMarkWnd::FillTree( uno::Reference< container::XNameAccess > xLinks, SvLBoxEntry* pParentEntry )
+int SvxHlinkDlgMarkWnd::FillTree( uno::Reference< container::XNameAccess > xLinks, SvTreeListEntry* pParentEntry )
{
int nEntries=0;
const uno::Sequence< OUString > aNames( xLinks->getElementNames() );
@@ -360,7 +360,7 @@ int SvxHlinkDlgMarkWnd::FillTree( uno::Reference< container::XNameAccess > xLink
// create userdata
TargetData *pData = new TargetData ( aLink, bIsTarget );
- SvLBoxEntry* pEntry;
+ SvTreeListEntry* pEntry;
try
{
@@ -418,7 +418,7 @@ int SvxHlinkDlgMarkWnd::FillTree( uno::Reference< container::XNameAccess > xLink
void SvxHlinkDlgMarkWnd::ClearTree()
{
- SvLBoxEntry* pEntry = maLbTree.First();
+ SvTreeListEntry* pEntry = maLbTree.First();
while ( pEntry )
{
@@ -437,10 +437,10 @@ void SvxHlinkDlgMarkWnd::ClearTree()
|*
|************************************************************************/
-SvLBoxEntry* SvxHlinkDlgMarkWnd::FindEntry ( String aStrName )
+SvTreeListEntry* SvxHlinkDlgMarkWnd::FindEntry ( String aStrName )
{
sal_Bool bFound=sal_False;
- SvLBoxEntry* pEntry = maLbTree.First();
+ SvTreeListEntry* pEntry = maLbTree.First();
while ( pEntry && !bFound )
{
@@ -462,7 +462,7 @@ SvLBoxEntry* SvxHlinkDlgMarkWnd::FindEntry ( String aStrName )
void SvxHlinkDlgMarkWnd::SelectEntry ( String aStrMark )
{
- SvLBoxEntry* pEntry = FindEntry ( aStrMark );
+ SvTreeListEntry* pEntry = FindEntry ( aStrMark );
if ( pEntry )
{
maLbTree.Select ( pEntry );
@@ -478,7 +478,7 @@ void SvxHlinkDlgMarkWnd::SelectEntry ( String aStrMark )
IMPL_LINK_NOARG(SvxHlinkDlgMarkWnd, ClickApplyHdl_Impl)
{
- SvLBoxEntry* pEntry = maLbTree.GetCurEntry();
+ SvTreeListEntry* pEntry = maLbTree.GetCurEntry();
if ( pEntry )
{
diff --git a/cui/source/dialogs/insdlg.cxx b/cui/source/dialogs/insdlg.cxx
index df66ebc0348a..de7e610653b4 100644
--- a/cui/source/dialogs/insdlg.cxx
+++ b/cui/source/dialogs/insdlg.cxx
@@ -46,7 +46,6 @@
#include <vcl/lstbox.hxx>
#include <vcl/msgbox.hxx>
#include <vcl/svapp.hxx>
-#include <vcl/vclmedit.hxx>
#include <sot/clsids.hxx>
#include <sfx2/frmdescr.hxx>
#include <sfx2/viewsh.hxx>
@@ -54,7 +53,7 @@
#include <svl/ownlist.hxx>
#include <comphelper/seqstream.hxx>
-#include "svuidlg.hrc"
+#include "cuires.hrc"
#include <osl/file.hxx>
@@ -92,13 +91,6 @@ uno::Reference< io::XInputStream > InsertObjectDialog_Impl::GetIconIfIconified(
return uno::Reference< io::XInputStream >();
}
-InsertObjectDialog_Impl::InsertObjectDialog_Impl( Window * pParent, const ResId & rResId, const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage )
- : ModalDialog( pParent, rResId )
- , m_xStorage( xStorage )
- , aCnt( m_xStorage )
-{
-}
-
InsertObjectDialog_Impl::InsertObjectDialog_Impl(Window * pParent, const OString& rID,
const OUString& rUIXMLDescription,
const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage)
@@ -510,97 +502,49 @@ short SvInsertPlugInDialog::Execute()
SfxInsertFloatingFrameDialog::SfxInsertFloatingFrameDialog( Window *pParent,
const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage )
- : InsertObjectDialog_Impl( pParent, CUI_RES( MD_INSERT_OBJECT_IFRAME ), xStorage )
- , aFTName ( this, CUI_RES( FT_FRAMENAME ) )
- , aEDName ( this, CUI_RES( ED_FRAMENAME ) )
- , aFTURL ( this, CUI_RES( FT_URL ) )
- , aEDURL ( this, CUI_RES( ED_URL ) )
- , aBTOpen ( this, CUI_RES(BT_FILEOPEN ) )
-
- , aFLScrolling ( this, CUI_RES( GB_SCROLLING ) )
- , aRBScrollingOn ( this, CUI_RES( RB_SCROLLINGON ) )
- , aRBScrollingOff ( this, CUI_RES( RB_SCROLLINGOFF ) )
- , aRBScrollingAuto ( this, CUI_RES( RB_SCROLLINGAUTO ) )
- , aFLSepLeft( this, CUI_RES( FL_SEP_LEFT ) )
- , aFLFrameBorder( this, CUI_RES( GB_BORDER ) )
- , aRBFrameBorderOn ( this, CUI_RES( RB_FRMBORDER_ON ) )
- , aRBFrameBorderOff ( this, CUI_RES( RB_FRMBORDER_OFF ) )
- , aFLSepRight( this, CUI_RES( FL_SEP_RIGHT ) )
- , aFLMargin( this, CUI_RES( GB_MARGIN ) )
- , aFTMarginWidth ( this, CUI_RES( FT_MARGINWIDTH ) )
- , aNMMarginWidth ( this, CUI_RES( NM_MARGINWIDTH ) )
- , aCBMarginWidthDefault( this, CUI_RES( CB_MARGINHEIGHTDEFAULT ) )
- , aFTMarginHeight ( this, CUI_RES( FT_MARGINHEIGHT ) )
- , aNMMarginHeight ( this, CUI_RES( NM_MARGINHEIGHT ) )
- , aCBMarginHeightDefault( this, CUI_RES( CB_MARGINHEIGHTDEFAULT ) )
- , aOKButton1( this, CUI_RES( 1 ) )
- , aCancelButton1( this, CUI_RES( 1 ) )
- , aHelpButton1( this, CUI_RES( 1 ) )
+ : InsertObjectDialog_Impl( pParent, "InsertFloatingFrameDialog", "cui/ui/insertfloatingframe.ui",
+ xStorage )
{
- FreeResource();
-
- aFLSepLeft.SetStyle(aFLSepLeft.GetStyle()|WB_VERT);
- aFLSepRight.SetStyle(aFLSepRight.GetStyle()|WB_VERT);
-
- Link aLink( STATIC_LINK( this, SfxInsertFloatingFrameDialog, CheckHdl ) );
- aCBMarginWidthDefault.SetClickHdl( aLink );
- aCBMarginHeightDefault.SetClickHdl( aLink );
-
- aCBMarginWidthDefault.Check();
- aCBMarginHeightDefault.Check();
- aRBScrollingAuto.Check();
- aRBFrameBorderOn.Check();
-
- aBTOpen.SetClickHdl( STATIC_LINK( this, SfxInsertFloatingFrameDialog, OpenHdl ) );
+ Init();
}
-SfxInsertFloatingFrameDialog::SfxInsertFloatingFrameDialog( Window *pParent, const uno::Reference < embed::XEmbeddedObject >& xObj )
- : InsertObjectDialog_Impl( pParent, CUI_RES( MD_INSERT_OBJECT_IFRAME ), uno::Reference < embed::XStorage >() )
- , aFTName ( this, CUI_RES( FT_FRAMENAME ) )
- , aEDName ( this, CUI_RES( ED_FRAMENAME ) )
- , aFTURL ( this, CUI_RES( FT_URL ) )
- , aEDURL ( this, CUI_RES( ED_URL ) )
- , aBTOpen ( this, CUI_RES(BT_FILEOPEN ) )
-
- , aFLScrolling ( this, CUI_RES( GB_SCROLLING ) )
- , aRBScrollingOn ( this, CUI_RES( RB_SCROLLINGON ) )
- , aRBScrollingOff ( this, CUI_RES( RB_SCROLLINGOFF ) )
- , aRBScrollingAuto ( this, CUI_RES( RB_SCROLLINGAUTO ) )
-
- , aFLSepLeft( this, CUI_RES( FL_SEP_LEFT ) )
- , aFLFrameBorder( this, CUI_RES( GB_BORDER ) )
- , aRBFrameBorderOn ( this, CUI_RES( RB_FRMBORDER_ON ) )
- , aRBFrameBorderOff ( this, CUI_RES( RB_FRMBORDER_OFF ) )
-
- , aFLSepRight( this, CUI_RES( FL_SEP_RIGHT ) )
- , aFLMargin( this, CUI_RES( GB_MARGIN ) )
- , aFTMarginWidth ( this, CUI_RES( FT_MARGINWIDTH ) )
- , aNMMarginWidth ( this, CUI_RES( NM_MARGINWIDTH ) )
- , aCBMarginWidthDefault( this, CUI_RES( CB_MARGINHEIGHTDEFAULT ) )
- , aFTMarginHeight ( this, CUI_RES( FT_MARGINHEIGHT ) )
- , aNMMarginHeight ( this, CUI_RES( NM_MARGINHEIGHT ) )
- , aCBMarginHeightDefault( this, CUI_RES( CB_MARGINHEIGHTDEFAULT ) )
- , aOKButton1( this, CUI_RES( 1 ) )
- , aCancelButton1( this, CUI_RES( 1 ) )
- , aHelpButton1( this, CUI_RES( 1 ) )
+SfxInsertFloatingFrameDialog::SfxInsertFloatingFrameDialog( Window *pParent,
+ const uno::Reference < embed::XEmbeddedObject >& xObj )
+ : InsertObjectDialog_Impl( pParent, "InsertFloatingFrameDialog", "cui/ui/insertfloatingframe.ui",
+ uno::Reference < embed::XStorage >() )
{
- FreeResource();
-
m_xObj = xObj;
- aFLSepLeft.SetStyle(aFLSepLeft.GetStyle()|WB_VERT);
- aFLSepRight.SetStyle(aFLSepRight.GetStyle()|WB_VERT);
+ Init();
+}
+
+void SfxInsertFloatingFrameDialog::Init()
+{
+ get(m_pEDName, "edname");
+ get(m_pEDURL, "edurl");
+ get(m_pBTOpen, "buttonbrowse");
+ get(m_pRBScrollingOn, "scrollbaron");
+ get(m_pRBScrollingOff, "scrollbaroff");
+ get(m_pRBScrollingAuto, "scrollbarauto");
+ get(m_pRBFrameBorderOn, "borderon");
+ get(m_pRBFrameBorderOff, "borderoff");
+ get(m_pFTMarginWidth, "widthlabel");
+ get(m_pNMMarginWidth, "width");
+ get(m_pCBMarginWidthDefault, "defaultwidth");
+ get(m_pFTMarginHeight, "heightlabel");
+ get(m_pNMMarginHeight, "height");
+ get(m_pCBMarginHeightDefault, "defaultheight");
Link aLink( STATIC_LINK( this, SfxInsertFloatingFrameDialog, CheckHdl ) );
- aCBMarginWidthDefault.SetClickHdl( aLink );
- aCBMarginHeightDefault.SetClickHdl( aLink );
+ m_pCBMarginWidthDefault->SetClickHdl( aLink );
+ m_pCBMarginHeightDefault->SetClickHdl( aLink );
- aCBMarginWidthDefault.Check();
- aCBMarginHeightDefault.Check();
- aRBScrollingAuto.Check();
- aRBFrameBorderOn.Check();
+ m_pCBMarginWidthDefault->Check();
+ m_pCBMarginHeightDefault->Check();
+ m_pRBScrollingAuto->Check();
+ m_pRBFrameBorderOn->Check();
- aBTOpen.SetClickHdl( STATIC_LINK( this, SfxInsertFloatingFrameDialog, OpenHdl ) );
+ m_pBTOpen->SetClickHdl( STATIC_LINK( this, SfxInsertFloatingFrameDialog, OpenHdl ) );
}
short SfxInsertFloatingFrameDialog::Execute()
@@ -618,10 +562,10 @@ short SfxInsertFloatingFrameDialog::Execute()
::rtl::OUString aStr;
uno::Any aAny = xSet->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FrameURL") ) );
if ( aAny >>= aStr )
- aEDURL.SetText( aStr );
+ m_pEDURL->SetText( aStr );
aAny = xSet->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FrameName") ) );
if ( aAny >>= aStr )
- aEDName.SetText( aStr );
+ m_pEDName->SetText( aStr );
sal_Int32 nSize = SIZE_NOT_SET;
aAny = xSet->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FrameMarginWidth") ) );
@@ -629,26 +573,26 @@ short SfxInsertFloatingFrameDialog::Execute()
if ( nSize == SIZE_NOT_SET )
{
- aCBMarginWidthDefault.Check( sal_True );
- aNMMarginWidth.SetText( String::CreateFromInt32( DEFAULT_MARGIN_WIDTH ) );
- aFTMarginWidth.Enable( sal_False );
- aNMMarginWidth.Enable( sal_False );
+ m_pCBMarginWidthDefault->Check( sal_True );
+ m_pNMMarginWidth->SetText( String::CreateFromInt32( DEFAULT_MARGIN_WIDTH ) );
+ m_pFTMarginWidth->Enable( sal_False );
+ m_pNMMarginWidth->Enable( sal_False );
}
else
- aNMMarginWidth.SetText( String::CreateFromInt32( nSize ) );
+ m_pNMMarginWidth->SetText( String::CreateFromInt32( nSize ) );
aAny = xSet->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FrameMarginHeight") ) );
aAny >>= nSize;
if ( nSize == SIZE_NOT_SET )
{
- aCBMarginHeightDefault.Check( sal_True );
- aNMMarginHeight.SetText( String::CreateFromInt32( DEFAULT_MARGIN_HEIGHT ) );
- aFTMarginHeight.Enable( sal_False );
- aNMMarginHeight.Enable( sal_False );
+ m_pCBMarginHeightDefault->Check( sal_True );
+ m_pNMMarginHeight->SetText( String::CreateFromInt32( DEFAULT_MARGIN_HEIGHT ) );
+ m_pFTMarginHeight->Enable( sal_False );
+ m_pNMMarginHeight->Enable( sal_False );
}
else
- aNMMarginHeight.SetText( String::CreateFromInt32( nSize ) );
+ m_pNMMarginHeight->SetText( String::CreateFromInt32( nSize ) );
sal_Bool bScrollOn = sal_False;
sal_Bool bScrollOff = sal_False;
@@ -667,9 +611,9 @@ short SfxInsertFloatingFrameDialog::Execute()
else
bScrollAuto = sal_True;
- aRBScrollingOn.Check( bScrollOn );
- aRBScrollingOff.Check( bScrollOff );
- aRBScrollingAuto.Check( bScrollAuto );
+ m_pRBScrollingOn->Check( bScrollOn );
+ m_pRBScrollingOff->Check( bScrollOff );
+ m_pRBScrollingAuto->Check( bScrollAuto );
bSet = sal_False;
aAny = xSet->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FrameIsAutoBorder") ) );
@@ -678,8 +622,8 @@ short SfxInsertFloatingFrameDialog::Execute()
{
aAny = xSet->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("FrameIsBorder") ) );
aAny >>= bSet;
- aRBFrameBorderOn.Check( bSet );
- aRBFrameBorderOff.Check( !bSet );
+ m_pRBFrameBorderOn->Check( bSet );
+ m_pRBFrameBorderOff->Check( !bSet );
}
SetUpdateMode( sal_True );
@@ -699,12 +643,12 @@ short SfxInsertFloatingFrameDialog::Execute()
if ( bOK && ( nRet = Dialog::Execute() ) == RET_OK )
{
::rtl::OUString aURL;
- if ( aEDURL.GetText().Len() )
+ if ( m_pEDURL->GetText().Len() )
{
// URL can be a valid and absolute URL or a system file name
INetURLObject aObj;
aObj.SetSmartProtocol( INET_PROT_FILE );
- if ( aObj.SetSmartURL( aEDURL.GetText() ) )
+ if ( aObj.SetSmartURL( m_pEDURL->GetText() ) )
aURL = aObj.GetMainURL( INetURLObject::NO_DECODE );
}
@@ -727,26 +671,26 @@ short SfxInsertFloatingFrameDialog::Execute()
if ( bIPActive )
m_xObj->changeState( embed::EmbedStates::RUNNING );
- ::rtl::OUString aName = aEDName.GetText();
+ ::rtl::OUString aName = m_pEDName->GetText();
ScrollingMode eScroll = ScrollingNo;
- if ( aRBScrollingOn.IsChecked() )
+ if ( m_pRBScrollingOn->IsChecked() )
eScroll = ScrollingYes;
- if ( aRBScrollingOff.IsChecked() )
+ if ( m_pRBScrollingOff->IsChecked() )
eScroll = ScrollingNo;
- if ( aRBScrollingAuto.IsChecked() )
+ if ( m_pRBScrollingAuto->IsChecked() )
eScroll = ScrollingAuto;
- sal_Bool bHasBorder = aRBFrameBorderOn.IsChecked();
+ sal_Bool bHasBorder = m_pRBFrameBorderOn->IsChecked();
long lMarginWidth;
- if ( !aCBMarginWidthDefault.IsChecked() )
- lMarginWidth = (long) aNMMarginWidth.GetText().ToInt32();
+ if ( !m_pCBMarginWidthDefault->IsChecked() )
+ lMarginWidth = (long) m_pNMMarginWidth->GetText().ToInt32();
else
lMarginWidth = SIZE_NOT_SET;
long lMarginHeight;
- if ( !aCBMarginHeightDefault.IsChecked() )
- lMarginHeight = (long) aNMMarginHeight.GetText().ToInt32();
+ if ( !m_pCBMarginHeightDefault->IsChecked() )
+ lMarginHeight = (long) m_pNMMarginHeight->GetText().ToInt32();
else
lMarginHeight = SIZE_NOT_SET;
@@ -786,20 +730,20 @@ short SfxInsertFloatingFrameDialog::Execute()
IMPL_STATIC_LINK( SfxInsertFloatingFrameDialog, CheckHdl, CheckBox*, pCB )
{
- if ( pCB == &pThis->aCBMarginWidthDefault )
+ if ( pCB == pThis->m_pCBMarginWidthDefault )
{
if ( pCB->IsChecked() )
- pThis->aNMMarginWidth.SetText( String::CreateFromInt32( DEFAULT_MARGIN_WIDTH ) );
- pThis->aFTMarginWidth.Enable( !pCB->IsChecked() );
- pThis->aNMMarginWidth.Enable( !pCB->IsChecked() );
+ pThis->m_pNMMarginWidth->SetText( String::CreateFromInt32( DEFAULT_MARGIN_WIDTH ) );
+ pThis->m_pFTMarginWidth->Enable( !pCB->IsChecked() );
+ pThis->m_pNMMarginWidth->Enable( !pCB->IsChecked() );
}
- if ( pCB == &pThis->aCBMarginHeightDefault )
+ if ( pCB == pThis->m_pCBMarginHeightDefault )
{
if ( pCB->IsChecked() )
- pThis->aNMMarginHeight.SetText( String::CreateFromInt32( DEFAULT_MARGIN_HEIGHT ) );
- pThis->aFTMarginHeight.Enable( !pCB->IsChecked() );
- pThis->aNMMarginHeight.Enable( !pCB->IsChecked() );
+ pThis->m_pNMMarginHeight->SetText( String::CreateFromInt32( DEFAULT_MARGIN_HEIGHT ) );
+ pThis->m_pFTMarginHeight->Enable( !pCB->IsChecked() );
+ pThis->m_pNMMarginHeight->Enable( !pCB->IsChecked() );
}
return 0L;
@@ -817,11 +761,11 @@ IMPL_STATIC_LINK( SfxInsertFloatingFrameDialog, OpenHdl, PushButton*, EMPTYARG )
ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0, String() );
// set the title
- aFileDlg.SetTitle( OUString( String( CUI_RES( MD_INSERT_OBJECT_IFRAME ) ) ) );
+ aFileDlg.SetTitle(CUI_RESSTR(RID_SVXSTR_SELECT_FILE_IFRAME));
// show the dialog
if ( aFileDlg.Execute() == ERRCODE_NONE )
- pThis->aEDURL.SetText(
+ pThis->m_pEDURL->SetText(
INetURLObject( aFileDlg.GetPath() ).GetMainURL( INetURLObject::DECODE_WITH_CHARSET ) );
Application::SetDefDialogParent( pOldParent );
diff --git a/cui/source/dialogs/insrc.cxx b/cui/source/dialogs/insrc.cxx
index 81b8c0c6019c..7efbc486fe80 100644
--- a/cui/source/dialogs/insrc.cxx
+++ b/cui/source/dialogs/insrc.cxx
@@ -21,34 +21,26 @@
#include <svx/svxdlg.hxx>
#include <cuires.hrc>
#include "insrc.hxx"
-#include "insrc.hrc"
bool SvxInsRowColDlg::isInsertBefore() const
{
- return !aAfterBtn.IsChecked();
+ return !m_pAfterBtn->IsChecked();
}
sal_uInt16 SvxInsRowColDlg::getInsertCount() const
{
- return static_cast< sal_uInt16 >( aCountEdit.GetValue() );
+ return static_cast< sal_uInt16 >( m_pCountEdit->GetValue() );
}
SvxInsRowColDlg::SvxInsRowColDlg(Window* pParent, bool bCol, const rtl::OString& sHelpId )
- : ModalDialog( pParent, CUI_RES(DLG_INS_ROW_COL) ),
- aCount( this, CUI_RES( FT_COUNT ) ),
- aCountEdit( this, CUI_RES( ED_COUNT ) ),
- aInsFL( this, CUI_RES( FL_INS ) ),
- aBeforeBtn( this, CUI_RES( CB_POS_BEFORE ) ),
- aAfterBtn( this, CUI_RES( CB_POS_AFTER ) ),
- aPosFL( this, CUI_RES( FL_POS ) ),
- aRow(CUI_RESSTR(STR_ROW)),
- aCol(CUI_RESSTR(STR_COL)),
- aOKBtn( this, CUI_RES( BT_OK ) ),
- aCancelBtn( this, CUI_RES( BT_CANCEL ) ),
- aHelpBtn( this, CUI_RES( BT_HELP ) ),
- bColumn( bCol )
+ : ModalDialog(pParent, "InsertRowColumnDialog", "cui/ui/insertrowcolumn.ui")
+ , aRow(CUI_RESSTR(RID_SVXSTR_ROW))
+ , aCol(CUI_RESSTR(RID_SVXSTR_COL))
+ , bColumn(bCol)
{
- FreeResource();
+ get(m_pCountEdit, "insert_number");
+ get(m_pBeforeBtn, "insert_before");
+ get(m_pAfterBtn, "insert_after");
SetText( bColumn ? aCol : aRow );
SetHelpId( sHelpId );
}
diff --git a/cui/source/dialogs/insrc.src b/cui/source/dialogs/insrc.src
deleted file mode 100644
index 101dca68a25f..000000000000
--- a/cui/source/dialogs/insrc.src
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-
-#include <cuires.hrc>
-#include "insrc.hrc"
-
-ModalDialog DLG_INS_ROW_COL
-{
- HelpID = "cui:ModalDialog:DLG_INS_ROW_COL";
- OutputSize = TRUE ;
- SVLook = TRUE ;
- Size = MAP_APPFONT ( 136 , 84 ) ;
- Moveable = TRUE ;
- OKButton BT_OK
- {
- Pos = MAP_APPFONT ( 80 , 6 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- TabStop = TRUE ;
- DefButton = TRUE ;
- };
- CancelButton BT_CANCEL
- {
- Pos = MAP_APPFONT ( 80 , 23 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- TabStop = TRUE ;
- };
- HelpButton BT_HELP
- {
- Pos = MAP_APPFONT ( 80 , 43 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- TabStop = TRUE ;
- };
- RadioButton CB_POS_BEFORE
- {
- HelpID = "cui:RadioButton:DLG_INS_ROW_COL:CB_POS_BEFORE";
- Pos = MAP_APPFONT ( 12 , 49 ) ;
- Size = MAP_APPFONT ( 56 , 10 ) ;
- Text [ en-US ] = "~Before" ;
- TabStop = TRUE ;
- };
- RadioButton CB_POS_AFTER
- {
- HelpID = "cui:RadioButton:DLG_INS_ROW_COL:CB_POS_AFTER";
- Pos = MAP_APPFONT ( 12 , 62 ) ;
- Size = MAP_APPFONT ( 56 , 10 ) ;
- Text [ en-US ] = "A~fter" ;
- TabStop = TRUE ;
- Check = TRUE ;
- };
- NumericField ED_COUNT
- {
- HelpID = "cui:NumericField:DLG_INS_ROW_COL:ED_COUNT";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 44 , 14 ) ;
- Size = MAP_APPFONT ( 24 , 12 ) ;
- TabStop = TRUE ;
- Left = TRUE ;
- Repeat = TRUE ;
- Spin = TRUE ;
- Minimum = 1 ;
- Maximum = 99 ;
- Value = 1 ;
- First = 1 ;
- Last = 5 ;
- };
- FixedLine FL_INS
- {
- Pos = MAP_APPFONT ( 6 , 3 ) ;
- Size = MAP_APPFONT ( 68 , 8 ) ;
- Text [ en-US ] = "Insert" ;
- };
- FixedLine FL_POS
- {
- Pos = MAP_APPFONT ( 6 , 38 ) ;
- Size = MAP_APPFONT ( 68 , 8 ) ;
- Text [ en-US ] = "Position";
- };
- FixedText FT_COUNT
- {
- Pos = MAP_APPFONT ( 12 , 16 ) ;
- Size = MAP_APPFONT ( 30 , 8 ) ;
- Text [ en-US ] = "~Number" ;
- Left = TRUE ;
- };
- String STR_ROW
- {
- Text [ en-US ] = "Insert Rows" ;
- };
- String STR_COL
- {
- Text [ en-US ] = "Insert Columns" ;
- };
-};
diff --git a/cui/source/dialogs/linkdlg.cxx b/cui/source/dialogs/linkdlg.cxx
index 8ab01c089c1f..68429f218272 100644
--- a/cui/source/dialogs/linkdlg.cxx
+++ b/cui/source/dialogs/linkdlg.cxx
@@ -151,7 +151,7 @@ IMPL_LINK( SvBaseLinksDlg, LinksSelectHdl, SvTabListBox *, pSvTabListBox )
if(nSelectionCount > 1)
{
// possibly deselect old entries in case of multi-selection
- SvLBoxEntry* pEntry = 0;
+ SvTreeListEntry* pEntry = 0;
SvBaseLink* pLink = 0;
pEntry = pSvTabListBox->GetHdlEntry();
pLink = (SvBaseLink*)pEntry->GetUserData();
@@ -269,7 +269,7 @@ IMPL_LINK_NOARG(SvBaseLinksDlg, UpdateNowClickHdl)
std::vector< SvBaseLink* > aLnkArr;
std::vector< sal_uInt16 > aPosArr;
- SvLBoxEntry* pE = rListBox.FirstSelected();
+ SvTreeListEntry* pE = rListBox.FirstSelected();
while( pE )
{
sal_uInt16 nFndPos = (sal_uInt16)rListBox.GetModel()->GetAbsPos( pE );
@@ -322,7 +322,7 @@ IMPL_LINK_NOARG(SvBaseLinksDlg, UpdateNowClickHdl)
if( pE )
{
- SvLBoxEntry* pSelEntry = rListBox.FirstSelected();
+ SvTreeListEntry* pSelEntry = rListBox.FirstSelected();
if( pE != pSelEntry )
rListBox.Select( pSelEntry, sal_False );
rListBox.Select( pE );
@@ -344,7 +344,7 @@ IMPL_LINK( SvBaseLinksDlg, ChangeSourceClickHdl, PushButton *, pPushButton )
PathDialog aPathDlg( this );
String sType, sFile, sLinkName;
String sFilter;
- SvLBoxEntry* pEntry = Links().FirstSelected();
+ SvTreeListEntry* pEntry = Links().FirstSelected();
SvBaseLink* pLink = (SvBaseLink*)pEntry->GetUserData();
pLinkMgr->GetDisplayNames( pLink, &sType, &sFile, 0, 0 );
INetURLObject aUrl(sFile);
@@ -428,7 +428,7 @@ IMPL_LINK( SvBaseLinksDlg, BreakLinkClickHdl, PushButton *, pPushButton )
pLinkMgr = 0;
SetManager( pNewMgr );
- SvLBoxEntry* pEntry = Links().GetEntry( nPos ? --nPos : 0 );
+ SvTreeListEntry* pEntry = Links().GetEntry( nPos ? --nPos : 0 );
if( pEntry )
Links().SetCurEntry( pEntry );
}
@@ -443,7 +443,7 @@ IMPL_LINK( SvBaseLinksDlg, BreakLinkClickHdl, PushButton *, pPushButton )
{
SvBaseLinkMemberList aLinkList;
- SvLBoxEntry* pEntry = Links().FirstSelected();
+ SvTreeListEntry* pEntry = Links().FirstSelected();
while ( pEntry )
{
void * pUD = pEntry->GetUserData();
@@ -492,7 +492,7 @@ IMPL_LINK( SvBaseLinksDlg, UpdateWaitingHdl, Timer*, pTimer )
Links().SetUpdateMode(sal_False);
for( sal_uLong nPos = Links().GetEntryCount(); nPos; )
{
- SvLBoxEntry* pBox = Links().GetEntry( --nPos );
+ SvTreeListEntry* pBox = Links().GetEntry( --nPos );
SvBaseLinkRef xLink( (SvBaseLink*)pBox->GetUserData() );
if( xLink.Is() )
{
@@ -529,7 +529,7 @@ IMPL_LINK( SvBaseLinksDlg, EndEditHdl, sfx2::SvBaseLink*, _pLink )
{
Links().SetUpdateMode(sal_False);
Links().GetModel()->Remove( Links().GetEntry( nPos ) );
- SvLBoxEntry* pToUnselect = Links().FirstSelected();
+ SvTreeListEntry* pToUnselect = Links().FirstSelected();
InsertEntry( *_pLink, nPos, sal_True );
if(pToUnselect)
Links().Select(pToUnselect, sal_False);
@@ -595,7 +595,7 @@ void SvBaseLinksDlg::SetManager( LinkManager* pNewMgr )
if( !rLnks.empty() )
{
- SvLBoxEntry* pEntry = Links().GetEntry( 0 );
+ SvTreeListEntry* pEntry = Links().GetEntry( 0 );
Links().SetCurEntry( pEntry );
Links().Select( pEntry );
LinksSelectHdl( 0 );
@@ -638,7 +638,7 @@ void SvBaseLinksDlg::InsertEntry( const SvBaseLink& rLink, sal_uInt16 nPos, sal_
aEntry += '\t';
aEntry += ImplGetStateStr( rLink );
- SvLBoxEntry * pE = Links().InsertEntryToColumn( aEntry, nPos );
+ SvTreeListEntry * pE = Links().InsertEntryToColumn( aEntry, nPos );
pE->SetUserData( (void*)&rLink );
if(bSelect)
Links().Select(pE);
@@ -646,7 +646,7 @@ void SvBaseLinksDlg::InsertEntry( const SvBaseLink& rLink, sal_uInt16 nPos, sal_
SvBaseLink* SvBaseLinksDlg::GetSelEntry( sal_uInt16* pPos )
{
- SvLBoxEntry* pE = Links().FirstSelected();
+ SvTreeListEntry* pE = Links().FirstSelected();
sal_uInt16 nPos;
if( pE && LISTBOX_ENTRY_NOTFOUND !=
( nPos = (sal_uInt16)Links().GetModel()->GetAbsPos( pE ) ) )
@@ -666,7 +666,7 @@ void SvBaseLinksDlg::SetType( SvBaseLink& rLink,
{
rLink.SetUpdateMode( nType );
rLink.Update();
- SvLBoxEntry* pBox = Links().GetEntry( nSelPos );
+ SvTreeListEntry* pBox = Links().GetEntry( nSelPos );
Links().SetEntryText( ImplGetStateStr( rLink ), pBox, 3 );
if( pLinkMgr->GetPersist() )
pLinkMgr->GetPersist()->SetModified();
diff --git a/cui/source/dialogs/multipat.cxx b/cui/source/dialogs/multipat.cxx
index 5353edad37ea..c185887919d5 100644
--- a/cui/source/dialogs/multipat.cxx
+++ b/cui/source/dialogs/multipat.cxx
@@ -29,7 +29,7 @@
#include <comphelper/processfactory.hxx>
#include <comphelper/string.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
#include <unotools/localfilehelper.hxx>
@@ -68,7 +68,7 @@ IMPL_LINK_NOARG(SvxMultiPathDialog, SelectHdl_Impl)
IMPL_LINK( SvxMultiPathDialog, CheckHdl_Impl, svx::SvxRadioButtonListBox *, pBox )
{
- SvLBoxEntry* pEntry =
+ SvTreeListEntry* pEntry =
pBox ? pBox->GetEntry( pBox->GetCurMousePoint() ) : aRadioLB.FirstSelected();
if ( pEntry )
aRadioLB.HandleEntryChecked( pEntry );
@@ -79,9 +79,8 @@ IMPL_LINK( SvxMultiPathDialog, CheckHdl_Impl, svx::SvxRadioButtonListBox *, pBox
IMPL_LINK_NOARG(SvxMultiPathDialog, AddHdl_Impl)
{
- rtl::OUString aService( RTL_CONSTASCII_USTRINGPARAM( FOLDER_PICKER_SERVICE_NAME ) );
- Reference < XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
- Reference < XFolderPicker > xFolderPicker( xFactory->createInstance( aService ), UNO_QUERY );
+ Reference < XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ Reference < XFolderPicker2 > xFolderPicker = FolderPicker::create(xContext);
if ( xFolderPicker->execute() == ExecutableDialogResults::OK )
{
@@ -98,7 +97,7 @@ IMPL_LINK_NOARG(SvxMultiPathDialog, AddHdl_Impl)
{
rtl::OUString sNewEntry( '\t' );
sNewEntry += sInsPath;
- SvLBoxEntry* pEntry = aRadioLB.InsertEntry( sNewEntry );
+ SvTreeListEntry* pEntry = aRadioLB.InsertEntry( sNewEntry );
String* pData = new String( aURL );
pEntry->SetUserData( pData );
}
@@ -134,7 +133,7 @@ IMPL_LINK_NOARG(SvxMultiPathDialog, DelHdl_Impl)
{
if ( pImpl->bIsRadioButtonMode )
{
- SvLBoxEntry* pEntry = aRadioLB.FirstSelected();
+ SvTreeListEntry* pEntry = aRadioLB.FirstSelected();
delete (String*)pEntry->GetUserData();
bool bChecked = aRadioLB.GetCheckButtonState( pEntry ) == SV_BUTTON_CHECKED;
sal_uLong nPos = aRadioLB.GetEntryPos( pEntry );
@@ -224,7 +223,7 @@ SvxMultiPathDialog::~SvxMultiPathDialog()
nPos = (sal_uInt16)aRadioLB.GetEntryCount();
while ( nPos-- )
{
- SvLBoxEntry* pEntry = aRadioLB.GetEntry( nPos );
+ SvTreeListEntry* pEntry = aRadioLB.GetEntry( nPos );
delete (String*)pEntry->GetUserData();
}
delete pImpl;
@@ -242,7 +241,7 @@ String SvxMultiPathDialog::GetPath() const
String sWritable;
for ( sal_uInt16 i = 0; i < aRadioLB.GetEntryCount(); ++i )
{
- SvLBoxEntry* pEntry = aRadioLB.GetEntry(i);
+ SvTreeListEntry* pEntry = aRadioLB.GetEntry(i);
if ( aRadioLB.GetCheckButtonState( pEntry ) == SV_BUTTON_CHECKED )
sWritable = *(String*)pEntry->GetUserData();
else
@@ -286,7 +285,7 @@ void SvxMultiPathDialog::SetPath( const String& rPath )
{
rtl::OUString sEntry( '\t' );
sEntry += (bIsSystemPath ? sSystemPath : sPath);
- SvLBoxEntry* pEntry = aRadioLB.InsertEntry( sEntry );
+ SvTreeListEntry* pEntry = aRadioLB.InsertEntry( sEntry );
String* pURL = new String( sPath );
pEntry->SetUserData( pURL );
}
@@ -302,7 +301,7 @@ void SvxMultiPathDialog::SetPath( const String& rPath )
if ( pImpl->bIsRadioButtonMode && nCount > 0 )
{
- SvLBoxEntry* pEntry = aRadioLB.GetEntry( nCount - 1 );
+ SvTreeListEntry* pEntry = aRadioLB.GetEntry( nCount - 1 );
if ( pEntry )
{
aRadioLB.SetCheckButtonState( pEntry, SV_BUTTON_CHECKED );
diff --git a/cui/source/dialogs/scriptdlg.cxx b/cui/source/dialogs/scriptdlg.cxx
index c1faf050b9db..d601623859b5 100644
--- a/cui/source/dialogs/scriptdlg.cxx
+++ b/cui/source/dialogs/scriptdlg.cxx
@@ -71,16 +71,8 @@ void ShowErrorDialog( const Any& aException )
delete pDlg;
}
-SFTreeListBox::SFTreeListBox( Window* pParent, const ResId& rResId ) :
- SvTreeListBox( pParent, ResId( rResId.GetId(),*rResId.GetResMgr() ) ),
- m_hdImage(ResId(IMG_HARDDISK,*rResId.GetResMgr())),
- m_libImage(ResId(IMG_LIB,*rResId.GetResMgr())),
- m_macImage(ResId(IMG_MACRO,*rResId.GetResMgr())),
- m_docImage(ResId(IMG_DOCUMENT,*rResId.GetResMgr())),
- m_sMyMacros(String(ResId(STR_MYMACROS,*rResId.GetResMgr()))),
- m_sProdMacros(String(ResId(STR_PRODMACROS,*rResId.GetResMgr())))
+void SFTreeListBox::Init()
{
- FreeResource();
SetSelectionMode( SINGLE_SELECTION );
SetStyle( GetStyle() | WB_CLIPCHILDREN | WB_HSCROLL |
@@ -91,17 +83,45 @@ SFTreeListBox::SFTreeListBox( Window* pParent, const ResId& rResId ) :
nMode = 0xFF; // everything
}
+SFTreeListBox::SFTreeListBox(Window* pParent, const ResId& rResId)
+ : SvTreeListBox(pParent, ResId(rResId.GetId(),*rResId.GetResMgr()))
+ , m_hdImage(CUI_RES(RID_CUIIMG_HARDDISK))
+ , m_libImage(CUI_RES(RID_CUIIMG_LIB))
+ , m_macImage(CUI_RES(RID_CUIIMG_MACRO))
+ , m_docImage(CUI_RES(RID_CUIIMG_DOC))
+ , m_sMyMacros(CUI_RESSTR(RID_SVXSTR_MYMACROS))
+ , m_sProdMacros(CUI_RES(RID_SVXSTR_PRODMACROS))
+{
+ FreeResource();
+ Init();
+}
+
+SFTreeListBox::SFTreeListBox(Window* pParent)
+ : SvTreeListBox(pParent)
+ , m_hdImage(CUI_RES(RID_CUIIMG_HARDDISK))
+ , m_libImage(CUI_RES(RID_CUIIMG_LIB))
+ , m_macImage(CUI_RES(RID_CUIIMG_MACRO))
+ , m_docImage(CUI_RES(RID_CUIIMG_DOC))
+ , m_sMyMacros(CUI_RESSTR(RID_SVXSTR_MYMACROS))
+ , m_sProdMacros(CUI_RESSTR(RID_SVXSTR_PRODMACROS))
+{
+ Init();
+}
+
+extern "C" SAL_DLLPUBLIC_EXPORT Window* SAL_CALL makeSFTreeListBox(Window *pParent, VclBuilder::stringmap &)
+{
+ return new SFTreeListBox(pParent);
+}
+
SFTreeListBox::~SFTreeListBox()
{
deleteAllTree();
}
-void SFTreeListBox::delUserData( SvLBoxEntry* pEntry )
+void SFTreeListBox::delUserData( SvTreeListEntry* pEntry )
{
if ( pEntry )
{
-
- String text = GetEntryText( pEntry );
SFEntry* pUserData = (SFEntry*)pEntry->GetUserData();
if ( pUserData )
{
@@ -116,14 +136,14 @@ void SFTreeListBox::delUserData( SvLBoxEntry* pEntry )
}
}
-void SFTreeListBox::deleteTree( SvLBoxEntry* pEntry )
+void SFTreeListBox::deleteTree( SvTreeListEntry* pEntry )
{
delUserData( pEntry );
pEntry = FirstChild( pEntry );
while ( pEntry )
{
- SvLBoxEntry* pNextEntry = NextSibling( pEntry );
+ SvTreeListEntry* pNextEntry = NextSibling( pEntry );
deleteTree( pEntry );
GetModel()->Remove( pEntry );
pEntry = pNextEntry;
@@ -132,15 +152,14 @@ void SFTreeListBox::deleteTree( SvLBoxEntry* pEntry )
void SFTreeListBox::deleteAllTree()
{
- SvLBoxEntry* pEntry = GetEntry( 0 );
+ SvTreeListEntry* pEntry = GetEntry( 0 );
// TBD - below is a candidate for a destroyAllTrees method
if ( pEntry )
{
while ( pEntry )
{
- String text = GetEntryText( pEntry );
- SvLBoxEntry* pNextEntry = NextSibling( pEntry ) ;
+ SvTreeListEntry* pNextEntry = NextSibling( pEntry ) ;
deleteTree( pEntry );
GetModel()->Remove( pEntry );
pEntry = pNextEntry;
@@ -238,7 +257,7 @@ void SFTreeListBox::Init( const ::rtl::OUString& language )
getLangNodeFromRootNode( children[ n ], lang );
SAL_WNODEPRECATED_DECLARATIONS_PUSH
- insertEntry( uiName, app ? IMG_HARDDISK : IMG_DOCUMENT,
+ insertEntry( uiName, app ? RID_CUIIMG_HARDDISK : RID_CUIIMG_DOC,
0, true, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_SFROOT, langEntries, xDocumentModel )), factoryURL );
SAL_WNODEPRECATED_DECLARATIONS_POP
}
@@ -303,7 +322,7 @@ SFTreeListBox::getLangNodeFromRootNode( Reference< browse::XBrowseNode >& rootNo
return langNode;
}
-void SFTreeListBox:: RequestSubEntries( SvLBoxEntry* pRootEntry, Reference< ::com::sun::star::script::browse::XBrowseNode >& node,
+void SFTreeListBox:: RequestSubEntries( SvTreeListEntry* pRootEntry, Reference< ::com::sun::star::script::browse::XBrowseNode >& node,
Reference< XModel >& model )
{
if (! node.is() )
@@ -327,7 +346,7 @@ void SFTreeListBox:: RequestSubEntries( SvLBoxEntry* pRootEntry, Reference< ::co
if ( children[ n ]->getType() != browse::BrowseNodeTypes::SCRIPT)
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
- insertEntry( name, IMG_LIB, pRootEntry, true, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_SCRIPTCONTAINER, children[ n ],model )));
+ insertEntry( name, RID_CUIIMG_LIB, pRootEntry, true, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_SCRIPTCONTAINER, children[ n ],model )));
SAL_WNODEPRECATED_DECLARATIONS_POP
}
else
@@ -335,7 +354,7 @@ void SFTreeListBox:: RequestSubEntries( SvLBoxEntry* pRootEntry, Reference< ::co
if ( children[ n ]->getType() == browse::BrowseNodeTypes::SCRIPT )
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
- insertEntry( name, IMG_MACRO, pRootEntry, false, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_METHOD, children[ n ],model )));
+ insertEntry( name, RID_CUIIMG_MACRO, pRootEntry, false, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_METHOD, children[ n ],model )));
SAL_WNODEPRECATED_DECLARATIONS_POP
}
@@ -353,12 +372,12 @@ void SFTreeListBox::ExpandAllTrees()
}
SAL_WNODEPRECATED_DECLARATIONS_PUSH
-SvLBoxEntry * SFTreeListBox::insertEntry(
- String const & rText, sal_uInt16 nBitmap, SvLBoxEntry * pParent,
+SvTreeListEntry * SFTreeListBox::insertEntry(
+ String const & rText, sal_uInt16 nBitmap, SvTreeListEntry * pParent,
bool bChildrenOnDemand, std::auto_ptr< SFEntry > aUserData, ::rtl::OUString factoryURL )
{
- SvLBoxEntry * p;
- if( nBitmap == IMG_DOCUMENT && !factoryURL.isEmpty() )
+ SvTreeListEntry * p;
+ if( nBitmap == RID_CUIIMG_DOC && !factoryURL.isEmpty() )
{
Image aImage = SvFileInformationManager::GetFileImage( INetURLObject(factoryURL), false );
p = InsertEntry(
@@ -374,35 +393,35 @@ SvLBoxEntry * SFTreeListBox::insertEntry(
SAL_WNODEPRECATED_DECLARATIONS_POP
SAL_WNODEPRECATED_DECLARATIONS_PUSH
-SvLBoxEntry * SFTreeListBox::insertEntry(
- String const & rText, sal_uInt16 nBitmap, SvLBoxEntry * pParent,
+SvTreeListEntry * SFTreeListBox::insertEntry(
+ String const & rText, sal_uInt16 nBitmap, SvTreeListEntry * pParent,
bool bChildrenOnDemand, std::auto_ptr< SFEntry > aUserData )
{
Image aImage;
- if( nBitmap == IMG_HARDDISK )
+ if( nBitmap == RID_CUIIMG_HARDDISK )
{
aImage = m_hdImage;
}
- else if( nBitmap == IMG_LIB )
+ else if( nBitmap == RID_CUIIMG_LIB )
{
aImage = m_libImage;
}
- else if( nBitmap == IMG_MACRO )
+ else if( nBitmap == RID_CUIIMG_MACRO )
{
aImage = m_macImage;
}
- else if( nBitmap == IMG_DOCUMENT )
+ else if( nBitmap == RID_CUIIMG_DOC )
{
aImage = m_docImage;
}
- SvLBoxEntry * p = InsertEntry(
+ SvTreeListEntry * p = InsertEntry(
rText, aImage, aImage, pParent, bChildrenOnDemand, LIST_APPEND,
aUserData.release()); // XXX possible leak
return p;
}
SAL_WNODEPRECATED_DECLARATIONS_POP
-void SFTreeListBox::RequestingChildren( SvLBoxEntry* pEntry )
+void SFTreeListBox::RequestingChildren( SvTreeListEntry* pEntry )
{
SFEntry* userData = 0;
if ( !pEntry )
@@ -491,57 +510,53 @@ CuiInputDialog::~CuiInputDialog()
// ScriptOrgDialog ------------------------------------------------------------
// ----------------------------------------------------------------------------
SvxScriptOrgDialog::SvxScriptOrgDialog( Window* pParent, ::rtl::OUString language )
- : SfxModalDialog( pParent, CUI_RES( RID_DLG_SCRIPTORGANIZER ) ),
- aScriptsTxt( this, CUI_RES( SF_TXT_SCRIPTS ) ),
- aScriptsBox( this, CUI_RES( SF_CTRL_SCRIPTSBOX ) ),
- aRunButton( this, CUI_RES( SF_PB_RUN ) ),
- aCloseButton( this, CUI_RES( SF_PB_CLOSE ) ),
- aCreateButton( this, CUI_RES( SF_PB_CREATE ) ),
- aEditButton( this, CUI_RES( SF_PB_EDIT ) ),
- aRenameButton(this, CUI_RES( SF_PB_RENAME ) ),
- aDelButton( this, CUI_RES( SF_PB_DEL ) ),
- aHelpButton( this, CUI_RES( SF_PB_HELP ) ),
- m_sLanguage( language ),
- m_delErrStr( CUI_RES( RID_SVXSTR_DELFAILED ) ),
- m_delErrTitleStr( CUI_RES( RID_SVXSTR_DELFAILED_TITLE ) ),
- m_delQueryStr( CUI_RES( RID_SVXSTR_DELQUERY ) ),
- m_delQueryTitleStr( CUI_RES( RID_SVXSTR_DELQUERY_TITLE ) ) ,
- m_createErrStr( CUI_RES ( RID_SVXSTR_CREATEFAILED ) ),
- m_createDupStr( CUI_RES ( RID_SVXSTR_CREATEFAILEDDUP ) ),
- m_createErrTitleStr( CUI_RES( RID_SVXSTR_CREATEFAILED_TITLE ) ),
- m_renameErrStr( CUI_RES ( RID_SVXSTR_RENAMEFAILED ) ),
- m_renameErrTitleStr( CUI_RES( RID_SVXSTR_RENAMEFAILED_TITLE ) )
+ : SfxModalDialog(pParent, "ScriptOrganizerDialog", "cui/ui/scriptorganizer.ui")
+ , m_sLanguage(language)
+ , m_delErrStr(CUI_RESSTR(RID_SVXSTR_DELFAILED))
+ , m_delErrTitleStr(CUI_RESSTR(RID_SVXSTR_DELFAILED_TITLE))
+ , m_delQueryStr(CUI_RES(RID_SVXSTR_DELQUERY))
+ , m_delQueryTitleStr(CUI_RESSTR(RID_SVXSTR_DELQUERY_TITLE))
+ , m_createErrStr(CUI_RESSTR(RID_SVXSTR_CREATEFAILED))
+ , m_createDupStr(CUI_RESSTR(RID_SVXSTR_CREATEFAILEDDUP))
+ , m_createErrTitleStr(CUI_RESSTR(RID_SVXSTR_CREATEFAILED_TITLE))
+ , m_renameErrStr(CUI_RESSTR(RID_SVXSTR_RENAMEFAILED))
+ , m_renameErrTitleStr(CUI_RESSTR(RID_SVXSTR_RENAMEFAILED_TITLE))
{
-
+ get(m_pScriptsBox, "scripts");
+ get(m_pRunButton, "run");
+ get(m_pCloseButton, "close");
+ get(m_pCreateButton, "create");
+ get(m_pEditButton, "edit");
+ get(m_pRenameButton, "rename");
+ get(m_pDelButton, "delete");
// must be a neater way to deal with the strings than as above
// append the language to the dialog title
String winTitle( GetText() );
winTitle.SearchAndReplace( rtl::OUString( "%MACROLANG" ), m_sLanguage );
SetText( winTitle );
- aScriptsBox.SetSelectHdl( LINK( this, SvxScriptOrgDialog, ScriptSelectHdl ) );
- aRunButton.SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
- aCloseButton.SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
- aRenameButton.SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
- aEditButton.SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
- aDelButton.SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
- aCreateButton.SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
-
- aRunButton.Disable();
- aRenameButton.Disable();
- aEditButton.Disable();
- aDelButton.Disable();
- aCreateButton.Disable();
-
- aScriptsBox.Init( m_sLanguage );
+ m_pScriptsBox->SetSelectHdl( LINK( this, SvxScriptOrgDialog, ScriptSelectHdl ) );
+ m_pRunButton->SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
+ m_pCloseButton->SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
+ m_pRenameButton->SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
+ m_pEditButton->SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
+ m_pDelButton->SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
+ m_pCreateButton->SetClickHdl( LINK( this, SvxScriptOrgDialog, ButtonHdl ) );
+
+ m_pRunButton->Disable();
+ m_pRenameButton->Disable();
+ m_pEditButton->Disable();
+ m_pDelButton->Disable();
+ m_pCreateButton->Disable();
+
+ m_pScriptsBox->Init( m_sLanguage );
RestorePreviousSelection();
- FreeResource();
}
SvxScriptOrgDialog::~SvxScriptOrgDialog()
{
// clear the SelectHdl so that it isn't called during the dtor
- aScriptsBox.SetSelectHdl( Link() );
+ m_pScriptsBox->SetSelectHdl( Link() );
};
short SvxScriptOrgDialog::Execute()
@@ -563,7 +578,7 @@ short SvxScriptOrgDialog::Execute()
pDoc = SfxObjectShell::GetNext(*pDoc);
}
- aScriptsBox.ExpandAllTrees();
+ m_pScriptsBox->ExpandAllTrees();
Window* pPrevDlgParent = Application::GetDefDialogParent();
Application::SetDefDialogParent( this );
@@ -578,20 +593,20 @@ void SvxScriptOrgDialog::CheckButtons( Reference< browse::XBrowseNode >& node )
{
if ( node->getType() == browse::BrowseNodeTypes::SCRIPT)
{
- aRunButton.Enable();
+ m_pRunButton->Enable();
}
else
{
- aRunButton.Disable();
+ m_pRunButton->Disable();
}
Reference< beans::XPropertySet > xProps( node, UNO_QUERY );
if ( !xProps.is() )
{
- aEditButton.Disable();
- aDelButton.Disable();
- aCreateButton.Disable();
- aRunButton.Disable();
+ m_pEditButton->Disable();
+ m_pDelButton->Disable();
+ m_pCreateButton->Disable();
+ m_pRunButton->Disable();
return;
}
@@ -599,54 +614,54 @@ void SvxScriptOrgDialog::CheckButtons( Reference< browse::XBrowseNode >& node )
if ( getBoolProperty( xProps, sName ) )
{
- aEditButton.Enable();
+ m_pEditButton->Enable();
}
else
{
- aEditButton.Disable();
+ m_pEditButton->Disable();
}
sName = rtl::OUString("Deletable") ;
if ( getBoolProperty( xProps, sName ) )
{
- aDelButton.Enable();
+ m_pDelButton->Enable();
}
else
{
- aDelButton.Disable();
+ m_pDelButton->Disable();
}
sName = rtl::OUString("Creatable") ;
if ( getBoolProperty( xProps, sName ) )
{
- aCreateButton.Enable();
+ m_pCreateButton->Enable();
}
else
{
- aCreateButton.Disable();
+ m_pCreateButton->Disable();
}
sName = rtl::OUString("Renamable") ;
if ( getBoolProperty( xProps, sName ) )
{
- aRenameButton.Enable();
+ m_pRenameButton->Enable();
}
else
{
- aRenameButton.Disable();
+ m_pRenameButton->Disable();
}
}
else
{
// no node info available, disable all configurable actions
- aDelButton.Disable();
- aCreateButton.Disable();
- aEditButton.Disable();
- aRunButton.Disable();
- aRenameButton.Disable();
+ m_pDelButton->Disable();
+ m_pCreateButton->Disable();
+ m_pEditButton->Disable();
+ m_pRunButton->Disable();
+ m_pRenameButton->Disable();
}
}
@@ -657,7 +672,7 @@ IMPL_LINK( SvxScriptOrgDialog, ScriptSelectHdl, SvTreeListBox *, pBox )
return 0;
}
- SvLBoxEntry* pEntry = pBox->GetHdlEntry();
+ SvTreeListEntry* pEntry = pBox->GetHdlEntry();
SFEntry* userData = 0;
if ( !pEntry )
@@ -678,21 +693,21 @@ IMPL_LINK( SvxScriptOrgDialog, ScriptSelectHdl, SvTreeListBox *, pBox )
IMPL_LINK( SvxScriptOrgDialog, ButtonHdl, Button *, pButton )
{
- if ( pButton == &aCloseButton )
+ if ( pButton == m_pCloseButton )
{
StoreCurrentSelection();
EndDialog( 0 );
}
- if ( pButton == &aEditButton ||
- pButton == &aCreateButton ||
- pButton == &aDelButton ||
- pButton == &aRunButton ||
- pButton == &aRenameButton )
+ if ( pButton == m_pEditButton ||
+ pButton == m_pCreateButton ||
+ pButton == m_pDelButton ||
+ pButton == m_pRunButton ||
+ pButton == m_pRenameButton )
{
- if ( aScriptsBox.IsSelected( aScriptsBox.GetHdlEntry() ) )
+ if ( m_pScriptsBox->IsSelected( m_pScriptsBox->GetHdlEntry() ) )
{
- SvLBoxEntry* pEntry = aScriptsBox.GetHdlEntry();
+ SvTreeListEntry* pEntry = m_pScriptsBox->GetHdlEntry();
SFEntry* userData = 0;
if ( !pEntry )
{
@@ -712,7 +727,7 @@ IMPL_LINK( SvxScriptOrgDialog, ButtonHdl, Button *, pButton )
return 0;
}
- if ( pButton == &aRunButton )
+ if ( pButton == m_pRunButton )
{
::rtl::OUString tmpString;
Reference< beans::XPropertySet > xProp( node, UNO_QUERY );
@@ -738,12 +753,12 @@ IMPL_LINK( SvxScriptOrgDialog, ButtonHdl, Button *, pButton )
}
- SvLBoxEntry* pParent = aScriptsBox.GetParent( pEntry );
+ SvTreeListEntry* pParent = m_pScriptsBox->GetParent( pEntry );
while ( pParent && !mspNode.is() )
{
SFEntry* mspUserData = (SFEntry*)pParent->GetUserData();
mspNode.set( mspUserData->GetNode() , UNO_QUERY );
- pParent = aScriptsBox.GetParent( pParent );
+ pParent = m_pScriptsBox->GetParent( pParent );
}
xProp->getPropertyValue( rtl::OUString("URI" ) ) >>= tmpString;
const String scriptURL( tmpString );
@@ -785,7 +800,7 @@ IMPL_LINK( SvxScriptOrgDialog, ButtonHdl, Button *, pButton )
StoreCurrentSelection();
EndDialog( 0 );
}
- else if ( pButton == &aEditButton )
+ else if ( pButton == m_pEditButton )
{
Reference< script::XInvocation > xInv( node, UNO_QUERY );
if ( xInv.is() )
@@ -807,15 +822,15 @@ IMPL_LINK( SvxScriptOrgDialog, ButtonHdl, Button *, pButton )
}
}
}
- else if ( pButton == &aCreateButton )
+ else if ( pButton == m_pCreateButton )
{
createEntry( pEntry );
}
- else if ( pButton == &aDelButton )
+ else if ( pButton == m_pDelButton )
{
deleteEntry( pEntry );
}
- else if ( pButton == &aRenameButton )
+ else if ( pButton == m_pRenameButton )
{
renameEntry( pEntry );
}
@@ -825,7 +840,7 @@ IMPL_LINK( SvxScriptOrgDialog, ButtonHdl, Button *, pButton )
return 0;
}
-Reference< browse::XBrowseNode > SvxScriptOrgDialog::getBrowseNode( SvLBoxEntry* pEntry )
+Reference< browse::XBrowseNode > SvxScriptOrgDialog::getBrowseNode( SvTreeListEntry* pEntry )
{
Reference< browse::XBrowseNode > node;
if ( pEntry )
@@ -840,7 +855,7 @@ Reference< browse::XBrowseNode > SvxScriptOrgDialog::getBrowseNode( SvLBoxEntry*
return node;
}
-Reference< XModel > SvxScriptOrgDialog::getModel( SvLBoxEntry* pEntry )
+Reference< XModel > SvxScriptOrgDialog::getModel( SvTreeListEntry* pEntry )
{
Reference< XModel > model;
if ( pEntry )
@@ -855,7 +870,7 @@ Reference< XModel > SvxScriptOrgDialog::getModel( SvLBoxEntry* pEntry )
return model;
}
-void SvxScriptOrgDialog::createEntry( SvLBoxEntry* pEntry )
+void SvxScriptOrgDialog::createEntry( SvTreeListEntry* pEntry )
{
Reference< browse::XBrowseNode > aChildNode;
@@ -867,7 +882,7 @@ void SvxScriptOrgDialog::createEntry( SvLBoxEntry* pEntry )
::rtl::OUString aNewName;
::rtl::OUString aNewStdName;
sal_uInt16 nMode = INPUTMODE_NEWLIB;
- if( aScriptsBox.GetModel()->GetDepth( pEntry ) == 0 )
+ if( m_pScriptsBox->GetModel()->GetDepth( pEntry ) == 0 )
{
aNewStdName = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Library") ) ;
}
@@ -970,7 +985,7 @@ void SvxScriptOrgDialog::createEntry( SvLBoxEntry* pEntry )
while ( !bValid );
// open up parent node (which ensures it's loaded)
- aScriptsBox.RequestingChildren( pEntry );
+ m_pScriptsBox->RequestingChildren( pEntry );
Sequence< Any > args( 1 );
args[ 0 ] <<= aNewName;
@@ -994,7 +1009,7 @@ void SvxScriptOrgDialog::createEntry( SvLBoxEntry* pEntry )
if ( aChildNode.is() )
{
String aChildName = aChildNode->getName();
- SvLBoxEntry* pNewEntry = NULL;
+ SvTreeListEntry* pNewEntry = NULL;
::rtl::OUString name( aChildName );
@@ -1009,16 +1024,16 @@ void SvxScriptOrgDialog::createEntry( SvLBoxEntry* pEntry )
if ( aChildNode->getType() == browse::BrowseNodeTypes::SCRIPT )
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
- pNewEntry = aScriptsBox.insertEntry( aChildName,
- IMG_MACRO, pEntry, false, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_METHOD, aChildNode,xDocumentModel ) ) );
+ pNewEntry = m_pScriptsBox->insertEntry( aChildName,
+ RID_CUIIMG_MACRO, pEntry, false, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_METHOD, aChildNode,xDocumentModel ) ) );
SAL_WNODEPRECATED_DECLARATIONS_POP
}
else
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
- pNewEntry = aScriptsBox.insertEntry( aChildName,
- IMG_LIB, pEntry, false, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_SCRIPTCONTAINER, aChildNode,xDocumentModel ) ) );
+ pNewEntry = m_pScriptsBox->insertEntry( aChildName,
+ RID_CUIIMG_LIB, pEntry, false, std::auto_ptr< SFEntry >(new SFEntry( OBJTYPE_SCRIPTCONTAINER, aChildNode,xDocumentModel ) ) );
SAL_WNODEPRECATED_DECLARATIONS_POP
// If the Parent is not loaded then set to
@@ -1031,8 +1046,8 @@ void SvxScriptOrgDialog::createEntry( SvLBoxEntry* pEntry )
userData->setLoaded();
}
}
- aScriptsBox.SetCurEntry( pNewEntry );
- aScriptsBox.Select( aScriptsBox.GetCurEntry() );
+ m_pScriptsBox->SetCurEntry( pNewEntry );
+ m_pScriptsBox->Select( m_pScriptsBox->GetCurEntry() );
}
else
@@ -1045,7 +1060,7 @@ void SvxScriptOrgDialog::createEntry( SvLBoxEntry* pEntry )
}
}
-void SvxScriptOrgDialog::renameEntry( SvLBoxEntry* pEntry )
+void SvxScriptOrgDialog::renameEntry( SvTreeListEntry* pEntry )
{
Reference< browse::XBrowseNode > aChildNode;
@@ -1108,9 +1123,9 @@ void SvxScriptOrgDialog::renameEntry( SvLBoxEntry* pEntry )
}
if ( aChildNode.is() )
{
- aScriptsBox.SetEntryText( pEntry, aChildNode->getName() );
- aScriptsBox.SetCurEntry( pEntry );
- aScriptsBox.Select( aScriptsBox.GetCurEntry() );
+ m_pScriptsBox->SetEntryText( pEntry, aChildNode->getName() );
+ m_pScriptsBox->SetCurEntry( pEntry );
+ m_pScriptsBox->Select( m_pScriptsBox->GetCurEntry() );
}
else
@@ -1122,7 +1137,7 @@ void SvxScriptOrgDialog::renameEntry( SvLBoxEntry* pEntry )
aErrorBox.Execute();
}
}
-void SvxScriptOrgDialog::deleteEntry( SvLBoxEntry* pEntry )
+void SvxScriptOrgDialog::deleteEntry( SvTreeListEntry* pEntry )
{
sal_Bool result = sal_False;
Reference< browse::XBrowseNode > node = getBrowseNode( pEntry );
@@ -1158,8 +1173,8 @@ void SvxScriptOrgDialog::deleteEntry( SvLBoxEntry* pEntry )
if ( result == sal_True )
{
- aScriptsBox.deleteTree( pEntry );
- aScriptsBox.GetModel()->Remove( pEntry );
+ m_pScriptsBox->deleteTree( pEntry );
+ m_pScriptsBox->GetModel()->Remove( pEntry );
}
else
{
@@ -1223,13 +1238,13 @@ Selection_hash SvxScriptOrgDialog::m_lastSelection;
void SvxScriptOrgDialog::StoreCurrentSelection()
{
String aDescription;
- if ( aScriptsBox.IsSelected( aScriptsBox.GetHdlEntry() ) )
+ if ( m_pScriptsBox->IsSelected( m_pScriptsBox->GetHdlEntry() ) )
{
- SvLBoxEntry* pEntry = aScriptsBox.GetHdlEntry();
+ SvTreeListEntry* pEntry = m_pScriptsBox->GetHdlEntry();
while( pEntry )
{
- aDescription.Insert( aScriptsBox.GetEntryText( pEntry ), 0 );
- pEntry = aScriptsBox.GetParent( pEntry );
+ aDescription.Insert( m_pScriptsBox->GetEntryText( pEntry ), 0 );
+ pEntry = m_pScriptsBox->GetParent( pEntry );
if ( pEntry )
aDescription.Insert( ';', 0 );
}
@@ -1243,28 +1258,26 @@ void SvxScriptOrgDialog::RestorePreviousSelection()
String aStoredEntry = String( m_lastSelection[ m_sLanguage ] );
if( aStoredEntry.Len() <= 0 )
return;
- SvLBoxEntry* pEntry = 0;
+ SvTreeListEntry* pEntry = 0;
sal_uInt16 nIndex = 0;
while ( nIndex != STRING_NOTFOUND )
{
String aTmp( aStoredEntry.GetToken( 0, ';', nIndex ) );
- SvLBoxEntry* pTmpEntry = aScriptsBox.FirstChild( pEntry );
- ::rtl::OUString debugStr(aTmp);
+ SvTreeListEntry* pTmpEntry = m_pScriptsBox->FirstChild( pEntry );
while ( pTmpEntry )
{
- debugStr = ::rtl::OUString(aScriptsBox.GetEntryText( pTmpEntry ));
- if ( aScriptsBox.GetEntryText( pTmpEntry ) == aTmp )
+ if ( m_pScriptsBox->GetEntryText( pTmpEntry ) == aTmp )
{
pEntry = pTmpEntry;
break;
}
- pTmpEntry = aScriptsBox.NextSibling( pTmpEntry );
+ pTmpEntry = m_pScriptsBox->NextSibling( pTmpEntry );
}
if ( !pTmpEntry )
break;
- aScriptsBox.RequestingChildren( pEntry );
+ m_pScriptsBox->RequestingChildren( pEntry );
}
- aScriptsBox.SetCurEntry( pEntry );
+ m_pScriptsBox->SetCurEntry( pEntry );
}
::rtl::OUString ReplaceString(
diff --git a/cui/source/dialogs/scriptdlg.hrc b/cui/source/dialogs/scriptdlg.hrc
index cb3b50163aec..02c0c0e65087 100644
--- a/cui/source/dialogs/scriptdlg.hrc
+++ b/cui/source/dialogs/scriptdlg.hrc
@@ -21,22 +21,6 @@
#include <svl/solar.hrc>
-// ScriptOrgDialog
-#define SF_TXT_SCRIPTS 1
-#define SF_CTRL_SCRIPTSBOX 2
-#define SF_PB_RUN 3
-#define SF_PB_CLOSE 4
-#define SF_PB_CREATE 5
-#define SF_PB_EDIT 6
-#define SF_PB_RENAME 7
-#define SF_PB_DEL 8
-#define SF_PB_HELP 9
-
-#define IMG_HARDDISK 1
-#define IMG_LIB 3
-#define IMG_MACRO 5
-#define IMG_DOCUMENT 7
-
// NewObjectDialog
#define FT_NEWLIB 10
#define STR_FT_NEWMACRO 11
@@ -48,15 +32,4 @@
#define STR_FT_RENAME 18
#define STR_RENAME 19
-// Others
-/*
-Please be aware that these strings are global resources, don't use self-defined values!
-You have to use the RID_SVXSTART macro do avoid ID clashes with other resource files. Sfx2 delivers
-some of its own resource files to svx - where they are added to svx resource file!!
-*/
-
-#define STR_MYMACROS 32
-#define STR_PRODMACROS 33
-
-
-#endif // _SCRIPTDLG_HRC
+#endif
diff --git a/cui/source/dialogs/scriptdlg.src b/cui/source/dialogs/scriptdlg.src
index 2ef255848b96..ba879708cdb0 100644
--- a/cui/source/dialogs/scriptdlg.src
+++ b/cui/source/dialogs/scriptdlg.src
@@ -20,116 +20,6 @@
#include "scriptdlg.hrc"
#include "helpid.hrc"
-#define MASKCOLOR MaskColor = \
- Color { Red = 0xFFFF ; Green = 0x0000 ; Blue = 0xFFFF ; };
-
-ModalDialog RID_DLG_SCRIPTORGANIZER
-{
- OutputSize = TRUE ;
- Size = MAP_APPFONT ( 210 , 165 ) ;
- Moveable = TRUE ;
- Text [ en-US ] = "%MACROLANG Macros";
- Closeable = TRUE ;
- HelpId = HID_SCRIPTORG_DIALOG;
- FixedText SF_TXT_SCRIPTS
- {
- Pos = MAP_APPFONT ( 6 , 3 ) ;
- Size = MAP_APPFONT ( 100 , 10 ) ;
- Text [ en-US ] = "~Macros" ;
- };
-
- Control SF_CTRL_SCRIPTSBOX
- {
- HelpId = HID_SCRIPTSBOX ;
- Border = TRUE ;
- Pos = MAP_APPFONT ( 6 , 16 ) ;
- Size = MAP_APPFONT ( 130 , 144 ) ;
- TabStop = TRUE ;
- Image IMG_HARDDISK
- {
- ImageBitmap = Bitmap { File = "harddisk_16.bmp" ; };
- MASKCOLOR
- };
- Image IMG_LIB
- {
- ImageBitmap = Bitmap { File = "im30820.png"; };
- MASKCOLOR
- };
- Image IMG_MACRO
- {
- ImageBitmap = Bitmap { File = "im30821.png"; };
- MASKCOLOR
- };
- Image IMG_DOCUMENT
- {
- ImageBitmap = Bitmap { File = "im30826.png"; };
- MASKCOLOR
- };
- String STR_MYMACROS
- {
- Text [ en-US ] = "My Macros";
- };
- String STR_PRODMACROS
- {
- Text [ en-US ] = "%PRODUCTNAME Macros";
- };
- };
-
- PushButton SF_PB_RUN
- {
- HelpID = "cui:PushButton:RID_DLG_SCRIPTORGANIZER:SF_PB_RUN";
- Pos = MAP_APPFONT ( 144 , 6 ) ;
- Size = MAP_APPFONT ( 60 , 14 ) ;
- DefButton = TRUE;
- Text [ en-US ] = "R~un" ;
- };
- CancelButton SF_PB_CLOSE
- {
- Pos = MAP_APPFONT ( 144 , 23 ) ;
- Size = MAP_APPFONT ( 60 , 14 ) ;
- TabStop = TRUE ;
- Text [ en-US ] = "Close" ;
- };
-
- PushButton SF_PB_CREATE
- {
- HelpID = "cui:PushButton:RID_DLG_SCRIPTORGANIZER:SF_PB_CREATE";
- Size = MAP_APPFONT ( 60 , 14 ) ;
- Pos = MAP_APPFONT ( 144 , 60 ) ;
- Text [ en-US ] = "~Create..." ;
- TabStop = TRUE ;
- };
- PushButton SF_PB_EDIT
- {
- HelpID = "cui:PushButton:RID_DLG_SCRIPTORGANIZER:SF_PB_EDIT";
- Size = MAP_APPFONT ( 60 , 14 ) ;
- Pos = MAP_APPFONT ( 144 , 77 ) ;
- Text [ en-US ] = "~Edit" ;
- TabStop = TRUE ;
- };
- PushButton SF_PB_RENAME
- {
- HelpID = "cui:PushButton:RID_DLG_SCRIPTORGANIZER:SF_PB_RENAME";
- Pos = MAP_APPFONT ( 144 , 94 ) ;
- Size = MAP_APPFONT ( 60 , 14 ) ;
- Text [ en-US ] = "Rename..." ;
- };
- PushButton SF_PB_DEL
- {
- HelpID = "cui:PushButton:RID_DLG_SCRIPTORGANIZER:SF_PB_DEL";
- Pos = MAP_APPFONT ( 144 , 114 ) ;
- Size = MAP_APPFONT ( 60 , 14 ) ;
- Text [ en-US ] = "~Delete..." ;
- TabStop = TRUE ;
- };
- HelpButton SF_PB_HELP
- {
- Pos = MAP_APPFONT ( 144 , 131 ) ;
- Size = MAP_APPFONT ( 60 , 14 ) ;
- TabStop = TRUE ;
- };
-
-};
ModalDialog RID_DLG_NEWLIB
{
HelpID = "cui:ModalDialog:RID_DLG_NEWLIB";
diff --git a/cui/source/dialogs/srchxtra.cxx b/cui/source/dialogs/srchxtra.cxx
index 646d55dd0c68..f5d296d2a44b 100644
--- a/cui/source/dialogs/srchxtra.cxx
+++ b/cui/source/dialogs/srchxtra.cxx
@@ -171,7 +171,7 @@ SvxSearchAttributeDialog::SvxSearchAttributeDialog( Window* pParent,
// item resources are in svx
sal_uInt32 nId = aAttrNames.FindIndex( nSlot );
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
if ( RESARRAY_INDEX_NOTFOUND != nId )
pEntry = aAttrLB.SvTreeListBox::InsertEntry( aAttrNames.GetString(nId) );
else
diff --git a/cui/source/dialogs/svuidlg.hrc b/cui/source/dialogs/svuidlg.hrc
index e2d69f463507..da1dd14e4ed3 100644
--- a/cui/source/dialogs/svuidlg.hrc
+++ b/cui/source/dialogs/svuidlg.hrc
@@ -82,28 +82,3 @@
#define GB_CLASS 14
#define ED_APPLET_OPTIONS 20
#define GB_APPLET_OPTIONS 21
-
-#define MD_INSERT_OBJECT_IFRAME 32011
-#define FT_FRAMENAME 3
-#define ED_FRAMENAME 4
-#define FT_URL 5
-#define ED_URL 6
-#define BT_FILEOPEN 7
-#define NM_MARGINHEIGHT 8
-#define FT_MARGINHEIGHT 9
-#define NM_MARGINWIDTH 10
-#define FT_MARGINWIDTH 11
-#define GB_MARGIN 12
-#define RB_SCROLLINGON 13
-#define RB_SCROLLINGOFF 14
-#define RB_SCROLLINGAUTO 15
-#define GB_SCROLLING 16
-#define GB_BORDER 17
-#define RB_FRMBORDER_ON 18
-#define RB_FRMBORDER_INHERIT 19
-#define RB_FRMBORDER_OFF 20
-#define CB_MARGINWIDTHDEFAULT 21
-#define CB_MARGINHEIGHTDEFAULT 22
-#define FL_SEP_LEFT 46
-#define FL_SEP_RIGHT 47
-
diff --git a/cui/source/dialogs/svuidlg.src b/cui/source/dialogs/svuidlg.src
index 7c5bce2cc91d..310653ee4ea6 100644
--- a/cui/source/dialogs/svuidlg.src
+++ b/cui/source/dialogs/svuidlg.src
@@ -392,195 +392,3 @@ Control TB_LINKS
TabStop = TRUE ;
ClipChildren = TRUE ;
};
-
-ModalDialog MD_INSERT_OBJECT_IFRAME
-{
- HelpID = "cui:ModalDialog:MD_INSERT_OBJECT_IFRAME";
- Size = MAP_APPFONT ( 302 , 98 ) ;
- Hide = TRUE ;
- Moveable = TRUE ;
- OutputSize = TRUE ;
- SVLook = TRUE ;
- Text [ en-US ] = "Floating Frame Properties" ;
- OKButton 1
- {
- Pos = MAP_APPFONT ( 246 , 6 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- DefButton = TRUE ;
- };
- CancelButton 1
- {
- Pos = MAP_APPFONT ( 246 , 23 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- };
- HelpButton 1
- {
- Pos = MAP_APPFONT ( 246 , 43 ) ;
- Size = MAP_APPFONT ( 50 , 14 ) ;
- };
- FixedText FT_FRAMENAME
- {
- Pos = MAP_APPFONT ( 6 , 7 ) ;
- Size = MAP_APPFONT ( 36 , 10 ) ;
- Text [ en-US ] = "~Name" ;
- };
- Edit ED_FRAMENAME
- {
- HelpID = "cui:Edit:MD_INSERT_OBJECT_IFRAME:ED_FRAMENAME";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 45 , 6 ) ;
- Size = MAP_APPFONT ( 178 , 12 ) ;
- TabStop = TRUE ;
- };
- FixedText FT_URL
- {
- Pos = MAP_APPFONT ( 6 , 25 ) ;
- Size = MAP_APPFONT ( 36 , 10 ) ;
- Text [ en-US ] = "~Contents" ;
- };
- Edit ED_URL
- {
- HelpID = "cui:Edit:MD_INSERT_OBJECT_IFRAME:ED_URL";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 45 , 24 ) ;
- Size = MAP_APPFONT ( 178 , 12 ) ;
- TabStop = TRUE ;
- };
- PushButton BT_FILEOPEN
- {
- HelpID = "cui:PushButton:MD_INSERT_OBJECT_IFRAME:BT_FILEOPEN";
- Pos = MAP_APPFONT ( 226 , 24 ) ;
- Size = MAP_APPFONT ( 14 , 14 ) ;
- Text = "~..." ;
- TabStop = TRUE ;
- };
- RadioButton RB_SCROLLINGON
- {
- HelpID = "cui:RadioButton:MD_INSERT_OBJECT_IFRAME:RB_SCROLLINGON";
- TabStop = TRUE ;
- Pos = MAP_APPFONT ( 12 , 53 ) ;
- Size = MAP_APPFONT ( 54 , 10 ) ;
- Text [ en-US ] = "~On" ;
- };
- RadioButton RB_SCROLLINGOFF
- {
- HelpID = "cui:RadioButton:MD_INSERT_OBJECT_IFRAME:RB_SCROLLINGOFF";
- TabStop = TRUE ;
- Pos = MAP_APPFONT ( 12 , 66 ) ;
- Size = MAP_APPFONT ( 54 , 10 ) ;
- Text [ en-US ] = "O~ff" ;
- };
- RadioButton RB_SCROLLINGAUTO
- {
- HelpID = "cui:RadioButton:MD_INSERT_OBJECT_IFRAME:RB_SCROLLINGAUTO";
- TabStop = TRUE ;
- Pos = MAP_APPFONT ( 12 , 79 ) ;
- Size = MAP_APPFONT ( 54 , 10 ) ;
- Text [ en-US ] = "Au~tomatic" ;
- };
- FixedLine GB_SCROLLING
- {
- Pos = MAP_APPFONT ( 6 , 42 ) ;
- Size = MAP_APPFONT ( 63 , 8 ) ;
- Text [ en-US ] = "Scroll bar" ;
- };
- RadioButton RB_FRMBORDER_ON
- {
- HelpID = "cui:RadioButton:MD_INSERT_OBJECT_IFRAME:RB_FRMBORDER_ON";
- TabStop = TRUE ;
- Pos = MAP_APPFONT ( 81 , 53 ) ;
- Size = MAP_APPFONT ( 42 , 10 ) ;
- Text [ en-US ] = "On" ;
- };
- RadioButton RB_FRMBORDER_OFF
- {
- HelpID = "cui:RadioButton:MD_INSERT_OBJECT_IFRAME:RB_FRMBORDER_OFF";
- TabStop = TRUE ;
- Pos = MAP_APPFONT ( 81 , 66 ) ;
- Size = MAP_APPFONT ( 42 , 10 ) ;
- Text [ en-US ] = "Off" ;
- };
- FixedLine FL_SEP_LEFT
- {
- Pos = MAP_APPFONT ( 70 , 51 ) ;
- Size = MAP_APPFONT ( 4 , 38 ) ;
- };
- FixedLine GB_BORDER
- {
- Pos = MAP_APPFONT ( 75 , 42 ) ;
- Size = MAP_APPFONT ( 49 , 8 ) ;
- Text [ en-US ] = "Border" ;
- };
- FixedText FT_MARGINWIDTH
- {
- Pos = MAP_APPFONT ( 136 , 56 ) ;
- Size = MAP_APPFONT ( 28 , 10 ) ;
- Text [ en-US ] = "~Width" ;
- };
- NumericField NM_MARGINWIDTH
- {
- HelpID = "cui:NumericField:MD_INSERT_OBJECT_IFRAME:NM_MARGINWIDTH";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 167 , 54 ) ;
- Size = MAP_APPFONT ( 20 , 12 ) ;
- TabStop = TRUE ;
- Repeat = TRUE ;
- Spin = TRUE ;
- Minimum = 0 ;
- Maximum = 99 ;
- Last = 10 ;
- SpinSize = 1 ;
- };
- CheckBox CB_MARGINWIDTHDEFAULT
- {
- HelpID = "cui:CheckBox:MD_INSERT_OBJECT_IFRAME:CB_MARGINWIDTHDEFAULT";
- TabStop = TRUE ;
- Pos = MAP_APPFONT ( 190 , 56 ) ;
- Size = MAP_APPFONT ( 50 , 10 ) ;
- Text [ en-US ] = "~Default" ;
- };
- FixedText FT_MARGINHEIGHT
- {
- Pos = MAP_APPFONT ( 136 , 74 ) ;
- Size = MAP_APPFONT ( 28 , 10 ) ;
- Text [ en-US ] = "H~eight" ;
- };
- NumericField NM_MARGINHEIGHT
- {
- HelpID = "cui:NumericField:MD_INSERT_OBJECT_IFRAME:NM_MARGINHEIGHT";
- Border = TRUE ;
- Pos = MAP_APPFONT ( 167 , 72 ) ;
- Size = MAP_APPFONT ( 20 , 12 ) ;
- TabStop = TRUE ;
- Repeat = TRUE ;
- Spin = TRUE ;
- Minimum = 0 ;
- Maximum = 99 ;
- Last = 10 ;
- SpinSize = 1 ;
- };
- CheckBox CB_MARGINHEIGHTDEFAULT
- {
- HelpID = "cui:CheckBox:MD_INSERT_OBJECT_IFRAME:CB_MARGINHEIGHTDEFAULT";
- TabStop = TRUE ;
- Pos = MAP_APPFONT ( 190 , 74 ) ;
- Size = MAP_APPFONT ( 50 , 10 ) ;
- Text [ en-US ] = "Defa~ult" ;
- };
- FixedLine FL_SEP_RIGHT
- {
- Pos = MAP_APPFONT ( 125 , 51 ) ;
- Size = MAP_APPFONT ( 4 , 38 ) ;
- };
- FixedLine GB_MARGIN
- {
- Pos = MAP_APPFONT ( 130 , 42 ) ;
- Size = MAP_APPFONT ( 110 , 8 ) ;
- Text [ en-US ] = "Spacing to contents" ;
- };
-};
-
-String MD_INSERT_OBJECT_IFRAME
-{
- Text [ en-US ] = "Select File for Floating Frame" ;
-};
diff --git a/cui/source/dialogs/thesdlg.cxx b/cui/source/dialogs/thesdlg.cxx
index 47a396549d91..590dda315bac 100644
--- a/cui/source/dialogs/thesdlg.cxx
+++ b/cui/source/dialogs/thesdlg.cxx
@@ -48,7 +48,7 @@
#include <com/sun/star/linguistic2/XThesaurus.hpp>
#include <com/sun/star/linguistic2/XMeaning.hpp>
-#include <com/sun/star/linguistic2/XLinguServiceManager.hpp>
+#include <com/sun/star/linguistic2/LinguServiceManager.hpp>
using namespace ::com::sun::star;
using ::rtl::OUString;
@@ -58,7 +58,7 @@ using ::rtl::OUString;
LookUpComboBox::LookUpComboBox(Window *pParent)
: ComboBox(pParent, WB_LEFT|WB_DROPDOWN|WB_VCENTER|WB_3DLOOK)
{
- SetBestDropDownLineCount();
+ EnableAutoSize(true);
m_aModifyTimer.SetTimeoutHdl( LINK( this, LookUpComboBox, ModifyTimer_Hdl ) );
m_aModifyTimer.SetTimeout( 500 );
@@ -130,7 +130,7 @@ void ReplaceEdit::SetText( const XubString& rStr, const Selection& rNewSelection
AlternativesString::AlternativesString(
ThesaurusAlternativesCtrl &rControl,
- SvLBoxEntry* pEntry, sal_uInt16 nFlags, const String& rStr ) :
+ SvTreeListEntry* pEntry, sal_uInt16 nFlags, const String& rStr ) :
SvLBoxString( pEntry, nFlags, rStr ),
m_rControlImpl( rControl )
@@ -140,7 +140,7 @@ AlternativesString::AlternativesString(
void AlternativesString::Paint(
const Point& rPos,
SvTreeListBox& rDev, sal_uInt16,
- SvLBoxEntry* pEntry )
+ SvTreeListEntry* pEntry )
{
AlternativesExtraData* pData = m_rControlImpl.GetExtraData( pEntry );
Point aPos( rPos );
@@ -187,7 +187,7 @@ void ThesaurusAlternativesCtrl::ClearExtraData()
}
void ThesaurusAlternativesCtrl::SetExtraData(
- const SvLBoxEntry *pEntry,
+ const SvTreeListEntry *pEntry,
const AlternativesExtraData &rData )
{
if (!pEntry)
@@ -201,7 +201,7 @@ void ThesaurusAlternativesCtrl::SetExtraData(
}
AlternativesExtraData * ThesaurusAlternativesCtrl::GetExtraData(
- const SvLBoxEntry *pEntry )
+ const SvTreeListEntry *pEntry )
{
AlternativesExtraData *pRes = NULL;
UserDataMap_t::iterator aIt( m_aUserData.find( pEntry ) );
@@ -210,9 +210,9 @@ AlternativesExtraData * ThesaurusAlternativesCtrl::GetExtraData(
return pRes;
}
-SvLBoxEntry * ThesaurusAlternativesCtrl::AddEntry( sal_Int32 nVal, const String &rText, bool bIsHeader )
+SvTreeListEntry * ThesaurusAlternativesCtrl::AddEntry( sal_Int32 nVal, const String &rText, bool bIsHeader )
{
- SvLBoxEntry* pEntry = new SvLBoxEntry;
+ SvTreeListEntry* pEntry = new SvTreeListEntry;
String aText;
if (bIsHeader && nVal >= 0)
{
@@ -392,7 +392,7 @@ IMPL_LINK( SvxThesaurusDialog, WordSelectHdl_Impl, ComboBox *, pBox )
IMPL_LINK( SvxThesaurusDialog, AlternativesSelectHdl_Impl, SvxCheckListBox *, pBox )
{
- SvLBoxEntry *pEntry = pBox ? pBox->GetCurEntry() : NULL;
+ SvTreeListEntry *pEntry = pBox ? pBox->GetCurEntry() : NULL;
if (pEntry)
{
AlternativesExtraData * pData = m_pAlternativesCT->GetExtraData( pEntry );
@@ -409,7 +409,7 @@ IMPL_LINK( SvxThesaurusDialog, AlternativesSelectHdl_Impl, SvxCheckListBox *, pB
IMPL_LINK( SvxThesaurusDialog, AlternativesDoubleClickHdl_Impl, SvxCheckListBox *, pBox )
{
- SvLBoxEntry *pEntry = pBox ? pBox->GetCurEntry() : NULL;
+ SvTreeListEntry *pEntry = pBox ? pBox->GetCurEntry() : NULL;
if (pEntry)
{
AlternativesExtraData * pData = m_pAlternativesCT->GetExtraData( pEntry );
diff --git a/cui/source/dialogs/thesdlg_impl.hxx b/cui/source/dialogs/thesdlg_impl.hxx
index 8c827fde6b72..1349ab3cb7b0 100644
--- a/cui/source/dialogs/thesdlg_impl.hxx
+++ b/cui/source/dialogs/thesdlg_impl.hxx
@@ -45,7 +45,7 @@
using namespace ::com::sun::star;
using ::rtl::OUString;
-class SvLBoxEntry;
+class SvTreeListEntry;
class ThesaurusAlternativesCtrl;
class AlternativesString : public SvLBoxString
@@ -54,9 +54,9 @@ class AlternativesString : public SvLBoxString
public:
AlternativesString( ThesaurusAlternativesCtrl &rControl,
- SvLBoxEntry* pEntry, sal_uInt16 nFlags, const String& rStr );
+ SvTreeListEntry* pEntry, sal_uInt16 nFlags, const String& rStr );
- virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvLBoxEntry* pEntry);
+ virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvTreeListEntry* pEntry);
};
#endif
diff --git a/cui/source/factory/dlgfact.cxx b/cui/source/factory/dlgfact.cxx
index 3c019294e1bf..41124d6b9d2e 100644
--- a/cui/source/factory/dlgfact.cxx
+++ b/cui/source/factory/dlgfact.cxx
@@ -1208,15 +1208,8 @@ AbstractScriptSelectorDialog*
AbstractDialogFactory_Impl::CreateScriptSelectorDialog(
Window* pParent, sal_Bool bShowSlots, const Reference< frame::XFrame >& _rxFrame )
{
- SvxScriptSelectorDialog* pDlg = NULL;
-
- pDlg = new SvxScriptSelectorDialog( pParent, bShowSlots, _rxFrame );
-
- if (pDlg)
- {
- return new AbstractScriptSelectorDialog_Impl( pDlg );
- }
- return 0;
+ SvxScriptSelectorDialog* pDlg = new SvxScriptSelectorDialog(pParent, bShowSlots, _rxFrame);
+ return new AbstractScriptSelectorDialog_Impl(pDlg);
}
String AbstractScriptSelectorDialog_Impl::GetScriptURL() const
@@ -1510,7 +1503,7 @@ AbstractSvxHpLinkDlg * AbstractDialogFactory_Impl::CreateSvxHpLinkDlg (Window* p
}
AbstractFmSearchDialog* AbstractDialogFactory_Impl::CreateFmSearchDialog(Window* pParent, //add for FmSearchDialog
- const String& strInitialText,
+ const OUString& strInitialText,
const ::std::vector< String >& _rContexts,
sal_Int16 nInitialContext,
const Link& lnkContextSupplier)
diff --git a/cui/source/factory/dlgfact.hxx b/cui/source/factory/dlgfact.hxx
index d85f92339fbc..3c97f2ba7c7e 100644
--- a/cui/source/factory/dlgfact.hxx
+++ b/cui/source/factory/dlgfact.hxx
@@ -709,7 +709,7 @@ public:
SfxBindings* pBindings,
sal_uInt32 nResId);
virtual AbstractFmSearchDialog* CreateFmSearchDialog(Window* pParent, //add for FmSearchDialog
- const String& strInitialText,
+ const OUString& strInitialText,
const ::std::vector< String >& _rContexts,
sal_Int16 nInitialContext,
const Link& lnkContextSupplier);
diff --git a/cui/source/inc/acccfg.hxx b/cui/source/inc/acccfg.hxx
index ca4a8c5c6dbd..a837b8d2d441 100644
--- a/cui/source/inc/acccfg.hxx
+++ b/cui/source/inc/acccfg.hxx
@@ -61,7 +61,8 @@ class SfxAccCfgTabListBox_Impl : public SvTabListBox
void KeyInput( const KeyEvent &rKEvt );
protected:
- virtual void InitEntry( SvLBoxEntry*, const XubString&, const Image&, const Image&, SvLBoxButtonKind eButtonKind );
+ virtual void InitEntry(SvTreeListEntry*, const OUString&, const Image&,
+ const Image&, SvLBoxButtonKind eButtonKind);
public:
SfxAccCfgTabListBox_Impl(
@@ -171,7 +172,7 @@ private:
void Init(const css::uno::Reference< css::ui::XAcceleratorConfiguration >& pAccMgr);
void ResetConfig();
- void CreateCustomItems( SvLBoxEntry* pEntry, const String& aCol1, const String& aCol2 );
+ void CreateCustomItems( SvTreeListEntry* pEntry, const String& aCol1, const String& aCol2 );
public:
SfxAcceleratorConfigPage( Window *pParent, const SfxItemSet& rItemSet );
diff --git a/cui/source/inc/autocdlg.hxx b/cui/source/inc/autocdlg.hxx
index e6cd1031d512..a695604698c1 100644
--- a/cui/source/inc/autocdlg.hxx
+++ b/cui/source/inc/autocdlg.hxx
@@ -83,8 +83,8 @@ class OfaACorrCheckListBox : public SvxSimpleTable
sal_Bool IsChecked(sal_uLong nPos, sal_uInt16 nCol = 0);
void CheckEntryPos(sal_uLong nPos, sal_uInt16 nCol, sal_Bool bChecked);
- SvButtonState GetCheckButtonState( SvLBoxEntry*, sal_uInt16 nCol ) const;
- void SetCheckButtonState( SvLBoxEntry*, sal_uInt16 nCol, SvButtonState );
+ SvButtonState GetCheckButtonState( SvTreeListEntry*, sal_uInt16 nCol ) const;
+ void SetCheckButtonState( SvTreeListEntry*, sal_uInt16 nCol, SvButtonState );
};
// class OfaAutocorrOptionsPage ------------------------------------------
@@ -170,7 +170,7 @@ class OfaSwAutoFmtOptionsPage : public SfxTabPage
DECL_LINK(SelectHdl, OfaACorrCheckListBox*);
DECL_LINK(EditHdl, void *);
- SvLBoxEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
+ SvTreeListEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
OfaSwAutoFmtOptionsPage( Window* pParent,
@@ -397,7 +397,7 @@ private:
String ChangeStringExt_Impl( sal_UCS4 );
- SvLBoxEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
+ SvTreeListEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
OfaQuoteTabPage( Window* pParent, const SfxItemSet& rSet );
public:
diff --git a/cui/source/inc/cfg.hxx b/cui/source/inc/cfg.hxx
index 3db2a5506981..bccef1c089c1 100644
--- a/cui/source/inc/cfg.hxx
+++ b/cui/source/inc/cfg.hxx
@@ -179,7 +179,7 @@ private:
com::sun::star::container::XIndexContainer >& rNewMenuBar,
com::sun::star::uno::Reference<
com::sun::star::lang::XSingleComponentFactory >& rFactory,
- SvLBoxEntry *pParent = NULL );
+ SvTreeListEntry *pParent = NULL );
void ApplyMenu(
com::sun::star::uno::Reference<
@@ -331,16 +331,16 @@ public:
virtual sal_Int8 AcceptDrop( const AcceptDropEvent& rEvt );
- virtual sal_Bool NotifyAcceptDrop( SvLBoxEntry* pEntry );
+ virtual sal_Bool NotifyAcceptDrop( SvTreeListEntry* pEntry );
- virtual sal_Bool NotifyMoving( SvLBoxEntry*, SvLBoxEntry*,
- SvLBoxEntry*&, sal_uLong& );
+ virtual sal_Bool NotifyMoving( SvTreeListEntry*, SvTreeListEntry*,
+ SvTreeListEntry*&, sal_uLong& );
- virtual sal_Bool NotifyCopying( SvLBoxEntry*, SvLBoxEntry*,
- SvLBoxEntry*&, sal_uLong&);
+ virtual sal_Bool NotifyCopying( SvTreeListEntry*, SvTreeListEntry*,
+ SvTreeListEntry*&, sal_uLong&);
virtual DragDropMode NotifyStartDrag(
- TransferDataContainer&, SvLBoxEntry* );
+ TransferDataContainer&, SvTreeListEntry* );
virtual void DragFinished( sal_Int8 );
@@ -370,7 +370,7 @@ private:
DECL_LINK( SelectSaveInLocation, ListBox * );
DECL_LINK( AsyncInfoMsg, String* );
- bool SwapEntryData( SvLBoxEntry* pSourceEntry, SvLBoxEntry* pTargetEntry );
+ bool SwapEntryData( SvTreeListEntry* pSourceEntry, SvTreeListEntry* pTargetEntry );
void AlignControls();
protected:
@@ -428,14 +428,14 @@ protected:
void PositionContentsListBox();
- SvLBoxEntry* InsertEntry( SvxConfigEntry* pNewEntryData,
- SvLBoxEntry* pTarget = NULL,
+ SvTreeListEntry* InsertEntry( SvxConfigEntry* pNewEntryData,
+ SvTreeListEntry* pTarget = NULL,
bool bFront = sal_False );
void AddSubMenusToUI( const String& rBaseTitle,
SvxConfigEntry* pParentData );
- SvLBoxEntry* InsertEntryIntoUI ( SvxConfigEntry* pNewEntryData,
+ SvTreeListEntry* InsertEntryIntoUI ( SvxConfigEntry* pNewEntryData,
sal_uLong nPos = LIST_APPEND );
SvxEntries* FindParentForChild( SvxEntries* pParentEntries,
@@ -449,14 +449,14 @@ public:
SaveInData* GetSaveInData() { return pCurrentSaveInData; }
- SvLBoxEntry* AddFunction( SvLBoxEntry* pTarget = NULL,
+ SvTreeListEntry* AddFunction( SvTreeListEntry* pTarget = NULL,
bool bFront = sal_False,
bool bAllowDuplicates = sal_False );
virtual void MoveEntry( bool bMoveUp );
- bool MoveEntryData( SvLBoxEntry* pSourceEntry,
- SvLBoxEntry* pTargetEntry );
+ bool MoveEntryData( SvTreeListEntry* pSourceEntry,
+ SvTreeListEntry* pTargetEntry );
sal_Bool FillItemSet( SfxItemSet& );
void Reset( const SfxItemSet& );
@@ -528,7 +528,7 @@ class SvxMainMenuOrganizerDialog : public ModalDialog
HelpButton aHelpButton;
SvxEntries* pEntries;
- SvLBoxEntry* pNewMenuEntry;
+ SvTreeListEntry* pNewMenuEntry;
bool bModified;
void UpdateButtonStates();
@@ -556,7 +556,7 @@ class SvxToolbarEntriesListBox : public SvxMenuEntriesListBox
SvLBoxButtonData* m_pButtonData;
SvxConfigPage* pPage;
- void ChangeVisibility( SvLBoxEntry* pEntry );
+ void ChangeVisibility( SvTreeListEntry* pEntry );
protected:
@@ -582,10 +582,10 @@ public:
{ return m_aCheckBoxImageSizePixel; }
virtual sal_Bool NotifyMoving(
- SvLBoxEntry*, SvLBoxEntry*, SvLBoxEntry*&, sal_uLong& );
+ SvTreeListEntry*, SvTreeListEntry*, SvTreeListEntry*&, sal_uLong& );
virtual sal_Bool NotifyCopying(
- SvLBoxEntry*, SvLBoxEntry*, SvLBoxEntry*&, sal_uLong&);
+ SvTreeListEntry*, SvTreeListEntry*, SvTreeListEntry*&, sal_uLong&);
void KeyInput( const KeyEvent& rKeyEvent );
};
@@ -613,7 +613,7 @@ public:
SvxToolbarConfigPage( Window *pParent, const SfxItemSet& rItemSet );
~SvxToolbarConfigPage();
- SvLBoxEntry* AddFunction( SvLBoxEntry* pTarget = NULL,
+ SvTreeListEntry* AddFunction( SvTreeListEntry* pTarget = NULL,
bool bFront = sal_False,
bool bAllowDuplicates = sal_True );
diff --git a/cui/source/inc/cfgutil.hxx b/cui/source/inc/cfgutil.hxx
index 52584ebc822a..d2ec922822f2 100644
--- a/cui/source/inc/cfgutil.hxx
+++ b/cui/source/inc/cfgutil.hxx
@@ -106,7 +106,7 @@ class SfxConfigFunctionListBox_Impl : public SvTreeListBox
{
friend class SfxConfigGroupListBox_Impl;
Timer aTimer;
- SvLBoxEntry* pCurEntry;
+ SvTreeListEntry* pCurEntry;
SfxGroupInfoArr_Impl aArr;
SfxStylesInfo_Impl* pStylesInfo;
@@ -119,7 +119,7 @@ public:
void ClearAll();
using Window::GetHelpText;
- String GetHelpText( SvLBoxEntry *pEntry );
+ String GetHelpText( SvTreeListEntry *pEntry );
String GetCurCommand();
String GetCurLabel();
String GetSelectedScriptURI();
@@ -163,9 +163,9 @@ class SfxConfigGroupListBox_Impl : public SvTreeListBox
SfxStylesInfo_Impl* pStylesInfo;
protected:
- virtual void RequestingChildren( SvLBoxEntry *pEntry);
+ virtual void RequestingChildren( SvTreeListEntry *pEntry);
using SvListView::Expand;
- virtual sal_Bool Expand( SvLBoxEntry* pParent );
+ virtual sal_Bool Expand( SvTreeListEntry* pParent );
public:
SfxConfigGroupListBox_Impl ( Window* pParent,
@@ -179,7 +179,7 @@ public:
const ::rtl::OUString& sModuleLongName);
void SetFunctionListBox( SfxConfigFunctionListBox_Impl *pBox )
{ pFunctionListBox = pBox; }
- void Open( SvLBoxEntry*, sal_Bool );
+ void Open( SvTreeListEntry*, sal_Bool );
void GroupSelected();
void SelectMacro( const SfxMacroInfoItem* );
void SelectMacro( const String&, const String& );
diff --git a/cui/source/inc/cuifmsearch.hxx b/cui/source/inc/cuifmsearch.hxx
index 36e5e0d70291..64cbd011aadc 100644
--- a/cui/source/inc/cuifmsearch.hxx
+++ b/cui/source/inc/cuifmsearch.hxx
@@ -114,7 +114,7 @@ public:
(of course needed : the string number i in strUsedFields of a context must correspond with the interface number i in the
arrFields of the context)
*/
- FmSearchDialog(Window* pParent, const String& strInitialText, const ::std::vector< String >& _rContexts, sal_Int16 nInitialContext,
+ FmSearchDialog(Window* pParent, const OUString& strInitialText, const ::std::vector< String >& _rContexts, sal_Int16 nInitialContext,
const Link& lnkContextSupplier);
virtual ~FmSearchDialog();
@@ -140,7 +140,7 @@ public:
protected:
virtual sal_Bool Close();
- void Init(const String& strVisibleFields, const String& strInitialText);
+ void Init(const OUString& strVisibleFields, const OUString& strInitialText);
// only to be used out of the constructors
void OnFound(const ::com::sun::star::uno::Any& aCursorPos, sal_Int16 nFieldPos);
diff --git a/cui/source/inc/cuigaldlg.hxx b/cui/source/inc/cuigaldlg.hxx
index 21f4cb76f07f..6c7e489929fd 100644
--- a/cui/source/inc/cuigaldlg.hxx
+++ b/cui/source/inc/cuigaldlg.hxx
@@ -38,7 +38,7 @@
#include <svx/galctrl.hxx>
#include <svx/galmisc.hxx>
#include <com/sun/star/media/XPlayer.hpp>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/XFolderPicker2.hpp>
#include <svtools/dialogclosedlistener.hxx>
#include <vector>
@@ -335,7 +335,7 @@ class TPGalleryThemeProperties : public SfxTabPage
::com::sun::star::uno::Reference< ::svt::DialogClosedListener > xDialogListener;
::com::sun::star::uno::Reference< ::com::sun::star::media::XPlayer > xMediaPlayer;
- ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFolderPicker > xFolderPicker;
+ ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFolderPicker2 > xFolderPicker;
virtual void Reset( const SfxItemSet& /*rSet*/ ) {}
virtual sal_Bool FillItemSet( SfxItemSet& /*rSet*/ ) { return sal_True; }
diff --git a/cui/source/inc/cuires.hrc b/cui/source/inc/cuires.hrc
index 0345486fdb29..c497fda23f2f 100644
--- a/cui/source/inc/cuires.hrc
+++ b/cui/source/inc/cuires.hrc
@@ -24,6 +24,16 @@
// Resource-Id's ------------------------------------------------------------
+#define RID_SVX_MSGBOX_JAVA_RESTART (RID_SVX_START + 0)
+#define RID_SVX_MSGBOX_OPTIONS_RESTART (RID_SVX_START + 1)
+#define RID_SVX_MSGBOX_LANGUAGE_RESTART (RID_SVX_START + 2)
+#define RID_CUI_DIALOG_COLORPICKER (RID_SVX_START + 3)
+
+#define RID_CUIIMG_HARDDISK (RID_SVX_START + 4)
+#define RID_CUIIMG_LIB (RID_SVX_START + 5)
+#define RID_CUIIMG_MACRO (RID_SVX_START + 6)
+#define RID_CUIIMG_DOC (RID_SVX_START + 7)
+
// Gallery
#define RID_CUI_GALLERY_START (RID_SVX_START + 360)
// RID_CUI_GALLERY_END (RID_SVX_START + 410)
@@ -157,15 +167,12 @@
#define RID_SVXSTR_COLOR_CONFIG_SAVE2 (RID_SVX_START + 854)
#define RID_SVXSTR_COLOR_CONFIG_DELETE (RID_SVX_START + 855)
#define RID_SVXSTR_OPT_DOUBLE_DICTS (RID_SVX_START + 320)
-#define RID_SVX_MSGBOX_LANGUAGE_RESTART ( RID_SVX_START + 2 )
#define RID_SVXERR_OPT_PROXYPORTS (RID_SVX_START + 224)
#define RID_SVXDLG_OPT_JAVASCRIPT_DISABLE (RID_SVX_START + 225)
#define RID_SVXDLG_JAVA_PARAMETER (RID_SVX_START + 254)
#define RID_SVXDLG_JAVA_CLASSPATH (RID_SVX_START + 255)
#define RID_SVXERR_JRE_NOT_RECOGNIZED (RID_SVX_START + 256)
#define RID_SVXERR_JRE_FAILED_VERSION (RID_SVX_START + 257)
-#define RID_SVX_MSGBOX_JAVA_RESTART ( RID_SVX_START + 0 )
-#define RID_SVX_MSGBOX_OPTIONS_RESTART ( RID_SVX_START + 1 )
#define RID_SVXDLG_LNG_ED_NUM_PREBREAK (RID_SVX_START + 830)
#define RID_SVXDLG_EDIT_MODULES (RID_SVX_START + 831)
#define RID_SVXSTR_PATH_NAME_START (RID_SVX_START + 1003)
@@ -252,9 +259,6 @@
// icon choice
#define RID_SVXSTR_ICONCHOICEDLG_RESETBUT (RID_SVX_START + 580)
-// insert rows&cols
-#define DLG_INS_ROW_COL (RID_SVX_START + 156)
-
// SvxMultiFileDialog
#define RID_SVXSTR_FILE_TITLE (RID_SVX_START + 482)
#define RID_SVXSTR_FILE_HEADLINE (RID_SVX_START + 483)
@@ -315,7 +319,7 @@
#define RID_SVXPAGE_EVENTS (RID_SVX_START + 295)
#define RID_SVXPAGE_CONFIGGROUPBOX (RID_SVX_START + 304)
#define RID_SVXDLG_ASSIGNCOMPONENT (RID_SVX_START + 297)
-#define RID_DLG_SCRIPTSELECTOR (RID_SVX_START + 259)
+
#define RID_SVXSTR_NEW_MENU (RID_SVX_START + 1039)
#define RID_SVXSTR_NEW_TOOLBAR (RID_SVX_START + 1040)
#define RID_SVXSTR_MOVE_MENU (RID_SVX_START + 1041)
@@ -417,9 +421,14 @@
#define RID_SVXSTR_EVENT_CONTENTCHANGED (RID_SVX_START + 1194)
#define RID_SVXSTR_ERR_TEXTNOTFOUND (RID_SVX_START + 1195)
-
-#define RID_SVXDLG_CERTPATH (RID_SVX_START + 1198)
-
-#define RID_CUI_DIALOG_COLORPICKER (RID_SVX_START + 3)
+#define RID_SVXSTR_SELECT_FILE_IFRAME (RID_SVX_START + 1196)
+#define RID_SVXSTR_MYMACROS (RID_SVX_START + 1197)
+#define RID_SVXSTR_PRODMACROS (RID_SVX_START + 1198)
+#define RID_SVXSTR_SELECTOR_ADD_COMMANDS (RID_SVX_START + 1199)
+#define RID_SVXSTR_SELECTOR_RUN (RID_SVX_START + 1200)
+#define RID_SVXSTR_ROW (RID_SVX_START + 1201)
+#define RID_SVXSTR_COL (RID_SVX_START + 1202)
+
+#define RID_SVXDLG_CERTPATH (RID_SVX_START + 1203)
#endif
diff --git a/cui/source/inc/cuitabline.hxx b/cui/source/inc/cuitabline.hxx
index 5245b3941b2c..2afb2e1ccb24 100644
--- a/cui/source/inc/cuitabline.hxx
+++ b/cui/source/inc/cuitabline.hxx
@@ -1,30 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
#ifndef _CUI_TAB_LINE_HXX
#define _CUI_TAB_LINE_HXX
@@ -124,6 +116,10 @@ private:
FixedText maFTEdgeStyle;
LineEndLB maLBEdgeStyle;
+ // LineCaps
+ FixedText maFTCapStyle;
+ LineEndLB maLBCapStyle;
+
//#58425# symbols on a line (e. g. StarChart) ->
/** a list of symbols to be shown in menu. Symbol at position SID_ATTR_SYMBOLTYPE is to be shown in preview.
The list position is to be used cyclic. */
@@ -196,6 +192,9 @@ private:
// #116827#
DECL_LINK( ChangeEdgeStyleHdl_Impl, void * );
+ // LineCaps
+ DECL_LINK ( ChangeCapStyleHdl_Impl, void * );
+
sal_Bool FillXLSet_Impl();
#endif
diff --git a/cui/source/inc/dbregister.hxx b/cui/source/inc/dbregister.hxx
index d78e4618fe94..224b393bb493 100644
--- a/cui/source/inc/dbregister.hxx
+++ b/cui/source/inc/dbregister.hxx
@@ -27,7 +27,7 @@
#include "ControlFocusHelper.hxx"
#include <sfx2/basedlgs.hxx>
-class SvLBoxEntry;
+class SvTreeListEntry;
namespace svx
{
class OptHeaderTabListBox;
@@ -53,7 +53,7 @@ namespace svx
HeaderBar* pHeaderBar;
::svx::OptHeaderTabListBox* pPathBox;
- SvLBoxEntry* m_pCurEntry;
+ SvTreeListEntry* m_pCurEntry;
sal_uLong m_nOldCount;
sal_Bool m_bModified;
@@ -85,7 +85,7 @@ namespace svx
@param _pEntry
The entry to remove if the entry will be changed
*/
- void openLinkDialog(const String& _sOldName,const String& _sOldLocation,SvLBoxEntry* _pEntry = NULL);
+ void openLinkDialog(const String& _sOldName,const String& _sOldLocation,SvTreeListEntry* _pEntry = NULL);
#endif
diff --git a/cui/source/inc/helpid.hrc b/cui/source/inc/helpid.hrc
index 38ed2206142a..9f2b96a808eb 100644
--- a/cui/source/inc/helpid.hrc
+++ b/cui/source/inc/helpid.hrc
@@ -170,11 +170,8 @@
#define HID_SVX_CONFIG_EVENT "CUI_HID_SVX_CONFIG_EVENT"
#define HID_CONFIG_EVENT_OFFICE_BASED "CUI_HID_CONFIG_EVENT_OFFICE_BASED"
#define HID_CONFIG_EVENT_DOCUMENT_BASED "CUI_HID_CONFIG_EVENT_DOCUMENT_BASED"
-#define HID_SELECTOR_DIALOG "CUI_HID_SELECTOR_DIALOG"
-#define HID_SELECTOR_CATEGORIES "CUI_HID_SELECTOR_CATEGORIES"
#define HID_SVX_CONFIG_TOOLBAR "CUI_HID_SVX_CONFIG_TOOLBAR"
#define HID_SVX_CONFIG_TOOLBAR_CONTENTS "CUI_HID_SVX_CONFIG_TOOLBAR_CONTENTS"
-#define HID_SELECTOR_COMMANDS "CUI_HID_SELECTOR_COMMANDS"
#define HID_GALLERY_EDIT_MSNAME "CUI_HID_GALLERY_EDIT_MSNAME"
#define HID_SVX_CONFIG_MENU "CUI_HID_SVX_CONFIG_MENU"
#define HID_SVX_CONFIG_MENU_CONTENTS "CUI_HID_SVX_CONFIG_MENU_CONTENTS"
@@ -253,8 +250,6 @@
#define HID_HANGULHANJA_EDIT_DLG "CUI_HID_HANGULHANJA_EDIT_DLG"
#define HID_HANGULHANJA_OPT_DICTS_LB "CUI_HID_HANGULHANJA_OPT_DICTS_LB"
#define HID_MULTIPATH "CUI_HID_MULTIPATH"
-#define HID_SCRIPTORG_DIALOG "CUI_HID_SCRIPTORG_DIALOG"
-#define HID_SCRIPTSBOX "CUI_HID_SCRIPTSBOX"
#define HID_SPELLCHECK "CUI_HID_SPELLCHECK"
#define HID_TPSIZE_CTRL "CUI_HID_TPSIZE_CTRL"
#define HID_TPROTATION_CTRL1 "CUI_HID_TPROTATION_CTRL1"
diff --git a/cui/source/inc/hlmarkwn.hxx b/cui/source/inc/hlmarkwn.hxx
index eb51856f96a6..d9758f43c19c 100644
--- a/cui/source/inc/hlmarkwn.hxx
+++ b/cui/source/inc/hlmarkwn.hxx
@@ -73,9 +73,9 @@ private:
protected:
sal_Bool RefreshFromDoc( ::rtl::OUString aURL );
- SvLBoxEntry* FindEntry ( String aStrName );
+ SvTreeListEntry* FindEntry ( String aStrName );
void ClearTree();
- int FillTree( ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > xLinks, SvLBoxEntry* pParentEntry =NULL );
+ int FillTree( ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > xLinks, SvTreeListEntry* pParentEntry =NULL );
virtual void Move ();
diff --git a/cui/source/inc/insdlg.hxx b/cui/source/inc/insdlg.hxx
index c4486c98de1a..37fe1e2a7d73 100644
--- a/cui/source/inc/insdlg.hxx
+++ b/cui/source/inc/insdlg.hxx
@@ -44,7 +44,6 @@ protected:
const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& m_xStorage;
comphelper::EmbeddedObjectContainer aCnt;
- InsertObjectDialog_Impl( Window * pParent, const ResId & rResId, const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage );
InsertObjectDialog_Impl(Window * pParent, const OString& rID,
const OUString& rUIXMLDescription,
const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage);
@@ -116,45 +115,35 @@ public:
class SfxInsertFloatingFrameDialog : public InsertObjectDialog_Impl
{
private:
- FixedText aFTName;
- Edit aEDName;
- FixedText aFTURL;
- Edit aEDURL;
- PushButton aBTOpen;
-
- FixedLine aFLScrolling;
- RadioButton aRBScrollingOn;
- RadioButton aRBScrollingOff;
- RadioButton aRBScrollingAuto;
-
-
- FixedLine aFLSepLeft;
- FixedLine aFLFrameBorder;
- RadioButton aRBFrameBorderOn;
- RadioButton aRBFrameBorderOff;
-
- FixedLine aFLSepRight;
- FixedLine aFLMargin;
- FixedText aFTMarginWidth;
- NumericField aNMMarginWidth;
- CheckBox aCBMarginWidthDefault;
- FixedText aFTMarginHeight;
- NumericField aNMMarginHeight;
- CheckBox aCBMarginHeightDefault;
-
- OKButton aOKButton1;
- CancelButton aCancelButton1;
- HelpButton aHelpButton1;
-
- DECL_STATIC_LINK( SfxInsertFloatingFrameDialog, OpenHdl, PushButton* );
- DECL_STATIC_LINK( SfxInsertFloatingFrameDialog, CheckHdl, CheckBox* );
+ Edit* m_pEDName;
+ Edit* m_pEDURL;
+ PushButton* m_pBTOpen;
+
+ RadioButton* m_pRBScrollingOn;
+ RadioButton* m_pRBScrollingOff;
+ RadioButton* m_pRBScrollingAuto;
+
+ RadioButton* m_pRBFrameBorderOn;
+ RadioButton* m_pRBFrameBorderOff;
+
+ FixedText* m_pFTMarginWidth;
+ NumericField* m_pNMMarginWidth;
+ CheckBox* m_pCBMarginWidthDefault;
+ FixedText* m_pFTMarginHeight;
+ NumericField* m_pNMMarginHeight;
+ CheckBox* m_pCBMarginHeightDefault;
+
+ DECL_STATIC_LINK(SfxInsertFloatingFrameDialog, OpenHdl, PushButton* );
+ DECL_STATIC_LINK(SfxInsertFloatingFrameDialog, CheckHdl, CheckBox* );
+
+ void Init();
public:
- SfxInsertFloatingFrameDialog( Window *pParent,
- const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage );
- SfxInsertFloatingFrameDialog( Window* pParent,
- const com::sun::star::uno::Reference < com::sun::star::embed::XEmbeddedObject >& xObj );
- virtual short Execute();
+ SfxInsertFloatingFrameDialog(Window *pParent,
+ const com::sun::star::uno::Reference < com::sun::star::embed::XStorage >& xStorage );
+ SfxInsertFloatingFrameDialog( Window* pParent,
+ const com::sun::star::uno::Reference < com::sun::star::embed::XEmbeddedObject >& xObj );
+ virtual short Execute();
};
#endif // _SVX_INSDLG_HXX
diff --git a/cui/source/inc/insrc.hxx b/cui/source/inc/insrc.hxx
index 4e472d43691b..98f393f082fa 100644
--- a/cui/source/inc/insrc.hxx
+++ b/cui/source/inc/insrc.hxx
@@ -31,21 +31,14 @@
class SvxInsRowColDlg : public SvxAbstractInsRowColDlg, public ModalDialog
{
- FixedText aCount;
- NumericField aCountEdit;
- FixedLine aInsFL;
+ NumericField* m_pCountEdit;
- RadioButton aBeforeBtn;
- RadioButton aAfterBtn;
- FixedLine aPosFL;
+ RadioButton* m_pBeforeBtn;
+ RadioButton* m_pAfterBtn;
rtl::OUString aRow;
rtl::OUString aCol;
- OKButton aOKBtn;
- CancelButton aCancelBtn;
- HelpButton aHelpBtn;
-
bool bColumn;
public:
diff --git a/cui/source/inc/optdict.hxx b/cui/source/inc/optdict.hxx
index f1537a25a8d0..a8507a6cc2c9 100644
--- a/cui/source/inc/optdict.hxx
+++ b/cui/source/inc/optdict.hxx
@@ -151,7 +151,7 @@ private:
void SetDicReadonly_Impl( ::com::sun::star::uno::Reference<
::com::sun::star::linguistic2::XDictionary > &xDic );
- void RemoveDictEntry(SvLBoxEntry* pEntry);
+ void RemoveDictEntry(SvTreeListEntry* pEntry);
sal_uInt16 GetLBInsertPos(const String &rDicWord);
#endif
diff --git a/cui/source/inc/optlingu.hxx b/cui/source/inc/optlingu.hxx
index eefada0c45ff..75e4b1214063 100644
--- a/cui/source/inc/optlingu.hxx
+++ b/cui/source/inc/optlingu.hxx
@@ -40,7 +40,7 @@ namespace linguistic2{
class XDictionaryList;
}}}}
-class SvLBoxEntry;
+class SvTreeListEntry;
class SvxLinguData_Impl;
// define ----------------------------------------------------------------
@@ -75,7 +75,7 @@ class SvxEditModulesDlg : public ModalDialog
SvLBoxButtonData* pCheckButtonData;
- SvLBoxEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
+ SvTreeListEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
#ifdef _SVX_OPTLINGU_CXX
DECL_LINK( SelectHdl_Impl, SvxCheckListBox * );
@@ -138,7 +138,7 @@ private:
SvxLinguData_Impl* pLinguData;
SvxLinguTabPage( Window* pParent, const SfxItemSet& rCoreSet );
- SvLBoxEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
+ SvTreeListEntry* CreateEntry(String& rTxt, sal_uInt16 nCol);
void AddDicBoxEntry( const com::sun::star::uno::Reference< com::sun::star::linguistic2::XDictionary > &rxDic, sal_uInt16 nIdx );
sal_uLong GetDicUserData( const com::sun::star::uno::Reference< com::sun::star::linguistic2::XDictionary > &rxDic, sal_uInt16 nIdx );
diff --git a/cui/source/inc/optpath.hxx b/cui/source/inc/optpath.hxx
index db237f0344a4..4a25dfe424a5 100644
--- a/cui/source/inc/optpath.hxx
+++ b/cui/source/inc/optpath.hxx
@@ -30,7 +30,7 @@ class HeaderBar;
#endif
#include "ControlFocusHelper.hxx"
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/XFolderPicker2.hpp>
#include <svtools/dialogclosedlistener.hxx>
// forward ---------------------------------------------------------------
@@ -59,7 +59,7 @@ private:
OptPath_Impl* pImpl;
::com::sun::star::uno::Reference< ::svt::DialogClosedListener > xDialogListener;
- ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFolderPicker > xFolderPicker;
+ ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFolderPicker2 > xFolderPicker;
#ifdef _SVX_OPTPATH_CXX
void ChangeCurrentEntry( const String& _rFolder );
diff --git a/cui/source/inc/radiobtnbox.hxx b/cui/source/inc/radiobtnbox.hxx
index 21b10dcf87c0..627efe0fc3ab 100644
--- a/cui/source/inc/radiobtnbox.hxx
+++ b/cui/source/inc/radiobtnbox.hxx
@@ -41,7 +41,7 @@ public:
SvxRadioButtonListBox(SvxSimpleTableContainer& rParent, WinBits nBits = WB_BORDER);
~SvxRadioButtonListBox();
- void HandleEntryChecked( SvLBoxEntry* _pEntry );
+ void HandleEntryChecked( SvTreeListEntry* _pEntry );
const Point& GetCurMousePoint() const;
};
diff --git a/cui/source/inc/scriptdlg.hxx b/cui/source/inc/scriptdlg.hxx
index 9aef16f40e46..34d85aa35cd0 100644
--- a/cui/source/inc/scriptdlg.hxx
+++ b/cui/source/inc/scriptdlg.hxx
@@ -65,36 +65,39 @@ private:
::com::sun::star::uno::Reference< ::com::sun::star::script::browse::XBrowseNode >
getLangNodeFromRootNode( ::com::sun::star::uno::Reference< ::com::sun::star::script::browse::XBrowseNode >& root, ::rtl::OUString& language );
- void delUserData( SvLBoxEntry* pEntry );
+ void delUserData( SvTreeListEntry* pEntry );
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > getDocumentModel( ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& xCtx, ::rtl::OUString& docName );
+ void Init();
+
protected:
- void ExpandTree( SvLBoxEntry* pRootEntry );
- virtual void RequestingChildren( SvLBoxEntry* pParent );
+ void ExpandTree( SvTreeListEntry* pRootEntry );
+ virtual void RequestingChildren( SvTreeListEntry* pParent );
virtual void ExpandedHdl();
virtual long ExpandingHdl();
public:
void Init( const ::rtl::OUString& language );
- void RequestSubEntries( SvLBoxEntry* pRootEntry, ::com::sun::star::uno::Reference< ::com::sun::star::script::browse::XBrowseNode >& node,
+ void RequestSubEntries( SvTreeListEntry* pRootEntry, ::com::sun::star::uno::Reference< ::com::sun::star::script::browse::XBrowseNode >& node,
::com::sun::star::uno::Reference< com::sun::star::frame::XModel>& model );
- SFTreeListBox( Window* pParent, const ResId& rRes );
+ SFTreeListBox(Window* pParent, const ResId& rRes);
+ SFTreeListBox(Window* pParent);
~SFTreeListBox();
void ExpandAllTrees();
- SvLBoxEntry * insertEntry(String const & rText, sal_uInt16 nBitmap,
- SvLBoxEntry * pParent,
+ SvTreeListEntry * insertEntry(String const & rText, sal_uInt16 nBitmap,
+ SvTreeListEntry * pParent,
bool bChildrenOnDemand,
std::auto_ptr< SFEntry > aUserData,
::rtl::OUString factoryURL );
- SvLBoxEntry * insertEntry(String const & rText, sal_uInt16 nBitmap,
- SvLBoxEntry * pParent,
+ SvTreeListEntry * insertEntry(String const & rText, sal_uInt16 nBitmap,
+ SvTreeListEntry * pParent,
bool bChildrenOnDemand,
std::auto_ptr< SFEntry > aUserData );
- void deleteTree( SvLBoxEntry * pEntry );
+ void deleteTree( SvTreeListEntry * pEntry );
void deleteAllTree( );
};
@@ -139,16 +142,14 @@ public:
class SvxScriptOrgDialog : public SfxModalDialog
{
protected:
- FixedText aScriptsTxt;
- SFTreeListBox aScriptsBox;
+ SFTreeListBox* m_pScriptsBox;
- PushButton aRunButton;
- CancelButton aCloseButton;
- PushButton aCreateButton;
- PushButton aEditButton;
- PushButton aRenameButton;
- PushButton aDelButton;
- HelpButton aHelpButton;
+ PushButton* m_pRunButton;
+ PushButton* m_pCloseButton;
+ PushButton* m_pCreateButton;
+ PushButton* m_pEditButton;
+ PushButton* m_pRenameButton;
+ PushButton* m_pDelButton;
::rtl::OUString m_sLanguage;
static Selection_hash m_lastSelection;
@@ -170,12 +171,12 @@ protected:
void CheckButtons( ::com::sun::star::uno::Reference< ::com::sun::star::script::browse::XBrowseNode >& node );
- void createEntry( SvLBoxEntry* pEntry );
- void renameEntry( SvLBoxEntry* pEntry );
- void deleteEntry( SvLBoxEntry* pEntry );
+ void createEntry( SvTreeListEntry* pEntry );
+ void renameEntry( SvTreeListEntry* pEntry );
+ void deleteEntry( SvTreeListEntry* pEntry );
::com::sun::star::uno::Reference< ::com::sun::star::script::browse::XBrowseNode >
- getBrowseNode( SvLBoxEntry* pEntry );
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > getModel( SvLBoxEntry* pEntry );
+ getBrowseNode( SvTreeListEntry* pEntry );
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > getModel( SvTreeListEntry* pEntry );
String getListOfChildren( ::com::sun::star::uno::Reference< com::sun::star::script::browse::XBrowseNode > node, int depth );
void StoreCurrentSelection();
void RestorePreviousSelection();
diff --git a/cui/source/inc/selector.hxx b/cui/source/inc/selector.hxx
index c2828114c164..28459b33594b 100644
--- a/cui/source/inc/selector.hxx
+++ b/cui/source/inc/selector.hxx
@@ -89,41 +89,44 @@ public:
virtual Image GetImage( const rtl::OUString& rCommandURL ) = 0;
};
-class SvxConfigFunctionListBox_Impl : public SvTreeListBox
+class SvxConfigFunctionListBox : public SvTreeListBox
{
-friend class SvxConfigGroupListBox_Impl;
+friend class SvxConfigGroupListBox;
Timer aTimer;
- SvLBoxEntry* pCurEntry;
+ SvTreeListEntry* pCurEntry;
SvxGroupInfoArr_Impl aArr;
- SvLBoxEntry* m_pDraggingEntry;
+ SvTreeListEntry* m_pDraggingEntry;
DECL_LINK(TimerHdl, void *);
virtual void MouseMove( const MouseEvent& rMEvt );
+ void Init();
+
public:
- SvxConfigFunctionListBox_Impl( Window*, const ResId& );
- ~SvxConfigFunctionListBox_Impl();
+ SvxConfigFunctionListBox(Window*, const ResId&);
+ SvxConfigFunctionListBox(Window* pParent);
+ ~SvxConfigFunctionListBox();
void ClearAll();
- String GetHelpText( SvLBoxEntry *pEntry );
+ String GetHelpText( SvTreeListEntry *pEntry );
using Window::GetHelpText;
- SvLBoxEntry* GetLastSelectedEntry();
+ SvTreeListEntry* GetLastSelectedEntry();
void FunctionSelected();
// drag n drop methods
virtual sal_Int8 AcceptDrop( const AcceptDropEvent& rEvt );
virtual DragDropMode NotifyStartDrag(
- TransferDataContainer&, SvLBoxEntry* );
+ TransferDataContainer&, SvTreeListEntry* );
virtual void DragFinished( sal_Int8 );
};
-class SvxConfigGroupListBox_Impl : public SvTreeListBox
+class SvxConfigGroupListBox : public SvTreeListBox
{
SvxGroupInfoArr_Impl aArr;
bool m_bShowSlots;
- SvxConfigFunctionListBox_Impl* pFunctionListBox;
+ SvxConfigFunctionListBox* pFunctionListBox;
ImageProvider* m_pImageProvider;
::com::sun::star::uno::Reference
@@ -152,31 +155,33 @@ class SvxConfigGroupListBox_Impl : public SvTreeListBox
private:
void fillScriptList(
const ::com::sun::star::uno::Reference< ::com::sun::star::script::browse::XBrowseNode >& _rxRootNode,
- SvLBoxEntry* _pParentEntry,
+ SvTreeListEntry* _pParentEntry,
bool _bCheapChildrenOnDemand
);
protected:
- virtual void RequestingChildren( SvLBoxEntry *pEntry);
- virtual sal_Bool Expand( SvLBoxEntry* pParent );
+ virtual void RequestingChildren( SvTreeListEntry *pEntry);
+ virtual sal_Bool Expand( SvTreeListEntry* pParent );
using SvListView::Expand;
public:
- SvxConfigGroupListBox_Impl (
+ SvxConfigGroupListBox (
Window* pParent, const ResId&,
bool _bShowSlots,
const ::com::sun::star::uno::Reference
< ::com::sun::star::frame::XFrame >& xFrame
);
+ SvxConfigGroupListBox(Window* pParent);
+ ~SvxConfigGroupListBox();
- ~SvxConfigGroupListBox_Impl();
+ void Init(bool bShowSlots, const ::com::sun::star::uno::Reference
+ < ::com::sun::star::frame::XFrame >& xFrame);
- void Init();
- void Open( SvLBoxEntry*, sal_Bool );
+ void Open( SvTreeListEntry*, sal_Bool );
void ClearAll();
void GroupSelected();
- void SetFunctionListBox( SvxConfigFunctionListBox_Impl *pBox )
+ void SetFunctionListBox( SvxConfigFunctionListBox *pBox )
{ pFunctionListBox = pBox; }
void SetImageProvider( ImageProvider* provider )
@@ -185,26 +190,21 @@ public:
class SvxScriptSelectorDialog : public ModelessDialog
{
- FixedText aDialogDescription;
- FixedText aGroupText;
- SvxConfigGroupListBox_Impl aCategories;
- FixedText aFunctionText;
- SvxConfigFunctionListBox_Impl aCommands;
- OKButton aOKButton;
- CancelButton aCancelButton;
- HelpButton aHelpButton;
- FixedLine aDescription;
- FixedText aDescriptionText;
-
- sal_Bool m_bShowSlots;
+ FixedText* m_pDialogDescription;
+ SvxConfigGroupListBox* m_pCategories;
+ SvxConfigFunctionListBox* m_pCommands;
+ PushButton* m_pOKButton;
+ PushButton* m_pCancelButton;
+ VclMultiLineEdit* m_pDescriptionText;
+ OUString m_sDefaultDesc;
+ sal_Bool m_bShowSlots;
Link m_aAddHdl;
DECL_LINK( ClickHdl, Button * );
DECL_LINK( SelectHdl, Control* );
DECL_LINK( FunctionDoubleClickHdl, Control* );
- void UpdateUI();
- void ResizeControls();
+ void UpdateUI();
public:
@@ -220,8 +220,10 @@ public:
void SetAddHdl( const Link& rLink ) { m_aAddHdl = rLink; }
const Link& GetAddHdl() const { return m_aAddHdl; }
- void SetImageProvider( ImageProvider* provider )
- { aCategories.SetImageProvider( provider ); }
+ void SetImageProvider(ImageProvider* provider)
+ {
+ m_pCategories->SetImageProvider(provider);
+ }
String GetScriptURL() const;
String GetSelectedDisplayName();
diff --git a/cui/source/inc/thesdlg.hxx b/cui/source/inc/thesdlg.hxx
index c6b43a646e35..c27cf178b691 100644
--- a/cui/source/inc/thesdlg.hxx
+++ b/cui/source/inc/thesdlg.hxx
@@ -79,7 +79,7 @@ class ThesaurusAlternativesCtrl
{
SvxThesaurusDialog* m_pDialog;
- typedef std::map< const SvLBoxEntry *, AlternativesExtraData > UserDataMap_t;
+ typedef std::map< const SvTreeListEntry *, AlternativesExtraData > UserDataMap_t;
UserDataMap_t m_aUserData;
/// disable copy ctor and assignment operator
@@ -93,11 +93,11 @@ public:
virtual ~ThesaurusAlternativesCtrl();
- SvLBoxEntry * AddEntry( sal_Int32 nVal, const String &rText, bool bIsHeader );
+ SvTreeListEntry * AddEntry( sal_Int32 nVal, const String &rText, bool bIsHeader );
void ClearExtraData();
- void SetExtraData( const SvLBoxEntry *pEntry, const AlternativesExtraData &rData );
- AlternativesExtraData * GetExtraData( const SvLBoxEntry *pEntry );
+ void SetExtraData( const SvTreeListEntry *pEntry, const AlternativesExtraData &rData );
+ AlternativesExtraData * GetExtraData( const SvTreeListEntry *pEntry );
virtual void KeyInput( const KeyEvent& rKEvt );
virtual void Paint( const Rectangle& rRect );
diff --git a/cui/source/inc/treeopt.hxx b/cui/source/inc/treeopt.hxx
index 0b37efdb2561..05321b2d47f9 100644
--- a/cui/source/inc/treeopt.hxx
+++ b/cui/source/inc/treeopt.hxx
@@ -153,7 +153,7 @@ private:
String sTitle;
String sNotLoadedError;
- SvLBoxEntry* pCurrentPageEntry;
+ SvTreeListEntry* pCurrentPageEntry;
// for the ColorTabPage
SfxItemSet* pColorPageItemSet;
diff --git a/cui/source/options/certpath.cxx b/cui/source/options/certpath.cxx
index 667e72bf725c..0e7f6a488783 100644
--- a/cui/source/options/certpath.cxx
+++ b/cui/source/options/certpath.cxx
@@ -39,7 +39,7 @@
#include <com/sun/star/mozilla/XMozillaBootstrap.hpp>
#include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <comphelper/processfactory.hxx>
using namespace ::com::sun::star;
@@ -104,7 +104,7 @@ CertPathDialog::CertPathDialog( Window* pParent ) :
::rtl::OUString sProfilePath = xMozillaBootstrap->getProfilePath( productTypes[i], profile );
rtl::OUStringBuffer sEntry;
sEntry.append('\t').appendAscii(productNames[i]).append(':').append(profile).append('\t').append(sProfilePath);
- SvLBoxEntry *pEntry = m_aCertPathList.InsertEntry(sEntry.makeStringAndClear());
+ SvTreeListEntry *pEntry = m_aCertPathList.InsertEntry(sEntry.makeStringAndClear());
rtl::OUString* pCertPath = new rtl::OUString(sProfilePath);
pEntry->SetUserData(pCertPath);
}
@@ -114,7 +114,7 @@ CertPathDialog::CertPathDialog( Window* pParent ) :
{
}
- SvLBoxEntry *pEntry = m_aCertPathList.GetEntry(0);
+ SvTreeListEntry *pEntry = m_aCertPathList.GetEntry(0);
if (pEntry)
{
m_aCertPathList.SetCheckButtonState(pEntry, SV_BUTTON_CHECKED);
@@ -163,14 +163,14 @@ IMPL_LINK_NOARG(CertPathDialog, OKHdl_Impl)
rtl::OUString CertPathDialog::getDirectory() const
{
- SvLBoxEntry* pEntry = m_aCertPathList.FirstSelected();
+ SvTreeListEntry* pEntry = m_aCertPathList.FirstSelected();
void* pCertPath = pEntry ? pEntry->GetUserData() : NULL;
return pCertPath ? *static_cast<rtl::OUString*>(pCertPath) : rtl::OUString();
}
CertPathDialog::~CertPathDialog()
{
- SvLBoxEntry* pEntry = m_aCertPathList.First();
+ SvTreeListEntry* pEntry = m_aCertPathList.First();
while (pEntry)
{
rtl::OUString* pCertPath = static_cast<rtl::OUString*>(pEntry->GetUserData());
@@ -181,14 +181,14 @@ CertPathDialog::~CertPathDialog()
IMPL_LINK( CertPathDialog, CheckHdl_Impl, SvxSimpleTable *, pList )
{
- SvLBoxEntry* pEntry = pList ? m_aCertPathList.GetEntry(m_aCertPathList.GetCurMousePoint())
+ SvTreeListEntry* pEntry = pList ? m_aCertPathList.GetEntry(m_aCertPathList.GetCurMousePoint())
: m_aCertPathList.FirstSelected();
if (pEntry)
m_aCertPathList.HandleEntryChecked(pEntry);
return 0;
}
-void CertPathDialog::HandleCheckEntry( SvLBoxEntry* _pEntry )
+void CertPathDialog::HandleCheckEntry( SvTreeListEntry* _pEntry )
{
m_aCertPathList.Select( _pEntry, true );
SvButtonState eState = m_aCertPathList.GetCheckButtonState( _pEntry );
@@ -196,7 +196,7 @@ void CertPathDialog::HandleCheckEntry( SvLBoxEntry* _pEntry )
if (SV_BUTTON_CHECKED == eState)
{
// uncheck the other entries
- SvLBoxEntry* pEntry = m_aCertPathList.First();
+ SvTreeListEntry* pEntry = m_aCertPathList.First();
while (pEntry)
{
if (pEntry != _pEntry)
@@ -210,7 +210,7 @@ void CertPathDialog::HandleCheckEntry( SvLBoxEntry* _pEntry )
void CertPathDialog::AddCertPath(const rtl::OUString &rProfile, const rtl::OUString &rPath)
{
- SvLBoxEntry* pEntry = m_aCertPathList.First();
+ SvTreeListEntry* pEntry = m_aCertPathList.First();
while (pEntry)
{
rtl::OUString* pCertPath = static_cast<rtl::OUString*>(pEntry->GetUserData());
@@ -237,10 +237,7 @@ IMPL_LINK_NOARG(CertPathDialog, AddHdl_Impl)
{
try
{
- uno::Reference<uno::XInterface> xInstance = comphelper::getProcessServiceFactory()->createInstance(
- "com.sun.star.ui.dialogs.FolderPicker");
-
- uno::Reference<ui::dialogs::XFolderPicker> xFolderPicker(xInstance, uno::UNO_QUERY_THROW);
+ uno::Reference<ui::dialogs::XFolderPicker2> xFolderPicker = ui::dialogs::FolderPicker::create(comphelper::getProcessComponentContext());
rtl::OUString sURL;
osl::Security().getHomeDir(sURL);
diff --git a/cui/source/options/certpath.hxx b/cui/source/options/certpath.hxx
index 8c54c3f2b95d..65d9a77e1fdb 100644
--- a/cui/source/options/certpath.hxx
+++ b/cui/source/options/certpath.hxx
@@ -55,7 +55,7 @@ private:
DECL_LINK(AddHdl_Impl, void *);
DECL_LINK(OKHdl_Impl, void *);
- void HandleCheckEntry(SvLBoxEntry* _pEntry);
+ void HandleCheckEntry(SvTreeListEntry* _pEntry);
void AddCertPath(const rtl::OUString &rProfile, const rtl::OUString &rPath);
public:
CertPathDialog(Window* pParent);
diff --git a/cui/source/options/dbregister.cxx b/cui/source/options/dbregister.cxx
index 8a619ffccc19..d04d3c816141 100644
--- a/cui/source/options/dbregister.cxx
+++ b/cui/source/options/dbregister.cxx
@@ -197,7 +197,7 @@ sal_Bool DbRegistrationOptionsPage::FillItemSet( SfxItemSet& rCoreSet )
sal_uLong nCount = pPathBox->GetEntryCount();
for ( sal_uLong i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = pPathBox->GetEntry(i);
+ SvTreeListEntry* pEntry = pPathBox->GetEntry(i);
DatabaseRegistration* pRegistration = static_cast< DatabaseRegistration* >( pEntry->GetUserData() );
if ( pRegistration && !pRegistration->sLocation.isEmpty() )
{
@@ -276,7 +276,7 @@ void DbRegistrationOptionsPage::FillUserData()
IMPL_LINK_NOARG(DbRegistrationOptionsPage, DeleteHdl)
{
- SvLBoxEntry* pEntry = pPathBox->FirstSelected();
+ SvTreeListEntry* pEntry = pPathBox->FirstSelected();
if ( pEntry )
{
QueryBox aQuery(this,CUI_RES(QUERY_DELETE_CONFIRM));
@@ -297,7 +297,7 @@ IMPL_LINK_NOARG(DbRegistrationOptionsPage, NewHdl)
IMPL_LINK_NOARG(DbRegistrationOptionsPage, EditHdl)
{
- SvLBoxEntry* pEntry = pPathBox->GetCurEntry();
+ SvTreeListEntry* pEntry = pPathBox->GetCurEntry();
if ( !pEntry )
return 0L;
@@ -376,7 +376,7 @@ IMPL_LINK( DbRegistrationOptionsPage, HeaderEndDrag_Impl, HeaderBar*, pBar )
IMPL_LINK_NOARG(DbRegistrationOptionsPage, PathSelect_Impl)
{
- SvLBoxEntry* pEntry = pPathBox->FirstSelected();
+ SvTreeListEntry* pEntry = pPathBox->FirstSelected();
bool bReadOnly = true;
if ( pEntry )
@@ -396,7 +396,7 @@ void DbRegistrationOptionsPage::insertNewEntry( const ::rtl::OUString& _sName,co
aStr += '\t';
aStr += String(_sLocation);
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
if ( _bReadOnly )
{
Image aLocked( CUI_RES( RID_SVXBMP_LOCK ) );
@@ -411,7 +411,7 @@ void DbRegistrationOptionsPage::insertNewEntry( const ::rtl::OUString& _sName,co
}
// -----------------------------------------------------------------------------
-void DbRegistrationOptionsPage::openLinkDialog(const String& _sOldName,const String& _sOldLocation,SvLBoxEntry* _pEntry)
+void DbRegistrationOptionsPage::openLinkDialog(const String& _sOldName,const String& _sOldLocation,SvTreeListEntry* _pEntry)
{
ODocumentLinkDialog aDlg(this,_pEntry == NULL);
@@ -442,7 +442,7 @@ IMPL_LINK( DbRegistrationOptionsPage, NameValidator, String*, _pName )
sal_uLong nCount = pPathBox->GetEntryCount();
for ( sal_uLong i = 0; i < nCount; ++i )
{
- SvLBoxEntry* pEntry = pPathBox->GetEntry(i);
+ SvTreeListEntry* pEntry = pPathBox->GetEntry(i);
if ( (!m_pCurEntry || m_pCurEntry != pEntry) && pPathBox->GetEntryText(pEntry,0) == *_pName )
return 0L;
}
diff --git a/cui/source/options/fontsubs.cxx b/cui/source/options/fontsubs.cxx
index 13ef512dbbb6..edc27c6d5975 100644
--- a/cui/source/options/fontsubs.cxx
+++ b/cui/source/options/fontsubs.cxx
@@ -146,9 +146,9 @@ SvxFontSubstTabPage::SvxFontSubstTabPage( Window* pParent,
aFontHeightLB.InsertEntry(String::CreateFromInt32(nHeight));
}
-SvLBoxEntry* SvxFontSubstTabPage::CreateEntry(String& rFont1, String& rFont2)
+SvTreeListEntry* SvxFontSubstTabPage::CreateEntry(String& rFont1, String& rFont2)
{
- SvLBoxEntry* pEntry = new SvLBoxEntry;
+ SvTreeListEntry* pEntry = new SvTreeListEntry;
if( !pCheckButtonData )
pCheckButtonData = new SvLBoxButtonData( &aCheckLB );
@@ -186,7 +186,7 @@ sal_Bool SvxFontSubstTabPage::FillItemSet( SfxItemSet& )
pConfig->Enable(aUseTableCB.IsChecked());
- SvLBoxEntry* pEntry = aCheckLB.First();
+ SvTreeListEntry* pEntry = aCheckLB.First();
while (pEntry)
{
@@ -240,7 +240,7 @@ void SvxFontSubstTabPage::Reset( const SfxItemSet& )
const SubstitutionStruct* pSubs = pConfig->GetSubstitution(i);
String aTmpStr1(pSubs->sFont);
String aTmpStr2(pSubs->sReplaceBy);
- SvLBoxEntry* pEntry = CreateEntry(aTmpStr1, aTmpStr2);
+ SvTreeListEntry* pEntry = CreateEntry(aTmpStr1, aTmpStr2);
aCheckLB.Insert(pEntry);
aCheckLB.CheckEntry(pEntry, 0, pSubs->bReplaceAlways);
aCheckLB.CheckEntry(pEntry, 1, pSubs->bReplaceOnScreenOnly);
@@ -273,7 +273,7 @@ IMPL_LINK(SvxFontSubstTabPage, SelectHdl, Window*, pWin)
{
if (pWin == &aNewDelTBX)
{
- SvLBoxEntry* pEntry;
+ SvTreeListEntry* pEntry;
// nCol is stupidly the nCol'th text column, not counted!
// Therefor "0" as column.
sal_uLong nPos = aCheckLB.GetEntryPos(aFont1CB.GetText(), 0);
@@ -309,7 +309,7 @@ IMPL_LINK(SvxFontSubstTabPage, SelectHdl, Window*, pWin)
pEntry = aCheckLB.FirstSelected();
while (pEntry)
{
- SvLBoxEntry* pDelEntry = pEntry;
+ SvTreeListEntry* pDelEntry = pEntry;
pEntry = aCheckLB.NextSelected(pEntry);
aCheckLB.RemoveEntry(pDelEntry);
}
@@ -321,7 +321,7 @@ IMPL_LINK(SvxFontSubstTabPage, SelectHdl, Window*, pWin)
if (pWin == &aCheckLB)
{
- SvLBoxEntry* pEntry = aCheckLB.FirstSelected();
+ SvTreeListEntry* pEntry = aCheckLB.FirstSelected();
if (aCheckLB.NextSelected(pEntry) == 0)
{
@@ -336,7 +336,7 @@ IMPL_LINK(SvxFontSubstTabPage, SelectHdl, Window*, pWin)
if (nPos != 0xffffffff)
{
- SvLBoxEntry* pEntry = aCheckLB.GetEntry(nPos);
+ SvTreeListEntry* pEntry = aCheckLB.GetEntry(nPos);
if (pEntry != aCheckLB.FirstSelected())
{
@@ -378,7 +378,7 @@ void SvxFontSubstTabPage::CheckEnable()
{
sal_Bool bApply, bDelete;
- SvLBoxEntry* pEntry = aCheckLB.FirstSelected();
+ SvTreeListEntry* pEntry = aCheckLB.FirstSelected();
String sEntry = aFont1CB.GetText();
sEntry += '\t';
@@ -480,7 +480,7 @@ void SvxFontSubstCheckListBox::CheckEntryPos(sal_uLong nPos, sal_uInt16 nCol, sa
SvButtonState( SV_BUTTON_UNCHECKED ) );
}
-void SvxFontSubstCheckListBox::CheckEntry(SvLBoxEntry* pEntry, sal_uInt16 nCol, sal_Bool bChecked)
+void SvxFontSubstCheckListBox::CheckEntry(SvTreeListEntry* pEntry, sal_uInt16 nCol, sal_Bool bChecked)
{
if ( pEntry )
SetCheckButtonState(
@@ -495,12 +495,12 @@ sal_Bool SvxFontSubstCheckListBox::IsChecked(sal_uLong nPos, sal_uInt16 nCol)
return GetCheckButtonState( GetEntry(nPos), nCol ) == SV_BUTTON_CHECKED;
}
-sal_Bool SvxFontSubstCheckListBox::IsChecked(SvLBoxEntry* pEntry, sal_uInt16 nCol)
+sal_Bool SvxFontSubstCheckListBox::IsChecked(SvTreeListEntry* pEntry, sal_uInt16 nCol)
{
return GetCheckButtonState( pEntry, nCol ) == SV_BUTTON_CHECKED;
}
-void SvxFontSubstCheckListBox::SetCheckButtonState( SvLBoxEntry* pEntry, sal_uInt16 nCol, SvButtonState eState)
+void SvxFontSubstCheckListBox::SetCheckButtonState( SvTreeListEntry* pEntry, sal_uInt16 nCol, SvButtonState eState)
{
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem(nCol + 1));
@@ -525,7 +525,7 @@ void SvxFontSubstCheckListBox::SetCheckButtonState( SvLBoxEntry* pEntry, sal_uIn
}
}
-SvButtonState SvxFontSubstCheckListBox::GetCheckButtonState( SvLBoxEntry* pEntry, sal_uInt16 nCol ) const
+SvButtonState SvxFontSubstCheckListBox::GetCheckButtonState( SvTreeListEntry* pEntry, sal_uInt16 nCol ) const
{
SvButtonState eState = SV_BUTTON_UNCHECKED;
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem(nCol + 1));
diff --git a/cui/source/options/fontsubs.hxx b/cui/source/options/fontsubs.hxx
index 9775991da304..04afa3ebc13a 100644
--- a/cui/source/options/fontsubs.hxx
+++ b/cui/source/options/fontsubs.hxx
@@ -48,11 +48,11 @@ class SvxFontSubstCheckListBox : public SvxSimpleTable
inline void SetUserData(sal_uLong nPos, void *pData ) { GetEntry(nPos)->SetUserData(pData); }
sal_Bool IsChecked(sal_uLong nPos, sal_uInt16 nCol = 0);
- sal_Bool IsChecked(SvLBoxEntry* pEntry, sal_uInt16 nCol = 0);
+ sal_Bool IsChecked(SvTreeListEntry* pEntry, sal_uInt16 nCol = 0);
void CheckEntryPos(sal_uLong nPos, sal_uInt16 nCol, sal_Bool bChecked);
- void CheckEntry(SvLBoxEntry* pEntry, sal_uInt16 nCol, sal_Bool bChecked);
- SvButtonState GetCheckButtonState( SvLBoxEntry*, sal_uInt16 nCol ) const;
- void SetCheckButtonState( SvLBoxEntry*, sal_uInt16 nCol, SvButtonState );
+ void CheckEntry(SvTreeListEntry* pEntry, sal_uInt16 nCol, sal_Bool bChecked);
+ SvButtonState GetCheckButtonState( SvTreeListEntry*, sal_uInt16 nCol ) const;
+ void SetCheckButtonState( SvTreeListEntry*, sal_uInt16 nCol, SvButtonState );
};
// class SvxFontSubstTabPage ----------------------------------------------------
@@ -92,7 +92,7 @@ class SvxFontSubstTabPage : public SfxTabPage
DECL_LINK(SelectHdl, Window *pWin = 0);
DECL_LINK(NonPropFontsHdl, CheckBox* pBox);
- SvLBoxEntry* CreateEntry(String& rFont1, String& rFont2);
+ SvTreeListEntry* CreateEntry(String& rFont1, String& rFont2);
void CheckEnable();
diff --git a/cui/source/options/optHeaderTabListbox.cxx b/cui/source/options/optHeaderTabListbox.cxx
index a479751a3986..32ba1070735e 100644
--- a/cui/source/options/optHeaderTabListbox.cxx
+++ b/cui/source/options/optHeaderTabListbox.cxx
@@ -29,15 +29,15 @@ namespace svx
class OptLBoxString_Impl : public SvLBoxString
{
public:
- OptLBoxString_Impl( SvLBoxEntry* pEntry, sal_uInt16 nFlags, const String& rTxt ) :
+ OptLBoxString_Impl( SvTreeListEntry* pEntry, sal_uInt16 nFlags, const String& rTxt ) :
SvLBoxString( pEntry, nFlags, rTxt ) {}
- virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvLBoxEntry* pEntry );
+ virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvTreeListEntry* pEntry );
};
// -----------------------------------------------------------------------
-void OptLBoxString_Impl::Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16, SvLBoxEntry* pEntry )
+void OptLBoxString_Impl::Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16, SvTreeListEntry* pEntry )
{
Font aOldFont( rDev.GetFont() );
Font aFont( aOldFont );
@@ -57,7 +57,7 @@ OptHeaderTabListBox::OptHeaderTabListBox( Window* pParent, WinBits nWinStyle ) :
}
// -----------------------------------------------------------------------
-void OptHeaderTabListBox::InitEntry( SvLBoxEntry* pEntry, const XubString& rTxt,
+void OptHeaderTabListBox::InitEntry( SvTreeListEntry* pEntry, const OUString& rTxt,
const Image& rImg1, const Image& rImg2,
SvLBoxButtonKind eButtonKind )
{
diff --git a/cui/source/options/optHeaderTabListbox.hxx b/cui/source/options/optHeaderTabListbox.hxx
index dc28269a7998..8124a1c3205d 100644
--- a/cui/source/options/optHeaderTabListbox.hxx
+++ b/cui/source/options/optHeaderTabListbox.hxx
@@ -30,7 +30,7 @@ namespace svx
public:
OptHeaderTabListBox( Window* pParent, WinBits nBits );
- virtual void InitEntry( SvLBoxEntry*, const XubString&, const Image&, const Image&, SvLBoxButtonKind );
+ virtual void InitEntry(SvTreeListEntry*, const OUString&, const Image&, const Image&, SvLBoxButtonKind);
};
} // svx
#endif // SVX_OPTHEADERTABLISTBOX_HXX
diff --git a/cui/source/options/optcolor.cxx b/cui/source/options/optcolor.cxx
index b6e834fa4392..cc217e40b0d1 100644
--- a/cui/source/options/optcolor.cxx
+++ b/cui/source/options/optcolor.cxx
@@ -706,8 +706,8 @@ void ColorConfigWindow_Impl::CreateEntries (ResMgr& rResMgr)
ExtendedColorConfig aExtConfig;
if (unsigned const nExtGroupCount = aExtConfig.GetComponentCount())
{
- unsigned nLineNum = GetPosBehindLastChapter() /
- LogicToPixel(Size(0, LINE_HEIGHT), MAP_APPFONT).Height();
+ unsigned nLineNum = ( GetPosBehindLastChapter() /
+ LogicToPixel(Size(0, LINE_HEIGHT), MAP_APPFONT).Height() ) + 1;
for (unsigned j = 0; j != nExtGroupCount; ++j)
{
rtl::OUString const sComponentName = aExtConfig.GetComponentName(j);
diff --git a/cui/source/options/optdict.cxx b/cui/source/options/optdict.cxx
index d478723adc70..e16644890006 100644
--- a/cui/source/options/optdict.cxx
+++ b/cui/source/options/optdict.cxx
@@ -381,7 +381,7 @@ sal_uInt16 SvxEditDictionaryDialog::GetLBInsertPos(const String &rDicWord)
sal_uInt16 j;
for( j = 0; j < aWordsLB.GetEntryCount(); j++ )
{
- SvLBoxEntry* pEntry = aWordsLB.GetEntry(j);
+ SvTreeListEntry* pEntry = aWordsLB.GetEntry(j);
DBG_ASSERT( pEntry, "NULL pointer");
String aNormEntry( getNormDicEntry_Impl( rDicWord ) );
StringCompare eCmpRes = (StringCompare)pCollator->
@@ -395,7 +395,7 @@ sal_uInt16 SvxEditDictionaryDialog::GetLBInsertPos(const String &rDicWord)
return nPos;
}
-void SvxEditDictionaryDialog::RemoveDictEntry(SvLBoxEntry* pEntry)
+void SvxEditDictionaryDialog::RemoveDictEntry(SvTreeListEntry* pEntry)
{
sal_uInt16 nLBPos = aAllDictsLB.GetSelectEntryPos();
@@ -551,7 +551,7 @@ IMPL_LINK(SvxEditDictionaryDialog, SelectHdl, SvTabListBox*, pBox)
{
if(!bFirstSelect)
{
- SvLBoxEntry* pEntry = pBox->FirstSelected();
+ SvTreeListEntry* pEntry = pBox->FirstSelected();
String sTmpShort(pBox->GetEntryText(pEntry, 0));
// without this the curser is always at the beginning of a word, if the text
// is set over the ModifyHdl, although you're editing there at the moment
@@ -574,7 +574,7 @@ IMPL_LINK(SvxEditDictionaryDialog, SelectHdl, SvTabListBox*, pBox)
IMPL_LINK(SvxEditDictionaryDialog, NewDelHdl, PushButton*, pBtn)
{
- SvLBoxEntry* pEntry = aWordsLB.FirstSelected();
+ SvTreeListEntry* pEntry = aWordsLB.FirstSelected();
if(pBtn == &aDeletePB)
{
@@ -589,7 +589,7 @@ IMPL_LINK(SvxEditDictionaryDialog, NewDelHdl, PushButton*, pBtn)
}
if(pBtn == &aNewReplacePB || aNewReplacePB.IsEnabled())
{
- SvLBoxEntry* _pEntry = aWordsLB.FirstSelected();
+ SvTreeListEntry* _pEntry = aWordsLB.FirstSelected();
XubString aNewWord(aWordED.GetText());
String sEntry(aNewWord);
XubString aReplaceStr(aReplaceED.GetText());
@@ -638,7 +638,7 @@ IMPL_LINK(SvxEditDictionaryDialog, NewDelHdl, PushButton*, pBtn)
sEntry += aReplaceStr;
}
- SvLBoxEntry* pNewEntry = NULL;
+ SvTreeListEntry* pNewEntry = NULL;
if(_pEntry) // entry selected in aWordsLB ie action = modify entry
{
aWordsLB.SetEntryText( sEntry, _pEntry );
@@ -647,7 +647,7 @@ IMPL_LINK(SvxEditDictionaryDialog, NewDelHdl, PushButton*, pBtn)
else
{
_nPos = GetLBInsertPos( aNewWord );
- SvLBoxEntry* pInsEntry = aWordsLB.InsertEntry(sEntry, 0, sal_False,
+ SvTreeListEntry* pInsEntry = aWordsLB.InsertEntry(sEntry, 0, sal_False,
_nPos == USHRT_MAX ? LIST_APPEND : (sal_uInt32)_nPos);
pNewEntry = pInsEntry;
}
@@ -673,7 +673,7 @@ IMPL_LINK(SvxEditDictionaryDialog, NewDelHdl, PushButton*, pBtn)
IMPL_LINK(SvxEditDictionaryDialog, ModifyHdl, Edit*, pEdt)
{
- SvLBoxEntry* pFirstSel = aWordsLB.FirstSelected();
+ SvTreeListEntry* pFirstSel = aWordsLB.FirstSelected();
String rEntry = pEdt->GetText();
xub_StrLen nWordLen=rEntry.Len();
@@ -693,7 +693,7 @@ IMPL_LINK(SvxEditDictionaryDialog, ModifyHdl, Edit*, pEdt)
for(sal_uInt16 i = 0; i < aWordsLB.GetEntryCount(); i++)
{
- SvLBoxEntry* pEntry = aWordsLB.GetEntry( i );
+ SvTreeListEntry* pEntry = aWordsLB.GetEntry( i );
String aTestStr( aWordsLB.GetEntryText(pEntry, 0) );
eCmpRes = cmpDicEntry_Impl( rEntry, aTestStr );
if(CDE_DIFFERENT != eCmpRes)
@@ -740,7 +740,7 @@ IMPL_LINK(SvxEditDictionaryDialog, ModifyHdl, Edit*, pEdt)
}
else if(aWordsLB.GetEntryCount()>0)
{
- SvLBoxEntry* pEntry = aWordsLB.GetEntry( 0 );
+ SvTreeListEntry* pEntry = aWordsLB.GetEntry( 0 );
bDoNothing=sal_True;
aWordsLB.MakeVisible(pEntry);
bDoNothing=sal_False;
diff --git a/cui/source/options/optfltr.cxx b/cui/source/options/optfltr.cxx
index 6afeba5bdbfe..eddd6573151e 100644
--- a/cui/source/options/optfltr.cxx
+++ b/cui/source/options/optfltr.cxx
@@ -205,7 +205,7 @@ sal_Bool OfaMSFilterTabPage2::FillItemSet( SfxItemSet& )
InvalidCBEntry != pArr->eType; ++pArr, bFirst = !bFirst )
{
sal_uInt16 nCol = bFirst ? 1 : 2;
- SvLBoxEntry* pEntry = GetEntry4Type( pArr->eType );
+ SvTreeListEntry* pEntry = GetEntry4Type( pArr->eType );
if( pEntry )
{
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem( nCol ));
@@ -263,7 +263,7 @@ void OfaMSFilterTabPage2::Reset( const SfxItemSet& )
InvalidCBEntry != pArr->eType; ++pArr, bFirst = !bFirst )
{
sal_uInt16 nCol = bFirst ? 1 : 2;
- SvLBoxEntry* pEntry = GetEntry4Type( static_cast< sal_IntPtr >( pArr->eType ) );
+ SvTreeListEntry* pEntry = GetEntry4Type( static_cast< sal_IntPtr >( pArr->eType ) );
if( pEntry )
{
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem( nCol ));
@@ -282,7 +282,7 @@ void OfaMSFilterTabPage2::Reset( const SfxItemSet& )
void OfaMSFilterTabPage2::InsertEntry( const String& _rTxt, sal_IntPtr _nType )
{
- SvLBoxEntry* pEntry = new SvLBoxEntry;
+ SvTreeListEntry* pEntry = new SvTreeListEntry;
if( !pCheckButtonData )
pCheckButtonData = new SvLBoxButtonData( &aCheckLB );
@@ -298,9 +298,9 @@ void OfaMSFilterTabPage2::InsertEntry( const String& _rTxt, sal_IntPtr _nType )
aCheckLB.Insert( pEntry );
}
-SvLBoxEntry* OfaMSFilterTabPage2::GetEntry4Type( sal_IntPtr _nType ) const
+SvTreeListEntry* OfaMSFilterTabPage2::GetEntry4Type( sal_IntPtr _nType ) const
{
- SvLBoxEntry* pEntry = aCheckLB.First();
+ SvTreeListEntry* pEntry = aCheckLB.First();
while ( pEntry )
{
if ( _nType == sal_IntPtr( pEntry->GetUserData() ) )
@@ -335,7 +335,7 @@ void OfaMSFilterTabPage2::MSFltrSimpleTable::HBarClick()
}
void OfaMSFilterTabPage2::MSFltrSimpleTable::SetCheckButtonState(
- SvLBoxEntry* pEntry, sal_uInt16 nCol, SvButtonState eState)
+ SvTreeListEntry* pEntry, sal_uInt16 nCol, SvButtonState eState)
{
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem(nCol + 1));
@@ -361,7 +361,7 @@ void OfaMSFilterTabPage2::MSFltrSimpleTable::SetCheckButtonState(
}
SvButtonState OfaMSFilterTabPage2::MSFltrSimpleTable::GetCheckButtonState(
- SvLBoxEntry* pEntry, sal_uInt16 nCol ) const
+ SvTreeListEntry* pEntry, sal_uInt16 nCol ) const
{
SvButtonState eState = SV_BUTTON_UNCHECKED;
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem(nCol + 1));
@@ -395,7 +395,7 @@ void OfaMSFilterTabPage2::MSFltrSimpleTable::KeyInput( const KeyEvent& rKEvt )
sal_uInt16 nCol = GetCurrentTabPos() - 1;
if ( nCol < 2 )
{
- SvLBoxEntry* pEntry = GetEntry( nSelPos );
+ SvTreeListEntry* pEntry = GetEntry( nSelPos );
sal_Bool bIsChecked = ( GetCheckButtonState( pEntry, nCol ) == SV_BUTTON_CHECKED );
CheckEntryPos( nSelPos, nCol, !bIsChecked );
CallImplEventListeners( VCLEVENT_CHECKBOX_TOGGLE, (void*)pEntry );
diff --git a/cui/source/options/optfltr.hxx b/cui/source/options/optfltr.hxx
index 7502703073dc..655bc106f5b1 100644
--- a/cui/source/options/optfltr.hxx
+++ b/cui/source/options/optfltr.hxx
@@ -64,8 +64,8 @@ class OfaMSFilterTabPage2 : public SfxTabPage
using SvxSimpleTable::SetTabs;
void CheckEntryPos(sal_uLong nPos, sal_uInt16 nCol, sal_Bool bChecked);
- SvButtonState GetCheckButtonState( SvLBoxEntry*, sal_uInt16 nCol ) const;
- void SetCheckButtonState( SvLBoxEntry*, sal_uInt16 nCol, SvButtonState );
+ SvButtonState GetCheckButtonState( SvTreeListEntry*, sal_uInt16 nCol ) const;
+ void SetCheckButtonState( SvTreeListEntry*, sal_uInt16 nCol, SvButtonState );
protected:
virtual void SetTabs();
virtual void HBarClick();
@@ -92,7 +92,7 @@ class OfaMSFilterTabPage2 : public SfxTabPage
virtual ~OfaMSFilterTabPage2();
void InsertEntry( const String& _rTxt, sal_IntPtr _nType );
- SvLBoxEntry* GetEntry4Type( sal_IntPtr _nType ) const;
+ SvTreeListEntry* GetEntry4Type( sal_IntPtr _nType ) const;
public:
diff --git a/cui/source/options/optjava.cxx b/cui/source/options/optjava.cxx
index d2d0347c5902..6c38810b92d3 100644
--- a/cui/source/options/optjava.cxx
+++ b/cui/source/options/optjava.cxx
@@ -39,6 +39,7 @@
#include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
#include <com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.hpp>
#include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <com/sun/star/ucb/XContentProvider.hpp>
#include <jvmfwk/framework.h>
@@ -207,7 +208,7 @@ IMPL_LINK_NOARG(SvxJavaOptionsPage, EnableHdl_Impl)
IMPL_LINK( SvxJavaOptionsPage, CheckHdl_Impl, SvxSimpleTable *, pList )
{
- SvLBoxEntry* pEntry = pList ? m_aJavaList.GetEntry( m_aJavaList.GetCurMousePoint() )
+ SvTreeListEntry* pEntry = pList ? m_aJavaList.GetEntry( m_aJavaList.GetCurMousePoint() )
: m_aJavaList.FirstSelected();
if ( pEntry )
m_aJavaList.HandleEntryChecked( pEntry );
@@ -219,7 +220,7 @@ IMPL_LINK( SvxJavaOptionsPage, CheckHdl_Impl, SvxSimpleTable *, pList )
IMPL_LINK_NOARG(SvxJavaOptionsPage, SelectHdl_Impl)
{
// set installation directory info
- SvLBoxEntry* pEntry = m_aJavaList.FirstSelected();
+ SvTreeListEntry* pEntry = m_aJavaList.FirstSelected();
DBG_ASSERT( pEntry, "SvxJavaOptionsPage::SelectHdl_Impl(): no entry" );
String* pLocation = static_cast< String* >( pEntry->GetUserData() );
DBG_ASSERT( pLocation, "invalid location string" );
@@ -236,9 +237,8 @@ IMPL_LINK_NOARG(SvxJavaOptionsPage, AddHdl_Impl)
{
try
{
- Reference < XMultiServiceFactory > xMgr( ::comphelper::getProcessServiceFactory() );
- xFolderPicker = Reference< XFolderPicker >(
- xMgr->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.ui.dialogs.FolderPicker") ) ), UNO_QUERY );
+ Reference < XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ xFolderPicker = FolderPicker::create(xContext);
String sWorkFolder = SvtPathOptions().GetWorkPath();
xFolderPicker->setDisplayDirectory( sWorkFolder );
@@ -414,7 +414,7 @@ void SvxJavaOptionsPage::ClearJavaInfo()
void SvxJavaOptionsPage::ClearJavaList()
{
- SvLBoxEntry* pEntry = m_aJavaList.First();
+ SvTreeListEntry* pEntry = m_aJavaList.First();
while ( pEntry )
{
String* pLocation = static_cast< String* >( pEntry->GetUserData() );
@@ -457,7 +457,7 @@ void SvxJavaOptionsPage::LoadJREs()
JavaInfo* pCmpInfo = *parInfo++;
if ( jfw_areEqualJavaInfo( pCmpInfo, pSelectedJava ) )
{
- SvLBoxEntry* pEntry = m_aJavaList.GetEntry(i);
+ SvTreeListEntry* pEntry = m_aJavaList.GetEntry(i);
if ( pEntry )
m_aJavaList.HandleEntryChecked( pEntry );
break;
@@ -480,7 +480,7 @@ void SvxJavaOptionsPage::AddJRE( JavaInfo* _pInfo )
sEntry.append('\t');
if ( ( _pInfo->nFeatures & JFW_FEATURE_ACCESSBRIDGE ) == JFW_FEATURE_ACCESSBRIDGE )
sEntry.append(m_sAccessibilityText);
- SvLBoxEntry* pEntry = m_aJavaList.InsertEntry(sEntry.makeStringAndClear());
+ SvTreeListEntry* pEntry = m_aJavaList.InsertEntry(sEntry.makeStringAndClear());
INetURLObject aLocObj( ::rtl::OUString( _pInfo->sLocation ) );
String* pLocation = new String( aLocObj.getFSysPath( INetURLObject::FSYS_DETECT ) );
pEntry->SetUserData( pLocation );
@@ -488,7 +488,7 @@ void SvxJavaOptionsPage::AddJRE( JavaInfo* _pInfo )
// -----------------------------------------------------------------------
-void SvxJavaOptionsPage::HandleCheckEntry( SvLBoxEntry* _pEntry )
+void SvxJavaOptionsPage::HandleCheckEntry( SvTreeListEntry* _pEntry )
{
m_aJavaList.Select( _pEntry, sal_True );
SvButtonState eState = m_aJavaList.GetCheckButtonState( _pEntry );
@@ -496,7 +496,7 @@ void SvxJavaOptionsPage::HandleCheckEntry( SvLBoxEntry* _pEntry )
if ( SV_BUTTON_CHECKED == eState )
{
// we have radio button behavior -> so uncheck the other entries
- SvLBoxEntry* pEntry = m_aJavaList.First();
+ SvTreeListEntry* pEntry = m_aJavaList.First();
while ( pEntry )
{
if ( pEntry != _pEntry )
@@ -555,7 +555,7 @@ void SvxJavaOptionsPage::AddFolder( const ::rtl::OUString& _rFolder )
else
jfw_freeJavaInfo( pInfo );
- SvLBoxEntry* pEntry = m_aJavaList.GetEntry( nPos );
+ SvTreeListEntry* pEntry = m_aJavaList.GetEntry( nPos );
m_aJavaList.Select( pEntry );
m_aJavaList.SetCheckButtonState( pEntry, SV_BUTTON_CHECKED );
HandleCheckEntry( pEntry );
@@ -965,9 +965,8 @@ IMPL_LINK_NOARG(SvxJavaClassPathDlg, AddArchiveHdl_Impl)
IMPL_LINK_NOARG(SvxJavaClassPathDlg, AddPathHdl_Impl)
{
- rtl::OUString sService( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.ui.dialogs.FolderPicker" ) );
- Reference < XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
- Reference < XFolderPicker > xFolderPicker( xFactory->createInstance( sService ), UNO_QUERY );
+ Reference < XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ Reference < XFolderPicker2 > xFolderPicker = FolderPicker::create(xContext);;
String sOldFolder;
if ( m_aPathList.GetSelectEntryCount() > 0 )
diff --git a/cui/source/options/optjava.hxx b/cui/source/options/optjava.hxx
index d59f507fa85d..7e7d9f5a8ec2 100644
--- a/cui/source/options/optjava.hxx
+++ b/cui/source/options/optjava.hxx
@@ -26,7 +26,7 @@
#include <vcl/timer.hxx>
#include <sfx2/tabdlg.hxx>
#include <svx/simptabl.hxx>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/XFolderPicker2.hpp>
#include <svtools/dialogclosedlistener.hxx>
#include "radiobtnbox.hxx"
@@ -73,7 +73,7 @@ private:
m_aAddedInfos;
::com::sun::star::uno::Reference< ::svt::DialogClosedListener > xDialogListener;
- ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFolderPicker > xFolderPicker;
+ ::com::sun::star::uno::Reference< ::com::sun::star::ui::dialogs::XFolderPicker2 > xFolderPicker;
DECL_LINK(EnableHdl_Impl, void *);
DECL_LINK( CheckHdl_Impl, SvxSimpleTable * );
@@ -90,7 +90,7 @@ private:
void ClearJavaList();
void LoadJREs();
void AddJRE( JavaInfo* _pInfo );
- void HandleCheckEntry( SvLBoxEntry* _pEntry );
+ void HandleCheckEntry( SvTreeListEntry* _pEntry );
void AddFolder( const ::rtl::OUString& _rFolder );
public:
diff --git a/cui/source/options/optlingu.cxx b/cui/source/options/optlingu.cxx
index 9beea46dd176..705bf0c7e04e 100644
--- a/cui/source/options/optlingu.cxx
+++ b/cui/source/options/optlingu.cxx
@@ -32,6 +32,7 @@
#include <tools/urlobj.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <comphelper/processfactory.hxx>
+#include <com/sun/star/linguistic2/LinguServiceManager.hpp>
#include <com/sun/star/linguistic2/XSpellChecker.hpp>
#include <com/sun/star/linguistic2/XProofreader.hpp>
#include <com/sun/star/linguistic2/XHyphenator.hpp>
@@ -63,6 +64,7 @@
#include <cuires.hrc>
#include "helpid.hrc"
+#include <comphelper/componentcontext.hxx>
#include <ucbhelper/content.hxx>
#include <vector>
@@ -261,7 +263,7 @@ void DicUserData::SetChecked( sal_Bool bVal )
// class BrwString_Impl -------------------------------------------------
-static void lcl_SetCheckButton( SvLBoxEntry* pEntry, sal_Bool bCheck )
+static void lcl_SetCheckButton( SvTreeListEntry* pEntry, sal_Bool bCheck )
{
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetFirstItem(SV_ITEM_ID_LBOXBUTTON));
@@ -280,15 +282,15 @@ class BrwStringDic_Impl : public SvLBoxString
{
public:
- BrwStringDic_Impl( SvLBoxEntry* pEntry, sal_uInt16 nFlags,
+ BrwStringDic_Impl( SvTreeListEntry* pEntry, sal_uInt16 nFlags,
const String& rStr ) : SvLBoxString( pEntry, nFlags, rStr ) {}
virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags,
- SvLBoxEntry* pEntry);
+ SvTreeListEntry* pEntry);
};
void BrwStringDic_Impl::Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16,
- SvLBoxEntry* pEntry )
+ SvTreeListEntry* pEntry )
{
ModuleUserData_Impl* pData = (ModuleUserData_Impl*)pEntry->GetUserData();
Point aPos(rPos);
@@ -447,15 +449,15 @@ class BrwString_Impl : public SvLBoxString
{
public:
- BrwString_Impl( SvLBoxEntry* pEntry, sal_uInt16 nFlags,
+ BrwString_Impl( SvTreeListEntry* pEntry, sal_uInt16 nFlags,
const String& rStr ) : SvLBoxString( pEntry, nFlags, rStr ) {}
virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags,
- SvLBoxEntry* pEntry);
+ SvTreeListEntry* pEntry);
};
void BrwString_Impl::Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16,
- SvLBoxEntry* pEntry )
+ SvTreeListEntry* pEntry )
{
Point aPos(rPos);
aPos.X() += 20;
@@ -518,7 +520,7 @@ class SvxLinguData_Impl
LangImplNameTable aCfgThesTable;
LangImplNameTable aCfgGrammarTable;
uno::Reference< XMultiServiceFactory > xMSF;
- uno::Reference< XLinguServiceManager > xLinguSrvcMgr;
+ uno::Reference< XLinguServiceManager2 > xLinguSrvcMgr;
sal_Bool AddRemove( Sequence< OUString > &rConfigured,
@@ -531,7 +533,7 @@ public:
SvxLinguData_Impl & operator = (const SvxLinguData_Impl &rData);
- uno::Reference<XLinguServiceManager> & GetManager() { return xLinguSrvcMgr; }
+ uno::Reference<XLinguServiceManager2> & GetManager() { return xLinguSrvcMgr; }
void SetChecked( const Sequence< OUString > &rConfiguredServices );
void Reconfigure( const OUString &rDisplayName, sal_Bool bEnable );
@@ -731,143 +733,138 @@ SvxLinguData_Impl::SvxLinguData_Impl() :
nDisplayServices (0)
{
xMSF = ::comphelper::getProcessServiceFactory();
- uno::Reference < XInterface > xI = xMSF->createInstance(
- "com.sun.star.linguistic2.LinguServiceManager" );
- xLinguSrvcMgr = uno::Reference<XLinguServiceManager>(xI, UNO_QUERY);
- DBG_ASSERT(xLinguSrvcMgr.is(), "No linguistic service available!");
- if(xLinguSrvcMgr.is())
- {
- Locale aCurrentLocale;
- LanguageType eLang = Application::GetSettings().GetLanguage();
- SvxLanguageToLocale(aCurrentLocale, eLang);
- Sequence<Any> aArgs(2);//second arguments has to be empty!
- aArgs.getArray()[0] <<= SvxGetLinguPropertySet();
-
- //read spell checker
- Sequence< OUString > aSpellNames = xLinguSrvcMgr->getAvailableServices(
- cSpell, Locale() );
- const OUString* pSpellNames = aSpellNames.getConstArray();
-
- sal_Int32 nIdx;
- for(nIdx = 0; nIdx < aSpellNames.getLength(); nIdx++)
+ xLinguSrvcMgr = LinguServiceManager::create(comphelper::getComponentContext(xMSF));
+
+ Locale aCurrentLocale;
+ LanguageType eLang = Application::GetSettings().GetLanguage();
+ SvxLanguageToLocale(aCurrentLocale, eLang);
+ Sequence<Any> aArgs(2);//second arguments has to be empty!
+ aArgs.getArray()[0] <<= SvxGetLinguPropertySet();
+
+ //read spell checker
+ Sequence< OUString > aSpellNames = xLinguSrvcMgr->getAvailableServices(
+ cSpell, Locale() );
+ const OUString* pSpellNames = aSpellNames.getConstArray();
+
+ sal_Int32 nIdx;
+ for(nIdx = 0; nIdx < aSpellNames.getLength(); nIdx++)
+ {
+ ServiceInfo_Impl aInfo;
+ aInfo.sSpellImplName = pSpellNames[nIdx];
+ aInfo.xSpell = uno::Reference<XSpellChecker>(
+ xMSF->createInstanceWithArguments(aInfo.sSpellImplName, aArgs), UNO_QUERY);
+
+ uno::Reference<XServiceDisplayName> xDispName(aInfo.xSpell, UNO_QUERY);
+ if(xDispName.is())
+ aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
+
+ const Sequence< Locale > aLocales( aInfo.xSpell->getLocales() );
+ //! suppress display of entries with no supported languages (see feature 110994)
+ if (aLocales.getLength())
{
- ServiceInfo_Impl aInfo;
- aInfo.sSpellImplName = pSpellNames[nIdx];
- aInfo.xSpell = uno::Reference<XSpellChecker>(
- xMSF->createInstanceWithArguments(aInfo.sSpellImplName, aArgs), UNO_QUERY);
-
- uno::Reference<XServiceDisplayName> xDispName(aInfo.xSpell, UNO_QUERY);
- if(xDispName.is())
- aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
-
- const Sequence< Locale > aLocales( aInfo.xSpell->getLocales() );
- //! suppress display of entries with no supported languages (see feature 110994)
- if (aLocales.getLength())
- {
- lcl_MergeLocales( aAllServiceLocales, aLocales );
- lcl_MergeDisplayArray( *this, aInfo );
- }
+ lcl_MergeLocales( aAllServiceLocales, aLocales );
+ lcl_MergeDisplayArray( *this, aInfo );
}
+ }
- //read grammar checker
- Sequence< OUString > aGrammarNames = xLinguSrvcMgr->getAvailableServices(
- cGrammar, Locale() );
- const OUString* pGrammarNames = aGrammarNames.getConstArray();
- for(nIdx = 0; nIdx < aGrammarNames.getLength(); nIdx++)
- {
- ServiceInfo_Impl aInfo;
- aInfo.sGrammarImplName = pGrammarNames[nIdx];
- aInfo.xGrammar = uno::Reference<XProofreader>(
- xMSF->createInstanceWithArguments(aInfo.sGrammarImplName, aArgs), UNO_QUERY);
-
- uno::Reference<XServiceDisplayName> xDispName(aInfo.xGrammar, UNO_QUERY);
- if(xDispName.is())
- aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
-
- const Sequence< Locale > aLocales( aInfo.xGrammar->getLocales() );
- //! suppress display of entries with no supported languages (see feature 110994)
- if (aLocales.getLength())
- {
- lcl_MergeLocales( aAllServiceLocales, aLocales );
- lcl_MergeDisplayArray( *this, aInfo );
- }
- }
+ //read grammar checker
+ Sequence< OUString > aGrammarNames = xLinguSrvcMgr->getAvailableServices(
+ cGrammar, Locale() );
+ const OUString* pGrammarNames = aGrammarNames.getConstArray();
+ for(nIdx = 0; nIdx < aGrammarNames.getLength(); nIdx++)
+ {
+ ServiceInfo_Impl aInfo;
+ aInfo.sGrammarImplName = pGrammarNames[nIdx];
+ aInfo.xGrammar = uno::Reference<XProofreader>(
+ xMSF->createInstanceWithArguments(aInfo.sGrammarImplName, aArgs), UNO_QUERY);
+
+ uno::Reference<XServiceDisplayName> xDispName(aInfo.xGrammar, UNO_QUERY);
+ if(xDispName.is())
+ aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
- //read hyphenator
- Sequence< OUString > aHyphNames = xLinguSrvcMgr->getAvailableServices(
- cHyph, Locale() );
- const OUString* pHyphNames = aHyphNames.getConstArray();
- for(nIdx = 0; nIdx < aHyphNames.getLength(); nIdx++)
+ const Sequence< Locale > aLocales( aInfo.xGrammar->getLocales() );
+ //! suppress display of entries with no supported languages (see feature 110994)
+ if (aLocales.getLength())
{
- ServiceInfo_Impl aInfo;
- aInfo.sHyphImplName = pHyphNames[nIdx];
- aInfo.xHyph = uno::Reference<XHyphenator>(
- xMSF->createInstanceWithArguments(aInfo.sHyphImplName, aArgs), UNO_QUERY);
-
- uno::Reference<XServiceDisplayName> xDispName(aInfo.xHyph, UNO_QUERY);
- if(xDispName.is())
- aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
-
- const Sequence< Locale > aLocales( aInfo.xHyph->getLocales() );
- //! suppress display of entries with no supported languages (see feature 110994)
- if (aLocales.getLength())
- {
- lcl_MergeLocales( aAllServiceLocales, aLocales );
- lcl_MergeDisplayArray( *this, aInfo );
- }
+ lcl_MergeLocales( aAllServiceLocales, aLocales );
+ lcl_MergeDisplayArray( *this, aInfo );
}
+ }
+
+ //read hyphenator
+ Sequence< OUString > aHyphNames = xLinguSrvcMgr->getAvailableServices(
+ cHyph, Locale() );
+ const OUString* pHyphNames = aHyphNames.getConstArray();
+ for(nIdx = 0; nIdx < aHyphNames.getLength(); nIdx++)
+ {
+ ServiceInfo_Impl aInfo;
+ aInfo.sHyphImplName = pHyphNames[nIdx];
+ aInfo.xHyph = uno::Reference<XHyphenator>(
+ xMSF->createInstanceWithArguments(aInfo.sHyphImplName, aArgs), UNO_QUERY);
- //read thesauri
- Sequence< OUString > aThesNames = xLinguSrvcMgr->getAvailableServices(
- cThes, Locale() );
- const OUString* pThesNames = aThesNames.getConstArray();
- for(nIdx = 0; nIdx < aThesNames.getLength(); nIdx++)
+ uno::Reference<XServiceDisplayName> xDispName(aInfo.xHyph, UNO_QUERY);
+ if(xDispName.is())
+ aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
+
+ const Sequence< Locale > aLocales( aInfo.xHyph->getLocales() );
+ //! suppress display of entries with no supported languages (see feature 110994)
+ if (aLocales.getLength())
{
- ServiceInfo_Impl aInfo;
- aInfo.sThesImplName = pThesNames[nIdx];
- aInfo.xThes = uno::Reference<XThesaurus>(
- xMSF->createInstanceWithArguments(aInfo.sThesImplName, aArgs), UNO_QUERY);
-
- uno::Reference<XServiceDisplayName> xDispName(aInfo.xThes, UNO_QUERY);
- if(xDispName.is())
- aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
-
- const Sequence< Locale > aLocales( aInfo.xThes->getLocales() );
- //! suppress display of entries with no supported languages (see feature 110994)
- if (aLocales.getLength())
- {
- lcl_MergeLocales( aAllServiceLocales, aLocales );
- lcl_MergeDisplayArray( *this, aInfo );
- }
+ lcl_MergeLocales( aAllServiceLocales, aLocales );
+ lcl_MergeDisplayArray( *this, aInfo );
}
+ }
+
+ //read thesauri
+ Sequence< OUString > aThesNames = xLinguSrvcMgr->getAvailableServices(
+ cThes, Locale() );
+ const OUString* pThesNames = aThesNames.getConstArray();
+ for(nIdx = 0; nIdx < aThesNames.getLength(); nIdx++)
+ {
+ ServiceInfo_Impl aInfo;
+ aInfo.sThesImplName = pThesNames[nIdx];
+ aInfo.xThes = uno::Reference<XThesaurus>(
+ xMSF->createInstanceWithArguments(aInfo.sThesImplName, aArgs), UNO_QUERY);
+
+ uno::Reference<XServiceDisplayName> xDispName(aInfo.xThes, UNO_QUERY);
+ if(xDispName.is())
+ aInfo.sDisplayName = xDispName->getServiceDisplayName( aCurrentLocale );
- Sequence< OUString > aCfgSvcs;
- const Locale* pAllLocales = aAllServiceLocales.getConstArray();
- for(sal_Int32 nLocale = 0; nLocale < aAllServiceLocales.getLength(); nLocale++)
+ const Sequence< Locale > aLocales( aInfo.xThes->getLocales() );
+ //! suppress display of entries with no supported languages (see feature 110994)
+ if (aLocales.getLength())
{
- sal_Int16 nLang = SvxLocaleToLanguage( pAllLocales[nLocale] );
-
- aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cSpell, pAllLocales[nLocale]);
- SetChecked( aCfgSvcs );
- if (aCfgSvcs.getLength())
- aCfgSpellTable[ nLang ] = aCfgSvcs;
-
- aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cGrammar, pAllLocales[nLocale]);
- SetChecked( aCfgSvcs );
- if (aCfgSvcs.getLength())
- aCfgGrammarTable[ nLang ] = aCfgSvcs;
-
- aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cHyph, pAllLocales[nLocale]);
- SetChecked( aCfgSvcs );
- if (aCfgSvcs.getLength())
- aCfgHyphTable[ nLang ] = aCfgSvcs;
-
- aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cThes, pAllLocales[nLocale]);
- SetChecked( aCfgSvcs );
- if (aCfgSvcs.getLength())
- aCfgThesTable[ nLang ] = aCfgSvcs;
+ lcl_MergeLocales( aAllServiceLocales, aLocales );
+ lcl_MergeDisplayArray( *this, aInfo );
}
}
+
+ Sequence< OUString > aCfgSvcs;
+ const Locale* pAllLocales = aAllServiceLocales.getConstArray();
+ for(sal_Int32 nLocale = 0; nLocale < aAllServiceLocales.getLength(); nLocale++)
+ {
+ sal_Int16 nLang = SvxLocaleToLanguage( pAllLocales[nLocale] );
+
+ aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cSpell, pAllLocales[nLocale]);
+ SetChecked( aCfgSvcs );
+ if (aCfgSvcs.getLength())
+ aCfgSpellTable[ nLang ] = aCfgSvcs;
+
+ aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cGrammar, pAllLocales[nLocale]);
+ SetChecked( aCfgSvcs );
+ if (aCfgSvcs.getLength())
+ aCfgGrammarTable[ nLang ] = aCfgSvcs;
+
+ aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cHyph, pAllLocales[nLocale]);
+ SetChecked( aCfgSvcs );
+ if (aCfgSvcs.getLength())
+ aCfgHyphTable[ nLang ] = aCfgSvcs;
+
+ aCfgSvcs = xLinguSrvcMgr->getConfiguredServices(cThes, pAllLocales[nLocale]);
+ SetChecked( aCfgSvcs );
+ if (aCfgSvcs.getLength())
+ aCfgThesTable[ nLang ] = aCfgSvcs;
+ }
}
SvxLinguData_Impl::SvxLinguData_Impl( const SvxLinguData_Impl &rData ) :
@@ -1214,7 +1211,7 @@ sal_Bool SvxLinguTabPage::FillItemSet( SfxItemSet& rCoreSet )
{
sal_Int16 nLang = aIt->first;
const Sequence< OUString > aImplNames( aIt->second );
- uno::Reference< XLinguServiceManager > xMgr( pLinguData->GetManager() );
+ uno::Reference< XLinguServiceManager2 > xMgr( pLinguData->GetManager() );
Locale aLocale( SvxCreateLocale(nLang) );
if (xMgr.is())
xMgr->setConfiguredServices( cSpell, aLocale, aImplNames );
@@ -1226,7 +1223,7 @@ sal_Bool SvxLinguTabPage::FillItemSet( SfxItemSet& rCoreSet )
{
sal_Int16 nLang = aIt->first;
const Sequence< OUString > aImplNames( aIt->second );
- uno::Reference< XLinguServiceManager > xMgr( pLinguData->GetManager() );
+ uno::Reference< XLinguServiceManager2 > xMgr( pLinguData->GetManager() );
Locale aLocale( SvxCreateLocale(nLang) );
if (xMgr.is())
xMgr->setConfiguredServices( cGrammar, aLocale, aImplNames );
@@ -1238,7 +1235,7 @@ sal_Bool SvxLinguTabPage::FillItemSet( SfxItemSet& rCoreSet )
{
sal_Int16 nLang = aIt->first;
const Sequence< OUString > aImplNames( aIt->second );
- uno::Reference< XLinguServiceManager > xMgr( pLinguData->GetManager() );
+ uno::Reference< XLinguServiceManager2 > xMgr( pLinguData->GetManager() );
Locale aLocale( SvxCreateLocale(nLang) );
if (xMgr.is())
xMgr->setConfiguredServices( cHyph, aLocale, aImplNames );
@@ -1250,7 +1247,7 @@ sal_Bool SvxLinguTabPage::FillItemSet( SfxItemSet& rCoreSet )
{
sal_Int16 nLang = aIt->first;
const Sequence< OUString > aImplNames( aIt->second );
- uno::Reference< XLinguServiceManager > xMgr( pLinguData->GetManager() );
+ uno::Reference< XLinguServiceManager2 > xMgr( pLinguData->GetManager() );
Locale aLocale( SvxCreateLocale(nLang) );
if (xMgr.is())
xMgr->setConfiguredServices( cThes, aLocale, aImplNames );
@@ -1271,7 +1268,7 @@ sal_Bool SvxLinguTabPage::FillItemSet( SfxItemSet& rCoreSet )
aActiveDics.realloc( nDics );
OUString *pActiveDic = aActiveDics.getArray();
- SvLBoxEntry *pEntry = aLinguDicsCLB.GetEntry( i );
+ SvTreeListEntry *pEntry = aLinguDicsCLB.GetEntry( i );
if (pEntry)
{
DicUserData aData( (sal_uLong)pEntry->GetUserData() );
@@ -1305,7 +1302,7 @@ sal_Bool SvxLinguTabPage::FillItemSet( SfxItemSet& rCoreSet )
nEntries = aLinguOptionsCLB.GetEntryCount();
for (sal_uInt16 j = 0; j < nEntries; ++j)
{
- SvLBoxEntry *pEntry = aLinguOptionsCLB.GetEntry( j );
+ SvTreeListEntry *pEntry = aLinguOptionsCLB.GetEntry( j );
OptionsUserData aData( (sal_uLong)pEntry->GetUserData() );
String aPropName( lcl_GetPropertyName( (EID_OPTIONS) aData.GetEntryId() ) );
@@ -1327,8 +1324,8 @@ sal_Bool SvxLinguTabPage::FillItemSet( SfxItemSet& rCoreSet )
aLngCfg.SetProperty( aPropName, aAny );
}
- SvLBoxEntry *pPreBreakEntry = aLinguOptionsCLB.GetEntry( (sal_uInt16) EID_NUM_PRE_BREAK );
- SvLBoxEntry *pPostBreakEntry = aLinguOptionsCLB.GetEntry( (sal_uInt16) EID_NUM_POST_BREAK );
+ SvTreeListEntry *pPreBreakEntry = aLinguOptionsCLB.GetEntry( (sal_uInt16) EID_NUM_PRE_BREAK );
+ SvTreeListEntry *pPostBreakEntry = aLinguOptionsCLB.GetEntry( (sal_uInt16) EID_NUM_POST_BREAK );
DBG_ASSERT( pPreBreakEntry, "NULL Pointer" );
DBG_ASSERT( pPostBreakEntry, "NULL Pointer" );
if (pPreBreakEntry && pPostBreakEntry)
@@ -1389,7 +1386,7 @@ void SvxLinguTabPage::AddDicBoxEntry(
SvxLocaleToLanguage( rxDic->getLocale() ),
DictionaryType_NEGATIVE == rxDic->getDictionaryType() ) );
aLinguDicsCLB.InsertEntry( aTxt, (sal_uInt16)LISTBOX_APPEND ); // append at end
- SvLBoxEntry* pEntry = aLinguDicsCLB.GetEntry( aLinguDicsCLB.GetEntryCount() - 1 );
+ SvTreeListEntry* pEntry = aLinguDicsCLB.GetEntry( aLinguDicsCLB.GetEntryCount() - 1 );
DBG_ASSERT( pEntry, "failed to add entry" );
if (pEntry)
{
@@ -1435,7 +1432,7 @@ void SvxLinguTabPage::UpdateModulesBox_Impl()
{
const ServiceInfo_Impl &rInfo = rAllDispSrvcArr[i];
aLinguModulesCLB.InsertEntry( rInfo.sDisplayName, (sal_uInt16)LISTBOX_APPEND );
- SvLBoxEntry* pEntry = aLinguModulesCLB.GetEntry(i);
+ SvTreeListEntry* pEntry = aLinguModulesCLB.GetEntry(i);
pEntry->SetUserData( (void *) &rInfo );
aLinguModulesCLB.CheckEntryPos( i, rInfo.bConfigured );
}
@@ -1465,8 +1462,8 @@ void SvxLinguTabPage::Reset( const SfxItemSet& rSet )
aLinguOptionsCLB.SetUpdateMode(sal_False);
aLinguOptionsCLB.Clear();
- SvLBoxTreeList *pModel = aLinguOptionsCLB.GetModel();
- SvLBoxEntry* pEntry = NULL;
+ SvTreeList *pModel = aLinguOptionsCLB.GetModel();
+ SvTreeListEntry* pEntry = NULL;
sal_Int16 nVal = 0;
sal_Bool bVal = sal_False;
@@ -1619,7 +1616,7 @@ IMPL_LINK( SvxLinguTabPage, BoxCheckButtonHdl_Impl, SvTreeListBox *, pBox )
const uno::Reference< XDictionary > &rDic = aDics.getConstArray()[ nPos ];
if (SvxGetIgnoreAllList() == rDic)
{
- SvLBoxEntry* pEntry = aLinguDicsCLB.GetEntry( nPos );
+ SvTreeListEntry* pEntry = aLinguDicsCLB.GetEntry( nPos );
if (pEntry)
lcl_SetCheckButton( pEntry, sal_True );
}
@@ -1690,7 +1687,7 @@ IMPL_LINK( SvxLinguTabPage, ClickHdl_Impl, PushButton *, pBtn )
}
else if (&aLinguDicsEditPB == pBtn)
{
- SvLBoxEntry *pEntry = aLinguDicsCLB.GetCurEntry();
+ SvTreeListEntry *pEntry = aLinguDicsCLB.GetCurEntry();
if (pEntry)
{
DicUserData aData( (sal_uLong) pEntry->GetUserData() );
@@ -1721,7 +1718,7 @@ IMPL_LINK( SvxLinguTabPage, ClickHdl_Impl, PushButton *, pBtn )
QueryBox( this, CUI_RES( RID_SFXQB_DELDICT ) ).Execute() )
return 0;
- SvLBoxEntry *pEntry = aLinguDicsCLB.GetCurEntry();
+ SvTreeListEntry *pEntry = aLinguDicsCLB.GetCurEntry();
if (pEntry)
{
DicUserData aData( (sal_uLong) pEntry->GetUserData() );
@@ -1759,7 +1756,7 @@ IMPL_LINK( SvxLinguTabPage, ClickHdl_Impl, PushButton *, pBtn )
sal_uLong nCnt = aLinguDicsCLB.GetEntryCount();
for (sal_uLong i = 0; i < nCnt; ++i)
{
- SvLBoxEntry *pDicEntry = aLinguDicsCLB.GetEntry( i );
+ SvTreeListEntry *pDicEntry = aLinguDicsCLB.GetEntry( i );
DBG_ASSERT( pDicEntry, "missing entry" );
if (pDicEntry)
{
@@ -1780,7 +1777,7 @@ IMPL_LINK( SvxLinguTabPage, ClickHdl_Impl, PushButton *, pBtn )
}
else if (&aLinguOptionsEditPB == pBtn)
{
- SvLBoxEntry *pEntry = aLinguOptionsCLB.GetCurEntry();
+ SvTreeListEntry *pEntry = aLinguOptionsCLB.GetCurEntry();
DBG_ASSERT( pEntry, "no entry selected" );
if (pEntry)
{
@@ -1829,7 +1826,7 @@ IMPL_LINK( SvxLinguTabPage, SelectHdl_Impl, SvxCheckListBox *, pBox )
}
else if (&aLinguDicsCLB == pBox)
{
- SvLBoxEntry *pEntry = pBox->GetCurEntry();
+ SvTreeListEntry *pEntry = pBox->GetCurEntry();
if (pEntry)
{
DicUserData aData( (sal_uLong) pEntry->GetUserData() );
@@ -1841,7 +1838,7 @@ IMPL_LINK( SvxLinguTabPage, SelectHdl_Impl, SvxCheckListBox *, pBox )
}
else if (&aLinguOptionsCLB == pBox)
{
- SvLBoxEntry *pEntry = pBox->GetCurEntry();
+ SvTreeListEntry *pEntry = pBox->GetCurEntry();
if (pEntry)
{
OptionsUserData aData( (sal_uLong) pEntry->GetUserData() );
@@ -1858,9 +1855,9 @@ IMPL_LINK( SvxLinguTabPage, SelectHdl_Impl, SvxCheckListBox *, pBox )
// -----------------------------------------------------------------------
-SvLBoxEntry* SvxLinguTabPage::CreateEntry( String& rTxt, sal_uInt16 nCol )
+SvTreeListEntry* SvxLinguTabPage::CreateEntry( String& rTxt, sal_uInt16 nCol )
{
- SvLBoxEntry* pEntry = new SvLBoxEntry;
+ SvTreeListEntry* pEntry = new SvTreeListEntry;
if( !pCheckButtonData )
pCheckButtonData = new SvLBoxButtonData( &aLinguOptionsCLB );
@@ -2021,9 +2018,9 @@ SvxEditModulesDlg::~SvxEditModulesDlg()
}
-SvLBoxEntry* SvxEditModulesDlg::CreateEntry( String& rTxt, sal_uInt16 nCol )
+SvTreeListEntry* SvxEditModulesDlg::CreateEntry( String& rTxt, sal_uInt16 nCol )
{
- SvLBoxEntry* pEntry = new SvLBoxEntry;
+ SvTreeListEntry* pEntry = new SvTreeListEntry;
if( !pCheckButtonData )
{
pCheckButtonData = new SvLBoxButtonData( &aModulesCLB );
@@ -2047,7 +2044,7 @@ IMPL_LINK( SvxEditModulesDlg, SelectHdl_Impl, SvxCheckListBox *, pBox )
{
sal_Bool bDisableUp = sal_True;
sal_Bool bDisableDown = sal_True;
- SvLBoxEntry *pEntry = pBox->GetCurEntry();
+ SvTreeListEntry *pEntry = pBox->GetCurEntry();
if (pEntry)
{
ModuleUserData_Impl* pData = (ModuleUserData_Impl*)pEntry->GetUserData();
@@ -2080,7 +2077,7 @@ IMPL_LINK( SvxEditModulesDlg, SelectHdl_Impl, SvxCheckListBox *, pBox )
IMPL_LINK( SvxEditModulesDlg, BoxCheckButtonHdl_Impl, SvTreeListBox *, pBox )
{
pBox = &aModulesCLB;
- SvLBoxEntry *pCurEntry = pBox->GetCurEntry();
+ SvTreeListEntry *pCurEntry = pBox->GetCurEntry();
if (pCurEntry)
{
ModuleUserData_Impl* pData = (ModuleUserData_Impl *)
@@ -2089,7 +2086,7 @@ IMPL_LINK( SvxEditModulesDlg, BoxCheckButtonHdl_Impl, SvTreeListBox *, pBox )
{
// make hyphenator checkboxes function as radio-buttons
// (at most one box may be checked)
- SvLBoxEntry *pEntry = pBox->First();
+ SvTreeListEntry *pEntry = pBox->First();
while (pEntry)
{
pData = (ModuleUserData_Impl *) pEntry->GetUserData();
@@ -2113,7 +2110,7 @@ IMPL_LINK( SvxEditModulesDlg, LangSelectHdl_Impl, ListBox *, pBox )
static Locale aLastLocale;
Locale aCurLocale;
SvxLanguageToLocale(aCurLocale, eCurLanguage);
- SvLBoxTreeList *pModel = aModulesCLB.GetModel();
+ SvTreeList *pModel = aModulesCLB.GetModel();
if (pBox)
{
@@ -2127,7 +2124,7 @@ IMPL_LINK( SvxEditModulesDlg, LangSelectHdl_Impl, ListBox *, pBox )
sal_Bool bChanged = sal_False;
for(sal_uInt16 i = 0; i < aModulesCLB.GetEntryCount(); i++)
{
- SvLBoxEntry *pEntry = aModulesCLB.GetEntry(i);
+ SvTreeListEntry *pEntry = aModulesCLB.GetEntry(i);
ModuleUserData_Impl* pData = (ModuleUserData_Impl*)pEntry->GetUserData();
if(pData->IsParent())
{
@@ -2185,7 +2182,7 @@ IMPL_LINK( SvxEditModulesDlg, LangSelectHdl_Impl, ListBox *, pBox )
//
// spellchecker entries
//
- SvLBoxEntry* pEntry = CreateEntry( sSpell, CBCOL_SECOND );
+ SvTreeListEntry* pEntry = CreateEntry( sSpell, CBCOL_SECOND );
ModuleUserData_Impl* pUserData = new ModuleUserData_Impl(
String(), sal_True, sal_False, TYPE_SPELL, 0 );
pEntry->SetUserData( (void *)pUserData );
@@ -2210,7 +2207,7 @@ IMPL_LINK( SvxEditModulesDlg, LangSelectHdl_Impl, ListBox *, pBox )
if (!aImplName.isEmpty() && bIsSuppLang)
{
String aTxt( pInfo->sDisplayName );
- SvLBoxEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
+ SvTreeListEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
LangImplNameTable &rTable = rLinguData.GetSpellTable();
const bool bHasLang = rTable.count( eCurLanguage );
@@ -2254,7 +2251,7 @@ IMPL_LINK( SvxEditModulesDlg, LangSelectHdl_Impl, ListBox *, pBox )
if (!aImplName.isEmpty() && bIsSuppLang)
{
String aTxt( pInfo->sDisplayName );
- SvLBoxEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
+ SvTreeListEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
LangImplNameTable &rTable = rLinguData.GetGrammarTable();
const bool bHasLang = rTable.count( eCurLanguage );
@@ -2298,7 +2295,7 @@ IMPL_LINK( SvxEditModulesDlg, LangSelectHdl_Impl, ListBox *, pBox )
if (!aImplName.isEmpty() && bIsSuppLang)
{
String aTxt( pInfo->sDisplayName );
- SvLBoxEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
+ SvTreeListEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
LangImplNameTable &rTable = rLinguData.GetHyphTable();
const bool bHasLang = rTable.count( eCurLanguage );
@@ -2342,7 +2339,7 @@ IMPL_LINK( SvxEditModulesDlg, LangSelectHdl_Impl, ListBox *, pBox )
if (!aImplName.isEmpty() && bIsSuppLang)
{
String aTxt( pInfo->sDisplayName );
- SvLBoxEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
+ SvTreeListEntry* pNewEntry = CreateEntry( aTxt, CBCOL_FIRST );
LangImplNameTable &rTable = rLinguData.GetThesTable();
const bool bHasLang = rTable.count( eCurLanguage );
@@ -2368,16 +2365,16 @@ IMPL_LINK( SvxEditModulesDlg, UpDownHdl_Impl, PushButton *, pBtn )
{
sal_Bool bUp = &aPrioUpPB == pBtn;
sal_uInt16 nCurPos = aModulesCLB.GetSelectEntryPos();
- SvLBoxEntry* pEntry;
+ SvTreeListEntry* pEntry;
if (nCurPos != LISTBOX_ENTRY_NOTFOUND &&
0 != (pEntry = aModulesCLB.GetEntry(nCurPos)))
{
aModulesCLB.SetUpdateMode(sal_False);
- SvLBoxTreeList *pModel = aModulesCLB.GetModel();
+ SvTreeList *pModel = aModulesCLB.GetModel();
ModuleUserData_Impl* pData = (ModuleUserData_Impl*)pEntry->GetUserData();
String aStr(aModulesCLB.GetEntryText(pEntry));
- SvLBoxEntry* pToInsert = CreateEntry( aStr, CBCOL_FIRST );
+ SvTreeListEntry* pToInsert = CreateEntry( aStr, CBCOL_FIRST );
pToInsert->SetUserData( (void *)pData);
sal_Bool bIsChecked = aModulesCLB.IsChecked(nCurPos);
diff --git a/cui/source/options/optpath.cxx b/cui/source/options/optpath.cxx
index 90c0f2aa6939..f1612b5e4922 100644
--- a/cui/source/options/optpath.cxx
+++ b/cui/source/options/optpath.cxx
@@ -48,6 +48,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
#include <com/sun/star/ui/dialogs/XAsynchronousExecutableDialog.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <officecfg/Office/Common.hxx>
#include "optHeaderTabListbox.hxx"
#include <readonlyimage.hxx>
@@ -335,7 +336,7 @@ void SvxPathTabPage::Reset( const SfxItemSet& )
String aValue( sTmpPath );
aStr += '\t';
aStr += Convert_Impl( aValue );
- SvLBoxEntry* pEntry = pPathBox->InsertEntry( aStr );
+ SvTreeListEntry* pEntry = pPathBox->InsertEntry( aStr );
if ( bReadOnly )
{
pPathBox->SetCollapsedEntryBmp( pEntry, pImpl->m_aLockImage );
@@ -391,7 +392,7 @@ void SvxPathTabPage::FillUserData()
IMPL_LINK_NOARG(SvxPathTabPage, PathSelect_Impl)
{
sal_uInt16 nSelCount = 0;
- SvLBoxEntry* pEntry = pPathBox->FirstSelected();
+ SvTreeListEntry* pEntry = pPathBox->FirstSelected();
//the entry image indicates whether the path is write protected
Image aEntryImage;
@@ -413,7 +414,7 @@ IMPL_LINK_NOARG(SvxPathTabPage, PathSelect_Impl)
IMPL_LINK_NOARG(SvxPathTabPage, StandardHdl_Impl)
{
- SvLBoxEntry* pEntry = pPathBox->FirstSelected();
+ SvTreeListEntry* pEntry = pPathBox->FirstSelected();
while ( pEntry )
{
PathUserData_Impl* pPathImpl = (PathUserData_Impl*)pEntry->GetUserData();
@@ -469,7 +470,7 @@ IMPL_LINK_NOARG(SvxPathTabPage, StandardHdl_Impl)
void SvxPathTabPage::ChangeCurrentEntry( const String& _rFolder )
{
- SvLBoxEntry* pEntry = pPathBox->GetCurEntry();
+ SvTreeListEntry* pEntry = pPathBox->GetCurEntry();
if ( !pEntry )
{
SAL_WARN( "cui.options", "SvxPathTabPage::ChangeCurrentEntry(): no entry" );
@@ -534,7 +535,7 @@ void SvxPathTabPage::ChangeCurrentEntry( const String& _rFolder )
IMPL_LINK_NOARG(SvxPathTabPage, PathHdl_Impl)
{
- SvLBoxEntry* pEntry = pPathBox->GetCurEntry();
+ SvTreeListEntry* pEntry = pPathBox->GetCurEntry();
sal_uInt16 nPos = ( pEntry != NULL ) ? ( (PathUserData_Impl*)pEntry->GetUserData() )->nRealId : 0;
String sInternal, sUser, sWritable;
if ( pEntry )
@@ -610,10 +611,8 @@ IMPL_LINK_NOARG(SvxPathTabPage, PathHdl_Impl)
{
try
{
- rtl::OUString aService( RTL_CONSTASCII_USTRINGPARAM( FOLDER_PICKER_SERVICE_NAME ) );
- Reference < XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
- xFolderPicker = ::com::sun::star::uno::Reference< XFolderPicker >(
- xFactory->createInstance( aService ), UNO_QUERY );
+ Reference < XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ xFolderPicker = FolderPicker::create(xContext);;
INetURLObject aURL( sWritable, INET_PROT_FILE );
xFolderPicker->setDisplayDirectory( aURL.GetMainURL( INetURLObject::NO_DECODE ) );
diff --git a/cui/source/options/optupdt.cxx b/cui/source/options/optupdt.cxx
index 0e81360bc4f5..b0f255f80ffe 100644
--- a/cui/source/options/optupdt.cxx
+++ b/cui/source/options/optupdt.cxx
@@ -28,7 +28,7 @@
#include <comphelper/processfactory.hxx>
#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <com/sun/star/ui/dialogs/ExecutableDialogResults.hpp>
#include <com/sun/star/frame/XDesktop.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
@@ -300,10 +300,8 @@ IMPL_LINK( SvxOnlineUpdateTabPage, AutoCheckHdl_Impl, CheckBox *, pBox )
IMPL_LINK_NOARG(SvxOnlineUpdateTabPage, FileDialogHdl_Impl)
{
- uno::Reference < lang::XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
- uno::Reference < dialogs::XFolderPicker > xFolderPicker(
- xFactory->createInstance( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( FOLDER_PICKER_SERVICE_NAME ) ) ),
- uno::UNO_QUERY );
+ uno::Reference < uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ uno::Reference < dialogs::XFolderPicker2 > xFolderPicker = dialogs::FolderPicker::create(xContext);
rtl::OUString aURL;
if( osl::FileBase::E_None != osl::FileBase::getFileURLFromSystemPath(m_aDestPath.GetText(), aURL) )
diff --git a/cui/source/options/radiobtnbox.cxx b/cui/source/options/radiobtnbox.cxx
index dd5fb5979c7d..599b573c9835 100644
--- a/cui/source/options/radiobtnbox.cxx
+++ b/cui/source/options/radiobtnbox.cxx
@@ -52,7 +52,7 @@ void SvxRadioButtonListBox::KeyInput( const KeyEvent& rKEvt )
{
if ( !rKEvt.GetKeyCode().GetModifier() && KEY_SPACE == rKEvt.GetKeyCode().GetCode() )
{
- SvLBoxEntry* pEntry = FirstSelected();
+ SvTreeListEntry* pEntry = FirstSelected();
if ( GetCheckButtonState( pEntry ) == SV_BUTTON_UNCHECKED )
{
SetCheckButtonState( pEntry, SV_BUTTON_CHECKED );
@@ -64,7 +64,7 @@ void SvxRadioButtonListBox::KeyInput( const KeyEvent& rKEvt )
SvxSimpleTable::KeyInput( rKEvt );
}
-void SvxRadioButtonListBox::HandleEntryChecked( SvLBoxEntry* _pEntry )
+void SvxRadioButtonListBox::HandleEntryChecked( SvTreeListEntry* _pEntry )
{
Select( _pEntry, sal_True );
SvButtonState eState = GetCheckButtonState( _pEntry );
@@ -72,7 +72,7 @@ void SvxRadioButtonListBox::HandleEntryChecked( SvLBoxEntry* _pEntry )
if ( SV_BUTTON_CHECKED == eState )
{
// we have radio button behavior -> so uncheck the other entries
- SvLBoxEntry* pEntry = First();
+ SvTreeListEntry* pEntry = First();
while ( pEntry )
{
if ( pEntry != _pEntry )
diff --git a/cui/source/options/treeopt.cxx b/cui/source/options/treeopt.cxx
index 3f57e56300c9..b0ed3a3fa64b 100644
--- a/cui/source/options/treeopt.cxx
+++ b/cui/source/options/treeopt.cxx
@@ -535,7 +535,7 @@ OfaTreeOptionsDialog::OfaTreeOptionsDialog( Window* pParent, const rtl::OUString
OfaTreeOptionsDialog::~OfaTreeOptionsDialog()
{
- SvLBoxEntry* pEntry = aTreeLB.First();
+ SvTreeListEntry* pEntry = aTreeLB.First();
// first children
while(pEntry)
{
@@ -594,9 +594,9 @@ OptionsPageInfo* OfaTreeOptionsDialog::AddTabPage(
sal_uInt16 nId, const String& rPageName, sal_uInt16 nGroup )
{
OptionsPageInfo* pPageInfo = new OptionsPageInfo( nId );
- SvLBoxEntry* pParent = aTreeLB.GetEntry( 0, nGroup );
+ SvTreeListEntry* pParent = aTreeLB.GetEntry( 0, nGroup );
DBG_ASSERT( pParent, "OfaTreeOptionsDialog::AddTabPage(): no group found" );
- SvLBoxEntry* pEntry = aTreeLB.InsertEntry( rPageName, pParent );
+ SvTreeListEntry* pEntry = aTreeLB.InsertEntry( rPageName, pParent );
pEntry->SetUserData( pPageInfo );
return pPageInfo;
}
@@ -607,7 +607,7 @@ sal_uInt16 OfaTreeOptionsDialog::AddGroup(const String& rGroupName,
SfxModule* pCreateModule,
sal_uInt16 nDialogId )
{
- SvLBoxEntry* pEntry = aTreeLB.InsertEntry(rGroupName);
+ SvTreeListEntry* pEntry = aTreeLB.InsertEntry(rGroupName);
OptionsGroupInfo* pInfo =
new OptionsGroupInfo( pCreateShell, pCreateModule, nDialogId );
pEntry->SetUserData(pInfo);
@@ -673,7 +673,7 @@ IMPL_LINK_NOARG(OfaTreeOptionsDialog, OKHdl_Impl)
}
}
- SvLBoxEntry* pEntry = aTreeLB.First();
+ SvTreeListEntry* pEntry = aTreeLB.First();
while ( pEntry )
{
if ( aTreeLB.GetParent( pEntry ) )
@@ -703,12 +703,12 @@ IMPL_LINK(OfaTreeOptionsDialog, ExpandedHdl_Impl, SvTreeListBox*, pBox )
{
pBox->Update();
pBox->InitStartEntry();
- SvLBoxEntry* pEntry = pBox->GetHdlEntry();
+ SvTreeListEntry* pEntry = pBox->GetHdlEntry();
if(pEntry && pBox->IsExpanded(pEntry))
{
sal_uInt32 nChildCount = pBox->GetChildCount( pEntry );
- SvLBoxEntry* pNext = pEntry;
+ SvTreeListEntry* pNext = pEntry;
for(sal_uInt32 i = 0; i < nChildCount;i++)
{
pNext = pBox->GetNextEntryInView(pNext);
@@ -735,7 +735,7 @@ IMPL_LINK(OfaTreeOptionsDialog, ExpandedHdl_Impl, SvTreeListBox*, pBox )
void OfaTreeOptionsDialog::ApplyItemSets()
{
- SvLBoxEntry* pEntry = aTreeLB.First();
+ SvTreeListEntry* pEntry = aTreeLB.First();
while(pEntry)
{
if(!aTreeLB.GetParent(pEntry))
@@ -802,7 +802,7 @@ void OfaTreeOptionsDialog::ActivatePage( const String& rPageURL )
void OfaTreeOptionsDialog::ActivateLastSelection()
{
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
if ( pLastPageSaver )
{
String sExpand( EXPAND_PROTOCOL );
@@ -826,7 +826,7 @@ void OfaTreeOptionsDialog::ActivateLastSelection()
xContext->getValueByName( ::rtl::OUString( "/singletons/com.sun.star.util.theMacroExpander" ) ), UNO_QUERY );
}
- SvLBoxEntry* pTemp = aTreeLB.First();
+ SvTreeListEntry* pTemp = aTreeLB.First();
while( !pEntry && pTemp )
{
// restore only selection of a leaf
@@ -862,7 +862,7 @@ void OfaTreeOptionsDialog::ActivateLastSelection()
pEntry = aTreeLB.Next(pEntry);
}
- SvLBoxEntry* pParent = aTreeLB.GetParent(pEntry);
+ SvTreeListEntry* pParent = aTreeLB.GetParent(pEntry);
aTreeLB.Expand(pParent);
aTreeLB.MakeVisible(pParent);
aTreeLB.MakeVisible(pEntry);
@@ -880,8 +880,8 @@ long OfaTreeOptionsDialog::Notify( NotifyEvent& rNEvt )
if( aKeyCode.GetCode() == KEY_PAGEUP ||
aKeyCode.GetCode() == KEY_PAGEDOWN)
{
- SvLBoxEntry* pCurEntry = aTreeLB.FirstSelected();
- SvLBoxEntry* pTemp = 0;
+ SvTreeListEntry* pCurEntry = aTreeLB.FirstSelected();
+ SvTreeListEntry* pTemp = 0;
if(aKeyCode.GetCode() == KEY_PAGEDOWN)
{
pTemp = aTreeLB.Next( pCurEntry ) ;
@@ -923,8 +923,8 @@ void OfaTreeOptionsDialog::SelectHdl_Impl()
return;
}
- SvLBoxEntry* pEntry = pBox->GetCurEntry();
- SvLBoxEntry* pParent = pBox->GetParent(pEntry);
+ SvTreeListEntry* pEntry = pBox->GetCurEntry();
+ SvTreeListEntry* pParent = pBox->GetParent(pEntry);
// If the user has selected a category, automatically switch to a suitable
// default sub-page instead.
@@ -1009,7 +1009,7 @@ void OfaTreeOptionsDialog::SelectHdl_Impl()
if(bIdentical)
pGroupInfo->m_pShell = pGroupInfo->m_pModule;
// now test whether there was the same module in other groups, too (e. g. Text+HTML)
- SvLBoxEntry* pTemp = aTreeLB.First();
+ SvTreeListEntry* pTemp = aTreeLB.First();
while(pTemp)
{
if(!aTreeLB.GetParent(pTemp) && pTemp != pEntry)
@@ -1838,13 +1838,13 @@ void OfaTreeOptionsDialog::ResizeTreeLB( void )
const long nIndent0 = PixelToLogic( Size( 28, 0 ) ).Width();
const long nIndent1 = PixelToLogic( Size( 52, 0 ) ).Width();
- SvTreeList* pTreeList = aTreeLB.GetModel();
+ SvTreeList* pTreeList = aTreeLB.GetModel();
DBG_ASSERT( pTreeList, "-OfaTreeOptionsDialog::ResizeTreeLB(): no model, no cookies!" );
- SvListEntry* pEntry = pTreeList->First();
+ SvTreeListEntry* pEntry = pTreeList->First();
while( pEntry )
{
- long n = aTreeLB.GetTextWidth( aTreeLB.GetEntryText( static_cast< SvLBoxEntry* >( pEntry ) ) );
+ long n = aTreeLB.GetTextWidth(aTreeLB.GetEntryText(pEntry));
n += ((nDepth == 0) ? nIndent0 : nIndent1);
if( n > nDelta )
@@ -2166,7 +2166,7 @@ static sal_uInt16 lcl_getGroupId( const rtl::OUString& rGroupName, const SvTreeL
{
String sGroupName( rGroupName );
sal_uInt16 nRet = 0;
- SvLBoxEntry* pEntry = rTreeLB.First();
+ SvTreeListEntry* pEntry = rTreeLB.First();
while( pEntry )
{
if ( !rTreeLB.GetParent( pEntry ) )
@@ -2192,7 +2192,7 @@ static void lcl_insertLeaf(
nGrpId = pDlg->AddGroup( pNode->m_sLabel, NULL, NULL, nNodeGrpId );
if ( !pNode->m_sPageURL.isEmpty() )
{
- SvLBoxEntry* pGrpEntry = rTreeLB.GetEntry( 0, nGrpId );
+ SvTreeListEntry* pGrpEntry = rTreeLB.GetEntry( 0, nGrpId );
DBG_ASSERT( pGrpEntry, "OfaTreeOptionsDialog::InsertNodes(): no group" );
if ( pGrpEntry )
{
diff --git a/cui/source/options/webconninfo.cxx b/cui/source/options/webconninfo.cxx
index 97a2f0acc961..a0a9e034c5d9 100644
--- a/cui/source/options/webconninfo.cxx
+++ b/cui/source/options/webconninfo.cxx
@@ -191,7 +191,7 @@ void WebConnectionInfoDialog::FillPasswordList()
::rtl::OUString aUIEntry( aURLEntries[nURLInd].Url );
aUIEntry += ::rtl::OUString::valueOf( (sal_Unicode)'\t' );
aUIEntry += aURLEntries[nURLInd].UserList[nUserInd].UserName;
- SvLBoxEntry* pEntry = m_aPasswordsLB.InsertEntry( aUIEntry );
+ SvTreeListEntry* pEntry = m_aPasswordsLB.InsertEntry( aUIEntry );
pEntry->SetUserData( (void*)(sal_IntPtr)(nCount++) );
}
}
@@ -207,7 +207,7 @@ void WebConnectionInfoDialog::FillPasswordList()
::rtl::OUString aUIEntry( aUrls[ nURLIdx ] );
aUIEntry += ::rtl::OUString::valueOf( (sal_Unicode)'\t' );
aUIEntry += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "*" ) );
- SvLBoxEntry* pEntry = m_aPasswordsLB.InsertEntry( aUIEntry );
+ SvTreeListEntry* pEntry = m_aPasswordsLB.InsertEntry( aUIEntry );
pEntry->SetUserData( (void*)(sal_IntPtr)(nCount++) );
}
}
@@ -221,7 +221,7 @@ IMPL_LINK_NOARG(WebConnectionInfoDialog, RemovePasswordHdl)
{
try
{
- SvLBoxEntry* pEntry = m_aPasswordsLB.GetCurEntry();
+ SvTreeListEntry* pEntry = m_aPasswordsLB.GetCurEntry();
if ( pEntry )
{
::rtl::OUString aURL = m_aPasswordsLB.GetEntryText( pEntry, 0 );
@@ -277,7 +277,7 @@ IMPL_LINK_NOARG(WebConnectionInfoDialog, ChangePasswordHdl)
{
try
{
- SvLBoxEntry* pEntry = m_aPasswordsLB.GetCurEntry();
+ SvTreeListEntry* pEntry = m_aPasswordsLB.GetCurEntry();
if ( pEntry )
{
::rtl::OUString aURL = m_aPasswordsLB.GetEntryText( pEntry, 0 );
@@ -314,7 +314,7 @@ IMPL_LINK_NOARG(WebConnectionInfoDialog, ChangePasswordHdl)
// -----------------------------------------------------------------------
IMPL_LINK_NOARG(WebConnectionInfoDialog, EntrySelectedHdl)
{
- SvLBoxEntry* pEntry = m_aPasswordsLB.GetCurEntry();
+ SvTreeListEntry* pEntry = m_aPasswordsLB.GetCurEntry();
if ( !pEntry )
{
m_aRemoveBtn.Enable( sal_False );
diff --git a/cui/source/tabpages/autocdlg.cxx b/cui/source/tabpages/autocdlg.cxx
index a34bd712786a..bec34f57d92c 100644
--- a/cui/source/tabpages/autocdlg.cxx
+++ b/cui/source/tabpages/autocdlg.cxx
@@ -330,15 +330,15 @@ class OfaImpBrwString : public SvLBoxString
{
public:
- OfaImpBrwString( SvLBoxEntry* pEntry, sal_uInt16 nFlags,
+ OfaImpBrwString( SvTreeListEntry* pEntry, sal_uInt16 nFlags,
const String& rStr ) : SvLBoxString(pEntry,nFlags,rStr){}
virtual void Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags,
- SvLBoxEntry* pEntry);
+ SvTreeListEntry* pEntry);
};
void OfaImpBrwString::Paint( const Point& rPos, SvTreeListBox& rDev, sal_uInt16 /*nFlags*/,
- SvLBoxEntry* pEntry )
+ SvTreeListEntry* pEntry )
{
rDev.DrawText( rPos, GetText() );
if(pEntry->GetUserData())
@@ -469,9 +469,9 @@ OfaSwAutoFmtOptionsPage::OfaSwAutoFmtOptionsPage( Window* pParent,
aEditPB.SetClickHdl(LINK(this, OfaSwAutoFmtOptionsPage, EditHdl));
}
-SvLBoxEntry* OfaSwAutoFmtOptionsPage::CreateEntry(String& rTxt, sal_uInt16 nCol)
+SvTreeListEntry* OfaSwAutoFmtOptionsPage::CreateEntry(String& rTxt, sal_uInt16 nCol)
{
- SvLBoxEntry* pEntry = new SvLBoxEntry;
+ SvTreeListEntry* pEntry = new SvTreeListEntry;
if ( !pCheckButtonData )
{
@@ -789,7 +789,7 @@ sal_Bool OfaACorrCheckListBox::IsChecked(sal_uLong nPos, sal_uInt16 nCol)
return GetCheckButtonState( GetEntry(nPos), nCol ) == SV_BUTTON_CHECKED;
}
-void OfaACorrCheckListBox::SetCheckButtonState( SvLBoxEntry* pEntry, sal_uInt16 nCol, SvButtonState eState)
+void OfaACorrCheckListBox::SetCheckButtonState( SvTreeListEntry* pEntry, sal_uInt16 nCol, SvButtonState eState)
{
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem(nCol + 1));
@@ -814,7 +814,7 @@ void OfaACorrCheckListBox::SetCheckButtonState( SvLBoxEntry* pEntry, sal_uInt16
}
}
-SvButtonState OfaACorrCheckListBox::GetCheckButtonState( SvLBoxEntry* pEntry, sal_uInt16 nCol ) const
+SvButtonState OfaACorrCheckListBox::GetCheckButtonState( SvTreeListEntry* pEntry, sal_uInt16 nCol ) const
{
SvButtonState eState = SV_BUTTON_UNCHECKED;
SvLBoxButton* pItem = (SvLBoxButton*)(pEntry->GetItem(nCol + 1));
@@ -991,7 +991,7 @@ void OfaAutocorrReplacePage::RefillReplaceBox(sal_Bool bFromReset,
{
pArray->push_back(DoubleString());
DoubleString& rDouble = (*pArray)[pArray->size() - 1];
- SvLBoxEntry* pEntry = aReplaceTLB.GetEntry( i );
+ SvTreeListEntry* pEntry = aReplaceTLB.GetEntry( i );
rDouble.sShort = aReplaceTLB.GetEntryText(pEntry, 0);
rDouble.sLong = aReplaceTLB.GetEntryText(pEntry, 1);
rDouble.pUserData = pEntry->GetUserData();
@@ -1015,7 +1015,7 @@ void OfaAutocorrReplacePage::RefillReplaceBox(sal_Bool bFromReset,
String sEntry(rDouble.sShort);
sEntry += '\t';
sEntry += rDouble.sLong;
- SvLBoxEntry* pEntry = aReplaceTLB.InsertEntry(sEntry);
+ SvTreeListEntry* pEntry = aReplaceTLB.InsertEntry(sEntry);
aTextOnlyCB.Check(bTextOnly);
if(!bTextOnly)
pEntry->SetUserData(rDouble.pUserData); // that means: with format info or even with selection text
@@ -1041,7 +1041,7 @@ void OfaAutocorrReplacePage::RefillReplaceBox(sal_Bool bFromReset,
String sEntry(pWordPtr->GetShort());
sEntry += '\t';
sEntry += pWordPtr->GetLong();
- SvLBoxEntry* pEntry = aReplaceTLB.InsertEntry(sEntry);
+ SvTreeListEntry* pEntry = aReplaceTLB.InsertEntry(sEntry);
aTextOnlyCB.Check(pWordPtr->IsTextOnly());
if(!bTextOnly)
pEntry->SetUserData(&aTextOnlyCB); // that means: with format info
@@ -1099,7 +1099,7 @@ IMPL_LINK(OfaAutocorrReplacePage, SelectHdl, SvTabListBox*, pBox)
{
if(!bFirstSelect || !bHasSelectionText)
{
- SvLBoxEntry* pEntry = pBox->FirstSelected();
+ SvTreeListEntry* pEntry = pBox->FirstSelected();
String sTmpShort(pBox->GetEntryText(pEntry, 0));
// if the text is set via ModifyHdl, the cursor is always at the beginning
// of a word, although you're editing here
@@ -1186,7 +1186,7 @@ void OfaAutocorrReplacePage::DeleteEntry(String sShort, String sLong)
IMPL_LINK(OfaAutocorrReplacePage, NewDelHdl, PushButton*, pBtn)
{
- SvLBoxEntry* pEntry = aReplaceTLB.FirstSelected();
+ SvTreeListEntry* pEntry = aReplaceTLB.FirstSelected();
if( pBtn == &aDeleteReplacePB )
{
DBG_ASSERT( pEntry, "no entry selected" );
@@ -1200,7 +1200,7 @@ IMPL_LINK(OfaAutocorrReplacePage, NewDelHdl, PushButton*, pBtn)
}
if(pBtn == &aNewReplacePB || aNewReplacePB.IsEnabled())
{
- SvLBoxEntry* _pNewEntry = aReplaceTLB.FirstSelected();
+ SvTreeListEntry* _pNewEntry = aReplaceTLB.FirstSelected();
String sEntry(aShortED.GetText());
if(sEntry.Len() && ( aReplaceED.GetText().Len() ||
( bHasSelectionText && bSWriter ) ))
@@ -1220,14 +1220,14 @@ IMPL_LINK(OfaAutocorrReplacePage, NewDelHdl, PushButton*, pBtn)
sal_uInt32 j;
for( j = 0; j < aReplaceTLB.GetEntryCount(); j++ )
{
- SvLBoxEntry* pReplaceEntry = aReplaceTLB.GetEntry(j);
+ SvTreeListEntry* pReplaceEntry = aReplaceTLB.GetEntry(j);
if( 0 >= pCompareClass->compareString(sEntry, aReplaceTLB.GetEntryText(pReplaceEntry, 0) ) )
break;
}
nPos = j;
}
- SvLBoxEntry* pInsEntry = aReplaceTLB.InsertEntry(
- sEntry, static_cast< SvLBoxEntry * >(NULL), false,
+ SvTreeListEntry* pInsEntry = aReplaceTLB.InsertEntry(
+ sEntry, static_cast< SvTreeListEntry * >(NULL), false,
nPos == UINT_MAX ? LIST_APPEND : nPos);
if( !bReplaceEditChanged && !aTextOnlyCB.IsChecked())
{
@@ -1255,7 +1255,7 @@ IMPL_LINK(OfaAutocorrReplacePage, NewDelHdl, PushButton*, pBtn)
IMPL_LINK(OfaAutocorrReplacePage, ModifyHdl, Edit*, pEdt)
{
- SvLBoxEntry* pFirstSel = aReplaceTLB.FirstSelected();
+ SvTreeListEntry* pFirstSel = aReplaceTLB.FirstSelected();
sal_Bool bShort = pEdt == &aShortED;
const String rEntry = pEdt->GetText();
const String rRepString = aReplaceED.GetText();
@@ -1270,7 +1270,7 @@ IMPL_LINK(OfaAutocorrReplacePage, ModifyHdl, Edit*, pEdt)
for(sal_uInt32 i = 0; i < aReplaceTLB.GetEntryCount(); i++)
{
- SvLBoxEntry* pEntry = aReplaceTLB.GetEntry( i );
+ SvTreeListEntry* pEntry = aReplaceTLB.GetEntry( i );
String aTestStr=aReplaceTLB.GetEntryText(pEntry, 0);
if( pCompareClass->compareString(rEntry, aTestStr ) == 0 )
{
@@ -1306,7 +1306,7 @@ IMPL_LINK(OfaAutocorrReplacePage, ModifyHdl, Edit*, pEdt)
}
else if( aReplaceTLB.GetEntryCount() > 0 )
{
- SvLBoxEntry* pEntry = aReplaceTLB.GetEntry( 0 );
+ SvTreeListEntry* pEntry = aReplaceTLB.GetEntry( 0 );
aReplaceTLB.MakeVisible( pEntry );
}
@@ -1721,9 +1721,9 @@ enum OfaQuoteOptions
REPLACE_1ST
};
-SvLBoxEntry* OfaQuoteTabPage::CreateEntry(String& rTxt, sal_uInt16 nCol)
+SvTreeListEntry* OfaQuoteTabPage::CreateEntry(String& rTxt, sal_uInt16 nCol)
{
- SvLBoxEntry* pEntry = new SvLBoxEntry;
+ SvTreeListEntry* pEntry = new SvTreeListEntry;
if ( !pCheckButtonData )
{
@@ -2419,7 +2419,7 @@ void OfaSmartTagOptionsTabPage::ClearListBox()
const sal_uLong nCount = m_aSmartTagTypesLB.GetEntryCount();
for ( sal_uInt16 i = 0; i < nCount; ++i )
{
- const SvLBoxEntry* pEntry = m_aSmartTagTypesLB.GetEntry(i);
+ const SvTreeListEntry* pEntry = m_aSmartTagTypesLB.GetEntry(i);
const ImplSmartTagLBUserData* pUserData = static_cast< ImplSmartTagLBUserData* >(pEntry->GetUserData());
delete pUserData;
}
@@ -2459,7 +2459,7 @@ void OfaSmartTagOptionsTabPage::FillListBox( const SmartTagMgr& rSmartTagMgr )
aName +
OUString(RTL_CONSTASCII_USTRINGPARAM(")"));
- SvLBoxEntry* pEntry = m_aSmartTagTypesLB.SvTreeListBox::InsertEntry( aLBEntry );
+ SvTreeListEntry* pEntry = m_aSmartTagTypesLB.SvTreeListBox::InsertEntry( aLBEntry );
if ( pEntry )
{
const bool bCheck = rSmartTagMgr.IsSmartTagTypeEnabled( aSmartTagType );
@@ -2475,7 +2475,7 @@ void OfaSmartTagOptionsTabPage::FillListBox( const SmartTagMgr& rSmartTagMgr )
IMPL_LINK_NOARG(OfaSmartTagOptionsTabPage, ClickHdl)
{
const sal_uInt16 nPos = m_aSmartTagTypesLB.GetSelectEntryPos();
- const SvLBoxEntry* pEntry = m_aSmartTagTypesLB.GetEntry(nPos);
+ const SvTreeListEntry* pEntry = m_aSmartTagTypesLB.GetEntry(nPos);
const ImplSmartTagLBUserData* pUserData = static_cast< ImplSmartTagLBUserData* >(pEntry->GetUserData());
uno::Reference< smarttags::XSmartTagRecognizer > xRec = pUserData->mxRec;
const sal_Int32 nSmartTagIdx = pUserData->mnSmartTagIdx;
@@ -2514,7 +2514,7 @@ IMPL_LINK_NOARG(OfaSmartTagOptionsTabPage, SelectHdl)
return 0;
const sal_uInt16 nPos = m_aSmartTagTypesLB.GetSelectEntryPos();
- const SvLBoxEntry* pEntry = m_aSmartTagTypesLB.GetEntry(nPos);
+ const SvTreeListEntry* pEntry = m_aSmartTagTypesLB.GetEntry(nPos);
const ImplSmartTagLBUserData* pUserData = static_cast< ImplSmartTagLBUserData* >(pEntry->GetUserData());
uno::Reference< smarttags::XSmartTagRecognizer > xRec = pUserData->mxRec;
const sal_Int32 nSmartTagIdx = pUserData->mnSmartTagIdx;
@@ -2547,7 +2547,7 @@ sal_Bool OfaSmartTagOptionsTabPage::FillItemSet( SfxItemSet& )
for ( sal_uInt16 i = 0; i < nCount; ++i )
{
- const SvLBoxEntry* pEntry = m_aSmartTagTypesLB.GetEntry(i);
+ const SvTreeListEntry* pEntry = m_aSmartTagTypesLB.GetEntry(i);
const ImplSmartTagLBUserData* pUserData = static_cast< ImplSmartTagLBUserData* >(pEntry->GetUserData());
const sal_Bool bChecked = m_aSmartTagTypesLB.IsChecked(i);
const sal_Bool bIsCurrentlyEnabled = pSmartTagMgr->IsSmartTagTypeEnabled( pUserData->maSmartTagType );
diff --git a/cui/source/tabpages/macroass.cxx b/cui/source/tabpages/macroass.cxx
index 6fa74205d4fd..576f390ef123 100644
--- a/cui/source/tabpages/macroass.cxx
+++ b/cui/source/tabpages/macroass.cxx
@@ -140,7 +140,7 @@ String ConvertToUIName_Impl( SvxMacro *pMacro )
void _SfxMacroTabPage::EnableButtons()
{
// don't do anything as long as the eventbox is empty
- const SvLBoxEntry* pE = mpImpl->pEventLB->GetListBox().FirstSelected();
+ const SvTreeListEntry* pE = mpImpl->pEventLB->GetListBox().FirstSelected();
if ( pE )
{
// get bound macro
@@ -182,7 +182,7 @@ void _SfxMacroTabPage::AddEvent( const String & rEventName, sal_uInt16 nEventId
sTmp += sNew;
}
- SvLBoxEntry* pE = mpImpl->pEventLB->GetListBox().InsertEntry( sTmp );
+ SvTreeListEntry* pE = mpImpl->pEventLB->GetListBox().InsertEntry( sTmp );
pE->SetUserData( reinterpret_cast< void* >( sal::static_int_cast< sal_IntPtr >( nEventId )) );
}
@@ -249,7 +249,7 @@ void _SfxMacroTabPage::Reset( const SfxItemSet& rSet )
FillEvents();
SvHeaderTabListBox& rListBox = mpImpl->pEventLB->GetListBox();
- SvLBoxEntry* pE = rListBox.GetEntry( 0 );
+ SvTreeListEntry* pE = rListBox.GetEntry( 0 );
if( pE )
rListBox.SetCurEntry( pE );
}
@@ -263,7 +263,7 @@ IMPL_STATIC_LINK( _SfxMacroTabPage, SelectEvent_Impl, SvTabListBox*, EMPTYARG )
{
_SfxMacroTabPage_Impl* pImpl = pThis->mpImpl;
SvHeaderTabListBox& rListBox = pImpl->pEventLB->GetListBox();
- SvLBoxEntry* pE = rListBox.FirstSelected();
+ SvTreeListEntry* pE = rListBox.FirstSelected();
sal_uLong nPos;
if( !pE || LISTBOX_ENTRY_NOTFOUND ==
( nPos = rListBox.GetModel()->GetAbsPos( pE ) ) )
@@ -304,7 +304,7 @@ IMPL_STATIC_LINK( _SfxMacroTabPage, AssignDeleteHdl_Impl, PushButton*, pBtn )
{
_SfxMacroTabPage_Impl* pImpl = pThis->mpImpl;
SvHeaderTabListBox& rListBox = pImpl->pEventLB->GetListBox();
- SvLBoxEntry* pE = rListBox.FirstSelected();
+ SvTreeListEntry* pE = rListBox.FirstSelected();
sal_uLong nPos;
if( !pE || LISTBOX_ENTRY_NOTFOUND ==
( nPos = rListBox.GetModel()->GetAbsPos( pE ) ) )
@@ -420,7 +420,7 @@ void _SfxMacroTabPage::FillEvents()
// get events from the table and fill the EventListBox respectively
for( sal_uLong n = 0 ; n < nEntryCnt ; ++n )
{
- SvLBoxEntry* pE = rListBox.GetEntry( n );
+ SvTreeListEntry* pE = rListBox.GetEntry( n );
if( pE )
{
SvLBoxString* pLItem = ( SvLBoxString* ) pE->GetItem( LB_MACROS_ITEMPOS );
diff --git a/cui/source/tabpages/tabline.hrc b/cui/source/tabpages/tabline.hrc
index 811e4d03db41..8fab6b60a6d4 100644
--- a/cui/source/tabpages/tabline.hrc
+++ b/cui/source/tabpages/tabline.hrc
@@ -1,29 +1,21 @@
-/*************************************************************************
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#define TAB_CONTROL 1
#define LB_COLOR 1
@@ -96,6 +88,12 @@
#define FT_EDGE_STYLE 13
#define LB_EDGE_STYLE 5
+// since LO3.6
+#define FT_CAP_STYLE 14
+#define LB_CAP_STYLE 6
+// not sure about IAccessibility2, add it nevertheless
+#define STR_LB_CAP_STYLE 42
+
//Symbole (fuer StarChart)
#define FT_SYMBOL_WIDTH 20
#define FT_SYMBOL_HEIGHT 21
@@ -113,3 +111,4 @@
#define MN_SYMBOLS_AUTO 5
#define MN_GALLERY_ENTRY 100
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/tabpages/tabline.src b/cui/source/tabpages/tabline.src
index 659c9fae7013..52256849f18b 100644
--- a/cui/source/tabpages/tabline.src
+++ b/cui/source/tabpages/tabline.src
@@ -1,29 +1,21 @@
-/*************************************************************************
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <cuires.hrc>
#include "helpid.hrc"
@@ -239,13 +231,13 @@ TabPage RID_SVXPAGE_LINE
{
Pos = MAP_APPFONT ( 124 , 3 + (16 * 6) - 4 ) ;
Size = MAP_APPFONT ( 130 , 8 ) ;
- Text [ en-US ] = "Corner style" ;
+ Text [ en-US ] = "Corner and cap styles" ;
};
FixedText FT_EDGE_STYLE
{
Pos = MAP_APPFONT ( 130 , 14 + (16 * 6) - 4 ) ;
Size = MAP_APPFONT ( 118 , 8 ) ;
- Text [ en-US ] = "Sty~le" ;
+ Text [ en-US ] = "~Corner style" ;
};
ListBox LB_EDGE_STYLE
{
@@ -263,6 +255,27 @@ TabPage RID_SVXPAGE_LINE
< "Beveled" ; > ;
};
};
+ FixedText FT_CAP_STYLE
+ {
+ Pos = MAP_APPFONT ( 191 , 14 + (16 * 6) - 4 ) ;
+ Size = MAP_APPFONT ( 118 , 8 ) ;
+ Text [ en-US ] = "Ca~p style" ;
+ };
+ ListBox LB_CAP_STYLE
+ {
+ HelpID = "cui:ListBox:RID_SVXPAGE_LINE:LB_CAP_STYLE";
+ Border = TRUE ;
+ Pos = MAP_APPFONT ( 191 , 25 + (16 * 6) - 4 ) ;
+ Size = MAP_APPFONT ( 57 , 99 ) ;
+ TabStop = TRUE ;
+ DropDown = TRUE ;
+ StringList [ en-US ] =
+ {
+ < "Flat" ; Default ; > ; // Same string as in Excel
+ < "Round" ; > ;
+ < "Square" ; > ;
+ };
+ };
//////////////////////////////////////////////////////////////////////////////
@@ -849,3 +862,5 @@ TabDialog RID_SVXDLG_LINE
};
};
};
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/cui/source/tabpages/tpline.cxx b/cui/source/tabpages/tpline.cxx
index 2a3490a7a609..4af57482850e 100644
--- a/cui/source/tabpages/tpline.cxx
+++ b/cui/source/tabpages/tpline.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/sizeitem.hxx>
#include <tools/shl.hxx>
@@ -111,6 +102,10 @@ SvxLineTabPage::SvxLineTabPage
maFTEdgeStyle ( this, CUI_RES( FT_EDGE_STYLE ) ),
maLBEdgeStyle ( this, CUI_RES( LB_EDGE_STYLE ) ),
+ // LineCaps
+ maFTCapStyle ( this, CUI_RES( FT_CAP_STYLE ) ),
+ maLBCapStyle ( this, CUI_RES( LB_CAP_STYLE ) ),
+
pSymbolList(NULL),
bNewSize(false),
nNumMenuGalleryItems(0),
@@ -212,6 +207,10 @@ SvxLineTabPage::SvxLineTabPage
Link aEdgeStyle = LINK( this, SvxLineTabPage, ChangeEdgeStyleHdl_Impl );
maLBEdgeStyle.SetSelectHdl( aEdgeStyle );
+ // LineCaps
+ Link aCapStyle = LINK( this, SvxLineTabPage, ChangeCapStyleHdl_Impl );
+ maLBCapStyle.SetSelectHdl( aCapStyle );
+
// Symbols on a line (eg star charts), MB-handler set
aSymbolMB.SetSelectHdl(LINK(this, SvxLineTabPage, GraphicHdl_Impl));
aSymbolMB.SetActivateHdl(LINK(this, SvxLineTabPage, MenuCreateHdl_Impl));
@@ -372,8 +371,8 @@ void SvxLineTabPage::InitSymbols(MenuButton* pButton)
pObj->SetMergedItemSet(rOutAttrs);
}
pView->MarkAll();
- Bitmap aBitmap(pView->GetAllMarkedBitmap());
- GDIMetaFile aMeta(pView->GetAllMarkedMetaFile());
+ BitmapEx aBitmapEx(pView->GetMarkedObjBitmapEx());
+ GDIMetaFile aMeta(pView->GetMarkedObjMetaFile());
pView->UnmarkAll();
pObj=pPage->RemoveObject(1);
SdrObject::Free(pObj);
@@ -390,16 +389,16 @@ void SvxLineTabPage::InitSymbols(MenuButton* pButton)
aGrfBrushItems.push_back( pInfo );
}
- Size aSize(aBitmap.GetSizePixel());
+ Size aSize(aBitmapEx.GetSizePixel());
if(aSize.Width() > MAX_BMP_WIDTH || aSize.Height() > MAX_BMP_HEIGHT)
{
sal_Bool bWidth = aSize.Width() > aSize.Height();
double nScale = bWidth ?
(double)MAX_BMP_WIDTH / (double)aSize.Width():
(double)MAX_BMP_HEIGHT / (double)aSize.Height();
- aBitmap.Scale(nScale, nScale);
+ aBitmapEx.Scale(nScale, nScale);
}
- Image aImage(aBitmap);
+ Image aImage(aBitmapEx);
pPopup->InsertItem(pInfo->nItemId,aEmptyStr,aImage);
}
pInvisibleSquare=pPage->RemoveObject(0);
@@ -678,6 +677,10 @@ void SvxLineTabPage::ActivatePage( const SfxItemSet& rSet )
maFLEdgeStyle.Hide();
maFTEdgeStyle.Hide();
maLBEdgeStyle.Hide();
+
+ // LineCaps
+ maFTCapStyle.Hide();
+ maLBCapStyle.Hide();
}
}
@@ -944,6 +947,45 @@ sal_Bool SvxLineTabPage::FillItemSet( SfxItemSet& rAttrs )
}
}
+ // LineCaps
+ nPos = maLBCapStyle.GetSelectEntryPos();
+ if( LISTBOX_ENTRY_NOTFOUND != nPos && nPos != maLBCapStyle.GetSavedValue() )
+ {
+ XLineCapItem* pNew = 0L;
+
+ switch(nPos)
+ {
+ case 0: // Butt (=Flat), default
+ {
+ pNew = new XLineCapItem(com::sun::star::drawing::LineCap_BUTT);
+ break;
+ }
+ case 1: // Round
+ {
+ pNew = new XLineCapItem(com::sun::star::drawing::LineCap_ROUND);
+ break;
+ }
+ case 2: // Square
+ {
+ pNew = new XLineCapItem(com::sun::star::drawing::LineCap_SQUARE);
+ break;
+ }
+ }
+
+ if(pNew)
+ {
+ pOld = GetOldItem( rAttrs, XATTR_LINECAP );
+
+ if(!pOld || !(*(const XLineCapItem*)pOld == *pNew))
+ {
+ rAttrs.Put( *pNew );
+ bModified = sal_True;
+ }
+
+ delete pNew;
+ }
+ }
+
if(nSymbolType!=SVX_SYMBOLTYPE_UNKNOWN || bNewSize)
{
// Was set by selection or the size is different
@@ -1058,6 +1100,30 @@ sal_Bool SvxLineTabPage::FillXLSet_Impl()
}
}
+ // LineCaps
+ nPos = maLBCapStyle.GetSelectEntryPos();
+ if(LISTBOX_ENTRY_NOTFOUND != nPos)
+ {
+ switch(nPos)
+ {
+ case 0: // Butt (=Flat), default
+ {
+ rXLSet.Put(XLineCapItem(com::sun::star::drawing::LineCap_BUTT));
+ break;
+ }
+ case 1: // Round
+ {
+ rXLSet.Put(XLineCapItem(com::sun::star::drawing::LineCap_ROUND));
+ break;
+ }
+ case 2: // Square
+ {
+ rXLSet.Put(XLineCapItem(com::sun::star::drawing::LineCap_SQUARE));
+ break;
+ }
+ }
+ }
+
rXLSet.Put( XLineStartWidthItem( GetCoreValue( aMtrStartWidth, ePoolUnit ) ) );
rXLSet.Put( XLineEndWidthItem( GetCoreValue( aMtrEndWidth, ePoolUnit ) ) );
@@ -1161,7 +1227,7 @@ void SvxLineTabPage::Reset( const SfxItemSet& rAttrs )
pInvisibleSquare->SetMergedItem(XLineTransparenceItem(100));
pView->MarkAll();
- GDIMetaFile aMeta(pView->GetAllMarkedMetaFile());
+ GDIMetaFile aMeta(pView->GetMarkedObjMetaFile());
aSymbolGraphic=Graphic(aMeta);
aSymbolSize=pObj->GetSnapRect().GetSize();
@@ -1457,6 +1523,28 @@ void SvxLineTabPage::Reset( const SfxItemSet& rAttrs )
maLBEdgeStyle.SetNoSelection();
}
+ // fdo#43209
+ if(bObjSelected && SFX_ITEM_DEFAULT == rAttrs.GetItemState(XATTR_LINECAP))
+ {
+ maFTCapStyle.Disable();
+ maLBCapStyle.Disable();
+ }
+ else if(SFX_ITEM_DONTCARE != rAttrs.GetItemState(XATTR_LINECAP))
+ {
+ const com::sun::star::drawing::LineCap eLineCap(((const XLineCapItem&)(rAttrs.Get(XATTR_LINECAP))).GetValue());
+
+ switch(eLineCap)
+ {
+ case com::sun::star::drawing::LineCap_ROUND: maLBCapStyle.SelectEntryPos(1); break;
+ case com::sun::star::drawing::LineCap_SQUARE : maLBCapStyle.SelectEntryPos(2); break;
+ default /*com::sun::star::drawing::LineCap_BUTT*/: maLBCapStyle.SelectEntryPos(0); break;
+ }
+ }
+ else
+ {
+ maLBCapStyle.SetNoSelection();
+ }
+
// Save values
aLbLineStyle.SaveValue();
aMtrLineWidth.SaveValue();
@@ -1472,6 +1560,9 @@ void SvxLineTabPage::Reset( const SfxItemSet& rAttrs )
// #116827#
maLBEdgeStyle.SaveValue();
+ // LineCaps
+ maLBCapStyle.SaveValue();
+
ClickInvisibleHdl_Impl( this );
ChangePreviewHdl_Impl( NULL );
@@ -1587,6 +1678,15 @@ IMPL_LINK_NOARG(SvxLineTabPage, ChangeEdgeStyleHdl_Impl)
}
//------------------------------------------------------------------------
+// fdo#43209
+
+IMPL_LINK( SvxLineTabPage, ChangeCapStyleHdl_Impl, void *, EMPTYARG )
+{
+ ChangePreviewHdl_Impl( this );
+
+ return( 0L );
+}
+//------------------------------------------------------------------------
IMPL_LINK_NOARG(SvxLineTabPage, ClickInvisibleHdl_Impl)
{
@@ -1613,6 +1713,10 @@ IMPL_LINK_NOARG(SvxLineTabPage, ClickInvisibleHdl_Impl)
// #116827#
maFTEdgeStyle.Disable();
maLBEdgeStyle.Disable();
+
+ // LineCaps
+ maFTCapStyle.Disable();
+ maLBCapStyle.Disable();
}
}
else
@@ -1637,6 +1741,10 @@ IMPL_LINK_NOARG(SvxLineTabPage, ClickInvisibleHdl_Impl)
// #116827#
maFTEdgeStyle.Enable();
maLBEdgeStyle.Enable();
+
+ // LineCaps
+ maFTCapStyle.Enable();
+ maLBCapStyle.Enable();
}
}
ChangePreviewHdl_Impl( NULL );
diff --git a/cui/uiconfig/ui/charnamepage.ui b/cui/uiconfig/ui/charnamepage.ui
index aebb93a4e712..eab5b32ccec7 100644
--- a/cui/uiconfig/ui/charnamepage.ui
+++ b/cui/uiconfig/ui/charnamepage.ui
@@ -97,18 +97,6 @@
</packing>
</child>
<child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
<object class="svtlo:FontNameBox" id="westfontnamelb-nocjk">
<property name="visible">True</property>
<property name="can_focus">True</property>
@@ -148,6 +136,18 @@
<property name="height">1</property>
</packing>
</child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
</object>
</child>
</object>
@@ -157,7 +157,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Font</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -306,7 +308,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Western text font</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -455,7 +459,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Asian text font</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -604,7 +610,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">CTL font</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -639,7 +647,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Preview</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
diff --git a/cui/uiconfig/ui/effectspage.ui b/cui/uiconfig/ui/effectspage.ui
index 1ce38908f8de..6391f4dbd89f 100644
--- a/cui/uiconfig/ui/effectspage.ui
+++ b/cui/uiconfig/ui/effectspage.ui
@@ -618,7 +618,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Options</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -653,7 +655,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Preview</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
diff --git a/cui/uiconfig/ui/insertfloatingframe.ui b/cui/uiconfig/ui/insertfloatingframe.ui
new file mode 100644
index 000000000000..d147cc11b7dc
--- /dev/null
+++ b/cui/uiconfig/ui/insertfloatingframe.ui
@@ -0,0 +1,505 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">99</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+ <object class="GtkDialog" id="InsertFloatingFrameDialog">
+ <property name="can_focus">False</property>
+ <property name="border_width">6</property>
+ <property name="title" translatable="yes">Floating Frame Properties</property>
+ <property name="type_hint">dialog</property>
+ <child internal-child="vbox">
+ <object class="GtkBox" id="dialog-vbox1">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">2</property>
+ <child>
+ <object class="GtkBox" id="box1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkGrid" id="grid1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">6</property>
+ <child>
+ <object class="GtkEntry" id="edname">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="invisible_char">•</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="width">2</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="edurl">
+ <property name="width_request">400</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="margin_right">12</property>
+ <property name="hexpand">True</property>
+ <property name="invisible_char">•</property>
+ <property name="invisible_char_set">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label6">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="margin_right">12</property>
+ <property name="label" translatable="yes">Name</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="label7">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="margin_right">12</property>
+ <property name="label" translatable="yes">Contents</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="buttonbrowse">
+ <property name="label" translatable="yes">Browse...</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="halign">end</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkFrame" id="frame1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkBox" id="box3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkRadioButton" id="scrollbaron">
+ <property name="label" translatable="yes">On</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="xalign">0</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">scrollbaroff</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkRadioButton" id="scrollbaroff">
+ <property name="label" translatable="yes">Off</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">scrollbarauto</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkRadioButton" id="scrollbarauto">
+ <property name="label" translatable="yes">Automatic</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">scrollbaron</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Scroll bar</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkBox" id="box4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkRadioButton" id="borderon">
+ <property name="label" translatable="yes">On</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="xalign">0</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">borderoff</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkRadioButton" id="borderoff">
+ <property name="label" translatable="yes">Off</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">borderon</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Border</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkGrid" id="grid2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkLabel" id="widthlabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_right">12</property>
+ <property name="label" translatable="yes">Width</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="heightlabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="margin_right">12</property>
+ <property name="label" translatable="yes">Height</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="width">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="margin_right">12</property>
+ <property name="invisible_char">•</property>
+ <property name="invisible_char_set">True</property>
+ <property name="adjustment">adjustment1</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="height">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="margin_right">12</property>
+ <property name="invisible_char">•</property>
+ <property name="invisible_char_set">True</property>
+ <property name="adjustment">adjustment1</property>
+ </object>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="defaultwidth">
+ <property name="label" translatable="yes">Default</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkCheckButton" id="defaultheight">
+ <property name="label" translatable="yes">Default</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Spacing to contents</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="padding">12</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="dialog-action_area1">
+ <property name="can_focus">False</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton" id="ok">
+ <property name="label">gtk-ok</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="cancel">
+ <property name="label">gtk-cancel</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="help">
+ <property name="label">gtk-help</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="0">ok</action-widget>
+ <action-widget response="0">cancel</action-widget>
+ <action-widget response="0">help</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/cui/uiconfig/ui/insertoleobject.ui b/cui/uiconfig/ui/insertoleobject.ui
index db75639bfcbc..e823476067cf 100644
--- a/cui/uiconfig/ui/insertoleobject.ui
+++ b/cui/uiconfig/ui/insertoleobject.ui
@@ -91,7 +91,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Object type</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -174,7 +176,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">File</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
diff --git a/cui/uiconfig/ui/insertplugin.ui b/cui/uiconfig/ui/insertplugin.ui
index 58a87b2b6815..ae2c4f7b9d15 100644
--- a/cui/uiconfig/ui/insertplugin.ui
+++ b/cui/uiconfig/ui/insertplugin.ui
@@ -70,7 +70,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">File/URL</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -118,7 +120,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Options</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
diff --git a/cui/uiconfig/ui/insertrowcolumn.ui b/cui/uiconfig/ui/insertrowcolumn.ui
new file mode 100644
index 000000000000..c3b4d6fda786
--- /dev/null
+++ b/cui/uiconfig/ui/insertrowcolumn.ui
@@ -0,0 +1,252 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="lower">1</property>
+ <property name="upper">99</property>
+ <property name="value">1</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+ <object class="GtkDialog" id="InsertRowColumnDialog">
+ <property name="can_focus">False</property>
+ <property name="border_width">5</property>
+ <property name="title" translatable="yes">Insert Row</property>
+ <property name="type_hint">dialog</property>
+ <child internal-child="vbox">
+ <object class="GtkBox" id="dialog-vbox1">
+ <property name="can_focus">False</property>
+ <property name="spacing">2</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="dialog-action_area1">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="layout_style">start</property>
+ <child>
+ <object class="GtkButton" id="ok">
+ <property name="label">gtk-ok</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="cancel">
+ <property name="label">gtk-cancel</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="help">
+ <property name="label">gtk-help</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkGrid" id="grid1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="row_spacing">12</property>
+ <child>
+ <object class="GtkFrame" id="frame1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">16</property>
+ <child>
+ <object class="GtkGrid" id="grid2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="column_spacing">6</property>
+ <child>
+ <object class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Number</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">insert_number</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">2</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSpinButton" id="insert_number">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">●</property>
+ <property name="activates_default">True</property>
+ <property name="invisible_char_set">True</property>
+ <property name="adjustment">adjustment1</property>
+ <property name="numeric">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Insert</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkGrid" id="grid3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkRadioButton" id="insert_before">
+ <property name="label" translatable="yes">_Before</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ <property name="width">2</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkRadioButton" id="insert_after">
+ <property name="label" translatable="yes">A_fter</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">insert_before</property>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">2</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Position</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">1</property>
+ <property name="width">1</property>
+ <property name="height">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="0">ok</action-widget>
+ <action-widget response="0">cancel</action-widget>
+ <action-widget response="0">help</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/cui/uiconfig/ui/macroselectordialog.ui b/cui/uiconfig/ui/macroselectordialog.ui
new file mode 100644
index 000000000000..0448245abe1f
--- /dev/null
+++ b/cui/uiconfig/ui/macroselectordialog.ui
@@ -0,0 +1,358 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkDialog" id="MacroSelectorDialog">
+ <property name="can_focus">False</property>
+ <property name="border_width">5</property>
+ <property name="title" translatable="yes">Macro Selector</property>
+ <property name="type_hint">dialog</property>
+ <child internal-child="vbox">
+ <object class="GtkBox" id="dialog-vbox1">
+ <property name="can_focus">False</property>
+ <property name="spacing">2</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="dialog-action_area1">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="layout_style">start</property>
+ <child>
+ <object class="GtkButton" id="ok">
+ <property name="label">gtk-ok</property>
+ <property name="use_action_appearance">False</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="no_show_all">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="add">
+ <property name="label">Add</property>
+ <property name="use_action_appearance">False</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="no_show_all">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="cancel">
+ <property name="label">gtk-cancel</property>
+ <property name="use_action_appearance">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="no_show_all">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="close">
+ <property name="label">gtk-close</property>
+ <property name="use_action_appearance">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="no_show_all">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="help">
+ <property name="label">gtk-help</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">11</property>
+ <child>
+ <object class="GtkLabel" id="helpmacro">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">Select the library that contains the macro you want. Then select the macro under 'Macro name'.</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">60</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="helptoolbar">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes">To add a command to a toolbar, select the category and then the command. Then drag the command to the Commands list of the Toolbars tab page in the Customize dialog.</property>
+ <property name="wrap">True</property>
+ <property name="max_width_chars">60</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="box2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <object class="GtkFrame" id="frame2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="cuilo:SvxConfigGroupListBox" id="categories">
+ <property name="height_request">300</property>
+ <property name="width_request">280</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkBox" id="box3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkLabel" id="libraryft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Library</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="categoryft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Category</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment3">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="cuilo:SvxConfigFunctionListBox" id="commands">
+ <property name="height_request">300</property>
+ <property name="width_request">280</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkBox" id="box4">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkLabel" id="macronameft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Macro name</property>
+ <property name="track_visited_links">False</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="commandsft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Commands</property>
+ <property name="track_visited_links">False</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="GtkScrolledWindow" id="scrolledwindow1">
+ <property name="height_request">100</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="shadow_type">in</property>
+ <child>
+ <object class="GtkTextView" id="description">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="editable">False</property>
+ <property name="wrap_mode">word</property>
+ <property name="cursor_visible">False</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Description</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="0">ok</action-widget>
+ <action-widget response="0">add</action-widget>
+ <action-widget response="0">cancel</action-widget>
+ <action-widget response="0">close</action-widget>
+ <action-widget response="0">help</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/cui/uiconfig/ui/positionpage.ui b/cui/uiconfig/ui/positionpage.ui
index 2dd1401fe7d7..d142bae0238c 100644
--- a/cui/uiconfig/ui/positionpage.ui
+++ b/cui/uiconfig/ui/positionpage.ui
@@ -211,7 +211,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Position</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -371,7 +373,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Rotation / Scaling</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
<packing>
<property name="expand">False</property>
@@ -385,6 +389,9 @@
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Rotation</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
<packing>
<property name="expand">False</property>
@@ -482,7 +489,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Spacing</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -517,7 +526,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Preview</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
diff --git a/cui/uiconfig/ui/scriptorganizer.ui b/cui/uiconfig/ui/scriptorganizer.ui
new file mode 100644
index 000000000000..d18bf8f9fc94
--- /dev/null
+++ b/cui/uiconfig/ui/scriptorganizer.ui
@@ -0,0 +1,199 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkDialog" id="ScriptOrganizerDialog">
+ <property name="can_focus">False</property>
+ <property name="border_width">5</property>
+ <property name="title" translatable="yes">%MACROLANG Macros</property>
+ <property name="type_hint">dialog</property>
+ <child internal-child="vbox">
+ <object class="GtkBox" id="dialog-vbox1">
+ <property name="can_focus">False</property>
+ <property name="spacing">2</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox" id="dialog-action_area1">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="layout_style">start</property>
+ <child>
+ <object class="GtkButton" id="run">
+ <property name="label">Run</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="can_default">True</property>
+ <property name="has_default">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="close">
+ <property name="label">gtk-close</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="create">
+ <property name="label">Create...</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="edit">
+ <property name="label">gtk-edit</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ <property name="image_position">bottom</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="rename">
+ <property name="label">Rename...</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="delete">
+ <property name="label">Delete...</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">5</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="help">
+ <property name="label">gtk-help</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">6</property>
+ <property name="secondary">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkFrame" id="frame2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="label_xalign">0</property>
+ <property name="shadow_type">none</property>
+ <child>
+ <object class="GtkAlignment" id="alignment2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="top_padding">6</property>
+ <property name="left_padding">12</property>
+ <child>
+ <object class="cuilo:SFTreeListBox" id="scripts">
+ <property name="height_request">300</property>
+ <property name="width_request">280</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child type="label">
+ <object class="GtkLabel" id="macrosft">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Macros</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget response="0">run</action-widget>
+ <action-widget response="0">close</action-widget>
+ <action-widget response="0">create</action-widget>
+ <action-widget response="0">edit</action-widget>
+ <action-widget response="0">rename</action-widget>
+ <action-widget response="0">delete</action-widget>
+ <action-widget response="0">help</action-widget>
+ </action-widgets>
+ </object>
+</interface>
diff --git a/cui/uiconfig/ui/thesaurus.ui b/cui/uiconfig/ui/thesaurus.ui
index 8df35d08561d..b294ab1a5289 100644
--- a/cui/uiconfig/ui/thesaurus.ui
+++ b/cui/uiconfig/ui/thesaurus.ui
@@ -139,6 +139,7 @@
<property name="hexpand">True</property>
<property name="entry_text_column">0</property>
<property name="id_column">1</property>
+ <property name="valign">center</property>
</object>
<packing>
<property name="left_attach">1</property>
@@ -154,6 +155,7 @@
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="halign">start</property>
+ <property name="valign">center</property>
<property name="use_action_appearance">False</property>
<property name="image">image1</property>
</object>
@@ -168,6 +170,7 @@
<object class="GtkComboBoxText" id="langcb">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="valign">center</property>
</object>
<packing>
<property name="left_attach">2</property>
diff --git a/cui/uiconfig/ui/twolinespage.ui b/cui/uiconfig/ui/twolinespage.ui
index f61c424e4183..661d0554fe6e 100644
--- a/cui/uiconfig/ui/twolinespage.ui
+++ b/cui/uiconfig/ui/twolinespage.ui
@@ -35,7 +35,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Double-lined</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -131,7 +133,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Enclosing character</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -166,7 +170,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Preview</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
diff --git a/cui/uiconfig/ui/zoomdialog.ui b/cui/uiconfig/ui/zoomdialog.ui
index a66d73f99069..5a35580dcd07 100644
--- a/cui/uiconfig/ui/zoomdialog.ui
+++ b/cui/uiconfig/ui/zoomdialog.ui
@@ -29,6 +29,7 @@
<property name="can_focus">True</property>
<property name="has_default">True</property>
<property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
</object>
<packing>
@@ -44,6 +45,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
</object>
<packing>
@@ -59,6 +61,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
<property name="use_stock">True</property>
</object>
<packing>
@@ -103,6 +106,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -120,6 +124,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -138,6 +143,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -156,6 +162,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -178,6 +185,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -217,7 +225,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">Zoom factor</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
@@ -250,6 +260,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -267,6 +278,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -289,6 +301,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="active">True</property>
<property name="draw_indicator">True</property>
@@ -332,6 +345,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
+ <property name="use_action_appearance">False</property>
<property name="xalign">0</property>
<property name="draw_indicator">True</property>
</object>
@@ -352,7 +366,9 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">View layout</property>
- <property name="use_markup">True</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ </attributes>
</object>
</child>
</object>
diff --git a/cui/util/hidother.src b/cui/util/hidother.src
index 8d13058e3669..3827af0fec60 100644
--- a/cui/util/hidother.src
+++ b/cui/util/hidother.src
@@ -148,10 +148,6 @@ hidspecial HID_REDLINING_DLG { HelpID = HID_REDLINING_DLG; };
hidspecial HID_REDLINING_EDIT { HelpID = HID_REDLINING_EDIT; };
hidspecial HID_REDLINING_NEXT { HelpID = HID_REDLINING_NEXT; };
hidspecial HID_REDLINING_PREV { HelpID = HID_REDLINING_PREV; };
-hidspecial HID_SCRIPTSBOX { HelpId = HID_SCRIPTSBOX; };
-hidspecial HID_SELECTOR_CATEGORIES { HelpId = HID_SELECTOR_CATEGORIES; };
-hidspecial HID_SELECTOR_COMMANDS { HelpId = HID_SELECTOR_COMMANDS; };
-hidspecial HID_SELECTOR_DIALOG { HelpId = HID_SELECTOR_DIALOG; };
hidspecial HID_SPLDLG_BUTTON_CHANGE { HelpID = HID_SPLDLG_BUTTON_CHANGE ; };
hidspecial HID_SPLDLG_BUTTON_CHANGEALL { HelpID = HID_SPLDLG_BUTTON_CHANGEALL ; };
hidspecial HID_SPLDLG_BUTTON_CLOSE { HelpID = HID_SPLDLG_BUTTON_CLOSE ; };
diff --git a/curl/ExternalPackage_curl.mk b/curl/ExternalPackage_curl.mk
new file mode 100644
index 000000000000..edd410adfaee
--- /dev/null
+++ b/curl/ExternalPackage_curl.mk
@@ -0,0 +1,40 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,curl,curl))
+
+$(eval $(call gb_ExternalPackage_use_external_project,curl,curl))
+
+ifeq ($(GUI),UNX)
+
+ifeq ($(COM),GCC)
+$(eval $(call gb_ExternalPackage_add_file,curl,lib/pkgconfig/libcurl.pc,libcurl.pc))
+endif
+
+ifeq ($(DISABLE_DYNLOADING),TRUE)
+$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.a,lib/.libs/libcurl.a))
+else ifeq ($(OS),ANDROID)
+$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.so,lib/.libs/libcurl.so))
+else
+$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.so,lib/.libs/libcurl.so.4.2.0))
+endif
+
+else ifeq ($(OS)$(COM),WNTGCC)
+
+$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.a,lib/.libs/libcurl.a))
+$(eval $(call gb_ExternalPackage_add_file,curl,bin/libcurl.dll,lib/.libs/libcurl.dll))
+
+else ifeq ($(COM),MSC)
+
+$(eval $(call gb_ExternalPackage_add_file,curl,lib/libcurl.lib,lib/libcurl.lib))
+$(eval $(call gb_ExternalPackage_add_file,curl,bin/libcurl.dll,lib/libcurl.dll))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/curl/ExternalProject_curl.mk b/curl/ExternalProject_curl.mk
new file mode 100644
index 000000000000..e1388cdd687d
--- /dev/null
+++ b/curl/ExternalProject_curl.mk
@@ -0,0 +1,58 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,curl))
+
+$(eval $(call gb_ExternalProject_use_unpacked,curl,curl))
+
+$(eval $(call gb_ExternalProject_register_targets,curl,\
+ build \
+))
+
+ifeq ($(GUI),UNX)
+
+$(call gb_ExternalProject_get_state_target,curl,build):
+ cd $(EXTERNAL_WORKDIR) \
+ && PATH=$(OUTDIR_FOR_BUILD)/bin:$$PATH ./configure --with-nss --without-ssl \
+ --without-libidn --enable-ftp --enable-ipv6 --enable-http --disable-gopher \
+ --disable-file --disable-ldap --disable-telnet --disable-dict --without-libssh2 \
+ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
+ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \
+ $(if $(filter TRUE,$(ENABLE_DEBUG)),--enable-debug) \
+ $(if $(SYSBASE),CPPFLAGS="-I$(SYSBASE)/usr/include" LDFLAGS="-L$(SYSBASE)/usr/lib") \
+ && cd lib \
+ && $(MAKE) \
+ && touch $@
+
+else ifeq ($(OS)$(COM),WNTGCC)
+
+$(call gb_ExternalProject_get_state_target,curl,build):
+ cd $(EXTERNAL_WORKDIR) \
+ && PATH=$(OUTDIR_FOR_BUILD)/bin:$$PATH ./configure --with-nss --without-ssl --enable-ftp --enable-ipv6 --disable-http --disable-gopher \
+ --disable-file --disable-ldap --disable-telnet --disable-dict --build=i586-pc-mingw32 --host=i586-pc-mingw32 \
+ $(if $(filter TRUE,$(ENABLE_DEBUG)),--enable-debug) \
+ CC="$(CC) -mthreads $(if $(filter YES,$(MINGW_SHARED_GCCLIB)),-shared-libgcc)" \
+ LIBS="-lws2_32 -lwinmm $(if $(filter YES,$(MINGW_SHARED_GXXLIB)),$(MINGW_SHARED_LIBSTDCPP))" \
+ LDFLAGS="$(patsubst ;, -L,$(ILIB))" \
+ CPPFLAGS="$(INCLUDE)" OBJDUMP="objdump" \
+ && cd lib \
+ && $(MAKE) \
+ && touch $@
+
+else ifeq ($(COM),MSC)
+
+$(call gb_ExternalProject_get_state_target,curl,build):
+ cd $(EXTERNAL_WORKDIR)/lib \
+ && MAKEFLAGS= LIB="$(ILIB)" nmake -f Makefile.vc9 cfg=release-dll \
+ EXCFLAGS="/EHa /Zc:wchar_t- /D_CRT_SECURE_NO_DEPRECATE $(SOLARINC)" $(if $(filter X86_64,$(CPUNAME)),MACHINE=X64) \
+ && touch $@
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/saxon/Makefile b/curl/Makefile
index ccb1c85a04da..ccb1c85a04da 100644
--- a/saxon/Makefile
+++ b/curl/Makefile
diff --git a/curl/Module_curl.mk b/curl/Module_curl.mk
new file mode 100644
index 000000000000..2f9c4b2a9403
--- /dev/null
+++ b/curl/Module_curl.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,curl))
+
+ifeq ($(SYSTEM_CURL),NO)
+$(eval $(call gb_Module_add_targets,curl,\
+ UnpackedTarball_curl \
+ ExternalPackage_curl \
+ ExternalProject_curl \
+))
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/curl/UnpackedTarball_curl.mk b/curl/UnpackedTarball_curl.mk
new file mode 100644
index 000000000000..4ff19f7374c6
--- /dev/null
+++ b/curl/UnpackedTarball_curl.mk
@@ -0,0 +1,32 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,curl))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,curl,$(CURL_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_set_patchlevel,curl,1))
+
+$(eval $(call gb_UnpackedTarball_fix_end_of_line,curl,\
+ Makefile.msvc.names \
+ lib/Makefile.vc9 \
+))
+$(eval $(call gb_UnpackedTarball_add_patches,curl,\
+ curl/curl-7.26.0.patch \
+ curl/curl-7.26.0_nspr.patch \
+ curl/curl-aix.patch \
+ curl/curl-7.26.0_win.patch \
+ curl/curl-7.26.0_mingw.patch \
+))
+ifeq ($(OS),ANDROID)
+$(eval $(call gb_UnpackedTarball_add_patches,curl,\
+ curl/curl-android.patch \
+))
+endif
+# vim: set noet sw=4 ts=4:
diff --git a/curl/curl-7.26.0_mingw.patch b/curl/curl-7.26.0_mingw.patch
index 54d1ef3d0036..79318732a69b 100644
--- a/curl/curl-7.26.0_mingw.patch
+++ b/curl/curl-7.26.0_mingw.patch
@@ -1,4 +1,4 @@
---- misc/curl-7.26.0/lib/setup.h 2009-10-29 05:21:58.000000000 +0900
+--- curl-7.26.0/lib/setup.h 2009-10-29 05:21:58.000000000 +0900
+++ misc/build/curl-7.26.0/lib/setup.h 2010-03-02 06:03:10.009500000 +0900
@@ -40,6 +40,21 @@
diff --git a/curl/curl-7.26.0_win.patch b/curl/curl-7.26.0_win.patch
index 214b5a9389e7..bcc357c045f4 100644
--- a/curl/curl-7.26.0_win.patch
+++ b/curl/curl-7.26.0_win.patch
@@ -1,4 +1,4 @@
---- misc/curl-7.26.0/Makefile.msvc.names 2011-03-19 09:17:12.000000000 -0600
+--- curl-7.26.0/Makefile.msvc.names 2011-03-19 09:17:12.000000000 -0600
+++ misc/build/curl-7.26.0/Makefile.msvc.names 2012-07-02 07:20:39.323448800 -0600
@@ -43,7 +43,7 @@
!ENDIF
@@ -32,3 +32,21 @@
!ENDIF
# --------------------------------------
+--- curl/lib/Makefile.vc9 2012-05-24 12:07:02.000000000 -0400
++++ curl/lib/Makefile.vc9 2012-10-29 11:53:44.658809300 -0400
+@@ -117,7 +117,7 @@
+ ZLIBLIBSDLL= zdll.lib
+ ZLIBLIBS = zlib.lib
+ WINLIBS = ws2_32.lib wldap32.lib
+-CFLAGS = $(CFLAGS)
++CFLAGS = $(CFLAGS) $(EXCFLAGS)
+
+ CFGSET = FALSE
+
+@@ -620,5 +620,5 @@
+ release-dll-ssl-dll\libcurl.res \
+ release-dll-zlib-dll\libcurl.res \
+ release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
+- rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
++ rc $(SOLARINC) /dDEBUGBUILD=0 /Fo $@ libcurl.rc
+ !ENDIF # End of case where a config was provided.
diff --git a/curl/makefile.mk b/curl/makefile.mk
index d3da8b318b7c..7a8d784f2332 100644
--- a/curl/makefile.mk
+++ b/curl/makefile.mk
@@ -153,11 +153,14 @@ MACHINE=X86
MACHINE=X64
.ENDIF
-.IF "$(debug)"==""
+# that debug configuration is disabled for now because it needs msvcr90d.dll
+# (the debug MSVC runtime) and that is not copied into the solver currently,
+# causing unit tests to fail
+#.IF "$(debug)"==""
BUILD_ACTION=nmake -f Makefile.vc9 cfg=release-dll EXCFLAGS=$(EXCFLAGS) MACHINE=$(MACHINE)
-.ELSE
-BUILD_ACTION=nmake -f Makefile.vc9 cfg=debug-dll EXCFLAGS=$(EXCFLAGS) MACHINE=$(MACHINE)
-.ENDIF
+#.ELSE
+#BUILD_ACTION=nmake -f Makefile.vc9 cfg=debug-dll EXCFLAGS=$(EXCFLAGS) MACHINE=$(MACHINE)
+#.ENDIF
OUT2BIN=$(BUILD_DIR)$/libcurl.dll
OUT2LIB=$(BUILD_DIR)$/libcurl.lib
diff --git a/curl/prj/d.lst b/curl/prj/d.lst
index 13d6ad291df9..e69de29bb2d1 100644
--- a/curl/prj/d.lst
+++ b/curl/prj/d.lst
@@ -1,18 +0,0 @@
-mkdir: %_DEST%\inc\external\curl
-..\%__SRC%\inc\easy.h %_DEST%\inc\external\curl\easy.h
-..\%__SRC%\inc\curlver.h %_DEST%\inc\external\curl\curlver.h
-..\%__SRC%\inc\curl.h %_DEST%\inc\external\curl\curl.h
-..\%__SRC%\inc\mprintf.h %_DEST%\inc\external\curl\mprintf.h
-..\%__SRC%\inc\multi.h %_DEST%\inc\external\curl\multi.h
-..\%__SRC%\inc\stdcheaders.h %_DEST%\inc\external\curl\stdcheaders.h
-..\%__SRC%\inc\typecheck-gcc.h %_DEST%\inc\external\curl\typecheck-gcc.h
-..\%__SRC%\inc\curlbuild.h %_DEST%\inc\external\curl\curlbuild.h
-..\%__SRC%\inc\curlrules.h %_DEST%\inc\external\curl\curlrules.h
-
-mkdir: %_DEST%\lib\pkgconfig
-..\%__SRC%\inc\libcurl.pc %_DEST%\lib\pkgconfig\libcurl.pc
-
-..\%__SRC%\bin\libcurl*.dll %_DEST%\bin\*.dll
-..\%__SRC%\lib\libcurl.* %_DEST%\lib\libcurl.*
-
-linklib: libcurl.*.*
diff --git a/dbaccess/JunitTest_dbaccess_complex.mk b/dbaccess/JunitTest_dbaccess_complex.mk
index fd1511e6fbab..bd8358ef70d8 100644
--- a/dbaccess/JunitTest_dbaccess_complex.mk
+++ b/dbaccess/JunitTest_dbaccess_complex.mk
@@ -7,9 +7,9 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_JunitTest_JunitTest,dba_ju_complex))
+$(eval $(call gb_JunitTest_JunitTest,dbaccess_ju_complex))
-$(eval $(call gb_JunitTest_use_jars,dba_ju_complex,\
+$(eval $(call gb_JunitTest_use_jars,dbaccess_ju_complex,\
ConnectivityTools \
OOoRunner \
jurt \
@@ -18,17 +18,17 @@ $(eval $(call gb_JunitTest_use_jars,dba_ju_complex,\
unoil \
))
-$(eval $(call gb_JunitTest_set_defs,dba_ju_complex,\
+$(eval $(call gb_JunitTest_set_defs,dbaccess_ju_complex,\
$$(DEFS) \
-Dorg.openoffice.test.arg.tdoc=$(SRCDIR)/dbaccess/qa/dbaccess \
))
-$(eval $(call gb_JunitTest_add_classes,dba_ju_complex,\
+$(eval $(call gb_JunitTest_add_classes,dbaccess_ju_complex,\
complex.dbaccess.Beamer \
complex.dbaccess.PropertyBag \
))
-$(eval $(call gb_JunitTest_add_sourcefiles,dba_ju_complex,\
+$(eval $(call gb_JunitTest_add_sourcefiles,dbaccess_ju_complex,\
dbaccess/qa/complex/dbaccess/ApplicationController \
dbaccess/qa/complex/dbaccess/Beamer \
dbaccess/qa/complex/dbaccess/CRMBasedTestCase \
diff --git a/dbaccess/JunitTest_dbaccess_unoapi.mk b/dbaccess/JunitTest_dbaccess_unoapi.mk
index 5897697faa54..f948229c46da 100644
--- a/dbaccess/JunitTest_dbaccess_unoapi.mk
+++ b/dbaccess/JunitTest_dbaccess_unoapi.mk
@@ -26,16 +26,16 @@
# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
# instead of those above.
-$(eval $(call gb_JunitTest_JunitTest,dba_ju_unoapi))
+$(eval $(call gb_JunitTest_JunitTest,dbaccess_ju_unoapi))
-$(eval $(call gb_JunitTest_set_defs,dba_ju_unoapi,\
+$(eval $(call gb_JunitTest_set_defs,dbaccess_ju_unoapi,\
$$(DEFS) \
-Dorg.openoffice.test.arg.sce=$(SRCDIR)/dbaccess/qa/unoapi/dbaccess.sce \
-Dorg.openoffice.test.arg.xcl=$(SRCDIR)/dbaccess/qa/unoapi/knownissues.xcl \
-Dorg.openoffice.test.arg.tdoc=$(SRCDIR)/dbaccess/qa/unoapi/testdocuments \
))
-$(eval $(call gb_JunitTest_use_jars,dba_ju_unoapi,\
+$(eval $(call gb_JunitTest_use_jars,dbaccess_ju_unoapi,\
OOoRunner \
jurt \
ridl \
@@ -43,7 +43,7 @@ $(eval $(call gb_JunitTest_use_jars,dba_ju_unoapi,\
unoil \
))
-$(eval $(call gb_JunitTest_add_classes,dba_ju_unoapi,\
+$(eval $(call gb_JunitTest_add_classes,dbaccess_ju_unoapi,\
org.openoffice.test.UnoApiTest \
))
diff --git a/dbaccess/source/core/api/KeySet.cxx b/dbaccess/source/core/api/KeySet.cxx
index 6a520cf49fe1..2fa7eeafddd6 100644
--- a/dbaccess/source/core/api/KeySet.cxx
+++ b/dbaccess/source/core/api/KeySet.cxx
@@ -291,7 +291,8 @@ void OKeySet::construct(const Reference< XResultSet>& _xDriverSet,const ::rtl::O
// the first row is empty because it's now easier for us to distinguish when we are beforefirst or first
// without extra variable to be set
- m_aKeyMap.insert(OKeySetMatrix::value_type(0,OKeySetValue(NULL,::std::pair<sal_Int32,Reference<XRow> >(0,NULL))));
+ OKeySetValue keySetValue((ORowSetValueVector *)NULL,::std::pair<sal_Int32,Reference<XRow> >(0,(Reference<XRow>)NULL));
+ m_aKeyMap.insert(OKeySetMatrix::value_type(0, keySetValue));
m_aKeyIter = m_aKeyMap.begin();
::rtl::OUStringBuffer aFilter = createKeyFilter();
@@ -876,7 +877,7 @@ void OKeySet::executeInsert( const ORowSetRow& _rInsertRow,const ::rtl::OUString
ORowSetRow aKeyRow = new connectivity::ORowVector< ORowSetValue >(m_pKeyColumnNames->size());
copyRowValue(_rInsertRow,aKeyRow,aKeyIter->first + 1);
- m_aKeyIter = m_aKeyMap.insert(OKeySetMatrix::value_type(aKeyIter->first + 1,OKeySetValue(aKeyRow,::std::pair<sal_Int32,Reference<XRow> >(1,NULL)))).first;
+ m_aKeyIter = m_aKeyMap.insert(OKeySetMatrix::value_type(aKeyIter->first + 1,OKeySetValue(aKeyRow,::std::pair<sal_Int32,Reference<XRow> >(1,(Reference<XRow>)NULL)))).first;
// now we set the bookmark for this row
(_rInsertRow->get())[0] = makeAny((sal_Int32)m_aKeyIter->first);
tryRefetch(_rInsertRow,bRefetch);
@@ -1466,7 +1467,7 @@ sal_Bool OKeySet::fetchRow()
const SelectColumnDescription& rColDesc = aPosIter->second;
aIter->fill(rColDesc.nPosition, rColDesc.nType, m_xRow);
}
- m_aKeyIter = m_aKeyMap.insert(OKeySetMatrix::value_type(m_aKeyMap.rbegin()->first+1,OKeySetValue(aKeyRow,::std::pair<sal_Int32,Reference<XRow> >(0,NULL)))).first;
+ m_aKeyIter = m_aKeyMap.insert(OKeySetMatrix::value_type(m_aKeyMap.rbegin()->first+1,OKeySetValue(aKeyRow,::std::pair<sal_Int32,Reference<XRow> >(0,(Reference<XRow>)NULL)))).first;
}
else
m_bRowCountFinal = sal_True;
diff --git a/dbaccess/source/core/api/OptimisticSet.cxx b/dbaccess/source/core/api/OptimisticSet.cxx
index 17dc208cb6cf..ca6f1b59cf33 100644
--- a/dbaccess/source/core/api/OptimisticSet.cxx
+++ b/dbaccess/source/core/api/OptimisticSet.cxx
@@ -92,7 +92,7 @@ OptimisticSet::OptimisticSet(const ::comphelper::ComponentContext& _rContext,
sal_Int32 i_nMaxRows,
sal_Int32& o_nRowCount)
:OKeySet(NULL,NULL,::rtl::OUString(),_xComposer,_aParameterValueForCache,i_nMaxRows,o_nRowCount)
- ,m_aSqlParser( _rContext.getLegacyServiceFactory() )
+ ,m_aSqlParser( _rContext.getUNOContext() )
,m_aSqlIterator( i_xConnection, Reference<XTablesSupplier>(_xComposer,UNO_QUERY)->getTables(), m_aSqlParser, NULL )
,m_bResultSetChanged(false)
{
@@ -131,7 +131,8 @@ void OptimisticSet::construct(const Reference< XResultSet>& _xDriverSet,const ::
// the first row is empty because it's now easier for us to distinguish when we are beforefirst or first
// without extra variable to be set
- m_aKeyMap.insert(OKeySetMatrix::value_type(0,OKeySetValue(NULL,::std::pair<sal_Int32,Reference<XRow> >(0,NULL))));
+ OKeySetValue keySetValue((ORowSetValueVector *)NULL,::std::pair<sal_Int32,Reference<XRow> >(0,(Reference<XRow>)NULL));
+ m_aKeyMap.insert(OKeySetMatrix::value_type(0,keySetValue));
m_aKeyIter = m_aKeyMap.begin();
::rtl::OUStringBuffer aFilter = createKeyFilter();
@@ -503,7 +504,8 @@ void OptimisticSet::reset(const Reference< XResultSet>& _xDriverSet)
OCacheSet::construct(_xDriverSet,::rtl::OUString());
m_bRowCountFinal = sal_False;
m_aKeyMap.clear();
- m_aKeyMap.insert(OKeySetMatrix::value_type(0,OKeySetValue(NULL,::std::pair<sal_Int32,Reference<XRow> >(0,NULL))));
+ OKeySetValue keySetValue((ORowSetValueVector *)NULL,::std::pair<sal_Int32,Reference<XRow> >(0,(Reference<XRow>)NULL));
+ m_aKeyMap.insert(OKeySetMatrix::value_type(0,keySetValue));
m_aKeyIter = m_aKeyMap.begin();
}
diff --git a/dbaccess/source/core/api/RowSetCache.cxx b/dbaccess/source/core/api/RowSetCache.cxx
index 0a18b04af516..34896882182e 100644
--- a/dbaccess/source/core/api/RowSetCache.cxx
+++ b/dbaccess/source/core/api/RowSetCache.cxx
@@ -1580,7 +1580,7 @@ sal_Bool ORowSetCache::checkJoin(const Reference< XConnection>& _xConnection,
sal_Bool bOk = sal_False;
::rtl::OUString sSql = _xAnalyzer->getQuery();
::rtl::OUString sErrorMsg;
- ::connectivity::OSQLParser aSqlParser( m_aContext.getLegacyServiceFactory() );
+ ::connectivity::OSQLParser aSqlParser( m_aContext.getUNOContext() );
SAL_WNODEPRECATED_DECLARATIONS_PUSH
::std::auto_ptr< ::connectivity::OSQLParseNode> pSqlParseNode( aSqlParser.parseTree(sErrorMsg,sSql));
SAL_WNODEPRECATED_DECLARATIONS_POP
diff --git a/dbaccess/source/core/api/SingleSelectQueryComposer.cxx b/dbaccess/source/core/api/SingleSelectQueryComposer.cxx
index faef30832cc1..e078e1e28c4c 100644
--- a/dbaccess/source/core/api/SingleSelectQueryComposer.cxx
+++ b/dbaccess/source/core/api/SingleSelectQueryComposer.cxx
@@ -234,7 +234,7 @@ OSingleSelectQueryComposer::OSingleSelectQueryComposer(const Reference< XNameAcc
const ::comphelper::ComponentContext& _rContext )
:OSubComponent(m_aMutex,_xConnection)
,OPropertyContainer(m_aBHelper)
- ,m_aSqlParser( _rContext.getLegacyServiceFactory() )
+ ,m_aSqlParser( _rContext.getUNOContext() )
,m_aSqlIterator( _xConnection, _rxTables, m_aSqlParser, NULL )
,m_aAdditiveIterator( _xConnection, _rxTables, m_aSqlParser, NULL )
,m_aElementaryParts( (size_t)SQLPartCount )
@@ -1290,9 +1290,12 @@ sal_Bool OSingleSelectQueryComposer::setComparsionPredicate(OSQLParseNode * pCon
if(m_pTables && m_pTables->getCount() > 1)
{
::rtl::OUString aCatalog,aSchema,aTable,aComposedName,aColumnName;
- column->getPropertyValue(PROPERTY_CATALOGNAME) >>= aCatalog;
- column->getPropertyValue(PROPERTY_SCHEMANAME) >>= aSchema;
- column->getPropertyValue(PROPERTY_TABLENAME) >>= aTable;
+ if(column->getPropertySetInfo()->hasPropertyByName(PROPERTY_CATALOGNAME))
+ column->getPropertyValue(PROPERTY_CATALOGNAME) >>= aCatalog;
+ if(column->getPropertySetInfo()->hasPropertyByName(PROPERTY_SCHEMANAME))
+ column->getPropertyValue(PROPERTY_SCHEMANAME) >>= aSchema;
+ if(column->getPropertySetInfo()->hasPropertyByName(PROPERTY_TABLENAME))
+ column->getPropertyValue(PROPERTY_TABLENAME) >>= aTable;
column->getPropertyValue(PROPERTY_NAME) >>= aColumnName;
Sequence< ::rtl::OUString> aNames(m_pTables->getElementNames());
@@ -1515,14 +1518,14 @@ namespace
void SAL_CALL OSingleSelectQueryComposer::setStructuredFilter( const Sequence< Sequence< PropertyValue > >& filter ) throw (SQLException, ::com::sun::star::lang::IllegalArgumentException, RuntimeException)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "dbaccess", "Ocke.Janssen@sun.com", "OSingleSelectQueryComposer::setStructuredFilter" );
- OPredicateInputController aPredicateInput(m_aContext.getLegacyServiceFactory(),m_xConnection);
+ OPredicateInputController aPredicateInput(m_aContext.getUNOContext(),m_xConnection);
setFilter(lcl_getCondition(filter,aPredicateInput,getColumns()));
}
void SAL_CALL OSingleSelectQueryComposer::setStructuredHavingClause( const Sequence< Sequence< PropertyValue > >& filter ) throw (SQLException, RuntimeException)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "dbaccess", "Ocke.Janssen@sun.com", "OSingleSelectQueryComposer::setStructuredHavingClause" );
- OPredicateInputController aPredicateInput(m_aContext.getLegacyServiceFactory(),m_xConnection);
+ OPredicateInputController aPredicateInput(m_aContext.getUNOContext(),m_xConnection);
setHavingClause(lcl_getCondition(filter,aPredicateInput,getColumns()));
}
diff --git a/dbaccess/source/core/api/definitioncolumn.cxx b/dbaccess/source/core/api/definitioncolumn.cxx
index 190da6017ae4..df9a92a6f69e 100644
--- a/dbaccess/source/core/api/definitioncolumn.cxx
+++ b/dbaccess/source/core/api/definitioncolumn.cxx
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <bitset>
#include "apitools.hxx"
#include "dbastrings.hrc"
@@ -44,10 +45,16 @@ using namespace ::comphelper;
using namespace ::osl;
using namespace dbaccess;
-#define HAS_DESCRIPTION 0x00000001
-#define HAS_DEFAULTVALUE 0x00000002
-#define HAS_ROWVERSION 0x00000004
-#define HAS_AUTOINCREMENT_CREATION 0x00000008
+namespace
+{
+ const sal_Int32 HAS_DESCRIPTION = 0x00000001;
+ const sal_Int32 HAS_DEFAULTVALUE = 0x00000002;
+ const sal_Int32 HAS_ROWVERSION = 0x00000004;
+ const sal_Int32 HAS_AUTOINCREMENT_CREATION = 0x00000008;
+ const sal_Int32 HAS_CATALOGNAME = 0x00000010;
+ const sal_Int32 HAS_SCHEMANAME = 0x00000020;
+ const sal_Int32 HAS_TABLENAME = 0x00000040;
+}
//============================================================
//= OTableColumnDescriptor
@@ -162,7 +169,7 @@ rtl::OUString OTableColumn::getImplementationName( ) throw (RuntimeException)
// =========================================================================
DBG_NAME( OQueryColumn );
-OQueryColumn::OQueryColumn( const Reference< XPropertySet >& _rxParserColumn, const Reference< XConnection >& _rxConnection,const ::rtl::OUString i_sLabel )
+OQueryColumn::OQueryColumn( const Reference< XPropertySet >& _rxParserColumn, const Reference< XConnection >& _rxConnection, const ::rtl::OUString &i_sLabel )
:OTableColumnDescriptor( false /* do not act as descriptor */ )
,m_sLabel(i_sLabel)
{
@@ -336,6 +343,9 @@ OColumnWrapper::OColumnWrapper( const Reference< XPropertySet > & rCol, const bo
m_nColTypeID |= xInfo->hasPropertyByName(PROPERTY_DEFAULTVALUE) ? HAS_DEFAULTVALUE : 0;
m_nColTypeID |= xInfo->hasPropertyByName(PROPERTY_ISROWVERSION) ? HAS_ROWVERSION : 0;
m_nColTypeID |= xInfo->hasPropertyByName(PROPERTY_AUTOINCREMENTCREATION) ? HAS_AUTOINCREMENT_CREATION : 0;
+ m_nColTypeID |= xInfo->hasPropertyByName(PROPERTY_CATALOGNAME) ? HAS_CATALOGNAME : 0;
+ m_nColTypeID |= xInfo->hasPropertyByName(PROPERTY_SCHEMANAME) ? HAS_SCHEMANAME : 0;
+ m_nColTypeID |= xInfo->hasPropertyByName(PROPERTY_TABLENAME) ? HAS_TABLENAME : 0;
m_xAggregate->getPropertyValue(PROPERTY_NAME) >>= m_sName;
}
@@ -445,15 +455,7 @@ Sequence< ::rtl::OUString > OTableColumnDescriptorWrapper::getSupportedServiceNa
const sal_Int32 nHaveAlways = 7;
// Which optional properties are contained?
- sal_Int32 nHaveOptionally = 0;
- if (nId & HAS_DESCRIPTION)
- ++nHaveOptionally;
- if (nId & HAS_DEFAULTVALUE)
- ++nHaveOptionally;
- if (nId & HAS_ROWVERSION)
- ++nHaveOptionally;
- if ( nId & HAS_AUTOINCREMENT_CREATION )
- ++nHaveOptionally;
+ const sal_Int32 nHaveOptionally (::std::bitset<7>(nId).count());
BEGIN_PROPERTY_SEQUENCE( nHaveAlways + nHaveOptionally )
@@ -481,6 +483,18 @@ Sequence< ::rtl::OUString > OTableColumnDescriptorWrapper::getSupportedServiceNa
{
DECL_PROP0_BOOL( ISROWVERSION );
}
+ if ( nId & HAS_CATALOGNAME )
+ {
+ DECL_PROP0( CATALOGNAME, ::rtl::OUString );
+ }
+ if ( nId & HAS_SCHEMANAME )
+ {
+ DECL_PROP0( SCHEMANAME, ::rtl::OUString );
+ }
+ if ( nId & HAS_TABLENAME )
+ {
+ DECL_PROP0( TABLENAME, ::rtl::OUString );
+ }
END_PROPERTY_SEQUENCE()
diff --git a/dbaccess/source/core/dataaccess/ContentHelper.cxx b/dbaccess/source/core/dataaccess/ContentHelper.cxx
index 08cdd7e9c7ec..9ef5a1dc3a66 100644
--- a/dbaccess/source/core/dataaccess/ContentHelper.cxx
+++ b/dbaccess/source/core/dataaccess/ContentHelper.cxx
@@ -96,7 +96,7 @@ Reference< XContentIdentifier > SAL_CALL OContentHelper::getIdentifier( ) throw
::rtl::OUStringBuffer aIdentifier;
aIdentifier.appendAscii( "private:" );
aIdentifier.append( impl_getHierarchicalName( true ) );
- return new ::ucbhelper::ContentIdentifier( m_aContext.getLegacyServiceFactory(), aIdentifier.makeStringAndClear() );
+ return new ::ucbhelper::ContentIdentifier( aIdentifier.makeStringAndClear() );
}
::rtl::OUString OContentHelper::impl_getHierarchicalName( bool _includingRootContainer ) const
diff --git a/dbaccess/source/core/dataaccess/ModelImpl.cxx b/dbaccess/source/core/dataaccess/ModelImpl.cxx
index 66745a51e202..2d62e2cfaa32 100644
--- a/dbaccess/source/core/dataaccess/ModelImpl.cxx
+++ b/dbaccess/source/core/dataaccess/ModelImpl.cxx
@@ -32,6 +32,7 @@
#include <com/sun/star/container/XSet.hpp>
#include <com/sun/star/document/MacroExecMode.hpp>
+#include <com/sun/star/frame/GlobalEventBroadcaster.hpp>
#include <com/sun/star/embed/XTransactedObject.hpp>
#include <com/sun/star/embed/XTransactionBroadcaster.hpp>
#include <com/sun/star/sdb/BooleanComparisonMode.hpp>
@@ -976,9 +977,8 @@ Reference< XModel > ODatabaseModelImpl::createNewModel_deliverOwnership( bool _b
try
{
- Reference< XSet > xModelCollection;
- if ( m_aContext.createComponent( "com.sun.star.frame.GlobalEventBroadcaster", xModelCollection ) )
- xModelCollection->insert( makeAny( xModel ) );
+ Reference< XGlobalEventBroadcaster > xModelCollection = GlobalEventBroadcaster::create( m_aContext.getUNOContext() );
+ xModelCollection->insert( makeAny( xModel ) );
}
catch( const Exception& )
{
diff --git a/dbaccess/source/core/dataaccess/databasedocument.cxx b/dbaccess/source/core/dataaccess/databasedocument.cxx
index 83435d826e2c..8f5c6ae6d755 100644
--- a/dbaccess/source/core/dataaccess/databasedocument.cxx
+++ b/dbaccess/source/core/dataaccess/databasedocument.cxx
@@ -52,6 +52,7 @@
#include <com/sun/star/ui/XUIConfigurationStorage.hpp>
#include <com/sun/star/view/XSelectionSupplier.hpp>
#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/ucb/XContent.hpp>
#include <com/sun/star/sdb/DatabaseContext.hpp>
#include <com/sun/star/sdb/application/XDatabaseDocumentUI.hpp>
@@ -1585,10 +1586,7 @@ void ODatabaseDocument::WriteThroughComponent( const Reference< XOutputStream >&
OSL_ENSURE( NULL != pServiceName, "Need component name!" );
// get component
- Reference< XActiveDataSource > xSaxWriter;
- OSL_VERIFY( m_pImpl->m_aContext.createComponent( "com.sun.star.xml.sax.Writer", xSaxWriter ) );
- if ( !xSaxWriter.is() )
- return;
+ Reference< XWriter > xSaxWriter = xml::sax::Writer::create( m_pImpl->m_aContext.getUNOContext() );
// connect XML writer to output stream
xSaxWriter->setOutputStream( xOutputStream );
@@ -2069,7 +2067,7 @@ Reference< XTitle > ODatabaseDocument::impl_getTitleHelper_throw()
UNO_QUERY_THROW );
uno::Reference< frame::XModel > xThis (getThis(), uno::UNO_QUERY_THROW);
- ::framework::TitleHelper* pHelper = new ::framework::TitleHelper(m_pImpl->m_aContext.getLegacyServiceFactory());
+ ::framework::TitleHelper* pHelper = new ::framework::TitleHelper(m_pImpl->m_aContext.getUNOContext());
m_xTitleHelper.set(static_cast< ::cppu::OWeakObject* >(pHelper), uno::UNO_QUERY_THROW);
pHelper->setOwner (xThis );
pHelper->connectWithUntitledNumbers (xDesktop);
diff --git a/dbaccess/source/core/dataaccess/datasource.cxx b/dbaccess/source/core/dataaccess/datasource.cxx
index 3139e2004498..54d7156520fb 100644
--- a/dbaccess/source/core/dataaccess/datasource.cxx
+++ b/dbaccess/source/core/dataaccess/datasource.cxx
@@ -69,6 +69,7 @@
#include <rtl/logfile.hxx>
#include <rtl/digest.h>
#include <algorithm>
+#include <iterator>
using namespace ::com::sun::star::sdbc;
using namespace ::com::sun::star::sdbcx;
diff --git a/dbaccess/source/core/dataaccess/documentdefinition.cxx b/dbaccess/source/core/dataaccess/documentdefinition.cxx
index 5abe8f8bb8d9..47c6cd385292 100644
--- a/dbaccess/source/core/dataaccess/documentdefinition.cxx
+++ b/dbaccess/source/core/dataaccess/documentdefinition.cxx
@@ -1287,10 +1287,9 @@ sal_Bool ODocumentDefinition::save(sal_Bool _bApprove)
pDocuSave = new ODocumentSaveContinuation;
pRequest->addContinuation(pDocuSave);
}
- OInteraction< XInteractionApprove >* pApprove = NULL;
if ( _bApprove )
{
- pApprove = new OInteraction< XInteractionApprove >;
+ OInteraction< XInteractionApprove >* pApprove = new OInteraction< XInteractionApprove >;
pRequest->addContinuation(pApprove);
}
diff --git a/dbaccess/source/core/inc/definitioncolumn.hxx b/dbaccess/source/core/inc/definitioncolumn.hxx
index 6209710757d4..44d198cd431c 100644
--- a/dbaccess/source/core/inc/definitioncolumn.hxx
+++ b/dbaccess/source/core/inc/definitioncolumn.hxx
@@ -158,7 +158,7 @@ namespace dbaccess
OQueryColumn(
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _rxParserColumn,
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,
- const ::rtl::OUString i_sLabel
+ const ::rtl::OUString &i_sLabel
);
// XTypeProvider
diff --git a/dbaccess/source/core/recovery/storagexmlstream.cxx b/dbaccess/source/core/recovery/storagexmlstream.cxx
index 14b76e7eedb1..28f3a17ff1b5 100644
--- a/dbaccess/source/core/recovery/storagexmlstream.cxx
+++ b/dbaccess/source/core/recovery/storagexmlstream.cxx
@@ -23,6 +23,7 @@
#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/xml/sax/Parser.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <comphelper/componentcontext.hxx>
#include <cppuhelper/implbase1.hxx>
@@ -52,6 +53,8 @@ namespace dbaccess
using ::com::sun::star::embed::XStorage;
using ::com::sun::star::xml::sax::XDocumentHandler;
using ::com::sun::star::xml::sax::XAttributeList;
+ using ::com::sun::star::xml::sax::XWriter;
+ using ::com::sun::star::xml::sax::Writer;
using ::com::sun::star::io::XStream;
using ::com::sun::star::io::XOutputStream;
using ::com::sun::star::io::XActiveDataSource;
@@ -80,7 +83,7 @@ namespace dbaccess
:StorageOutputStream( i_rContext, i_rParentStorage, i_rStreamName )
,m_pData( new StorageXMLOutputStream_Data )
{
- const Reference< XActiveDataSource > xSaxWriter( i_rContext.createComponent( "com.sun.star.xml.sax.Writer" ), UNO_QUERY_THROW );
+ const Reference< XWriter > xSaxWriter = Writer::create( i_rContext.getUNOContext() );
xSaxWriter->setOutputStream( getOutputStream() );
m_pData->xHandler.set( xSaxWriter, UNO_QUERY_THROW );
diff --git a/dbaccess/source/ext/macromigration/migrationengine.cxx b/dbaccess/source/ext/macromigration/migrationengine.cxx
index 3524b6ac271e..cd17f77b3e4d 100644
--- a/dbaccess/source/ext/macromigration/migrationengine.cxx
+++ b/dbaccess/source/ext/macromigration/migrationengine.cxx
@@ -71,6 +71,7 @@
#include <vector>
#include <set>
+#include <iterator>
#define DEFAULT_DOC_PROGRESS_RANGE 100000
diff --git a/dbaccess/source/inc/stringconstants.inc b/dbaccess/source/inc/stringconstants.inc
index 133a06038360..9d6e79e872cb 100644
--- a/dbaccess/source/inc/stringconstants.inc
+++ b/dbaccess/source/inc/stringconstants.inc
@@ -212,7 +212,6 @@ IMPLEMENT_CONSTASCII_USTRING(SERVICE_SDBC_CONNECTIONPOOL, "com.sun.star.sdbc.Con
IMPLEMENT_CONSTASCII_USTRING(SERVICE_SDBCX_INDEXCOLUMN, "com.sun.star.sdbcx.IndexColumn");
IMPLEMENT_CONSTASCII_USTRING(SERVICE_SDBCX_KEYCOLUMN, "com.sun.star.sdbcx.KeyColumn");
IMPLEMENT_CONSTASCII_USTRING(SERVICE_FRAME_DESKTOP, "com.sun.star.frame.Desktop");
-IMPLEMENT_CONSTASCII_USTRING(SERVICE_UI_FOLDERPICKER, "com.sun.star.ui.dialogs.FolderPicker");
IMPLEMENT_CONSTASCII_USTRING(SERVICE_I18N_COLLATOR, "com.sun.star.i18n.Collator");
IMPLEMENT_CONSTASCII_USTRING(SERVICE_SDB_TABLEDEFINITION, "com.sun.star.sdb.TableDefinition");
IMPLEMENT_CONSTASCII_USTRING(SERVICE_SDB_COMMAND_DEFINITION, "com.sun.star.sdb.CommandDefinition");
diff --git a/dbaccess/source/ui/app/AppController.cxx b/dbaccess/source/ui/app/AppController.cxx
index 72520aa7e42f..bf46021f7237 100644
--- a/dbaccess/source/ui/app/AppController.cxx
+++ b/dbaccess/source/ui/app/AppController.cxx
@@ -2436,7 +2436,7 @@ Any OApplicationController::getCurrentSelection( Control& _rControl ) const
}
// -----------------------------------------------------------------------------
-sal_Bool OApplicationController::requestQuickHelp( const SvLBoxEntry* /*_pEntry*/, String& /*_rText*/ ) const
+sal_Bool OApplicationController::requestQuickHelp( const SvTreeListEntry* /*_pEntry*/, String& /*_rText*/ ) const
{
return sal_False;
}
@@ -2485,7 +2485,7 @@ sal_Int8 OApplicationController::queryDrop( const AcceptDropEvent& _rEvt, const
sal_Int8 nAction = OComponentTransferable::canExtractComponentDescriptor(_rFlavors,eType == E_FORM) ? DND_ACTION_COPY : DND_ACTION_NONE;
if ( nAction != DND_ACTION_NONE )
{
- SvLBoxEntry* pHitEntry = pView->getEntry(_rEvt.maPosPixel);
+ SvTreeListEntry* pHitEntry = pView->getEntry(_rEvt.maPosPixel);
::rtl::OUString sName;
if ( pHitEntry )
{
@@ -2553,7 +2553,7 @@ sal_Int8 OApplicationController::executeDrop( const ExecuteDropEvent& _rEvt )
else if ( OComponentTransferable::canExtractComponentDescriptor(aDroppedData.GetDataFlavorExVector(),m_aAsyncDrop.nType == E_FORM) )
{
m_aAsyncDrop.aDroppedData = OComponentTransferable::extractComponentDescriptor(aDroppedData);
- SvLBoxEntry* pHitEntry = pView->getEntry(_rEvt.maPosPixel);
+ SvTreeListEntry* pHitEntry = pView->getEntry(_rEvt.maPosPixel);
if ( pHitEntry )
m_aAsyncDrop.aUrl = pView->getQualifiedName( pHitEntry );
diff --git a/dbaccess/source/ui/app/AppController.hxx b/dbaccess/source/ui/app/AppController.hxx
index 3f0eb1ab9ff9..6cdb65c2cf29 100644
--- a/dbaccess/source/ui/app/AppController.hxx
+++ b/dbaccess/source/ui/app/AppController.hxx
@@ -47,7 +47,7 @@
#include <memory>
-class SvLBoxEntry;
+class SvTreeListEntry;
class SvTreeListBox;
class TransferableHelper;
class TransferableClipboardListener;
@@ -523,7 +523,7 @@ namespace dbaui
virtual bool interceptUserInput( const NotifyEvent& _rEvent );
// IControlActionListener overridables
- virtual sal_Bool requestQuickHelp( const SvLBoxEntry* _pEntry, String& _rText ) const;
+ virtual sal_Bool requestQuickHelp( const SvTreeListEntry* _pEntry, String& _rText ) const;
virtual sal_Bool requestDrag( sal_Int8 _nAction, const Point& _rPosPixel );
virtual sal_Int8 queryDrop( const AcceptDropEvent& _rEvt, const DataFlavorExVector& _rFlavors );
virtual sal_Int8 executeDrop( const ExecuteDropEvent& _rEvt );
diff --git a/dbaccess/source/ui/app/AppDetailPageHelper.cxx b/dbaccess/source/ui/app/AppDetailPageHelper.cxx
index 1f827f31b1bf..dfcea23ffa12 100644
--- a/dbaccess/source/ui/app/AppDetailPageHelper.cxx
+++ b/dbaccess/source/ui/app/AppDetailPageHelper.cxx
@@ -88,13 +88,13 @@ namespace dbaui
namespace
{
- SvLBoxEntry* lcl_findEntry_impl(DBTreeListBox& rTree,const ::rtl::OUString& _rName,SvLBoxEntry* _pFirst)
+ SvTreeListEntry* lcl_findEntry_impl(DBTreeListBox& rTree,const ::rtl::OUString& _rName,SvTreeListEntry* _pFirst)
{
- SvLBoxEntry* pReturn = NULL;
+ SvTreeListEntry* pReturn = NULL;
sal_Int32 nIndex = 0;
String sName( _rName.getToken(0,'/',nIndex) );
- SvLBoxEntry* pEntry = _pFirst;
+ SvTreeListEntry* pEntry = _pFirst;
while( pEntry )
{
if ( rTree.GetEntryText(pEntry) == sName )
@@ -115,7 +115,7 @@ namespace
}
return pReturn;
}
- SvLBoxEntry* lcl_findEntry(DBTreeListBox& rTree,const ::rtl::OUString& _rName,SvLBoxEntry* _pFirst)
+ SvTreeListEntry* lcl_findEntry(DBTreeListBox& rTree,const ::rtl::OUString& _rName,SvTreeListEntry* _pFirst)
{
sal_Int32 nIndex = 0;
::rtl::OUString sErase = _rName.getToken(0,'/',nIndex); // we don't want to have the "private:forms" part
@@ -286,7 +286,7 @@ void OAppDetailPageHelper::selectAll()
void OAppDetailPageHelper::sort(int _nPos,SvSortMode _eSortMode )
{
OSL_ENSURE(m_pLists[_nPos],"List can not be NULL! ->GPF");
- SvLBoxTreeList* pModel = m_pLists[_nPos]->GetModel();
+ SvTreeList* pModel = m_pLists[_nPos]->GetModel();
SvSortMode eOldSortMode = pModel->GetSortMode();
pModel->SetSortMode(_eSortMode);
if ( eOldSortMode != _eSortMode )
@@ -299,7 +299,7 @@ sal_Bool OAppDetailPageHelper::isSortUp() const
int nPos = getVisibleControlIndex();
if ( nPos < E_ELEMENT_TYPE_COUNT )
{
- SvLBoxTreeList* pModel = m_pLists[nPos]->GetModel();
+ SvTreeList* pModel = m_pLists[nPos]->GetModel();
eSortMode = pModel->GetSortMode();
}
return eSortMode == SortAscending;
@@ -327,7 +327,7 @@ void OAppDetailPageHelper::getSelectionElementNames( ::std::vector< ::rtl::OUStr
DBTreeListBox& rTree = *m_pLists[nPos];
sal_Int32 nCount = rTree.GetEntryCount();
_rNames.reserve(nCount);
- SvLBoxEntry* pEntry = rTree.FirstSelected();
+ SvTreeListEntry* pEntry = rTree.FirstSelected();
ElementType eType = getElementType();
while( pEntry )
{
@@ -339,7 +339,7 @@ void OAppDetailPageHelper::getSelectionElementNames( ::std::vector< ::rtl::OUStr
else
{
::rtl::OUString sName = rTree.GetEntryText(pEntry);
- SvLBoxEntry* pParent = rTree.GetParent(pEntry);
+ SvTreeListEntry* pParent = rTree.GetParent(pEntry);
while(pParent)
{
sName = rTree.GetEntryText(pParent) + ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/")) + sName;
@@ -379,7 +379,7 @@ void OAppDetailPageHelper::describeCurrentSelectionForType( const ElementType _e
::std::vector< NamedDatabaseObject > aSelected;
- SvLBoxEntry* pEntry = pList->FirstSelected();
+ SvTreeListEntry* pEntry = pList->FirstSelected();
while( pEntry )
{
NamedDatabaseObject aObject;
@@ -400,7 +400,7 @@ void OAppDetailPageHelper::describeCurrentSelectionForType( const ElementType _e
case E_REPORT:
{
::rtl::OUString sName = pList->GetEntryText(pEntry);
- SvLBoxEntry* pParent = pList->GetParent(pEntry);
+ SvTreeListEntry* pParent = pList->GetParent(pEntry);
while ( pParent )
{
::rtl::OUStringBuffer buffer;
@@ -448,14 +448,14 @@ void OAppDetailPageHelper::selectElements(const Sequence< ::rtl::OUString>& _aNa
const ::rtl::OUString* pEnd = pIter + _aNames.getLength();
for(;pIter != pEnd;++pIter)
{
- SvLBoxEntry* pEntry = rTree.GetEntryPosByName(*pIter);
+ SvTreeListEntry* pEntry = rTree.GetEntryPosByName(*pIter);
if ( pEntry )
rTree.Select(pEntry);
}
}
}
// -----------------------------------------------------------------------------
-::rtl::OUString OAppDetailPageHelper::getQualifiedName( SvLBoxEntry* _pEntry ) const
+::rtl::OUString OAppDetailPageHelper::getQualifiedName( SvTreeListEntry* _pEntry ) const
{
int nPos = getVisibleControlIndex();
::rtl::OUString sComposedName;
@@ -466,7 +466,7 @@ void OAppDetailPageHelper::selectElements(const Sequence< ::rtl::OUString>& _aNa
OSL_ENSURE(m_pLists[nPos],"Tables tree view is NULL! -> GPF");
DBTreeListBox& rTree = *m_pLists[nPos];
- SvLBoxEntry* pEntry = _pEntry;
+ SvTreeListEntry* pEntry = _pEntry;
if ( !pEntry )
pEntry = rTree.FirstSelected();
@@ -481,7 +481,7 @@ void OAppDetailPageHelper::selectElements(const Sequence< ::rtl::OUString>& _aNa
else
{
sComposedName = rTree.GetEntryText(pEntry);
- SvLBoxEntry* pParent = rTree.GetParent(pEntry);
+ SvTreeListEntry* pParent = rTree.GetParent(pEntry);
while(pParent)
{
sComposedName = rTree.GetEntryText(pParent) + ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/")) + sComposedName;
@@ -505,7 +505,7 @@ sal_Int32 OAppDetailPageHelper::getSelectionCount()
if ( nPos < E_ELEMENT_TYPE_COUNT )
{
DBTreeListBox& rTree = *m_pLists[nPos];
- SvLBoxEntry* pEntry = rTree.FirstSelected();
+ SvTreeListEntry* pEntry = rTree.FirstSelected();
while( pEntry )
{
++nCount;
@@ -553,7 +553,7 @@ void OAppDetailPageHelper::paste()
{
}
// -----------------------------------------------------------------------------
-bool OAppDetailPageHelper::isLeaf(SvLBoxEntry* _pEntry) const
+bool OAppDetailPageHelper::isLeaf(SvTreeListEntry* _pEntry) const
{
if ( !_pEntry )
return false;
@@ -577,7 +577,7 @@ sal_Bool OAppDetailPageHelper::isALeafSelected() const
if ( nPos < E_ELEMENT_TYPE_COUNT )
{
DBTreeListBox& rTree = *m_pLists[nPos];
- SvLBoxEntry* pEntry = rTree.FirstSelected( );
+ SvTreeListEntry* pEntry = rTree.FirstSelected( );
while( !bLeafSelected && pEntry )
{
bLeafSelected = isLeaf( pEntry );
@@ -587,9 +587,9 @@ sal_Bool OAppDetailPageHelper::isALeafSelected() const
return bLeafSelected;
}
// -----------------------------------------------------------------------------
-SvLBoxEntry* OAppDetailPageHelper::getEntry( const Point& _aPosPixel) const
+SvTreeListEntry* OAppDetailPageHelper::getEntry( const Point& _aPosPixel) const
{
- SvLBoxEntry* pReturn = NULL;
+ SvTreeListEntry* pReturn = NULL;
int nPos = getVisibleControlIndex();
if ( nPos < E_ELEMENT_TYPE_COUNT )
pReturn = m_pLists[nPos]->GetEntry( _aPosPixel,sal_True );
@@ -621,7 +621,7 @@ void OAppDetailPageHelper::createTablesPage(const Reference< XConnection>& _xCon
{
static_cast<OTableTreeListBox*>(m_pLists[E_TABLE])->UpdateTableList(_xConnection);
- SvLBoxEntry* pEntry = m_pLists[E_TABLE]->First();
+ SvTreeListEntry* pEntry = m_pLists[E_TABLE]->First();
if ( pEntry )
m_pLists[E_TABLE]->Expand(pEntry);
m_pLists[E_TABLE]->SelectAll(sal_False);
@@ -734,7 +734,7 @@ namespace
// -----------------------------------------------------------------------------
void OAppDetailPageHelper::fillNames( const Reference< XNameAccess >& _xContainer, const ElementType _eType,
- const sal_uInt16 _nImageId, SvLBoxEntry* _pParent )
+ const sal_uInt16 _nImageId, SvTreeListEntry* _pParent )
{
OSL_ENSURE(_xContainer.is(),"Data source is NULL! -> GPF");
OSL_ENSURE( ( _eType >= E_TABLE ) && ( _eType < E_ELEMENT_TYPE_COUNT ), "OAppDetailPageHelper::fillNames: invalid type!" );
@@ -753,7 +753,7 @@ void OAppDetailPageHelper::fillNames( const Reference< XNameAccess >& _xContaine
const ::rtl::OUString* pEnd = pIter + aSeq.getLength();
for(;pIter != pEnd;++pIter)
{
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
Reference<XNameAccess> xSubElements(_xContainer->getByName(*pIter),UNO_QUERY);
if ( xSubElements.is() )
{
@@ -834,7 +834,7 @@ void OAppDetailPageHelper::elementReplaced(ElementType _eType
if ( pTreeView )
{
::rtl::OUString sNewName = _rNewName;
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
switch( _eType )
{
case E_TABLE:
@@ -860,9 +860,9 @@ void OAppDetailPageHelper::elementReplaced(ElementType _eType
}
}
// -----------------------------------------------------------------------------
-SvLBoxEntry* OAppDetailPageHelper::elementAdded(ElementType _eType,const ::rtl::OUString& _rName, const Any& _rObject )
+SvTreeListEntry* OAppDetailPageHelper::elementAdded(ElementType _eType,const ::rtl::OUString& _rName, const Any& _rObject )
{
- SvLBoxEntry* pRet = NULL;
+ SvTreeListEntry* pRet = NULL;
DBTreeListBox* pTreeView = m_pLists[_eType];
if( _eType == E_TABLE && pTreeView )
{
@@ -871,7 +871,7 @@ SvLBoxEntry* OAppDetailPageHelper::elementAdded(ElementType _eType,const ::rtl::
else if ( pTreeView )
{
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
Reference<XChild> xChild(_rObject,UNO_QUERY);
if ( xChild.is() && E_QUERY != _eType )
{
@@ -918,7 +918,7 @@ void OAppDetailPageHelper::elementRemoved( ElementType _eType,const ::rtl::OUStr
case E_QUERY:
if ( pTreeView )
{
- SvLBoxEntry* pEntry = lcl_findEntry_impl(*pTreeView,_rName,pTreeView->First());
+ SvTreeListEntry* pEntry = lcl_findEntry_impl(*pTreeView,_rName,pTreeView->First());
if ( pEntry )
pTreeView->GetModel()->Remove(pEntry);
}
@@ -928,7 +928,7 @@ void OAppDetailPageHelper::elementRemoved( ElementType _eType,const ::rtl::OUStr
{
if ( pTreeView )
{
- SvLBoxEntry* pEntry = lcl_findEntry(*pTreeView,_rName,pTreeView->First());
+ SvTreeListEntry* pEntry = lcl_findEntry(*pTreeView,_rName,pTreeView->First());
if ( pEntry )
pTreeView->GetModel()->Remove(pEntry);
}
diff --git a/dbaccess/source/ui/app/AppDetailPageHelper.hxx b/dbaccess/source/ui/app/AppDetailPageHelper.hxx
index 8b34d8c4a6ff..ba3971f930d4 100644
--- a/dbaccess/source/ui/app/AppDetailPageHelper.hxx
+++ b/dbaccess/source/ui/app/AppDetailPageHelper.hxx
@@ -125,7 +125,7 @@ namespace dbaui
void fillNames( const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >& _xContainer,
const ElementType _eType,
const sal_uInt16 _nImageId,
- SvLBoxEntry* _pParent );
+ SvTreeListEntry* _pParent );
/** sets the detail page
@param _pWindow
@@ -250,7 +250,7 @@ namespace dbaui
@return
the qualified name
*/
- ::rtl::OUString getQualifiedName( SvLBoxEntry* _pEntry ) const;
+ ::rtl::OUString getQualifiedName( SvTreeListEntry* _pEntry ) const;
/// return the element of currently select entry
ElementType getElementType() const;
@@ -267,7 +267,7 @@ namespace dbaui
@return
<TRUE/> if the entry is a leaf, otherwise <FALSE/>
*/
- bool isLeaf(SvLBoxEntry* _pEntry) const;
+ bool isLeaf(SvTreeListEntry* _pEntry) const;
/** returns if one of the selected entries is a leaf
@return
@@ -275,7 +275,7 @@ namespace dbaui
*/
sal_Bool isALeafSelected() const;
- SvLBoxEntry* getEntry( const Point& _aPosPixel ) const;
+ SvTreeListEntry* getEntry( const Point& _aPosPixel ) const;
/// clears the detail pages
void clearPages();
@@ -293,7 +293,7 @@ namespace dbaui
@param _rxConn
If we insert a table, the connection must be set.
*/
- SvLBoxEntry* elementAdded(ElementType eType
+ SvTreeListEntry* elementAdded(ElementType eType
,const ::rtl::OUString& _rName
,const ::com::sun::star::uno::Any& _rObject );
diff --git a/dbaccess/source/ui/app/AppDetailView.cxx b/dbaccess/source/ui/app/AppDetailView.cxx
index 7ebc0993aa64..d3da7bbf5c0d 100644
--- a/dbaccess/source/ui/app/AppDetailView.cxx
+++ b/dbaccess/source/ui/app/AppDetailView.cxx
@@ -98,7 +98,7 @@ void OCreationList::Paint( const Rectangle& _rRect )
}
// -----------------------------------------------------------------------------
-void OCreationList::PreparePaint( SvLBoxEntry* _pEntry )
+void OCreationList::PreparePaint( SvTreeListEntry* _pEntry )
{
Wallpaper aEntryBackground( m_aOriginalBackgroundColor );
if ( _pEntry )
@@ -128,7 +128,7 @@ void OCreationList::PreparePaint( SvLBoxEntry* _pEntry )
// -----------------------------------------------------------------------------
void OCreationList::SelectSearchEntry( const void* _pEntry )
{
- SvLBoxEntry* pEntry = const_cast< SvLBoxEntry* >( static_cast< const SvLBoxEntry* >( _pEntry ) );
+ SvTreeListEntry* pEntry = const_cast< SvTreeListEntry* >( static_cast< const SvTreeListEntry* >( _pEntry ) );
OSL_ENSURE( pEntry, "OCreationList::SelectSearchEntry: invalid entry!" );
if ( pEntry )
@@ -141,7 +141,7 @@ void OCreationList::SelectSearchEntry( const void* _pEntry )
// -----------------------------------------------------------------------------
void OCreationList::ExecuteSearchEntry( const void* _pEntry ) const
{
- SvLBoxEntry* pEntry = const_cast< SvLBoxEntry* >( static_cast< const SvLBoxEntry* >( _pEntry ) );
+ SvTreeListEntry* pEntry = const_cast< SvTreeListEntry* >( static_cast< const SvTreeListEntry* >( _pEntry ) );
OSL_ENSURE( pEntry, "OCreationList::ExecuteSearchEntry: invalid entry!" );
OSL_ENSURE( pEntry == GetCurEntry(), "OCreationList::ExecuteSearchEntry: SelectSearchEntry should have been called before!" );
@@ -150,7 +150,7 @@ void OCreationList::ExecuteSearchEntry( const void* _pEntry ) const
}
// -----------------------------------------------------------------------------
-Rectangle OCreationList::GetFocusRect( SvLBoxEntry* _pEntry, long _nLine )
+Rectangle OCreationList::GetFocusRect( SvTreeListEntry* _pEntry, long _nLine )
{
Rectangle aRect = SvTreeListBox::GetFocusRect( _pEntry, _nLine );
aRect.Left() = 0;
@@ -220,7 +220,7 @@ void OCreationList::MouseMove( const MouseEvent& rMEvt )
}
else if ( !rMEvt.IsSynthetic() )
{
- SvLBoxEntry* pEntry = GetEntry( rMEvt.GetPosPixel() );
+ SvTreeListEntry* pEntry = GetEntry( rMEvt.GetPosPixel() );
if ( m_pMouseDownEntry )
{
@@ -253,7 +253,7 @@ void OCreationList::MouseMove( const MouseEvent& rMEvt )
// -----------------------------------------------------------------------------
void OCreationList::MouseButtonUp( const MouseEvent& rMEvt )
{
- SvLBoxEntry* pEntry = GetEntry( rMEvt.GetPosPixel() );
+ SvTreeListEntry* pEntry = GetEntry( rMEvt.GetPosPixel() );
bool bExecute = false;
// Was the mouse released over the active entry?
// (i.e. the entry which was under the mouse when the button went down)
@@ -278,7 +278,7 @@ void OCreationList::MouseButtonUp( const MouseEvent& rMEvt )
onSelected( pEntry );
}
// -----------------------------------------------------------------------------
-bool OCreationList::setCurrentEntryInvalidate( SvLBoxEntry* _pEntry )
+bool OCreationList::setCurrentEntryInvalidate( SvTreeListEntry* _pEntry )
{
if ( GetCurEntry() != _pEntry )
{
@@ -304,7 +304,7 @@ void OCreationList::updateHelpText()
m_rTaskWindow.setHelpText( nHelpTextId );
}
// -----------------------------------------------------------------------------
-void OCreationList::onSelected( SvLBoxEntry* _pEntry ) const
+void OCreationList::onSelected( SvTreeListEntry* _pEntry ) const
{
OSL_ENSURE( _pEntry, "OCreationList::onSelected: invalid entry!" );
URL aCommand;
@@ -319,15 +319,15 @@ void OCreationList::KeyInput( const KeyEvent& rKEvt )
{
if ( rCode.GetCode() == KEY_RETURN )
{
- SvLBoxEntry* pEntry = GetCurEntry() ? GetCurEntry() : FirstSelected();
+ SvTreeListEntry* pEntry = GetCurEntry() ? GetCurEntry() : FirstSelected();
if ( pEntry )
onSelected( pEntry );
return;
}
}
- SvLBoxEntry* pOldCurrent = GetCurEntry();
+ SvTreeListEntry* pOldCurrent = GetCurEntry();
SvTreeListBox::KeyInput(rKEvt);
- SvLBoxEntry* pNewCurrent = GetCurEntry();
+ SvTreeListEntry* pNewCurrent = GetCurEntry();
if ( pOldCurrent != pNewCurrent )
{
@@ -439,7 +439,7 @@ void OTasksWindow::setHelpText(sal_uInt16 _nId)
IMPL_LINK(OTasksWindow, OnEntrySelectHdl, SvTreeListBox*, /*_pTreeBox*/)
{
DBG_CHKTHIS(OTasksWindow,NULL);
- SvLBoxEntry* pEntry = m_aCreation.GetHdlEntry();
+ SvTreeListEntry* pEntry = m_aCreation.GetHdlEntry();
if ( pEntry )
m_aHelpText.SetText( ModuleRes( reinterpret_cast< TaskEntry* >( pEntry->GetUserData() )->nHelpID ) );
return 1L;
@@ -498,7 +498,7 @@ void OTasksWindow::fillTaskEntryList( const TaskEntryList& _rList )
for ( TaskEntryList::const_iterator pTask = _rList.begin(); pTask != aEnd; ++pTask, ++pImages )
{
- SvLBoxEntry* pEntry = m_aCreation.InsertEntry( pTask->sTitle );
+ SvTreeListEntry* pEntry = m_aCreation.InsertEntry( pTask->sTitle );
pEntry->SetUserData( reinterpret_cast< void* >( new TaskEntry( *pTask ) ) );
Image aImage = Image( *pImages );
@@ -523,7 +523,7 @@ void OTasksWindow::Clear()
{
DBG_CHKTHIS(OTasksWindow,NULL);
m_aCreation.resetLastActive();
- SvLBoxEntry* pEntry = m_aCreation.First();
+ SvTreeListEntry* pEntry = m_aCreation.First();
while ( pEntry )
{
delete reinterpret_cast< TaskEntry* >( pEntry->GetUserData() );
@@ -764,13 +764,13 @@ void OApplicationDetailView::impl_fillTaskPaneData( ElementType _eType, TaskPane
}
// -----------------------------------------------------------------------------
-::rtl::OUString OApplicationDetailView::getQualifiedName( SvLBoxEntry* _pEntry ) const
+::rtl::OUString OApplicationDetailView::getQualifiedName( SvTreeListEntry* _pEntry ) const
{
DBG_CHKTHIS(OApplicationDetailView,NULL);
return m_pControlHelper->getQualifiedName( _pEntry );
}
// -----------------------------------------------------------------------------
-sal_Bool OApplicationDetailView::isLeaf(SvLBoxEntry* _pEntry) const
+sal_Bool OApplicationDetailView::isLeaf(SvTreeListEntry* _pEntry) const
{
DBG_CHKTHIS(OApplicationDetailView,NULL);
return m_pControlHelper->isLeaf(_pEntry);
@@ -857,7 +857,7 @@ void OApplicationDetailView::selectElements(const Sequence< ::rtl::OUString>& _a
m_pControlHelper->selectElements( _aNames );
}
// -----------------------------------------------------------------------------
-SvLBoxEntry* OApplicationDetailView::getEntry( const Point& _aPoint ) const
+SvTreeListEntry* OApplicationDetailView::getEntry( const Point& _aPoint ) const
{
DBG_CHKTHIS(OApplicationDetailView,NULL);
return m_pControlHelper->getEntry(_aPoint);
@@ -882,7 +882,7 @@ void OApplicationDetailView::paste()
m_pControlHelper->paste();
}
// -----------------------------------------------------------------------------
-SvLBoxEntry* OApplicationDetailView::elementAdded(ElementType _eType,const ::rtl::OUString& _rName, const Any& _rObject )
+SvTreeListEntry* OApplicationDetailView::elementAdded(ElementType _eType,const ::rtl::OUString& _rName, const Any& _rObject )
{
DBG_CHKTHIS(OApplicationDetailView,NULL);
return m_pControlHelper->elementAdded(_eType,_rName, _rObject );
diff --git a/dbaccess/source/ui/app/AppDetailView.hxx b/dbaccess/source/ui/app/AppDetailView.hxx
index 220b31f10f2a..f8bb55627901 100644
--- a/dbaccess/source/ui/app/AppDetailView.hxx
+++ b/dbaccess/source/ui/app/AppDetailView.hxx
@@ -35,7 +35,7 @@
#include <vector>
-class SvLBoxEntry;
+class SvTreeListEntry;
namespace dbaui
{
@@ -49,8 +49,8 @@ namespace dbaui
OTasksWindow& m_rTaskWindow;
// members related to drawing the currently hovered/selected entry
- SvLBoxEntry* m_pMouseDownEntry;
- SvLBoxEntry* m_pLastActiveEntry;
+ SvTreeListEntry* m_pMouseDownEntry;
+ SvTreeListEntry* m_pLastActiveEntry;
Color m_aOriginalBackgroundColor;
Font m_aOriginalFont;
@@ -71,8 +71,8 @@ namespace dbaui
void updateHelpText();
protected:
- virtual void PreparePaint( SvLBoxEntry* _pEntry );
- virtual Rectangle GetFocusRect( SvLBoxEntry* _pEntry, long _nLine );
+ virtual void PreparePaint( SvTreeListEntry* _pEntry );
+ virtual Rectangle GetFocusRect( SvTreeListEntry* _pEntry, long _nLine );
virtual void ModelHasCleared();
// IMnemonicEntryList
@@ -80,11 +80,11 @@ namespace dbaui
virtual void ExecuteSearchEntry( const void* _pEntry ) const;
private:
- void onSelected( SvLBoxEntry* _pEntry ) const;
+ void onSelected( SvTreeListEntry* _pEntry ) const;
/** sets a new current entry, and invalidates the old and the new one, if necessary
@return <TRUE/> if and only if the "current entry" changed
*/
- bool setCurrentEntryInvalidate( SvLBoxEntry* _pEntry );
+ bool setCurrentEntryInvalidate( SvTreeListEntry* _pEntry );
};
struct TaskEntry
@@ -206,7 +206,7 @@ namespace dbaui
@return
the qualified name
*/
- ::rtl::OUString getQualifiedName( SvLBoxEntry* _pEntry ) const;
+ ::rtl::OUString getQualifiedName( SvTreeListEntry* _pEntry ) const;
/** returns if an entry is a leaf
@param _pEntry
@@ -214,7 +214,7 @@ namespace dbaui
@return
<TRUE/> if the entry is a leaf, otherwise <FALSE/>
*/
- sal_Bool isLeaf(SvLBoxEntry* _pEntry) const;
+ sal_Bool isLeaf(SvTreeListEntry* _pEntry) const;
/** returns if one of the selected entries is a leaf
@return
@@ -289,7 +289,7 @@ namespace dbaui
@param _rxConn
If we insert a table, the connection must be set.
*/
- SvLBoxEntry* elementAdded(ElementType eType
+ SvTreeListEntry* elementAdded(ElementType eType
,const ::rtl::OUString& _rName
,const ::com::sun::star::uno::Any& _rObject );
@@ -352,7 +352,7 @@ namespace dbaui
const ::rtl::OUString& _sName,
sal_Bool _bTable);
- SvLBoxEntry* getEntry( const Point& _aPoint ) const;
+ SvTreeListEntry* getEntry( const Point& _aPoint ) const;
Window* getTreeWindow() const;
private:
diff --git a/dbaccess/source/ui/app/AppView.cxx b/dbaccess/source/ui/app/AppView.cxx
index 69658324ed40..3e3469d7ce11 100644
--- a/dbaccess/source/ui/app/AppView.cxx
+++ b/dbaccess/source/ui/app/AppView.cxx
@@ -362,13 +362,13 @@ void OApplicationView::paste()
pTest->paste();
}
// -----------------------------------------------------------------------------
-::rtl::OUString OApplicationView::getQualifiedName( SvLBoxEntry* _pEntry ) const
+::rtl::OUString OApplicationView::getQualifiedName( SvTreeListEntry* _pEntry ) const
{
OSL_ENSURE(m_pWin && getDetailView(),"Detail view is NULL! -> GPF");
return getDetailView()->getQualifiedName( _pEntry );
}
// -----------------------------------------------------------------------------
-sal_Bool OApplicationView::isLeaf(SvLBoxEntry* _pEntry) const
+sal_Bool OApplicationView::isLeaf(SvTreeListEntry* _pEntry) const
{
OSL_ENSURE(m_pWin && getDetailView(),"Detail view is NULL! -> GPF");
return getDetailView()->isLeaf(_pEntry);
@@ -452,7 +452,7 @@ void OApplicationView::selectElements(const Sequence< ::rtl::OUString>& _aNames)
getDetailView()->selectElements( _aNames );
}
// -----------------------------------------------------------------------------
-SvLBoxEntry* OApplicationView::elementAdded(ElementType eType,const ::rtl::OUString& _rName, const Any& _rObject )
+SvTreeListEntry* OApplicationView::elementAdded(ElementType eType,const ::rtl::OUString& _rName, const Any& _rObject )
{
OSL_ENSURE(m_pWin && getDetailView(),"Detail view is NULL! -> GPF");
return getDetailView()->elementAdded(eType,_rName,_rObject);
@@ -486,7 +486,7 @@ void OApplicationView::selectContainer(ElementType _eType)
getPanel()->selectContainer(_eType);
}
// -----------------------------------------------------------------------------
-SvLBoxEntry* OApplicationView::getEntry( const Point& _aPosPixel ) const
+SvTreeListEntry* OApplicationView::getEntry( const Point& _aPosPixel ) const
{
OSL_ENSURE(m_pWin && getDetailView(),"Detail view is NULL! -> GPF");
return getDetailView()->getEntry(_aPosPixel);
diff --git a/dbaccess/source/ui/app/AppView.hxx b/dbaccess/source/ui/app/AppView.hxx
index f9d0940d0252..ab2c3ff50452 100644
--- a/dbaccess/source/ui/app/AppView.hxx
+++ b/dbaccess/source/ui/app/AppView.hxx
@@ -32,7 +32,7 @@
namespace com{ namespace sun { namespace star { namespace beans { class XPropertySet; } } } }
class Control;
-class SvLBoxEntry;
+class SvTreeListEntry;
class MnemonicGenerator;
namespace dbaui
@@ -141,7 +141,7 @@ namespace dbaui
@return
the qualified name
*/
- ::rtl::OUString getQualifiedName( SvLBoxEntry* _pEntry ) const;
+ ::rtl::OUString getQualifiedName( SvTreeListEntry* _pEntry ) const;
/** returns if an entry is a leaf
@param _pEntry
@@ -149,7 +149,7 @@ namespace dbaui
@return
<TRUE/> if the entry is a leaf, otherwise <FALSE/>
*/
- sal_Bool isLeaf(SvLBoxEntry* _pEntry) const;
+ sal_Bool isLeaf(SvTreeListEntry* _pEntry) const;
/** returns if one of the selected entries is a leaf
@return
@@ -224,7 +224,7 @@ namespace dbaui
@param _rxConn
If we insert a table, the connection must be set.
*/
- SvLBoxEntry* elementAdded(ElementType _eType
+ SvTreeListEntry* elementAdded(ElementType _eType
,const ::rtl::OUString& _rName
,const ::com::sun::star::uno::Any& _rObject );
@@ -296,7 +296,7 @@ namespace dbaui
const ::rtl::OUString& _sName,
sal_Bool _bTable);
- SvLBoxEntry* getEntry( const Point& _aPosPixel ) const;
+ SvTreeListEntry* getEntry( const Point& _aPosPixel ) const;
};
}
#endif // DBAUI_APPVIEW_HXX
diff --git a/dbaccess/source/ui/browser/brwctrlr.cxx b/dbaccess/source/ui/browser/brwctrlr.cxx
index 460b09354860..8fec4ff329c1 100644
--- a/dbaccess/source/ui/browser/brwctrlr.cxx
+++ b/dbaccess/source/ui/browser/brwctrlr.cxx
@@ -1923,7 +1923,7 @@ void SbaXDataBrowserController::ExecuteFilterSortCrit(sal_Bool bFilter)
Reference< XConnection> xCon(xFormSet->getPropertyValue(PROPERTY_ACTIVE_CONNECTION),UNO_QUERY);
if(bFilter)
{
- DlgFilterCrit aDlg( getBrowserView(), getORB(), xCon, xParser, xSup->getColumns() );
+ DlgFilterCrit aDlg( getBrowserView(), comphelper::getComponentContext(getORB()), xCon, xParser, xSup->getColumns() );
String aFilter;
if ( !aDlg.Execute() )
return; // if so we don't need to update the grid
diff --git a/dbaccess/source/ui/browser/dbtreeview.cxx b/dbaccess/source/ui/browser/dbtreeview.cxx
index 6f26f6c063f3..91ee108c47c7 100644
--- a/dbaccess/source/ui/browser/dbtreeview.cxx
+++ b/dbaccess/source/ui/browser/dbtreeview.cxx
@@ -85,7 +85,7 @@ void DBTreeView::Resize()
m_pTreeListBox->SetPosSizePixel(Point(0,0),GetOutputSizePixel());
}
// -------------------------------------------------------------------------
-void DBTreeView::setModel(SvLBoxTreeList* _pTreeModel)
+void DBTreeView::setModel(SvTreeList* _pTreeModel)
{
if (_pTreeModel)
_pTreeModel->InsertView(m_pTreeListBox);
diff --git a/dbaccess/source/ui/browser/dbtreeview.hxx b/dbaccess/source/ui/browser/dbtreeview.hxx
index dd6af234a43a..c54cf39ae8da 100644
--- a/dbaccess/source/ui/browser/dbtreeview.hxx
+++ b/dbaccess/source/ui/browser/dbtreeview.hxx
@@ -24,7 +24,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-class SvLBoxTreeList;
+class SvTreeList;
namespace dbaui
{
class DBTreeListBox;
@@ -47,7 +47,7 @@ namespace dbaui
~DBTreeView();
/** sets a handler which is called when an list box entry is to be expanded.
- <p>When calling the link, the parameter is an SvLBoxEntry marking the entry to be expanded.
+ <p>When calling the link, the parameter is an SvTreeListEntry marking the entry to be expanded.
</p>
*/
void SetPreExpandHandler(const Link& _rHdl);
@@ -56,7 +56,7 @@ namespace dbaui
void setCopyHandler(const Link& _rHdl);
- void setModel(SvLBoxTreeList* _pTreeModel);
+ void setModel(SvTreeList* _pTreeModel);
void setSelChangeHdl(const Link& _rHdl);
DBTreeListBox& getListBox() const { return *m_pTreeListBox; }
diff --git a/dbaccess/source/ui/browser/dsEntriesNoExp.cxx b/dbaccess/source/ui/browser/dsEntriesNoExp.cxx
index dcf9a2034430..e425c557dfdc 100644
--- a/dbaccess/source/ui/browser/dsEntriesNoExp.cxx
+++ b/dbaccess/source/ui/browser/dsEntriesNoExp.cxx
@@ -37,7 +37,7 @@ namespace dbaui
{
// .........................................................................
// -----------------------------------------------------------------------------
-SbaTableQueryBrowser::EntryType SbaTableQueryBrowser::getChildType( SvLBoxEntry* _pEntry ) const
+SbaTableQueryBrowser::EntryType SbaTableQueryBrowser::getChildType( SvTreeListEntry* _pEntry ) const
{
OSL_ENSURE(isContainer(_pEntry), "SbaTableQueryBrowser::getChildType: invalid entry!");
switch (getEntryType(_pEntry))
@@ -53,21 +53,21 @@ SbaTableQueryBrowser::EntryType SbaTableQueryBrowser::getChildType( SvLBoxEntry*
}
// -----------------------------------------------------------------------------
-String SbaTableQueryBrowser::GetEntryText( SvLBoxEntry* _pEntry ) const
+String SbaTableQueryBrowser::GetEntryText( SvTreeListEntry* _pEntry ) const
{
return m_pTreeView->getListBox().GetEntryText(_pEntry);
}
// -----------------------------------------------------------------------------
-SbaTableQueryBrowser::EntryType SbaTableQueryBrowser::getEntryType( SvLBoxEntry* _pEntry ) const
+SbaTableQueryBrowser::EntryType SbaTableQueryBrowser::getEntryType( const SvTreeListEntry* _pEntry ) const
{
if (!_pEntry)
return etUnknown;
- SvLBoxEntry* pRootEntry = m_pTreeView->getListBox().GetRootLevelParent(_pEntry);
- SvLBoxEntry* pEntryParent = m_pTreeView->getListBox().GetParent(_pEntry);
- SvLBoxEntry* pTables = m_pTreeView->getListBox().GetEntry(pRootEntry, CONTAINER_TABLES);
- SvLBoxEntry* pQueries = m_pTreeView->getListBox().GetEntry(pRootEntry, CONTAINER_QUERIES);
+ SvTreeListEntry* pRootEntry = m_pTreeView->getListBox().GetRootLevelParent(const_cast<SvTreeListEntry*>(_pEntry));
+ SvTreeListEntry* pEntryParent = m_pTreeView->getListBox().GetParent(const_cast<SvTreeListEntry*>(_pEntry));
+ SvTreeListEntry* pTables = m_pTreeView->getListBox().GetEntry(pRootEntry, CONTAINER_TABLES);
+ SvTreeListEntry* pQueries = m_pTreeView->getListBox().GetEntry(pRootEntry, CONTAINER_QUERIES);
#ifdef DBG_UTIL
String sTest;
@@ -105,7 +105,7 @@ SbaTableQueryBrowser::EntryType SbaTableQueryBrowser::getEntryType( SvLBoxEntry*
return etQueryContainer;
}
//------------------------------------------------------------------------------
-void SbaTableQueryBrowser::select(SvLBoxEntry* _pEntry, sal_Bool _bSelect)
+void SbaTableQueryBrowser::select(SvTreeListEntry* _pEntry, sal_Bool _bSelect)
{
SvLBoxItem* pTextItem = _pEntry ? _pEntry->GetFirstItem(SV_ITEM_ID_BOLDLBSTRING) : NULL;
if (pTextItem)
@@ -119,7 +119,7 @@ void SbaTableQueryBrowser::select(SvLBoxEntry* _pEntry, sal_Bool _bSelect)
}
//------------------------------------------------------------------------------
-void SbaTableQueryBrowser::selectPath(SvLBoxEntry* _pEntry, sal_Bool _bSelect)
+void SbaTableQueryBrowser::selectPath(SvTreeListEntry* _pEntry, sal_Bool _bSelect)
{
while (_pEntry)
{
@@ -128,7 +128,7 @@ void SbaTableQueryBrowser::selectPath(SvLBoxEntry* _pEntry, sal_Bool _bSelect)
}
}
//------------------------------------------------------------------------------
-sal_Bool SbaTableQueryBrowser::isSelected(SvLBoxEntry* _pEntry) const
+sal_Bool SbaTableQueryBrowser::isSelected(SvTreeListEntry* _pEntry) const
{
SvLBoxItem* pTextItem = _pEntry ? _pEntry->GetFirstItem(SV_ITEM_ID_BOLDLBSTRING) : NULL;
if (pTextItem)
@@ -199,7 +199,7 @@ void SbaTableQueryBrowser::notifyHiContrastChanged()
if ( m_pTreeView )
{
// change all bitmap entries
- SvLBoxEntry* pEntryLoop = m_pTreeModel->First();
+ SvTreeListEntry* pEntryLoop = m_pTreeModel->First();
while ( pEntryLoop )
{
DBTreeListUserData* pData = static_cast<DBTreeListUserData*>(pEntryLoop->GetUserData());
diff --git a/dbaccess/source/ui/browser/dsbrowserDnD.cxx b/dbaccess/source/ui/browser/dsbrowserDnD.cxx
index 8f6f446c8ec0..94472f0f515a 100644
--- a/dbaccess/source/ui/browser/dsbrowserDnD.cxx
+++ b/dbaccess/source/ui/browser/dsbrowserDnD.cxx
@@ -63,7 +63,7 @@ namespace dbaui
using namespace ::svx;
// -----------------------------------------------------------------------------
- TransferableHelper* SbaTableQueryBrowser::implCopyObject( SvLBoxEntry* _pApplyTo, sal_Int32 _nCommandType, sal_Bool _bAllowConnection )
+ TransferableHelper* SbaTableQueryBrowser::implCopyObject( SvTreeListEntry* _pApplyTo, sal_Int32 _nCommandType, sal_Bool _bAllowConnection )
{
try
{
@@ -98,7 +98,7 @@ namespace dbaui
sal_Int8 SbaTableQueryBrowser::queryDrop( const AcceptDropEvent& _rEvt, const DataFlavorExVector& _rFlavors )
{
// check if we're a table or query container
- SvLBoxEntry* pHitEntry = m_pTreeView->getListBox().GetEntry( _rEvt.maPosPixel );
+ SvTreeListEntry* pHitEntry = m_pTreeView->getListBox().GetEntry( _rEvt.maPosPixel );
if ( pHitEntry ) // no drop if no entry was hit ....
{
@@ -120,7 +120,7 @@ namespace dbaui
// -----------------------------------------------------------------------------
sal_Int8 SbaTableQueryBrowser::executeDrop( const ExecuteDropEvent& _rEvt )
{
- SvLBoxEntry* pHitEntry = m_pTreeView->getListBox().GetEntry( _rEvt.maPosPixel );
+ SvTreeListEntry* pHitEntry = m_pTreeView->getListBox().GetEntry( _rEvt.maPosPixel );
EntryType eEntryType = getEntryType( pHitEntry );
if (!isContainer(eEntryType))
{
@@ -182,7 +182,7 @@ namespace dbaui
{
// get the affected list entry
// ensure that the entry which the user clicked at is selected
- SvLBoxEntry* pHitEntry = m_pTreeView->getListBox().GetEntry( _rPosPixel );
+ SvTreeListEntry* pHitEntry = m_pTreeView->getListBox().GetEntry( _rPosPixel );
if (!pHitEntry)
// no drag of no entry was hit ....
return sal_False;
@@ -203,19 +203,19 @@ namespace dbaui
// -----------------------------------------------------------------------------
IMPL_LINK(SbaTableQueryBrowser, OnCopyEntry, void*, /*NOTINTERESIN*/)
{
- SvLBoxEntry* pSelected = m_pTreeView->getListBox().FirstSelected();
+ SvTreeListEntry* pSelected = m_pTreeView->getListBox().FirstSelected();
if( isEntryCopyAllowed( pSelected ) )
copyEntry( pSelected );
return 0;
}
// -----------------------------------------------------------------------------
- sal_Bool SbaTableQueryBrowser::isEntryCopyAllowed(SvLBoxEntry* _pEntry) const
+ sal_Bool SbaTableQueryBrowser::isEntryCopyAllowed(SvTreeListEntry* _pEntry) const
{
EntryType eType = getEntryType(_pEntry);
return ( eType == etTableOrView || eType == etQuery );
}
// -----------------------------------------------------------------------------
- void SbaTableQueryBrowser::copyEntry(SvLBoxEntry* _pEntry)
+ void SbaTableQueryBrowser::copyEntry(SvTreeListEntry* _pEntry)
{
TransferableHelper* pTransfer = NULL;
Reference< XTransferable> aEnsureDelete;
@@ -237,7 +237,7 @@ namespace dbaui
SharedConnection xDestConnection;
if ( ensureConnection( m_aAsyncDrop.pDroppedAt, xDestConnection ) && xDestConnection.is() )
{
- SvLBoxEntry* pDataSourceEntry = m_pTreeView->getListBox().GetRootLevelParent(m_aAsyncDrop.pDroppedAt);
+ SvTreeListEntry* pDataSourceEntry = m_pTreeView->getListBox().GetRootLevelParent(m_aAsyncDrop.pDroppedAt);
m_aTableCopyHelper.asyncCopyTagTable( m_aAsyncDrop, getDataSourceAcessor( pDataSourceEntry ), xDestConnection );
}
}
@@ -252,7 +252,7 @@ namespace dbaui
if (m_pTreeModel)
{
// clear the user data of the tree model
- SvLBoxEntry* pEntryLoop = m_pTreeModel->First();
+ SvTreeListEntry* pEntryLoop = m_pTreeModel->First();
while (pEntryLoop)
{
DBTreeListUserData* pData = static_cast<DBTreeListUserData*>(pEntryLoop->GetUserData());
diff --git a/dbaccess/source/ui/browser/genericcontroller.cxx b/dbaccess/source/ui/browser/genericcontroller.cxx
index 3131ad131e3c..58345e6cf9d2 100644
--- a/dbaccess/source/ui/browser/genericcontroller.cxx
+++ b/dbaccess/source/ui/browser/genericcontroller.cxx
@@ -1383,7 +1383,7 @@ Reference< XTitle > OGenericUnoController::impl_getTitleHelper_throw()
Reference< XUntitledNumbers > xUntitledProvider(getPrivateModel(), UNO_QUERY );
Reference< XController > xThis(static_cast< XController* >(this), UNO_QUERY_THROW);
- ::framework::TitleHelper* pHelper = new ::framework::TitleHelper(m_xServiceFactory);
+ ::framework::TitleHelper* pHelper = new ::framework::TitleHelper( comphelper::getComponentContext(m_xServiceFactory) );
m_xTitleHelper.set( static_cast< ::cppu::OWeakObject* >(pHelper), UNO_QUERY_THROW);
pHelper->setOwner (xThis );
diff --git a/dbaccess/source/ui/browser/unodatbr.cxx b/dbaccess/source/ui/browser/unodatbr.cxx
index 5e0b0075e98f..a0484e56a0b5 100644
--- a/dbaccess/source/ui/browser/unodatbr.cxx
+++ b/dbaccess/source/ui/browser/unodatbr.cxx
@@ -321,7 +321,7 @@ void SAL_CALL SbaTableQueryBrowser::disposing()
// clear the tree model
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
- ::std::auto_ptr<SvLBoxTreeList> aTemp(m_pTreeModel);
+ ::std::auto_ptr<SvTreeList> aTemp(m_pTreeModel);
SAL_WNODEPRECATED_DECLARATIONS_POP
m_pTreeModel = NULL;
}
@@ -393,7 +393,7 @@ sal_Bool SbaTableQueryBrowser::Construct(Window* pParent)
getBrowserView()->setTreeView(m_pTreeView);
// fill view with data
- m_pTreeModel = new SvLBoxTreeList;
+ m_pTreeModel = new SvTreeList;
m_pTreeModel->SetSortMode(SortAscending);
m_pTreeModel->SetCompareHdl(LINK(this, SbaTableQueryBrowser, OnTreeEntryCompare));
m_pTreeView->setModel(m_pTreeModel);
@@ -857,7 +857,7 @@ sal_Bool SbaTableQueryBrowser::InitializeGridModel(const Reference< ::com::sun::
return sal_True;
}
// -----------------------------------------------------------------------------
-Reference<XPropertySet> getColumnHelper(SvLBoxEntry* _pCurrentlyDisplayed,const Reference<XPropertySet>& _rxSource)
+Reference<XPropertySet> getColumnHelper(SvTreeListEntry* _pCurrentlyDisplayed,const Reference<XPropertySet>& _rxSource)
{
Reference<XPropertySet> xRet;
if(_pCurrentlyDisplayed)
@@ -1075,9 +1075,9 @@ void SAL_CALL SbaTableQueryBrowser::statusChanged( const FeatureStateEvent& _rEv
// -------------------------------------------------------------------------
void SbaTableQueryBrowser::checkDocumentDataSource()
{
- SvLBoxEntry* pDataSourceEntry = NULL;
- SvLBoxEntry* pContainerEntry = NULL;
- SvLBoxEntry* pObjectEntry = getObjectEntry( m_aDocumentDataSource, &pDataSourceEntry, &pContainerEntry, sal_False );
+ SvTreeListEntry* pDataSourceEntry = NULL;
+ SvTreeListEntry* pContainerEntry = NULL;
+ SvTreeListEntry* pObjectEntry = getObjectEntry( m_aDocumentDataSource, &pDataSourceEntry, &pContainerEntry, sal_False );
sal_Bool bKnownDocDataSource = (NULL != pObjectEntry);
if (!bKnownDocDataSource)
{
@@ -1149,10 +1149,10 @@ namespace
virtual ~FilterByEntryDataId() {}
- virtual bool includeEntry( SvLBoxEntry* _pEntry ) const;
+ virtual bool includeEntry( SvTreeListEntry* _pEntry ) const;
};
- bool FilterByEntryDataId::includeEntry( SvLBoxEntry* _pEntry ) const
+ bool FilterByEntryDataId::includeEntry( SvTreeListEntry* _pEntry ) const
{
DBTreeListUserData* pData = static_cast< DBTreeListUserData* >( _pEntry->GetUserData() );
return ( !pData || ( pData->sAccessor == sId ) );
@@ -1160,7 +1160,7 @@ namespace
}
// -------------------------------------------------------------------------
-String SbaTableQueryBrowser::getDataSourceAcessor( SvLBoxEntry* _pDataSourceEntry ) const
+String SbaTableQueryBrowser::getDataSourceAcessor( SvTreeListEntry* _pDataSourceEntry ) const
{
OSL_ENSURE( _pDataSourceEntry, "SbaTableQueryBrowser::getDataSourceAcessor: invalid entry!" );
@@ -1171,8 +1171,8 @@ String SbaTableQueryBrowser::getDataSourceAcessor( SvLBoxEntry* _pDataSourceEntr
}
// -------------------------------------------------------------------------
-SvLBoxEntry* SbaTableQueryBrowser::getObjectEntry(const ::rtl::OUString& _rDataSource, const ::rtl::OUString& _rCommand, sal_Int32 _nCommandType,
- SvLBoxEntry** _ppDataSourceEntry, SvLBoxEntry** _ppContainerEntry, sal_Bool _bExpandAncestors,
+SvTreeListEntry* SbaTableQueryBrowser::getObjectEntry(const ::rtl::OUString& _rDataSource, const ::rtl::OUString& _rCommand, sal_Int32 _nCommandType,
+ SvTreeListEntry** _ppDataSourceEntry, SvTreeListEntry** _ppContainerEntry, sal_Bool _bExpandAncestors,
const SharedConnection& _rxConnection )
{
if (_ppDataSourceEntry)
@@ -1180,7 +1180,7 @@ SvLBoxEntry* SbaTableQueryBrowser::getObjectEntry(const ::rtl::OUString& _rDataS
if (_ppContainerEntry)
*_ppContainerEntry = NULL;
- SvLBoxEntry* pObject = NULL;
+ SvTreeListEntry* pObject = NULL;
if ( m_pTreeView )
{
// look for the data source entry
@@ -1190,7 +1190,7 @@ SvLBoxEntry* SbaTableQueryBrowser::getObjectEntry(const ::rtl::OUString& _rDataS
// #i33699#
FilterByEntryDataId aFilter( sDataSourceId );
- SvLBoxEntry* pDataSource = m_pTreeView->getListBox().GetEntryPosByName( sDisplayName, NULL, &aFilter );
+ SvTreeListEntry* pDataSource = m_pTreeView->getListBox().GetEntryPosByName( sDisplayName, NULL, &aFilter );
if ( !pDataSource ) // check if the data source name is a file location
{
if ( bIsDataSourceURL )
@@ -1213,7 +1213,7 @@ SvLBoxEntry* SbaTableQueryBrowser::getObjectEntry(const ::rtl::OUString& _rDataS
m_pTreeView->getListBox().Expand(pDataSource);
// look for the object container
- SvLBoxEntry* pCommandType = NULL;
+ SvTreeListEntry* pCommandType = NULL;
switch (_nCommandType)
{
case CommandType::TABLE:
@@ -1284,8 +1284,8 @@ SvLBoxEntry* SbaTableQueryBrowser::getObjectEntry(const ::rtl::OUString& _rDataS
}
// -------------------------------------------------------------------------
-SvLBoxEntry* SbaTableQueryBrowser::getObjectEntry(const ::svx::ODataAccessDescriptor& _rDescriptor,
- SvLBoxEntry** _ppDataSourceEntry, SvLBoxEntry** _ppContainerEntry,
+SvTreeListEntry* SbaTableQueryBrowser::getObjectEntry(const ::svx::ODataAccessDescriptor& _rDescriptor,
+ SvTreeListEntry** _ppDataSourceEntry, SvTreeListEntry** _ppContainerEntry,
sal_Bool _bExpandAncestors)
{
// extract the props from the descriptor
@@ -1425,7 +1425,7 @@ void SAL_CALL SbaTableQueryBrowser::disposing( const EventObject& _rSource ) thr
{ // our connection is in dispose so we have to find the entry equal with this connection
// and close it what means to collapse the entry
// get the top-level representing the removed data source
- SvLBoxEntry* pDSLoop = m_pTreeView->getListBox().FirstChild(NULL);
+ SvTreeListEntry* pDSLoop = m_pTreeView->getListBox().FirstChild(NULL);
while (pDSLoop)
{
DBTreeListUserData* pData = static_cast<DBTreeListUserData*>(pDSLoop->GetUserData());
@@ -1733,12 +1733,12 @@ FeatureState SbaTableQueryBrowser::GetState(sal_uInt16 nId) const
case ID_TREE_CLOSE_CONN:
case ID_TREE_EDIT_DATABASE:
{
- SvLBoxEntry* pCurrentEntry( m_pTreeView->getListBox().GetCurEntry() );
+ SvTreeListEntry* pCurrentEntry( m_pTreeView->getListBox().GetCurEntry() );
EntryType eType = getEntryType( pCurrentEntry );
if ( eType == etUnknown )
return aReturn;
- SvLBoxEntry* pDataSourceEntry = m_pTreeView->getListBox().GetRootLevelParent( pCurrentEntry );
+ SvTreeListEntry* pDataSourceEntry = m_pTreeView->getListBox().GetRootLevelParent( pCurrentEntry );
DBTreeListUserData* pDSData
= pDataSourceEntry
? static_cast< DBTreeListUserData* >( pDataSourceEntry->GetUserData() )
@@ -1949,7 +1949,7 @@ void SbaTableQueryBrowser::Execute(sal_uInt16 nId, const Sequence< PropertyValue
// nothing to do
break;
- SvLBoxEntry* pSelected = m_pCurrentlyDisplayed;
+ SvTreeListEntry* pSelected = m_pCurrentlyDisplayed;
// unload
unloadAndCleanup( sal_False );
@@ -2115,7 +2115,7 @@ void SbaTableQueryBrowser::implAddDatasource(const String& _rDbName, Image& _rDb
String sDSDisplayName, sDataSourceId;
getDataSourceDisplayName_isURL( _rDbName, sDSDisplayName, sDataSourceId );
- SvLBoxEntry* pDatasourceEntry = m_pTreeView->getListBox().InsertEntry( sDSDisplayName, _rDbImage, _rDbImage, NULL, sal_False );
+ SvTreeListEntry* pDatasourceEntry = m_pTreeView->getListBox().InsertEntry( sDSDisplayName, _rDbImage, _rDbImage, NULL, sal_False );
DBTreeListUserData* pDSData = new DBTreeListUserData;
pDSData->eType = etDatasource;
pDSData->sAccessor = sDataSourceId;
@@ -2161,7 +2161,7 @@ void SbaTableQueryBrowser::initializeTreeModel()
}
// -------------------------------------------------------------------------
void SbaTableQueryBrowser::populateTree(const Reference<XNameAccess>& _xNameAccess,
- SvLBoxEntry* _pParent,
+ SvTreeListEntry* _pParent,
EntryType _eEntryType)
{
DBTreeListUserData* pData = static_cast<DBTreeListUserData*>(_pParent->GetUserData());
@@ -2196,7 +2196,7 @@ void SbaTableQueryBrowser::populateTree(const Reference<XNameAccess>& _xNameAcce
}
//------------------------------------------------------------------------------
-SvLBoxEntry* SbaTableQueryBrowser::implAppendEntry( SvLBoxEntry* _pParent, const String& _rName, void* _pUserData, EntryType _eEntryType )
+SvTreeListEntry* SbaTableQueryBrowser::implAppendEntry( SvTreeListEntry* _pParent, const String& _rName, void* _pUserData, EntryType _eEntryType )
{
SAL_WNODEPRECATED_DECLARATIONS_PUSH
::std::auto_ptr< ImageProvider > pImageProvider( getImageProviderFor( _pParent ) );
@@ -2205,7 +2205,7 @@ SvLBoxEntry* SbaTableQueryBrowser::implAppendEntry( SvLBoxEntry* _pParent, const
Image aImage;
pImageProvider->getImages( _rName, getDatabaseObjectType( _eEntryType ), aImage );
- SvLBoxEntry* pNewEntry = m_pTreeView->getListBox().InsertEntry( _rName, _pParent, _eEntryType == etQueryContainer , LIST_APPEND, _pUserData );
+ SvTreeListEntry* pNewEntry = m_pTreeView->getListBox().InsertEntry( _rName, _pParent, _eEntryType == etQueryContainer , LIST_APPEND, _pUserData );
m_pTreeView->getListBox().SetExpandedEntryBmp( pNewEntry, aImage );
m_pTreeView->getListBox().SetCollapsedEntryBmp( pNewEntry, aImage );
@@ -2214,13 +2214,13 @@ SvLBoxEntry* SbaTableQueryBrowser::implAppendEntry( SvLBoxEntry* _pParent, const
}
//------------------------------------------------------------------------------
-IMPL_LINK(SbaTableQueryBrowser, OnExpandEntry, SvLBoxEntry*, _pParent)
+IMPL_LINK(SbaTableQueryBrowser, OnExpandEntry, SvTreeListEntry*, _pParent)
{
if (_pParent->HasChildren())
// nothing to to ...
return 1L;
- SvLBoxEntry* pFirstParent = m_pTreeView->getListBox().GetRootLevelParent(_pParent);
+ SvTreeListEntry* pFirstParent = m_pTreeView->getListBox().GetRootLevelParent(_pParent);
OSL_ENSURE(pFirstParent,"SbaTableQueryBrowser::OnExpandEntry: No rootlevelparent!");
DBTreeListUserData* pData = static_cast< DBTreeListUserData* >(_pParent->GetUserData());
@@ -2323,7 +2323,7 @@ IMPL_LINK(SbaTableQueryBrowser, OnExpandEntry, SvLBoxEntry*, _pParent)
}
//------------------------------------------------------------------------------
-sal_Bool SbaTableQueryBrowser::ensureEntryObject( SvLBoxEntry* _pEntry )
+sal_Bool SbaTableQueryBrowser::ensureEntryObject( SvTreeListEntry* _pEntry )
{
OSL_ENSURE(_pEntry, "SbaTableQueryBrowser::ensureEntryObject: invalid argument!");
if (!_pEntry)
@@ -2335,7 +2335,7 @@ sal_Bool SbaTableQueryBrowser::ensureEntryObject( SvLBoxEntry* _pEntry )
DBTreeListUserData* pEntryData = static_cast<DBTreeListUserData*>(_pEntry->GetUserData());
OSL_ENSURE(pEntryData,"ensureEntryObject: user data should already be set!");
- SvLBoxEntry* pDataSourceEntry = m_pTreeView->getListBox().GetRootLevelParent(_pEntry);
+ SvTreeListEntry* pDataSourceEntry = m_pTreeView->getListBox().GetRootLevelParent(_pEntry);
sal_Bool bSuccess = sal_False;
switch (eType)
@@ -2349,7 +2349,7 @@ sal_Bool SbaTableQueryBrowser::ensureEntryObject( SvLBoxEntry* _pEntry )
}
{
- SvLBoxEntry* pParent = m_pTreeView->getListBox().GetParent(_pEntry);
+ SvTreeListEntry* pParent = m_pTreeView->getListBox().GetParent(_pEntry);
if ( pParent != pDataSourceEntry )
{
SvLBoxString* pString = (SvLBoxString*)_pEntry->GetFirstItem(SV_ITEM_ID_BOLDLBSTRING);
@@ -2513,9 +2513,9 @@ sal_Bool SbaTableQueryBrowser::implSelect(const ::rtl::OUString& _rDataSourceNam
{
if (_rDataSourceName.getLength() && _rCommand.getLength() && (-1 != _nCommandType))
{
- SvLBoxEntry* pDataSource = NULL;
- SvLBoxEntry* pCommandType = NULL;
- SvLBoxEntry* pCommand = getObjectEntry( _rDataSourceName, _rCommand, _nCommandType, &pDataSource, &pCommandType, sal_True, _rxConnection );
+ SvTreeListEntry* pDataSource = NULL;
+ SvTreeListEntry* pCommandType = NULL;
+ SvTreeListEntry* pCommand = getObjectEntry( _rDataSourceName, _rCommand, _nCommandType, &pDataSource, &pCommandType, sal_True, _rxConnection );
if (pCommand)
{
@@ -2556,9 +2556,9 @@ IMPL_LINK(SbaTableQueryBrowser, OnSelectionChange, void*, /*NOINTERESTEDIN*/)
return implSelect( m_pTreeView->getListBox().FirstSelected() ) ? 1L : 0L;
}
//------------------------------------------------------------------------------
-SvLBoxEntry* SbaTableQueryBrowser::implGetConnectionEntry(SvLBoxEntry* _pEntry) const
+SvTreeListEntry* SbaTableQueryBrowser::implGetConnectionEntry(SvTreeListEntry* _pEntry) const
{
- SvLBoxEntry* pCurrentEntry = _pEntry;
+ SvTreeListEntry* pCurrentEntry = _pEntry;
DBTreeListUserData* pEntryData = static_cast< DBTreeListUserData* >( pCurrentEntry->GetUserData() );
while(pEntryData->eType != etDatasource )
{
@@ -2568,7 +2568,7 @@ SvLBoxEntry* SbaTableQueryBrowser::implGetConnectionEntry(SvLBoxEntry* _pEntry)
return pCurrentEntry;
}
//------------------------------------------------------------------------------
-bool SbaTableQueryBrowser::implSelect( SvLBoxEntry* _pEntry )
+bool SbaTableQueryBrowser::implSelect( SvTreeListEntry* _pEntry )
{
if ( !_pEntry )
return false;
@@ -2588,11 +2588,11 @@ bool SbaTableQueryBrowser::implSelect( SvLBoxEntry* _pEntry )
OSL_ENSURE(m_pTreeModel->HasParent(m_pTreeModel->GetParent(_pEntry)), "SbaTableQueryBrowser::implSelect: invalid entry (2)!");
// get the entry for the tables or queries
- SvLBoxEntry* pContainer = m_pTreeModel->GetParent(_pEntry);
+ SvTreeListEntry* pContainer = m_pTreeModel->GetParent(_pEntry);
DBTreeListUserData* pContainerData = static_cast<DBTreeListUserData*>(pContainer->GetUserData());
// get the entry for the datasource
- SvLBoxEntry* pConnection = implGetConnectionEntry(pContainer);
+ SvTreeListEntry* pConnection = implGetConnectionEntry(pContainer);
DBTreeListUserData* pConData = static_cast<DBTreeListUserData*>(pConnection->GetUserData());
// reinitialize the rowset
@@ -2612,7 +2612,7 @@ bool SbaTableQueryBrowser::implSelect( SvLBoxEntry* _pEntry )
::rtl::OUStringBuffer sNameBuffer(sSimpleName);
if ( etQueryContainer == pContainerData->eType )
{
- SvLBoxEntry* pTemp = pContainer;
+ SvTreeListEntry* pTemp = pContainer;
while( m_pTreeModel->GetParent(pTemp) != pConnection )
{
sNameBuffer.insert(0,sal_Unicode('/'));
@@ -2786,11 +2786,11 @@ bool SbaTableQueryBrowser::implSelect( SvLBoxEntry* _pEntry )
}
// -----------------------------------------------------------------------------
-SvLBoxEntry* SbaTableQueryBrowser::getEntryFromContainer(const Reference<XNameAccess>& _rxNameAccess)
+SvTreeListEntry* SbaTableQueryBrowser::getEntryFromContainer(const Reference<XNameAccess>& _rxNameAccess)
{
DBTreeListBox& rListBox = m_pTreeView->getListBox();
- SvLBoxEntry* pContainer = NULL;
- SvLBoxEntry* pDSLoop = rListBox.FirstChild(NULL);
+ SvTreeListEntry* pContainer = NULL;
+ SvTreeListEntry* pDSLoop = rListBox.FirstChild(NULL);
while (pDSLoop)
{
pContainer = rListBox.GetEntry(pDSLoop, CONTAINER_QUERIES);
@@ -2817,7 +2817,7 @@ void SAL_CALL SbaTableQueryBrowser::elementInserted( const ContainerEvent& _rEve
Reference< XNameAccess > xNames(_rEvent.Source, UNO_QUERY);
// first search for a definition container where we can insert this element
- SvLBoxEntry* pEntry = getEntryFromContainer(xNames);
+ SvTreeListEntry* pEntry = getEntryFromContainer(xNames);
if(pEntry) // found one
{
// insert the new entry into the tree
@@ -2847,7 +2847,7 @@ void SAL_CALL SbaTableQueryBrowser::elementInserted( const ContainerEvent& _rEve
SbaXDataBrowserController::elementInserted(_rEvent);
}
// -------------------------------------------------------------------------
-sal_Bool SbaTableQueryBrowser::isCurrentlyDisplayedChanged(const String& _sName,SvLBoxEntry* _pContainer)
+sal_Bool SbaTableQueryBrowser::isCurrentlyDisplayedChanged(const String& _sName,SvTreeListEntry* _pContainer)
{
return m_pCurrentlyDisplayed
&& getEntryType(m_pCurrentlyDisplayed) == getChildType(_pContainer)
@@ -2862,7 +2862,7 @@ void SAL_CALL SbaTableQueryBrowser::elementRemoved( const ContainerEvent& _rEven
Reference< XNameAccess > xNames(_rEvent.Source, UNO_QUERY);
// get the top-level representing the removed data source
// and search for the queries and tables
- SvLBoxEntry* pContainer = getEntryFromContainer(xNames);
+ SvTreeListEntry* pContainer = getEntryFromContainer(xNames);
if ( pContainer )
{ // a query or table has been removed
String aName = ::comphelper::getString(_rEvent.Accessor);
@@ -2871,7 +2871,7 @@ void SAL_CALL SbaTableQueryBrowser::elementRemoved( const ContainerEvent& _rEven
{ // the element displayed currently has been replaced
// we need to remember the old value
- SvLBoxEntry* pTemp = m_pCurrentlyDisplayed;
+ SvTreeListEntry* pTemp = m_pCurrentlyDisplayed;
// unload
unloadAndCleanup( sal_False ); // don't dispose the connection
@@ -2885,7 +2885,7 @@ void SAL_CALL SbaTableQueryBrowser::elementRemoved( const ContainerEvent& _rEven
else
{
// remove the entry from the model
- SvLBoxEntry* pChild = m_pTreeModel->FirstChild(pContainer);
+ SvTreeListEntry* pChild = m_pTreeModel->FirstChild(pContainer);
while(pChild)
{
if (m_pTreeView->getListBox().GetEntryText(pChild) == aName)
@@ -2913,7 +2913,7 @@ void SAL_CALL SbaTableQueryBrowser::elementReplaced( const ContainerEvent& _rEve
SolarMutexGuard aSolarGuard;
Reference< XNameAccess > xNames(_rEvent.Source, UNO_QUERY);
- SvLBoxEntry* pContainer = getEntryFromContainer(xNames);
+ SvTreeListEntry* pContainer = getEntryFromContainer(xNames);
if ( pContainer )
{ // a table or query as been replaced
String aName = ::comphelper::getString(_rEvent.Accessor);
@@ -2922,7 +2922,7 @@ void SAL_CALL SbaTableQueryBrowser::elementReplaced( const ContainerEvent& _rEve
{ // the element displayed currently has been replaced
// we need to remember the old value
- SvLBoxEntry* pTemp = m_pCurrentlyDisplayed;
+ SvTreeListEntry* pTemp = m_pCurrentlyDisplayed;
unloadAndCleanup( sal_False ); // don't dispose the connection
DBTreeListUserData* pData = static_cast<DBTreeListUserData*>(pTemp->GetUserData());
@@ -2942,7 +2942,7 @@ void SAL_CALL SbaTableQueryBrowser::elementReplaced( const ContainerEvent& _rEve
else
{
// find the entry for this name
- SvLBoxEntry* pChild = m_pTreeModel->FirstChild(pContainer);
+ SvTreeListEntry* pChild = m_pTreeModel->FirstChild(pContainer);
while(pChild)
{
if (m_pTreeView->getListBox().GetEntryText(pChild) == aName)
@@ -3008,7 +3008,7 @@ void SbaTableQueryBrowser::impl_releaseConnection( SharedConnection& _rxConnecti
}
// -------------------------------------------------------------------------
-void SbaTableQueryBrowser::disposeConnection( SvLBoxEntry* _pDSEntry )
+void SbaTableQueryBrowser::disposeConnection( SvTreeListEntry* _pDSEntry )
{
OSL_ENSURE( _pDSEntry, "SbaTableQueryBrowser::disposeConnection: invalid entry (NULL)!" );
OSL_ENSURE( impl_isDataSourceEntry( _pDSEntry ), "SbaTableQueryBrowser::disposeConnection: invalid entry (not top-level)!" );
@@ -3022,7 +3022,7 @@ void SbaTableQueryBrowser::disposeConnection( SvLBoxEntry* _pDSEntry )
}
// -------------------------------------------------------------------------
-void SbaTableQueryBrowser::closeConnection(SvLBoxEntry* _pDSEntry,sal_Bool _bDisposeConnection)
+void SbaTableQueryBrowser::closeConnection(SvTreeListEntry* _pDSEntry,sal_Bool _bDisposeConnection)
{
OSL_ENSURE(_pDSEntry, "SbaTableQueryBrowser::closeConnection: invalid entry (NULL)!");
OSL_ENSURE( impl_isDataSourceEntry( _pDSEntry ), "SbaTableQueryBrowser::closeConnection: invalid entry (not top-level)!");
@@ -3032,16 +3032,16 @@ void SbaTableQueryBrowser::closeConnection(SvLBoxEntry* _pDSEntry,sal_Bool _bDis
unloadAndCleanup(_bDisposeConnection);
// collapse the query/table container
- for (SvLBoxEntry* pContainers = m_pTreeModel->FirstChild(_pDSEntry); pContainers; pContainers= m_pTreeModel->NextSibling(pContainers))
+ for (SvTreeListEntry* pContainers = m_pTreeModel->FirstChild(_pDSEntry); pContainers; pContainers= m_pTreeModel->NextSibling(pContainers))
{
- SvLBoxEntry* pElements = m_pTreeModel->FirstChild(pContainers);
+ SvTreeListEntry* pElements = m_pTreeModel->FirstChild(pContainers);
if ( pElements )
m_pTreeView->getListBox().Collapse(pContainers);
m_pTreeView->getListBox().EnableExpandHandler(pContainers);
// and delete their children (they are connection-relative)
for (; pElements; )
{
- SvLBoxEntry* pRemove = pElements;
+ SvTreeListEntry* pRemove = pElements;
pElements= m_pTreeModel->NextSibling(pElements);
DBTreeListUserData* pData = static_cast<DBTreeListUserData*>(pRemove->GetUserData());
pRemove->SetUserData(NULL);
@@ -3064,7 +3064,7 @@ void SbaTableQueryBrowser::unloadAndCleanup( sal_Bool _bDisposeConnection )
// nothing to do
return;
- SvLBoxEntry* pDSEntry = m_pTreeView->getListBox().GetRootLevelParent(m_pCurrentlyDisplayed);
+ SvTreeListEntry* pDSEntry = m_pTreeView->getListBox().GetRootLevelParent(m_pCurrentlyDisplayed);
// de-select the path for the currently displayed table/query
if (m_pCurrentlyDisplayed)
@@ -3356,9 +3356,9 @@ void SbaTableQueryBrowser::showExplorer()
}
// -----------------------------------------------------------------------------
-sal_Bool SbaTableQueryBrowser::ensureConnection(SvLBoxEntry* _pAnyEntry, SharedConnection& _rConnection)
+sal_Bool SbaTableQueryBrowser::ensureConnection(SvTreeListEntry* _pAnyEntry, SharedConnection& _rConnection)
{
- SvLBoxEntry* pDSEntry = m_pTreeView->getListBox().GetRootLevelParent(_pAnyEntry);
+ SvTreeListEntry* pDSEntry = m_pTreeView->getListBox().GetRootLevelParent(_pAnyEntry);
DBTreeListUserData* pDSData =
pDSEntry
? static_cast<DBTreeListUserData*>(pDSEntry->GetUserData())
@@ -3369,7 +3369,7 @@ sal_Bool SbaTableQueryBrowser::ensureConnection(SvLBoxEntry* _pAnyEntry, SharedC
// -----------------------------------------------------------------------------
SAL_WNODEPRECATED_DECLARATIONS_PUSH
-::std::auto_ptr< ImageProvider > SbaTableQueryBrowser::getImageProviderFor( SvLBoxEntry* _pAnyEntry )
+::std::auto_ptr< ImageProvider > SbaTableQueryBrowser::getImageProviderFor( SvTreeListEntry* _pAnyEntry )
{
::std::auto_ptr< ImageProvider > pImageProvider( new ImageProvider );
SharedConnection xConnection;
@@ -3380,9 +3380,9 @@ SAL_WNODEPRECATED_DECLARATIONS_PUSH
SAL_WNODEPRECATED_DECLARATIONS_POP
// -----------------------------------------------------------------------------
-sal_Bool SbaTableQueryBrowser::getExistentConnectionFor( SvLBoxEntry* _pAnyEntry, SharedConnection& _rConnection )
+sal_Bool SbaTableQueryBrowser::getExistentConnectionFor( SvTreeListEntry* _pAnyEntry, SharedConnection& _rConnection )
{
- SvLBoxEntry* pDSEntry = m_pTreeView->getListBox().GetRootLevelParent( _pAnyEntry );
+ SvTreeListEntry* pDSEntry = m_pTreeView->getListBox().GetRootLevelParent( _pAnyEntry );
DBTreeListUserData* pDSData =
pDSEntry
? static_cast< DBTreeListUserData* >( pDSEntry->GetUserData() )
@@ -3394,14 +3394,14 @@ sal_Bool SbaTableQueryBrowser::getExistentConnectionFor( SvLBoxEntry* _pAnyEntry
#if OSL_DEBUG_LEVEL > 0
// -----------------------------------------------------------------------------
-bool SbaTableQueryBrowser::impl_isDataSourceEntry( SvLBoxEntry* _pEntry ) const
+bool SbaTableQueryBrowser::impl_isDataSourceEntry( SvTreeListEntry* _pEntry ) const
{
return m_pTreeModel->GetRootLevelParent( _pEntry ) == _pEntry;
}
#endif
// -----------------------------------------------------------------------------
-sal_Bool SbaTableQueryBrowser::ensureConnection( SvLBoxEntry* _pDSEntry, void* pDSData, SharedConnection& _rConnection )
+sal_Bool SbaTableQueryBrowser::ensureConnection( SvTreeListEntry* _pDSEntry, void* pDSData, SharedConnection& _rConnection )
{
OSL_ENSURE( impl_isDataSourceEntry( _pDSEntry ), "SbaTableQueryBrowser::ensureConnection: this entry does not denote a data source!" );
if(_pDSEntry)
@@ -3440,8 +3440,8 @@ sal_Bool SbaTableQueryBrowser::ensureConnection( SvLBoxEntry* _pDSEntry, void* p
// -----------------------------------------------------------------------------
IMPL_LINK( SbaTableQueryBrowser, OnTreeEntryCompare, const SvSortData*, _pSortData )
{
- SvLBoxEntry* pLHS = static_cast<SvLBoxEntry*>(_pSortData->pLeft);
- SvLBoxEntry* pRHS = static_cast<SvLBoxEntry*>(_pSortData->pRight);
+ const SvTreeListEntry* pLHS = static_cast<const SvTreeListEntry*>(_pSortData->pLeft);
+ const SvTreeListEntry* pRHS = static_cast<const SvTreeListEntry*>(_pSortData->pRight);
OSL_ENSURE(pLHS && pRHS, "SbaTableQueryBrowser::OnTreeEntryCompare: invalid tree entries!");
// we want the table entry and the end so we have to do a check
@@ -3455,7 +3455,7 @@ IMPL_LINK( SbaTableQueryBrowser, OnTreeEntryCompare, const SvSortData*, _pSortDa
// every other container should be placed _before_ the bookmark container
return -1;
- const String sLeft = m_pTreeView->getListBox().GetEntryText(pLHS);
+ const String sLeft = m_pTreeView->getListBox().GetEntryText(const_cast<SvTreeListEntry*>(pLHS));
EntryType eLeft = etTableContainer;
if (String(ModuleRes(RID_STR_TABLES_CONTAINER)) == sLeft)
@@ -3503,7 +3503,7 @@ IMPL_LINK( SbaTableQueryBrowser, OnTreeEntryCompare, const SvSortData*, _pSortDa
}
// -----------------------------------------------------------------------------
-void SbaTableQueryBrowser::implAdministrate( SvLBoxEntry* _pApplyTo )
+void SbaTableQueryBrowser::implAdministrate( SvTreeListEntry* _pApplyTo )
{
OSL_PRECOND( _pApplyTo, "SbaTableQueryBrowser::implAdministrate: illegal entry!" );
if ( !_pApplyTo )
@@ -3518,7 +3518,7 @@ void SbaTableQueryBrowser::implAdministrate( SvLBoxEntry* _pApplyTo )
if ( xFrameLoader.is() )
{
// the initial selection
- SvLBoxEntry* pTopLevelSelected = _pApplyTo;
+ SvTreeListEntry* pTopLevelSelected = _pApplyTo;
while (pTopLevelSelected && m_pTreeView->getListBox().GetParent(pTopLevelSelected))
pTopLevelSelected = m_pTreeView->getListBox().GetParent(pTopLevelSelected);
::rtl::OUString sInitialSelection;
@@ -3557,7 +3557,7 @@ void SbaTableQueryBrowser::implAdministrate( SvLBoxEntry* _pApplyTo )
}
// -----------------------------------------------------------------------------
-sal_Bool SbaTableQueryBrowser::requestQuickHelp( const SvLBoxEntry* _pEntry, String& _rText ) const
+sal_Bool SbaTableQueryBrowser::requestQuickHelp( const SvTreeListEntry* _pEntry, String& _rText ) const
{
const DBTreeListUserData* pData = static_cast< const DBTreeListUserData* >( _pEntry->GetUserData() );
if ( ( pData->eType == etDatasource ) && pData->sAccessor.Len() )
@@ -3600,7 +3600,7 @@ Any SbaTableQueryBrowser::getCurrentSelection( Control& _rControl ) const
if ( &m_pTreeView->getListBox() != &_rControl )
return Any();
- SvLBoxEntry* pSelected = m_pTreeView->getListBox().FirstSelected();
+ SvTreeListEntry* pSelected = m_pTreeView->getListBox().FirstSelected();
if ( !pSelected )
return Any();
@@ -3736,9 +3736,9 @@ void SbaTableQueryBrowser::loadMenu(const Reference< XFrame >& _xFrame)
::rtl::OUString sTitle;
if ( m_pCurrentlyDisplayed )
{
- SvLBoxEntry* pContainer = m_pTreeModel->GetParent(m_pCurrentlyDisplayed);
+ SvTreeListEntry* pContainer = m_pTreeModel->GetParent(m_pCurrentlyDisplayed);
// get the entry for the datasource
- SvLBoxEntry* pConnection = implGetConnectionEntry(pContainer);
+ SvTreeListEntry* pConnection = implGetConnectionEntry(pContainer);
::rtl::OUString sName = m_pTreeView->getListBox().GetEntryText(m_pCurrentlyDisplayed);
sTitle = GetEntryText( pConnection );
INetURLObject aURL(sTitle);
@@ -3773,8 +3773,8 @@ sal_Bool SbaTableQueryBrowser::preReloadForm()
extractDescriptorProps(aDesc, sDataSource, sCommand, nCommandType, bEscapeProcessing);
if ( !sDataSource.isEmpty() && !sCommand.isEmpty() && (-1 != nCommandType) )
{
- SvLBoxEntry* pDataSource = NULL;
- SvLBoxEntry* pCommandType = NULL;
+ SvTreeListEntry* pDataSource = NULL;
+ SvTreeListEntry* pCommandType = NULL;
m_pCurrentlyDisplayed = getObjectEntry( sDataSource, sCommand, nCommandType, &pDataSource, &pCommandType, sal_True, SharedConnection() );
bIni = sal_True;
}
@@ -3840,7 +3840,7 @@ void SAL_CALL SbaTableQueryBrowser::registeredDatabaseLocation( const DatabaseRe
void SbaTableQueryBrowser::impl_cleanupDataSourceEntry( const String& _rDataSourceName )
{
// get the top-level representing the removed data source
- SvLBoxEntry* pDataSourceEntry = m_pTreeView->getListBox().FirstChild( NULL );
+ SvTreeListEntry* pDataSourceEntry = m_pTreeView->getListBox().FirstChild( NULL );
while ( pDataSourceEntry )
{
if ( m_pTreeView->getListBox().GetEntryText( pDataSourceEntry ) == _rDataSourceName )
@@ -3866,16 +3866,17 @@ void SbaTableQueryBrowser::impl_cleanupDataSourceEntry( const String& _rDataSour
"SbaTableQueryBrowser::impl_cleanupDataSourceEntry: inconsistence (2)!");
// delete any user data of the child entries of the to-be-removed entry
- SvTreeEntryList* pList = m_pTreeModel->GetChildList( pDataSourceEntry );
- if ( pList )
+ std::pair<SvTreeListEntries::iterator, SvTreeListEntries::iterator> aIters =
+ m_pTreeModel->GetChildIterators(pDataSourceEntry);
+
+ SvTreeListEntries::iterator it = aIters.first, itEnd = aIters.second;
+
+ for (; it != itEnd; ++it)
{
- for ( size_t i = 0, n = pList->size(); i < n; ++i )
- {
- SvLBoxEntry* pEntryLoop = static_cast<SvLBoxEntry*>((*pList)[ i ]);
- DBTreeListUserData* pData = static_cast< DBTreeListUserData* >( pEntryLoop->GetUserData() );
- pEntryLoop->SetUserData( NULL );
- delete pData;
- }
+ SvTreeListEntry* pEntry = &(*it);
+ const DBTreeListUserData* pData = static_cast<const DBTreeListUserData*>(pEntry->GetUserData());
+ pEntry->SetUserData(NULL);
+ delete pData;
}
// remove the entry
diff --git a/dbaccess/source/ui/control/dbtreelistbox.cxx b/dbaccess/source/ui/control/dbtreelistbox.cxx
index d73a435fe9e5..1c53330cb4a4 100644
--- a/dbaccess/source/ui/control/dbtreelistbox.cxx
+++ b/dbaccess/source/ui/control/dbtreelistbox.cxx
@@ -108,39 +108,40 @@ DBTreeListBox::~DBTreeListBox()
implStopSelectionTimer();
}
//------------------------------------------------------------------------
-SvLBoxEntry* DBTreeListBox::GetEntryPosByName( const String& aName, SvLBoxEntry* pStart, const IEntryFilter* _pFilter ) const
+SvTreeListEntry* DBTreeListBox::GetEntryPosByName( const String& aName, SvTreeListEntry* pStart, const IEntryFilter* _pFilter ) const
{
- SvLBoxTreeList* myModel = GetModel();
- SvTreeEntryList* pChildren = myModel->GetChildList(pStart);
- SvLBoxEntry* pEntry = NULL;
- if ( pChildren )
+ SvTreeList* myModel = GetModel();
+ std::pair<SvTreeListEntries::iterator,SvTreeListEntries::iterator> aIters =
+ myModel->GetChildIterators(pStart);
+
+ SvTreeListEntry* pEntry = NULL;
+ SvTreeListEntries::iterator it = aIters.first, itEnd = aIters.second;
+ for (; it != itEnd; ++it)
{
- size_t nCount = pChildren->size();
- for (size_t i = 0; i < nCount; ++i)
+ pEntry = &(*it);
+ const SvLBoxString* pItem = static_cast<const SvLBoxString*>(
+ pEntry->GetFirstItem(SV_ITEM_ID_LBOXSTRING));
+
+ if (pItem && pItem->GetText().equals(aName))
{
- pEntry = static_cast<SvLBoxEntry*>((*pChildren)[ i ]);
- SvLBoxString* pItem = (SvLBoxString*)(pEntry->GetFirstItem(SV_ITEM_ID_LBOXSTRING));
- if ( pItem->GetText().equals(aName) )
- {
- if ( !_pFilter || _pFilter->includeEntry( pEntry ) )
- // found
- break;
- }
- pEntry = NULL;
+ if (!_pFilter || _pFilter->includeEntry(pEntry))
+ // found
+ break;
}
+ pEntry = NULL;
}
return pEntry;
}
// -------------------------------------------------------------------------
-void DBTreeListBox::EnableExpandHandler(SvLBoxEntry* _pEntry)
+void DBTreeListBox::EnableExpandHandler(SvTreeListEntry* _pEntry)
{
LINK(this, DBTreeListBox, OnResetEntry).Call(_pEntry);
}
// -------------------------------------------------------------------------
-void DBTreeListBox::RequestingChildren( SvLBoxEntry* pParent )
+void DBTreeListBox::RequestingChildren( SvTreeListEntry* pParent )
{
if (m_aPreExpandHandler.IsSet())
{
@@ -155,7 +156,7 @@ void DBTreeListBox::RequestingChildren( SvLBoxEntry* pParent )
}
// -------------------------------------------------------------------------
-void DBTreeListBox::InitEntry( SvLBoxEntry* _pEntry, const XubString& aStr, const Image& _rCollEntryBmp, const Image& _rExpEntryBmp, SvLBoxButtonKind eButtonKind)
+void DBTreeListBox::InitEntry(SvTreeListEntry* _pEntry, const OUString& aStr, const Image& _rCollEntryBmp, const Image& _rExpEntryBmp, SvLBoxButtonKind eButtonKind)
{
SvTreeListBox::InitEntry( _pEntry, aStr, _rCollEntryBmp,_rExpEntryBmp, eButtonKind);
SvLBoxItem* pTextItem(_pEntry->GetFirstItem(SV_ITEM_ID_LBOXSTRING));
@@ -204,7 +205,7 @@ void DBTreeListBox::MouseButtonDown( const MouseEvent& rMEvt )
}
// -------------------------------------------------------------------------
-IMPL_LINK(DBTreeListBox, OnResetEntry, SvLBoxEntry*, pEntry)
+IMPL_LINK(DBTreeListBox, OnResetEntry, SvTreeListEntry*, pEntry)
{
// set the flag which allows if the entry can be expanded
pEntry->SetFlags( (pEntry->GetFlags() & ~(SV_ENTRYFLAG_NO_NODEBMP | SV_ENTRYFLAG_HAD_CHILDREN)) | SV_ENTRYFLAG_CHILDREN_ON_DEMAND );
@@ -213,29 +214,31 @@ IMPL_LINK(DBTreeListBox, OnResetEntry, SvLBoxEntry*, pEntry)
return 0L;
}
// -----------------------------------------------------------------------------
-void DBTreeListBox::ModelHasEntryInvalidated( SvListEntry* _pEntry )
+void DBTreeListBox::ModelHasEntryInvalidated( SvTreeListEntry* _pEntry )
{
SvTreeListBox::ModelHasEntryInvalidated( _pEntry );
- if ( m_aSelectedEntries.find( _pEntry ) != m_aSelectedEntries.end() )
+ SvTreeListEntry* pLBEntry = static_cast<SvTreeListEntry*>(_pEntry);
+ if (m_aSelectedEntries.find(pLBEntry) != m_aSelectedEntries.end())
{
- SvLBoxItem* pTextItem = static_cast< SvLBoxEntry* >( _pEntry )->GetFirstItem( SV_ITEM_ID_BOLDLBSTRING );
+ SvLBoxItem* pTextItem = pLBEntry->GetFirstItem(SV_ITEM_ID_BOLDLBSTRING);
if ( pTextItem && !static_cast< OBoldListboxString* >( pTextItem )->isEmphasized() )
{
implStopSelectionTimer();
- m_aSelectedEntries.erase( _pEntry );
+ m_aSelectedEntries.erase(pLBEntry);
// ehm - why?
}
}
}
// -------------------------------------------------------------------------
-void DBTreeListBox::ModelHasRemoved( SvListEntry* _pEntry )
+void DBTreeListBox::ModelHasRemoved( SvTreeListEntry* _pEntry )
{
SvTreeListBox::ModelHasRemoved(_pEntry);
- if ( m_aSelectedEntries.find( _pEntry ) != m_aSelectedEntries.end() )
+ SvTreeListEntry* pLBEntry = static_cast<SvTreeListEntry*>(_pEntry);
+ if (m_aSelectedEntries.find(pLBEntry) != m_aSelectedEntries.end())
{
implStopSelectionTimer();
- m_aSelectedEntries.erase( _pEntry );
+ m_aSelectedEntries.erase(pLBEntry);
}
}
@@ -245,9 +248,9 @@ sal_Int8 DBTreeListBox::AcceptDrop( const AcceptDropEvent& _rEvt )
sal_Int8 nDropOption = DND_ACTION_NONE;
if ( m_pActionListener )
{
- SvLBoxEntry* pDroppedEntry = GetEntry(_rEvt.maPosPixel);
+ SvTreeListEntry* pDroppedEntry = GetEntry(_rEvt.maPosPixel);
// check if drag is on child entry, which is not allowed
- SvLBoxEntry* pParent = NULL;
+ SvTreeListEntry* pParent = NULL;
if ( _rEvt.mnAction & DND_ACTION_MOVE )
{
if ( !m_pDragedEntry ) // no entry to move
@@ -317,7 +320,7 @@ void DBTreeListBox::RequestHelp( const HelpEvent& rHEvt )
if( rHEvt.GetMode() & HELPMODE_QUICK )
{
Point aPos( ScreenToOutputPixel( rHEvt.GetMousePosPixel() ));
- SvLBoxEntry* pEntry = GetEntry( aPos );
+ SvTreeListEntry* pEntry = GetEntry( aPos );
if( pEntry )
{
String sQuickHelpText;
@@ -400,12 +403,12 @@ void DBTreeListBox::KeyInput( const KeyEvent& rKEvt )
SvTreeListBox::KeyInput(rKEvt);
}
// -----------------------------------------------------------------------------
-sal_Bool DBTreeListBox::EditingEntry( SvLBoxEntry* pEntry, Selection& /*_aSelection*/)
+sal_Bool DBTreeListBox::EditingEntry( SvTreeListEntry* pEntry, Selection& /*_aSelection*/)
{
return m_aEditingHandler.Call(pEntry) != 0;
}
// -----------------------------------------------------------------------------
-sal_Bool DBTreeListBox::EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString& rNewText )
+sal_Bool DBTreeListBox::EditedEntry( SvTreeListEntry* pEntry, const rtl::OUString& rNewText )
{
DBTreeEditedEntry aEntry;
aEntry.pEntry = pEntry;
@@ -431,7 +434,7 @@ sal_Bool DBTreeListBox::DoubleClickHdl()
// -----------------------------------------------------------------------------
void scrollWindow(DBTreeListBox* _pListBox, const Point& _rPos,sal_Bool _bUp)
{
- SvLBoxEntry* pEntry = _pListBox->GetEntry( _rPos );
+ SvTreeListEntry* pEntry = _pListBox->GetEntry( _rPos );
if( pEntry && pEntry != _pListBox->Last() )
{
_pListBox->ScrollOutputArea( _bUp ? -1 : 1 );
diff --git a/dbaccess/source/ui/control/listviewitems.cxx b/dbaccess/source/ui/control/listviewitems.cxx
index aaf208db812c..07b2b0aab880 100644
--- a/dbaccess/source/ui/control/listviewitems.cxx
+++ b/dbaccess/source/ui/control/listviewitems.cxx
@@ -28,7 +28,7 @@ namespace dbaui
// class OBoldListboxString
//========================================================================
//------------------------------------------------------------------------
- void OBoldListboxString::InitViewData( SvTreeListBox* pView,SvLBoxEntry* pEntry, SvViewDataItem* _pViewData)
+ void OBoldListboxString::InitViewData( SvTreeListBox* pView,SvTreeListEntry* pEntry, SvViewDataItem* _pViewData)
{
SvLBoxString::InitViewData( pView, pEntry, _pViewData );
if ( !m_bEmphasized )
@@ -50,7 +50,7 @@ namespace dbaui
}
//------------------------------------------------------------------------
- void OBoldListboxString::Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvLBoxEntry* pEntry )
+ void OBoldListboxString::Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvTreeListEntry* pEntry )
{
if (m_bEmphasized)
{
diff --git a/dbaccess/source/ui/control/marktree.cxx b/dbaccess/source/ui/control/marktree.cxx
index 07367d8319c5..a62ee25bc4be 100644
--- a/dbaccess/source/ui/control/marktree.cxx
+++ b/dbaccess/source/ui/control/marktree.cxx
@@ -82,7 +82,7 @@ void OMarkableTreeListBox::KeyInput( const KeyEvent& rKEvt )
// only if there are spaces
if (rKEvt.GetKeyCode().GetCode() == KEY_SPACE && !rKEvt.GetKeyCode().IsShift() && !rKEvt.GetKeyCode().IsMod1())
{
- SvLBoxEntry* pCurrentHandlerEntry = GetHdlEntry();
+ SvTreeListEntry* pCurrentHandlerEntry = GetHdlEntry();
if(pCurrentHandlerEntry)
{
SvButtonState eState = GetCheckButtonState( pCurrentHandlerEntry);
@@ -100,7 +100,7 @@ void OMarkableTreeListBox::KeyInput( const KeyEvent& rKEvt )
DBTreeListBox::KeyInput(rKEvt);
}
-SvButtonState OMarkableTreeListBox::implDetermineState(SvLBoxEntry* _pEntry)
+SvButtonState OMarkableTreeListBox::implDetermineState(SvTreeListEntry* _pEntry)
{
SvButtonState eState = GetCheckButtonState(_pEntry);
if (!GetModel()->HasChildren(_pEntry))
@@ -114,7 +114,7 @@ SvButtonState OMarkableTreeListBox::implDetermineState(SvLBoxEntry* _pEntry)
sal_uInt16 nCheckedChildren = 0;
sal_uInt16 nChildrenOverall = 0;
- SvLBoxEntry* pChildLoop = GetModel()->FirstChild(_pEntry);
+ SvTreeListEntry* pChildLoop = GetModel()->FirstChild(_pEntry);
while (pChildLoop)
{
#ifdef DBG_UTIL
@@ -167,7 +167,7 @@ SvButtonState OMarkableTreeListBox::implDetermineState(SvLBoxEntry* _pEntry)
void OMarkableTreeListBox::CheckButtons()
{
- SvLBoxEntry* pEntry = GetModel()->First();
+ SvTreeListEntry* pEntry = GetModel()->First();
while (pEntry)
{
implDetermineState(pEntry);
@@ -182,13 +182,13 @@ void OMarkableTreeListBox::CheckButtonHdl()
m_aCheckButtonHandler.Call(this);
}
-void OMarkableTreeListBox::checkedButton_noBroadcast(SvLBoxEntry* _pEntry)
+void OMarkableTreeListBox::checkedButton_noBroadcast(SvTreeListEntry* _pEntry)
{
SvButtonState eState = GetCheckButtonState( _pEntry);
if (GetModel()->HasChildren(_pEntry)) // if it has children, check those too
{
- SvLBoxEntry* pChildEntry = GetModel()->Next(_pEntry);
- SvLBoxEntry* pSiblingEntry = GetModel()->NextSibling(_pEntry);
+ SvTreeListEntry* pChildEntry = GetModel()->Next(_pEntry);
+ SvTreeListEntry* pSiblingEntry = GetModel()->NextSibling(_pEntry);
while(pChildEntry && pChildEntry != pSiblingEntry)
{
SetCheckButtonState(pChildEntry, eState);
@@ -196,14 +196,14 @@ void OMarkableTreeListBox::checkedButton_noBroadcast(SvLBoxEntry* _pEntry)
}
}
- SvLBoxEntry* pEntry = IsSelected(_pEntry) ? FirstSelected() : NULL;
+ SvTreeListEntry* pEntry = IsSelected(_pEntry) ? FirstSelected() : NULL;
while(pEntry)
{
SetCheckButtonState(pEntry,eState);
if(GetModel()->HasChildren(pEntry)) // if it has children, check those too
{
- SvLBoxEntry* pChildEntry = GetModel()->Next(pEntry);
- SvLBoxEntry* pSiblingEntry = GetModel()->NextSibling(pEntry);
+ SvTreeListEntry* pChildEntry = GetModel()->Next(pEntry);
+ SvTreeListEntry* pSiblingEntry = GetModel()->NextSibling(pEntry);
while(pChildEntry && pChildEntry != pSiblingEntry)
{
SetCheckButtonState(pChildEntry,eState);
diff --git a/dbaccess/source/ui/control/tabletree.cxx b/dbaccess/source/ui/control/tabletree.cxx
index 239a0a2511a8..a2d41151c00e 100644
--- a/dbaccess/source/ui/control/tabletree.cxx
+++ b/dbaccess/source/ui/control/tabletree.cxx
@@ -101,7 +101,7 @@ void OTableTreeListBox::implSetDefaultImages()
}
// -----------------------------------------------------------------------------
-bool OTableTreeListBox::isFolderEntry( const SvLBoxEntry* _pEntry ) const
+bool OTableTreeListBox::isFolderEntry( const SvTreeListEntry* _pEntry ) const
{
sal_Int32 nEntryType = reinterpret_cast< sal_IntPtr >( _pEntry->GetUserData() );
if ( ( nEntryType == DatabaseObjectContainer::TABLES )
@@ -117,7 +117,7 @@ void OTableTreeListBox::notifyHiContrastChanged()
{
implSetDefaultImages();
- SvLBoxEntry* pEntryLoop = First();
+ SvTreeListEntry* pEntryLoop = First();
while (pEntryLoop)
{
sal_uInt16 nCount = pEntryLoop->ItemCount();
@@ -325,13 +325,13 @@ void OTableTreeListBox::UpdateTableList( const Reference< XConnection >& _rxConn
bCatalogs ? xMeta->getCatalogs() : xMeta->getSchemas(), 1 ) );
sal_Int32 nFolderType = bCatalogs ? DatabaseObjectContainer::CATALOG : DatabaseObjectContainer::SCHEMA;
- SvLBoxEntry* pRootEntry = getAllObjectsEntry();
+ SvTreeListEntry* pRootEntry = getAllObjectsEntry();
for ( ::std::vector< ::rtl::OUString >::const_iterator folder = aFolderNames.begin();
folder != aFolderNames.end();
++folder
)
{
- SvLBoxEntry* pFolder = GetEntryPosByName( *folder, pRootEntry );
+ SvTreeListEntry* pFolder = GetEntryPosByName( *folder, pRootEntry );
if ( !pFolder )
pFolder = InsertEntry( *folder, pRootEntry, sal_False, LIST_APPEND, reinterpret_cast< void* >( nFolderType ) );
}
@@ -344,7 +344,7 @@ void OTableTreeListBox::UpdateTableList( const Reference< XConnection >& _rxConn
}
}
//------------------------------------------------------------------------
-sal_Bool OTableTreeListBox::isWildcardChecked(SvLBoxEntry* _pEntry) const
+sal_Bool OTableTreeListBox::isWildcardChecked(SvTreeListEntry* _pEntry) const
{
if (_pEntry)
{
@@ -356,20 +356,20 @@ sal_Bool OTableTreeListBox::isWildcardChecked(SvLBoxEntry* _pEntry) const
}
//------------------------------------------------------------------------
-void OTableTreeListBox::checkWildcard(SvLBoxEntry* _pEntry)
+void OTableTreeListBox::checkWildcard(SvTreeListEntry* _pEntry)
{
SetCheckButtonState(_pEntry, SV_BUTTON_CHECKED);
checkedButton_noBroadcast(_pEntry);
}
//------------------------------------------------------------------------
-SvLBoxEntry* OTableTreeListBox::getAllObjectsEntry() const
+SvTreeListEntry* OTableTreeListBox::getAllObjectsEntry() const
{
return haveVirtualRoot() ? First() : NULL;
}
//------------------------------------------------------------------------
-void OTableTreeListBox::checkedButton_noBroadcast(SvLBoxEntry* _pEntry)
+void OTableTreeListBox::checkedButton_noBroadcast(SvTreeListEntry* _pEntry)
{
OMarkableTreeListBox::checkedButton_noBroadcast(_pEntry);
@@ -383,7 +383,7 @@ void OTableTreeListBox::checkedButton_noBroadcast(SvLBoxEntry* _pEntry)
}
//------------------------------------------------------------------------
-void OTableTreeListBox::implEmphasize(SvLBoxEntry* _pEntry, sal_Bool _bChecked, sal_Bool _bUpdateDescendants, sal_Bool _bUpdateAncestors)
+void OTableTreeListBox::implEmphasize(SvTreeListEntry* _pEntry, sal_Bool _bChecked, sal_Bool _bUpdateDescendants, sal_Bool _bUpdateAncestors)
{
OSL_ENSURE(_pEntry, "OTableTreeListBox::implEmphasize: invalid entry (NULL)!");
@@ -404,7 +404,7 @@ void OTableTreeListBox::implEmphasize(SvLBoxEntry* _pEntry, sal_Bool _bChecked,
if (_bUpdateDescendants)
{
// remove the mark for all children of the checked entry
- SvLBoxEntry* pChildLoop = FirstChild(_pEntry);
+ SvTreeListEntry* pChildLoop = FirstChild(_pEntry);
while (pChildLoop)
{
if (GetModel()->HasChildren(pChildLoop))
@@ -422,7 +422,7 @@ void OTableTreeListBox::implEmphasize(SvLBoxEntry* _pEntry, sal_Bool _bChecked,
}
//------------------------------------------------------------------------
-void OTableTreeListBox::InitEntry(SvLBoxEntry* _pEntry, const XubString& _rString, const Image& _rCollapsedBitmap, const Image& _rExpandedBitmap, SvLBoxButtonKind _eButtonKind)
+void OTableTreeListBox::InitEntry(SvTreeListEntry* _pEntry, const OUString& _rString, const Image& _rCollapsedBitmap, const Image& _rExpandedBitmap, SvLBoxButtonKind _eButtonKind)
{
OMarkableTreeListBox::InitEntry(_pEntry, _rString, _rCollapsedBitmap, _rExpandedBitmap, _eButtonKind);
@@ -436,7 +436,7 @@ void OTableTreeListBox::InitEntry(SvLBoxEntry* _pEntry, const XubString& _rStrin
}
//------------------------------------------------------------------------
-SvLBoxEntry* OTableTreeListBox::implAddEntry(
+SvTreeListEntry* OTableTreeListBox::implAddEntry(
const Reference< XDatabaseMetaData >& _rxMeta,
const ::rtl::OUString& _rTableName,
sal_Bool _bCheckName
@@ -450,7 +450,7 @@ SvLBoxEntry* OTableTreeListBox::implAddEntry(
::rtl::OUString sCatalog, sSchema, sName;
qualifiedNameComponents( _rxMeta, _rTableName, sCatalog, sSchema, sName, ::dbtools::eInDataManipulation );
- SvLBoxEntry* pParentEntry = getAllObjectsEntry();
+ SvTreeListEntry* pParentEntry = getAllObjectsEntry();
// if the DB uses catalog at the start of identifiers, then our hierarchy is
// catalog
@@ -468,7 +468,7 @@ SvLBoxEntry* OTableTreeListBox::implAddEntry(
if ( !rFirstName.isEmpty() )
{
- SvLBoxEntry* pFolder = GetEntryPosByName( rFirstName, pParentEntry );
+ SvTreeListEntry* pFolder = GetEntryPosByName( rFirstName, pParentEntry );
if ( !pFolder )
pFolder = InsertEntry( rFirstName, pParentEntry, sal_False, LIST_APPEND, reinterpret_cast< void* >( nFirstFolderType ) );
pParentEntry = pFolder;
@@ -476,13 +476,13 @@ SvLBoxEntry* OTableTreeListBox::implAddEntry(
if ( !rSecondName.isEmpty() )
{
- SvLBoxEntry* pFolder = GetEntryPosByName( rSecondName, pParentEntry );
+ SvTreeListEntry* pFolder = GetEntryPosByName( rSecondName, pParentEntry );
if ( !pFolder )
pFolder = InsertEntry( rSecondName, pParentEntry, sal_False, LIST_APPEND, reinterpret_cast< void* >( nSecondFolderType ) );
pParentEntry = pFolder;
}
- SvLBoxEntry* pRet = NULL;
+ SvTreeListEntry* pRet = NULL;
if ( !_bCheckName || !GetEntryPosByName( sName, pParentEntry ) )
{
pRet = InsertEntry( sName, pParentEntry, sal_False, LIST_APPEND );
@@ -497,7 +497,7 @@ SvLBoxEntry* OTableTreeListBox::implAddEntry(
}
//------------------------------------------------------------------------
-NamedDatabaseObject OTableTreeListBox::describeObject( SvLBoxEntry* _pEntry )
+NamedDatabaseObject OTableTreeListBox::describeObject( SvTreeListEntry* _pEntry )
{
NamedDatabaseObject aObject;
@@ -511,7 +511,7 @@ NamedDatabaseObject OTableTreeListBox::describeObject( SvLBoxEntry* _pEntry )
|| ( nEntryType == DatabaseObjectContainer::SCHEMA )
)
{
- SvLBoxEntry* pParent = GetParent( _pEntry );
+ SvTreeListEntry* pParent = GetParent( _pEntry );
sal_Int32 nParentEntryType = pParent ? reinterpret_cast< sal_IntPtr >( pParent->GetUserData() ) : -1;
::rtl::OUStringBuffer buffer;
@@ -544,7 +544,7 @@ NamedDatabaseObject OTableTreeListBox::describeObject( SvLBoxEntry* _pEntry )
}
//------------------------------------------------------------------------
-SvLBoxEntry* OTableTreeListBox::addedTable( const ::rtl::OUString& _rName )
+SvTreeListEntry* OTableTreeListBox::addedTable( const ::rtl::OUString& _rName )
{
try
{
@@ -569,7 +569,7 @@ bool OTableTreeListBox::impl_getAndAssertMetaData( Reference< XDatabaseMetaData
}
//------------------------------------------------------------------------
-String OTableTreeListBox::getQualifiedTableName( SvLBoxEntry* _pEntry ) const
+String OTableTreeListBox::getQualifiedTableName( SvTreeListEntry* _pEntry ) const
{
OSL_PRECOND( !isFolderEntry( _pEntry ), "OTableTreeListBox::getQualifiedTableName: folder entries not allowed here!" );
@@ -583,10 +583,10 @@ String OTableTreeListBox::getQualifiedTableName( SvLBoxEntry* _pEntry ) const
::rtl::OUString sSchema;
::rtl::OUString sTable;
- SvLBoxEntry* pSchema = GetParent( _pEntry );
+ SvTreeListEntry* pSchema = GetParent( _pEntry );
if ( pSchema )
{
- SvLBoxEntry* pCatalog = GetParent( pSchema );
+ SvTreeListEntry* pCatalog = GetParent( pSchema );
if ( pCatalog
|| ( xMeta->supportsCatalogsInDataManipulation()
&& !xMeta->supportsSchemasInDataManipulation()
@@ -615,7 +615,7 @@ String OTableTreeListBox::getQualifiedTableName( SvLBoxEntry* _pEntry ) const
}
//------------------------------------------------------------------------
-SvLBoxEntry* OTableTreeListBox::getEntryByQualifiedName( const ::rtl::OUString& _rName )
+SvTreeListEntry* OTableTreeListBox::getEntryByQualifiedName( const ::rtl::OUString& _rName )
{
try
{
@@ -627,9 +627,9 @@ SvLBoxEntry* OTableTreeListBox::getEntryByQualifiedName( const ::rtl::OUString&
::rtl::OUString sCatalog, sSchema, sName;
qualifiedNameComponents(xMeta, _rName, sCatalog, sSchema, sName,::dbtools::eInDataManipulation);
- SvLBoxEntry* pParent = getAllObjectsEntry();
- SvLBoxEntry* pCat = NULL;
- SvLBoxEntry* pSchema = NULL;
+ SvTreeListEntry* pParent = getAllObjectsEntry();
+ SvTreeListEntry* pCat = NULL;
+ SvTreeListEntry* pSchema = NULL;
if ( !sCatalog.isEmpty() )
{
pCat = GetEntryPosByName(sCatalog, pParent);
@@ -657,7 +657,7 @@ void OTableTreeListBox::removedTable( const ::rtl::OUString& _rName )
{
try
{
- SvLBoxEntry* pEntry = getEntryByQualifiedName( _rName );
+ SvTreeListEntry* pEntry = getEntryByQualifiedName( _rName );
if ( pEntry )
GetModel()->Remove( pEntry );
}
diff --git a/dbaccess/source/ui/dlg/ConnectionHelper.cxx b/dbaccess/source/ui/dlg/ConnectionHelper.cxx
index ac7e55f21a55..c33685de305a 100644
--- a/dbaccess/source/ui/dlg/ConnectionHelper.cxx
+++ b/dbaccess/source/ui/dlg/ConnectionHelper.cxx
@@ -45,7 +45,7 @@
#include "dsselect.hxx"
#include <svl/filenotation.hxx>
#include "dbustrings.hrc"
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/FolderPicker.hpp>
#include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
#include <com/sun/star/sdbc/XRow.hpp>
#include <com/sun/star/awt/XWindow.hpp>
@@ -172,13 +172,7 @@ DBG_NAME(OConnectionHelper)
{
try
{
- ::rtl::OUString sFolderPickerService(SERVICE_UI_FOLDERPICKER);
- Reference< XFolderPicker > xFolderPicker(m_xORB->createInstance(sFolderPickerService), UNO_QUERY);
- if (!xFolderPicker.is())
- {
- ShowServiceNotAvailableError(GetParent(), sFolderPickerService, sal_True);
- break;
- }
+ Reference< XFolderPicker2 > xFolderPicker = FolderPicker::create(comphelper::getComponentContext(m_xORB));
sal_Bool bDoBrowse = sal_False;
String sOldPath = getURLNoPrefix();
diff --git a/dbaccess/source/ui/dlg/adtabdlg.cxx b/dbaccess/source/ui/dlg/adtabdlg.cxx
index 580791a345a0..55fbf4b1dfff 100644
--- a/dbaccess/source/ui/dlg/adtabdlg.cxx
+++ b/dbaccess/source/ui/dlg/adtabdlg.cxx
@@ -96,15 +96,15 @@ TableListFacade::~TableListFacade()
String TableListFacade::getSelectedName( String& _out_rAliasName ) const
{
- SvLBoxEntry* pEntry = m_rTableList.FirstSelected();
+ SvTreeListEntry* pEntry = m_rTableList.FirstSelected();
if ( !pEntry )
return String();
::rtl::OUString aCatalog, aSchema, aTableName;
- SvLBoxEntry* pSchema = m_rTableList.GetParent(pEntry);
+ SvTreeListEntry* pSchema = m_rTableList.GetParent(pEntry);
if(pSchema && pSchema != m_rTableList.getAllObjectsEntry())
{
- SvLBoxEntry* pCatalog = m_rTableList.GetParent(pSchema);
+ SvTreeListEntry* pCatalog = m_rTableList.GetParent(pSchema);
if(pCatalog && pCatalog != m_rTableList.getAllObjectsEntry())
aCatalog = m_rTableList.GetEntryText(pCatalog);
aSchema = m_rTableList.GetEntryText(pSchema);
@@ -200,7 +200,7 @@ void TableListFacade::updateTableObjectList( bool _bAllowViews )
}
m_rTableList.UpdateTableList( m_xConnection, sTables, sViews );
- SvLBoxEntry* pEntry = m_rTableList.First();
+ SvTreeListEntry* pEntry = m_rTableList.First();
while( pEntry && m_rTableList.GetModel()->HasChildren( pEntry ) )
{
m_rTableList.Expand( pEntry );
@@ -217,7 +217,7 @@ void TableListFacade::updateTableObjectList( bool _bAllowViews )
bool TableListFacade::isLeafSelected() const
{
- SvLBoxEntry* pEntry = m_rTableList.FirstSelected();
+ SvTreeListEntry* pEntry = m_rTableList.FirstSelected();
return pEntry && !m_rTableList.GetModel()->HasChildren( pEntry );
}
@@ -306,7 +306,7 @@ void QueryListFacade::updateTableObjectList( bool /*_bAllowViews*/ )
String QueryListFacade::getSelectedName( String& _out_rAliasName ) const
{
String sSelected;
- SvLBoxEntry* pEntry = m_rQueryList.FirstSelected();
+ SvTreeListEntry* pEntry = m_rQueryList.FirstSelected();
if ( pEntry )
sSelected = _out_rAliasName = m_rQueryList.GetEntryText( pEntry );
return sSelected;
@@ -314,7 +314,7 @@ String QueryListFacade::getSelectedName( String& _out_rAliasName ) const
bool QueryListFacade::isLeafSelected() const
{
- SvLBoxEntry* pEntry = m_rQueryList.FirstSelected();
+ SvTreeListEntry* pEntry = m_rQueryList.FirstSelected();
return pEntry && !m_rQueryList.GetModel()->HasChildren( pEntry );
}
diff --git a/dbaccess/source/ui/dlg/indexdialog.cxx b/dbaccess/source/ui/dlg/indexdialog.cxx
index 7b64a5dfcafb..73e8624875e3 100644
--- a/dbaccess/source/ui/dlg/indexdialog.cxx
+++ b/dbaccess/source/ui/dlg/indexdialog.cxx
@@ -95,7 +95,7 @@ namespace dbaui
extern sal_Bool isCharOk(sal_Unicode _cChar,sal_Bool _bFirstChar,sal_Bool _bUpperCase,const ::rtl::OUString& _sAllowedChars);
//------------------------------------------------------------------
- sal_Bool DbaIndexList::EditedEntry( SvLBoxEntry* _pEntry, const rtl::OUString& _rNewText )
+ sal_Bool DbaIndexList::EditedEntry( SvTreeListEntry* _pEntry, const rtl::OUString& _rNewText )
{
// first check if this is valid SQL92 name
if ( isSQL92CheckEnabled(m_xConnection) )
@@ -146,7 +146,7 @@ namespace dbaui
}
//------------------------------------------------------------------
- void DbaIndexList::SelectNoHandlerCall( SvLBoxEntry* _pEntry )
+ void DbaIndexList::SelectNoHandlerCall( SvTreeListEntry* _pEntry )
{
disableSelectHandler();
Select(_pEntry, sal_True);
@@ -154,7 +154,7 @@ namespace dbaui
}
//------------------------------------------------------------------
- sal_Bool DbaIndexList::Select( SvLBoxEntry* pEntry, sal_Bool _bSelect )
+ sal_Bool DbaIndexList::Select( SvTreeListEntry* pEntry, sal_Bool _bSelect )
{
sal_Bool bReturn = SvTreeListBox::Select(pEntry, _bSelect);
@@ -273,7 +273,7 @@ DBG_NAME(DbaIndexDialog)
{
m_aActions.EnableItem(ID_INDEX_NEW, !m_aIndexes.IsEditingActive());
- SvLBoxEntry* pSelected = m_aIndexes.FirstSelected();
+ SvTreeListEntry* pSelected = m_aIndexes.FirstSelected();
sal_Bool bSelectedAnything = NULL != pSelected;
@@ -304,7 +304,7 @@ DBG_NAME(DbaIndexDialog)
Indexes::iterator aEnd = m_pIndexes->end();
for (; aIndexLoop != aEnd; ++aIndexLoop)
{
- SvLBoxEntry* pNewEntry = NULL;
+ SvTreeListEntry* pNewEntry = NULL;
if (aIndexLoop->bPrimaryKey)
pNewEntry = m_aIndexes.InsertEntry(aIndexLoop->sName, aPKeyIcon, aPKeyIcon);
else
@@ -327,7 +327,7 @@ DBG_NAME(DbaIndexDialog)
}
//------------------------------------------------------------------
- sal_Bool DbaIndexDialog::implCommit(SvLBoxEntry* _pEntry)
+ sal_Bool DbaIndexDialog::implCommit(SvTreeListEntry* _pEntry)
{
OSL_ENSURE(_pEntry, "DbaIndexDialog::implCommit: invalid entry!");
@@ -389,12 +389,12 @@ DBG_NAME(DbaIndexDialog)
return;
}
- SvLBoxEntry* pNewEntry = m_aIndexes.InsertEntry(sNewIndexName);
+ SvTreeListEntry* pNewEntry = m_aIndexes.InsertEntry(sNewIndexName);
m_pIndexes->insert(sNewIndexName);
// update the user data on the entries in the list box:
// they're iterators of the index collection, and thus they have changed when removing the index
- for (SvLBoxEntry* pAdjust = m_aIndexes.First(); pAdjust; pAdjust = m_aIndexes.Next(pAdjust))
+ for (SvTreeListEntry* pAdjust = m_aIndexes.First(); pAdjust; pAdjust = m_aIndexes.Next(pAdjust))
{
Indexes::iterator aAfterInsertPos = m_pIndexes->find(m_aIndexes.GetEntryText(pAdjust));
OSL_ENSURE(aAfterInsertPos != m_pIndexes->end(), "DbaIndexDialog::OnNewIndex: problems with on of the entries!");
@@ -412,7 +412,7 @@ DBG_NAME(DbaIndexDialog)
void DbaIndexDialog::OnDropIndex(sal_Bool _bConfirm)
{
// the selected index
- SvLBoxEntry* pSelected = m_aIndexes.FirstSelected();
+ SvTreeListEntry* pSelected = m_aIndexes.FirstSelected();
OSL_ENSURE(pSelected, "DbaIndexDialog::OnDropIndex: invalid call!");
if (pSelected)
{
@@ -435,7 +435,7 @@ DBG_NAME(DbaIndexDialog)
}
//------------------------------------------------------------------
- sal_Bool DbaIndexDialog::implDropIndex(SvLBoxEntry* _pEntry, sal_Bool _bRemoveFromCollection)
+ sal_Bool DbaIndexDialog::implDropIndex(SvTreeListEntry* _pEntry, sal_Bool _bRemoveFromCollection)
{
// do the drop
Indexes::iterator aDropPos = m_pIndexes->begin() + reinterpret_cast<sal_IntPtr>(_pEntry->GetUserData());
@@ -458,7 +458,7 @@ DBG_NAME(DbaIndexDialog)
showError(aExceptionInfo, this, m_xORB);
else if (bSuccess && _bRemoveFromCollection)
{
- SvLBoxTreeList* pModel = m_aIndexes.GetModel();
+ SvTreeList* pModel = m_aIndexes.GetModel();
m_aIndexes.disableSelectHandler();
pModel->Remove(_pEntry);
@@ -466,7 +466,7 @@ DBG_NAME(DbaIndexDialog)
// update the user data on the entries in the list box:
// they're iterators of the index collection, and thus they have changed when removing the index
- for (SvLBoxEntry* pAdjust = m_aIndexes.First(); pAdjust; pAdjust = m_aIndexes.Next(pAdjust))
+ for (SvTreeListEntry* pAdjust = m_aIndexes.First(); pAdjust; pAdjust = m_aIndexes.Next(pAdjust))
{
Indexes::iterator aAfterDropPos = m_pIndexes->find(m_aIndexes.GetEntryText(pAdjust));
OSL_ENSURE(aAfterDropPos != m_pIndexes->end(), "DbaIndexDialog::OnDropIndex: problems with on of the remaining entries!");
@@ -489,7 +489,7 @@ DBG_NAME(DbaIndexDialog)
void DbaIndexDialog::OnRenameIndex()
{
// the selected index
- SvLBoxEntry* pSelected = m_aIndexes.FirstSelected();
+ SvTreeListEntry* pSelected = m_aIndexes.FirstSelected();
OSL_ENSURE(pSelected, "DbaIndexDialog::OnRenameIndex: invalid call!");
// save the changes made 'til here
@@ -506,7 +506,7 @@ DBG_NAME(DbaIndexDialog)
{
// the selected index
#if OSL_DEBUG_LEVEL > 0
- SvLBoxEntry* pSelected = m_aIndexes.FirstSelected();
+ SvTreeListEntry* pSelected = m_aIndexes.FirstSelected();
OSL_ENSURE( pSelected, "DbaIndexDialog::OnSaveIndex: invalid call!" );
#endif
@@ -518,7 +518,7 @@ DBG_NAME(DbaIndexDialog)
void DbaIndexDialog::OnResetIndex()
{
// the selected index
- SvLBoxEntry* pSelected = m_aIndexes.FirstSelected();
+ SvTreeListEntry* pSelected = m_aIndexes.FirstSelected();
OSL_ENSURE(pSelected, "DbaIndexDialog::OnResetIndex: invalid call!");
Indexes::iterator aResetPos = m_pIndexes->begin() + reinterpret_cast<sal_IntPtr>(pSelected->GetUserData());
@@ -587,7 +587,7 @@ DBG_NAME(DbaIndexDialog)
}
// the currently selected entry
- const SvLBoxEntry* pSelected = m_aIndexes.FirstSelected();
+ const SvTreeListEntry* pSelected = m_aIndexes.FirstSelected();
OSL_ENSURE(pSelected == m_pPreviousSelection, "DbaIndexDialog::OnCloseDialog: inconsistence!");
sal_Int32 nResponse = RET_NO;
@@ -621,7 +621,7 @@ DBG_NAME(DbaIndexDialog)
}
//------------------------------------------------------------------
- IMPL_LINK( DbaIndexDialog, OnEditIndexAgain, SvLBoxEntry*, _pEntry )
+ IMPL_LINK( DbaIndexDialog, OnEditIndexAgain, SvTreeListEntry*, _pEntry )
{
m_bEditAgain = sal_False;
m_aIndexes.EditEntry(_pEntry);
@@ -629,7 +629,7 @@ DBG_NAME(DbaIndexDialog)
}
//------------------------------------------------------------------
- IMPL_LINK( DbaIndexDialog, OnEntryEdited, SvLBoxEntry*, _pEntry )
+ IMPL_LINK( DbaIndexDialog, OnEntryEdited, SvTreeListEntry*, _pEntry )
{
Indexes::iterator aPosition = m_pIndexes->begin() + reinterpret_cast<sal_IntPtr>(_pEntry->GetUserData());
@@ -767,7 +767,7 @@ DBG_NAME(DbaIndexDialog)
}
//------------------------------------------------------------------
- void DbaIndexDialog::updateControls(const SvLBoxEntry* _pEntry)
+ void DbaIndexDialog::updateControls(const SvTreeListEntry* _pEntry)
{
if (_pEntry)
{
@@ -823,7 +823,7 @@ DBG_NAME(DbaIndexDialog)
m_aFieldsLabel.Enable(bHaveSelection);
m_pFields->Enable(bHaveSelection);
- SvLBoxEntry* pNewSelection = m_aIndexes.FirstSelected();
+ SvTreeListEntry* pNewSelection = m_aIndexes.FirstSelected();
updateControls(pNewSelection);
if (bHaveSelection)
m_aIndexes.GrabFocus();
diff --git a/dbaccess/source/ui/dlg/paramdialog.cxx b/dbaccess/source/ui/dlg/paramdialog.cxx
index 94895690ea92..1453c8434291 100644
--- a/dbaccess/source/ui/dlg/paramdialog.cxx
+++ b/dbaccess/source/ui/dlg/paramdialog.cxx
@@ -56,19 +56,6 @@ namespace dbaui
//==================================================================
//------------------------------------------------------------------------------
- #define INIT_MEMBERS() \
- :ModalDialog( pParent, ModuleRes(DLG_PARAMETERS)) \
- ,m_aNamesFrame (this, ModuleRes(FL_PARAMS)) \
- ,m_aAllParams (this, ModuleRes(LB_ALLPARAMS)) \
- ,m_aValueFrame (this, ModuleRes(FT_VALUE)) \
- ,m_aParam (this, ModuleRes(ET_PARAM)) \
- ,m_aTravelNext (this, ModuleRes(BT_TRAVELNEXT)) \
- ,m_aOKBtn (this, ModuleRes(BT_OK)) \
- ,m_aCancelBtn (this, ModuleRes(BT_CANCEL)) \
- ,m_nCurrentlySelected(LISTBOX_ENTRY_NOTFOUND) \
- ,m_xConnection(_rxConnection) \
- ,m_aPredicateInput( _rxORB, _rxConnection, getParseContext() ) \
- ,m_bNeedErrorOnCurrent(sal_True) \
//------------------------------------------------------------------------------
@@ -76,13 +63,24 @@ DBG_NAME(OParameterDialog)
OParameterDialog::OParameterDialog(
Window* pParent, const Reference< XIndexAccess > & rParamContainer,
- const Reference< XConnection > & _rxConnection, const Reference< XMultiServiceFactory >& _rxORB)
- INIT_MEMBERS()
+ const Reference< XConnection > & _rxConnection, const Reference< XComponentContext >& rxContext)
+ :ModalDialog( pParent, ModuleRes(DLG_PARAMETERS))
+ ,m_aNamesFrame (this, ModuleRes(FL_PARAMS))
+ ,m_aAllParams (this, ModuleRes(LB_ALLPARAMS))
+ ,m_aValueFrame (this, ModuleRes(FT_VALUE))
+ ,m_aParam (this, ModuleRes(ET_PARAM))
+ ,m_aTravelNext (this, ModuleRes(BT_TRAVELNEXT))
+ ,m_aOKBtn (this, ModuleRes(BT_OK))
+ ,m_aCancelBtn (this, ModuleRes(BT_CANCEL))
+ ,m_nCurrentlySelected(LISTBOX_ENTRY_NOTFOUND)
+ ,m_xConnection(_rxConnection)
+ ,m_aPredicateInput( rxContext, _rxConnection, getParseContext() )
+ ,m_bNeedErrorOnCurrent(sal_True)
{
DBG_CTOR(OParameterDialog,NULL);
- if (_rxORB.is())
- m_xFormatter = Reference< XNumberFormatter>( NumberFormatter::create(comphelper::getComponentContext(_rxORB)), UNO_QUERY_THROW);
+ if (rxContext.is())
+ m_xFormatter = Reference< XNumberFormatter>( NumberFormatter::create( rxContext ), UNO_QUERY_THROW);
else {
OSL_FAIL("OParameterDialog::OParameterDialog: need a service factory!");
}
diff --git a/dbaccess/source/ui/dlg/queryfilter.cxx b/dbaccess/source/ui/dlg/queryfilter.cxx
index a8696374338d..c6a38f75ba16 100644
--- a/dbaccess/source/ui/dlg/queryfilter.cxx
+++ b/dbaccess/source/ui/dlg/queryfilter.cxx
@@ -66,7 +66,7 @@ void Replace_SQL_PlaceHolder(String& aString)
DBG_NAME(DlgFilterCrit);
DlgFilterCrit::DlgFilterCrit(Window * pParent,
- const Reference< XMultiServiceFactory >& _rxORB,
+ const Reference< XComponentContext >& rxContext,
const Reference< XConnection>& _rxConnection,
const Reference< XSingleSelectQueryComposer >& _rxComposer,
const Reference< XNameAccess>& _rxCols
@@ -97,7 +97,7 @@ DlgFilterCrit::DlgFilterCrit(Window * pParent,
,m_xColumns( _rxCols )
,m_xConnection( _rxConnection )
,m_xMetaData( _rxConnection->getMetaData() )
- ,m_aPredicateInput( _rxORB, _rxConnection, getParseContext() )
+ ,m_aPredicateInput( rxContext, _rxConnection, getParseContext() )
{
DBG_CTOR(DlgFilterCrit,NULL);
// Write the String for noEntry into the ListBoxes of the field names
diff --git a/dbaccess/source/ui/dlg/sqlmessage.cxx b/dbaccess/source/ui/dlg/sqlmessage.cxx
index 323d819ef61d..f0b5d32c643a 100644
--- a/dbaccess/source/ui/dlg/sqlmessage.cxx
+++ b/dbaccess/source/ui/dlg/sqlmessage.cxx
@@ -296,7 +296,7 @@ namespace
void lcl_insertExceptionEntry( SvTreeListBox& _rList, size_t _nElementPos, const ExceptionDisplayInfo& _rEntry )
{
Image aEntryImage( _rEntry.pImageProvider->getImage() );
- SvLBoxEntry* pListEntry =
+ SvTreeListEntry* pListEntry =
_rList.InsertEntry( _rEntry.pLabelProvider->getLabel(), aEntryImage, aEntryImage );
pListEntry->SetUserData( reinterpret_cast< void* >( _nElementPos ) );
}
@@ -390,7 +390,7 @@ OExceptionChainDialog::~OExceptionChainDialog()
//------------------------------------------------------------------------------
IMPL_LINK_NOARG(OExceptionChainDialog, OnExceptionSelected)
{
- SvLBoxEntry* pSelected = m_aExceptionList.FirstSelected();
+ SvTreeListEntry* pSelected = m_aExceptionList.FirstSelected();
OSL_ENSURE(!pSelected || !m_aExceptionList.NextSelected(pSelected), "OExceptionChainDialog::OnExceptionSelected : multi selection ?");
String sText;
diff --git a/dbaccess/source/ui/dlg/tablespage.cxx b/dbaccess/source/ui/dlg/tablespage.cxx
index 3259a87d3f28..c58e5c4c6640 100644
--- a/dbaccess/source/ui/dlg/tablespage.cxx
+++ b/dbaccess/source/ui/dlg/tablespage.cxx
@@ -173,7 +173,7 @@ DBG_NAME(OTableSubscriptionPage)
String aListBoxTable;
::rtl::OUString sCatalog, sSchema, sName;
- SvLBoxEntry* pRootEntry = m_aTablesList.getAllObjectsEntry();
+ SvTreeListEntry* pRootEntry = m_aTablesList.getAllObjectsEntry();
sal_Bool bAllTables = sal_False;
sal_Bool bAllSchemas = sal_False;
@@ -189,7 +189,7 @@ DBG_NAME(OTableSubscriptionPage)
bAllSchemas = (1 == sSchema.getLength()) && ('%' == sSchema[0]);
// the catalog entry
- SvLBoxEntry* pCatalog = m_aTablesList.GetEntryPosByName(sCatalog, pRootEntry);
+ SvTreeListEntry* pCatalog = m_aTablesList.GetEntryPosByName(sCatalog, pRootEntry);
if (!(pCatalog || sCatalog.isEmpty()))
// the table (resp. its catalog) refered in this filter entry does not exist anymore
continue;
@@ -201,7 +201,7 @@ DBG_NAME(OTableSubscriptionPage)
}
// the schema entry
- SvLBoxEntry* pSchema = m_aTablesList.GetEntryPosByName(sSchema, (pCatalog ? pCatalog : pRootEntry));
+ SvTreeListEntry* pSchema = m_aTablesList.GetEntryPosByName(sSchema, (pCatalog ? pCatalog : pRootEntry));
if (!(pSchema || sSchema.isEmpty()))
// the table (resp. its schema) refered in this filter entry does not exist anymore
continue;
@@ -212,7 +212,7 @@ DBG_NAME(OTableSubscriptionPage)
continue;
}
- SvLBoxEntry* pEntry = m_aTablesList.GetEntryPosByName(sName, pSchema ? pSchema : (pCatalog ? pCatalog : pRootEntry) );
+ SvTreeListEntry* pEntry = m_aTablesList.GetEntryPosByName(sName, pSchema ? pSchema : (pCatalog ? pCatalog : pRootEntry) );
if (pEntry)
m_aTablesList.SetCheckButtonState(pEntry, SV_BUTTON_CHECKED);
}
@@ -384,7 +384,7 @@ DBG_NAME(OTableSubscriptionPage)
implCompleteTablesCheck( aTableFilter );
// expand the first entry by default
- SvLBoxEntry* pExpand = m_aTablesList.getAllObjectsEntry();
+ SvTreeListEntry* pExpand = m_aTablesList.getAllObjectsEntry();
while (pExpand)
{
m_aTablesList.Expand(pExpand);
@@ -401,7 +401,7 @@ DBG_NAME(OTableSubscriptionPage)
void OTableSubscriptionPage::CheckAll( sal_Bool _bCheck )
{
SvButtonState eState = _bCheck ? SV_BUTTON_CHECKED : SV_BUTTON_UNCHECKED;
- SvLBoxEntry* pEntry = m_aTablesList.First();
+ SvTreeListEntry* pEntry = m_aTablesList.First();
while (pEntry)
{
m_aTablesList.SetCheckButtonState( pEntry, eState);
@@ -434,12 +434,12 @@ DBG_NAME(OTableSubscriptionPage)
//------------------------------------------------------------------------
IMPL_LINK( OTableSubscriptionPage, OnTreeEntryCompare, const SvSortData*, _pSortData )
{
- SvLBoxEntry* pLHS = static_cast<SvLBoxEntry*>(_pSortData->pLeft);
- SvLBoxEntry* pRHS = static_cast<SvLBoxEntry*>(_pSortData->pRight);
+ const SvTreeListEntry* pLHS = static_cast<const SvTreeListEntry*>(_pSortData->pLeft);
+ const SvTreeListEntry* pRHS = static_cast<const SvTreeListEntry*>(_pSortData->pRight);
OSL_ENSURE(pLHS && pRHS, "SbaTableQueryBrowser::OnTreeEntryCompare: invalid tree entries!");
- SvLBoxString* pLeftTextItem = static_cast<SvLBoxString*>(pLHS->GetFirstItem(SV_ITEM_ID_LBOXSTRING));
- SvLBoxString* pRightTextItem = static_cast<SvLBoxString*>(pRHS->GetFirstItem(SV_ITEM_ID_LBOXSTRING));
+ const SvLBoxString* pLeftTextItem = static_cast<const SvLBoxString*>(pLHS->GetFirstItem(SV_ITEM_ID_LBOXSTRING));
+ const SvLBoxString* pRightTextItem = static_cast<const SvLBoxString*>(pRHS->GetFirstItem(SV_ITEM_ID_LBOXSTRING));
OSL_ENSURE(pLeftTextItem && pRightTextItem, "SbaTableQueryBrowser::OnTreeEntryCompare: invalid text items!");
String sLeftText = pLeftTextItem->GetText();
@@ -472,16 +472,16 @@ DBG_NAME(OTableSubscriptionPage)
static const ::rtl::OUString sWildcard(RTL_CONSTASCII_USTRINGPARAM("%"));
::rtl::OUString sComposedName;
- const SvLBoxEntry* pAllObjectsEntry = m_aTablesList.getAllObjectsEntry();
+ const SvTreeListEntry* pAllObjectsEntry = m_aTablesList.getAllObjectsEntry();
if (!pAllObjectsEntry)
return aTableFilter;
- SvLBoxEntry* pEntry = m_aTablesList.GetModel()->Next(const_cast<SvLBoxEntry*>(pAllObjectsEntry));
+ SvTreeListEntry* pEntry = m_aTablesList.GetModel()->Next(const_cast<SvTreeListEntry*>(pAllObjectsEntry));
while(pEntry)
{
sal_Bool bCatalogWildcard = sal_False;
sal_Bool bSchemaWildcard = sal_False;
- SvLBoxEntry* pSchema = NULL;
- SvLBoxEntry* pCatalog = NULL;
+ SvTreeListEntry* pSchema = NULL;
+ SvTreeListEntry* pCatalog = NULL;
if (m_aTablesList.GetCheckButtonState(pEntry) == SV_BUTTON_CHECKED && !m_aTablesList.GetModel()->HasChildren(pEntry))
{ // checked and a leaf, which means it's no catalog, no schema, but a real table
@@ -559,9 +559,9 @@ DBG_NAME(OTableSubscriptionPage)
}
//------------------------------------------------------------------------
- SvLBoxEntry* OTableSubscriptionPage::implNextSibling(SvLBoxEntry* _pEntry) const
+ SvTreeListEntry* OTableSubscriptionPage::implNextSibling(SvTreeListEntry* _pEntry) const
{
- SvLBoxEntry* pReturn = NULL;
+ SvTreeListEntry* pReturn = NULL;
if (_pEntry)
{
pReturn = m_aTablesList.NextSibling(_pEntry);
diff --git a/dbaccess/source/ui/dlg/tablespage.hxx b/dbaccess/source/ui/dlg/tablespage.hxx
index 02c9aa4c45f4..6a64c2e2c31c 100644
--- a/dbaccess/source/ui/dlg/tablespage.hxx
+++ b/dbaccess/source/ui/dlg/tablespage.hxx
@@ -88,7 +88,7 @@ namespace dbaui
void implCheckTables(const ::com::sun::star::uno::Sequence< ::rtl::OUString >& _rTables);
/// returns the next sibling, if not available, the next sibling of the parent, a.s.o.
- SvLBoxEntry* implNextSibling(SvLBoxEntry* _pEntry) const;
+ SvTreeListEntry* implNextSibling(SvTreeListEntry* _pEntry) const;
/** return the current selection in <member>m_aTablesList</member>
*/
diff --git a/dbaccess/source/ui/inc/TableCopyHelper.hxx b/dbaccess/source/ui/inc/TableCopyHelper.hxx
index a7d15480e972..65326d9a1b74 100644
--- a/dbaccess/source/ui/inc/TableCopyHelper.hxx
+++ b/dbaccess/source/ui/inc/TableCopyHelper.hxx
@@ -28,7 +28,7 @@
#include <com/sun/star/sdbc/XResultSet.hpp>
#include <functional>
-class SvLBoxEntry;
+class SvTreeListEntry;
//........................................................................
namespace dbaui
{
@@ -79,7 +79,7 @@ namespace dbaui
String aUrl;
SotStorageStreamRef aHtmlRtfStorage;
ElementType nType;
- SvLBoxEntry* pDroppedAt;
+ SvTreeListEntry* pDroppedAt;
sal_Int8 nAction;
sal_Bool bHtml;
sal_Bool bError;
diff --git a/dbaccess/source/ui/inc/TableWindow.hxx b/dbaccess/source/ui/inc/TableWindow.hxx
index ecdfcae164f2..bffde7216eb0 100644
--- a/dbaccess/source/ui/inc/TableWindow.hxx
+++ b/dbaccess/source/ui/inc/TableWindow.hxx
@@ -31,7 +31,7 @@
#include <comphelper/containermultiplexer.hxx>
#include "cppuhelper/basemutex.hxx"
-class SvLBoxEntry;
+class SvTreeListEntry;
namespace dbaui
{
//////////////////////////////////////////////////////////////////////////
@@ -88,7 +88,7 @@ namespace dbaui
sal_Bool FillListBox();
// wird in JEDEM Init aufgerufen
- virtual void OnEntryDoubleClicked(SvLBoxEntry* /*pEntry*/) { }
+ virtual void OnEntryDoubleClicked(SvTreeListEntry* /*pEntry*/) { }
// wird aus dem DoubleClickHdl der ListBox heraus aufgerufen
/** HandleKeyInput triues to handle the KeyEvent. Movement or deletion
diff --git a/dbaccess/source/ui/inc/TableWindowListBox.hxx b/dbaccess/source/ui/inc/TableWindowListBox.hxx
index 890f69887e6e..e42658f23363 100644
--- a/dbaccess/source/ui/inc/TableWindowListBox.hxx
+++ b/dbaccess/source/ui/inc/TableWindowListBox.hxx
@@ -31,7 +31,7 @@ namespace dbaui
{
public:
OTableWindowListBox* pListBox; // die ListBox innerhalb desselben (daraus kann man sich das TabWin und daraus den WinName besorgen)
- SvLBoxEntry* pEntry; // der Eintrag, der gedraggt oder auf den gedroppt wurde
+ SvTreeListEntry* pEntry; // der Eintrag, der gedraggt oder auf den gedroppt wurde
OJoinExchangeData(OTableWindowListBox* pBox);
OJoinExchangeData() : pListBox(NULL), pEntry(NULL) { }
@@ -88,7 +88,7 @@ namespace dbaui
virtual void Command(const CommandEvent& rEvt);
OTableWindow* GetTabWin(){ return m_pTabWin; }
- SvLBoxEntry* GetEntryFromText( const String& rEntryText );
+ SvTreeListEntry* GetEntryFromText( const String& rEntryText );
private:
using SvTreeListBox::ExecuteDrop;
diff --git a/dbaccess/source/ui/inc/WNameMatch.hxx b/dbaccess/source/ui/inc/WNameMatch.hxx
index ba5cb519f565..0beb95559bee 100644
--- a/dbaccess/source/ui/inc/WNameMatch.hxx
+++ b/dbaccess/source/ui/inc/WNameMatch.hxx
@@ -35,14 +35,14 @@ namespace dbaui
{
sal_Bool m_bReadOnly;
protected:
- virtual void InitEntry(SvLBoxEntry* pEntry, const String& rStr, const Image& rImg1, const Image& rImg2, SvLBoxButtonKind eButtonKind);
+ virtual void InitEntry(SvTreeListEntry* pEntry, const OUString& rStr, const Image& rImg1, const Image& rImg2, SvLBoxButtonKind eButtonKind);
public:
OColumnTreeBox( Window* pParent, const ResId& rResId );
void FillListBox( const ODatabaseExport::TColumnVector& _rList);
void SetReadOnly(sal_Bool _bRo=sal_True) { m_bReadOnly = _bRo; }
- virtual sal_Bool Select( SvLBoxEntry* pEntry, sal_Bool bSelect=sal_True );
+ virtual sal_Bool Select( SvTreeListEntry* pEntry, sal_Bool bSelect=sal_True );
private:
using OMarkableTreeListBox::Select;
diff --git a/dbaccess/source/ui/inc/callbacks.hxx b/dbaccess/source/ui/inc/callbacks.hxx
index b49b7aadc3ba..9aaf4a1fc96a 100644
--- a/dbaccess/source/ui/inc/callbacks.hxx
+++ b/dbaccess/source/ui/inc/callbacks.hxx
@@ -24,7 +24,7 @@
#include <sot/formats.hxx>
#include <com/sun/star/container/XContainer.hpp>
-class SvLBoxEntry;
+class SvTreeListEntry;
class String;
class Point;
class PopupMenu;
@@ -49,7 +49,7 @@ namespace dbaui
/** requests a quick help text to display
@return <FALSE/> if the default quick help text should be used
*/
- virtual sal_Bool requestQuickHelp( const SvLBoxEntry* _pEntry, String& _rText ) const = 0;
+ virtual sal_Bool requestQuickHelp( const SvTreeListEntry* _pEntry, String& _rText ) const = 0;
/** handler for StartDrag requests
@return <TRUE/> if a drag operation was started
diff --git a/dbaccess/source/ui/inc/dbtreelistbox.hxx b/dbaccess/source/ui/inc/dbtreelistbox.hxx
index f5948baee4cd..f61c8ad7e30b 100644
--- a/dbaccess/source/ui/inc/dbtreelistbox.hxx
+++ b/dbaccess/source/ui/inc/dbtreelistbox.hxx
@@ -34,14 +34,14 @@ namespace dbaui
{
struct DBTreeEditedEntry
{
- SvLBoxEntry* pEntry;
+ SvTreeListEntry* pEntry;
XubString aNewText;
};
class IEntryFilter
{
public:
- virtual bool includeEntry( SvLBoxEntry* _pEntry ) const = 0;
+ virtual bool includeEntry( SvTreeListEntry* _pEntry ) const = 0;
protected:
~IEntryFilter() {}
@@ -56,8 +56,8 @@ namespace dbaui
OScrollHelper m_aScrollHelper;
Timer m_aTimer; // is needed for table updates
Point m_aMousePos;
- ::std::set< SvListEntry* > m_aSelectedEntries;
- SvLBoxEntry* m_pDragedEntry;
+ std::set<SvTreeListEntry*> m_aSelectedEntries;
+ SvTreeListEntry* m_pDragedEntry;
IControlActionListener* m_pActionListener;
IContextMenuProvider*
m_pContextMenuProvider;
@@ -81,7 +81,7 @@ namespace dbaui
private:
void init();
DECL_LINK( OnTimeOut, void* );
- DECL_LINK( OnResetEntry, SvLBoxEntry* );
+ DECL_LINK( OnResetEntry, SvTreeListEntry* );
DECL_LINK( ScrollUpHdl, SvTreeListBox* );
DECL_LINK( ScrollDownHdl, SvTreeListBox* );
@@ -113,21 +113,21 @@ namespace dbaui
// modified the given entry so that the expand handler is called whenever the entry is expanded
// (normally, the expand handler is called only once)
- void EnableExpandHandler(SvLBoxEntry* _pEntry);
+ void EnableExpandHandler(SvTreeListEntry* _pEntry);
- SvLBoxEntry* GetEntryPosByName( const String& aName, SvLBoxEntry* pStart = NULL, const IEntryFilter* _pFilter = NULL ) const;
- virtual void RequestingChildren( SvLBoxEntry* pParent );
+ SvTreeListEntry* GetEntryPosByName( const String& aName, SvTreeListEntry* pStart = NULL, const IEntryFilter* _pFilter = NULL ) const;
+ virtual void RequestingChildren( SvTreeListEntry* pParent );
virtual void SelectHdl();
virtual void DeselectHdl();
// Window
virtual void KeyInput( const KeyEvent& rKEvt );
virtual void StateChanged( StateChangedType nStateChange );
- virtual void InitEntry( SvLBoxEntry* pEntry, const XubString& aStr, const Image& aCollEntryBmp, const Image& aExpEntryBmp, SvLBoxButtonKind eButtonKind);
+ virtual void InitEntry(SvTreeListEntry* pEntry, const OUString& aStr, const Image& aCollEntryBmp, const Image& aExpEntryBmp, SvLBoxButtonKind eButtonKind);
// enable editing for tables/views and queries
- virtual sal_Bool EditingEntry( SvLBoxEntry* pEntry, Selection& );
- virtual sal_Bool EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString& rNewText );
+ virtual sal_Bool EditingEntry( SvTreeListEntry* pEntry, Selection& );
+ virtual sal_Bool EditedEntry( SvTreeListEntry* pEntry, const rtl::OUString& rNewText );
virtual sal_Bool DoubleClickHdl();
@@ -148,8 +148,8 @@ namespace dbaui
virtual sal_Int8 AcceptDrop( const AcceptDropEvent& _rEvt );
virtual sal_Int8 ExecuteDrop( const ExecuteDropEvent& _rEvt );
- virtual void ModelHasRemoved( SvListEntry* pEntry );
- virtual void ModelHasEntryInvalidated( SvListEntry* pEntry );
+ virtual void ModelHasRemoved( SvTreeListEntry* pEntry );
+ virtual void ModelHasEntryInvalidated( SvTreeListEntry* pEntry );
void implStopSelectionTimer();
void implStartSelectionTimer();
diff --git a/dbaccess/source/ui/inc/indexdialog.hxx b/dbaccess/source/ui/inc/indexdialog.hxx
index 61ae42971402..b8f2bd64be54 100644
--- a/dbaccess/source/ui/inc/indexdialog.hxx
+++ b/dbaccess/source/ui/inc/indexdialog.hxx
@@ -59,12 +59,12 @@ namespace dbaui
void SetEndEditHdl(const Link& _rHdl) { m_aEndEditHdl = _rHdl; }
Link GetEndEditHdl() const { return m_aEndEditHdl; }
- virtual sal_Bool Select( SvLBoxEntry* pEntry, sal_Bool bSelect );
+ virtual sal_Bool Select( SvTreeListEntry* pEntry, sal_Bool bSelect );
void enableSelectHandler();
void disableSelectHandler();
- void SelectNoHandlerCall( SvLBoxEntry* pEntry );
+ void SelectNoHandlerCall( SvTreeListEntry* pEntry );
inline void setConnection(const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection)
{
@@ -72,7 +72,7 @@ namespace dbaui
}
protected:
- virtual sal_Bool EditedEntry( SvLBoxEntry* pEntry, const rtl::OUString& rNewText );
+ virtual sal_Bool EditedEntry( SvTreeListEntry* pEntry, const rtl::OUString& rNewText );
private:
using SvTreeListBox::Select;
@@ -102,7 +102,7 @@ namespace dbaui
HelpButton m_aHelp;
OIndexCollection* m_pIndexes;
- SvLBoxEntry* m_pPreviousSelection;
+ SvTreeListEntry* m_pPreviousSelection;
sal_Bool m_bEditAgain;
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >
@@ -136,16 +136,16 @@ namespace dbaui
protected:
void fillIndexList();
void updateToolbox();
- void updateControls(const SvLBoxEntry* _pEntry);
+ void updateControls(const SvTreeListEntry* _pEntry);
protected:
DECL_LINK( OnIndexSelected, DbaIndexList* );
DECL_LINK( OnIndexAction, ToolBox* );
- DECL_LINK( OnEntryEdited, SvLBoxEntry* );
+ DECL_LINK( OnEntryEdited, SvTreeListEntry* );
DECL_LINK( OnModified, void* );
DECL_LINK( OnCloseDialog, void* );
- DECL_LINK( OnEditIndexAgain, SvLBoxEntry* );
+ DECL_LINK( OnEditIndexAgain, SvTreeListEntry* );
private:
void OnNewIndex();
@@ -154,11 +154,11 @@ namespace dbaui
void OnSaveIndex();
void OnResetIndex();
- sal_Bool implCommit(SvLBoxEntry* _pEntry);
+ sal_Bool implCommit(SvTreeListEntry* _pEntry);
sal_Bool implSaveModified(sal_Bool _bPlausibility = sal_True);
sal_Bool implCommitPreviouslySelected();
- sal_Bool implDropIndex(SvLBoxEntry* _pEntry, sal_Bool _bRemoveFromCollection);
+ sal_Bool implDropIndex(SvTreeListEntry* _pEntry, sal_Bool _bRemoveFromCollection);
sal_Bool implCheckPlausibility(const ConstIndexesIterator& _rPos);
diff --git a/dbaccess/source/ui/inc/listviewitems.hxx b/dbaccess/source/ui/inc/listviewitems.hxx
index 99aca2095a40..c9d076cc9ca4 100644
--- a/dbaccess/source/ui/inc/listviewitems.hxx
+++ b/dbaccess/source/ui/inc/listviewitems.hxx
@@ -37,7 +37,7 @@ namespace dbaui
sal_Bool m_bEmphasized;
public:
- OBoldListboxString(SvLBoxEntry* _pEntry, sal_uInt16 _nFlags, const XubString& _rStr)
+ OBoldListboxString(SvTreeListEntry* _pEntry, sal_uInt16 _nFlags, const XubString& _rStr)
:SvLBoxString(_pEntry, _nFlags, _rStr)
,m_bEmphasized(sal_False)
{
@@ -45,8 +45,8 @@ namespace dbaui
virtual sal_uInt16 IsA();
- virtual void Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvLBoxEntry* pEntry);
- virtual void InitViewData( SvTreeListBox* pView,SvLBoxEntry* pEntry, SvViewDataItem* _pViewData);
+ virtual void Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvTreeListEntry* pEntry);
+ virtual void InitViewData( SvTreeListBox* pView,SvTreeListEntry* pEntry, SvViewDataItem* _pViewData);
sal_Bool isEmphasized() const { return m_bEmphasized; }
void emphasize(sal_Bool _bEmphasize) { m_bEmphasized = _bEmphasize; }
diff --git a/dbaccess/source/ui/inc/marktree.hxx b/dbaccess/source/ui/inc/marktree.hxx
index adda68952197..0567e22d8947 100644
--- a/dbaccess/source/ui/inc/marktree.hxx
+++ b/dbaccess/source/ui/inc/marktree.hxx
@@ -60,9 +60,9 @@ public:
protected:
virtual void Paint(const Rectangle& _rRect);
- virtual void checkedButton_noBroadcast(SvLBoxEntry* _pEntry);
+ virtual void checkedButton_noBroadcast(SvTreeListEntry* _pEntry);
- SvButtonState implDetermineState(SvLBoxEntry* _pEntry);
+ SvButtonState implDetermineState(SvTreeListEntry* _pEntry);
// determines the check state of the given entry, by analyzing the states of all descendants
private:
diff --git a/dbaccess/source/ui/inc/paramdialog.hxx b/dbaccess/source/ui/inc/paramdialog.hxx
index 34b783a82cdb..45596df04ebb 100644
--- a/dbaccess/source/ui/inc/paramdialog.hxx
+++ b/dbaccess/source/ui/inc/paramdialog.hxx
@@ -88,7 +88,7 @@ namespace dbaui
OParameterDialog(Window* _pParent,
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess > & _rParamContainer,
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection > & _rxConnection,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB);
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext);
~OParameterDialog();
::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >
diff --git a/dbaccess/source/ui/inc/queryfilter.hxx b/dbaccess/source/ui/inc/queryfilter.hxx
index 29bf4667bf29..04856f0a7ac3 100644
--- a/dbaccess/source/ui/inc/queryfilter.hxx
+++ b/dbaccess/source/ui/inc/queryfilter.hxx
@@ -119,7 +119,7 @@ namespace dbaui
public:
DlgFilterCrit( Window * pParent,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection>& _rxConnection,
const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XSingleSelectQueryComposer>& _rxComposer,
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess>& _rxCols
diff --git a/dbaccess/source/ui/inc/tabletree.hxx b/dbaccess/source/ui/inc/tabletree.hxx
index e545ef081a67..960f426d7e04 100644
--- a/dbaccess/source/ui/inc/tabletree.hxx
+++ b/dbaccess/source/ui/inc/tabletree.hxx
@@ -77,11 +77,11 @@ public:
/** determines whether the given entry denotes a tables folder
*/
- bool isFolderEntry( const SvLBoxEntry* _pEntry ) const;
+ bool isFolderEntry( const SvTreeListEntry* _pEntry ) const;
/** determines whether the given entry denotes a table or view
*/
- bool isTableOrViewEntry( const SvLBoxEntry* _pEntry ) const
+ bool isTableOrViewEntry( const SvTreeListEntry* _pEntry ) const
{
return !isFolderEntry( _pEntry );
}
@@ -112,11 +112,11 @@ public:
/** returns a NamedDatabaseObject record which describes the given entry
*/
::com::sun::star::sdb::application::NamedDatabaseObject
- describeObject( SvLBoxEntry* _pEntry );
+ describeObject( SvTreeListEntry* _pEntry );
/** to be used if a foreign instance added a table
*/
- SvLBoxEntry* addedTable( const ::rtl::OUString& _rName );
+ SvTreeListEntry* addedTable( const ::rtl::OUString& _rName );
/** to be used if a foreign instance removed a table
*/
@@ -126,37 +126,37 @@ public:
@param _pEntry
the entry whose name is to be obtained. Must not denote a folder entry.
*/
- String getQualifiedTableName( SvLBoxEntry* _pEntry ) const;
+ String getQualifiedTableName( SvTreeListEntry* _pEntry ) const;
- SvLBoxEntry* getEntryByQualifiedName( const ::rtl::OUString& _rName );
+ SvTreeListEntry* getEntryByQualifiedName( const ::rtl::OUString& _rName );
- SvLBoxEntry* getAllObjectsEntry() const;
+ SvTreeListEntry* getAllObjectsEntry() const;
/** does a wildcard check of the given entry
<p>There are two different 'checked' states: If the user checks all children of an entry, this is different
from checking the entry itself. The second is called 'wildcard' checking, 'cause in the resulting
table filter it's represented by a wildcard.</p>
*/
- void checkWildcard(SvLBoxEntry* _pEntry);
+ void checkWildcard(SvTreeListEntry* _pEntry);
/** determine if the given entry is 'wildcard checked'
@see checkWildcard
*/
- sal_Bool isWildcardChecked(SvLBoxEntry* _pEntry) const;
+ sal_Bool isWildcardChecked(SvTreeListEntry* _pEntry) const;
protected:
- virtual void InitEntry(SvLBoxEntry* _pEntry, const XubString& _rString, const Image& _rCollapsedBitmap, const Image& _rExpandedBitmap, SvLBoxButtonKind _eButtonKind);
+ virtual void InitEntry(SvTreeListEntry* _pEntry, const OUString& _rString, const Image& _rCollapsedBitmap, const Image& _rExpandedBitmap, SvLBoxButtonKind _eButtonKind);
- virtual void checkedButton_noBroadcast(SvLBoxEntry* _pEntry);
+ virtual void checkedButton_noBroadcast(SvTreeListEntry* _pEntry);
- void implEmphasize(SvLBoxEntry* _pEntry, sal_Bool _bChecked, sal_Bool _bUpdateDescendants = sal_True, sal_Bool _bUpdateAncestors = sal_True);
+ void implEmphasize(SvTreeListEntry* _pEntry, sal_Bool _bChecked, sal_Bool _bUpdateDescendants = sal_True, sal_Bool _bUpdateAncestors = sal_True);
/** adds the given entry to our list
@precond
our image provider must already have been reset to the connection to which the meta data
belong.
*/
- SvLBoxEntry* implAddEntry(
+ SvTreeListEntry* implAddEntry(
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDatabaseMetaData >& _rxMeta,
const ::rtl::OUString& _rTableName,
sal_Bool _bCheckName = sal_True
diff --git a/dbaccess/source/ui/inc/unodatbr.hxx b/dbaccess/source/ui/inc/unodatbr.hxx
index 323b98c54ef8..5d6fbe63f6a1 100644
--- a/dbaccess/source/ui/inc/unodatbr.hxx
+++ b/dbaccess/source/ui/inc/unodatbr.hxx
@@ -44,13 +44,13 @@
#include "commontypes.hxx"
// =========================================================================
-class SvLBoxEntry;
+class SvTreeListEntry;
class Splitter;
struct SvSortData;
namespace com { namespace sun{ namespace star { namespace container { class XNameContainer; } } } }
-class SvLBoxTreeList;
+class SvTreeList;
// .........................................................................
namespace dbaui
{
@@ -109,8 +109,8 @@ namespace dbaui
DBTreeView* m_pTreeView;
Splitter* m_pSplitter;
- SvLBoxTreeList* m_pTreeModel; // contains the datasources of the registry
- SvLBoxEntry* m_pCurrentlyDisplayed;
+ SvTreeList* m_pTreeModel; // contains the datasources of the registry
+ SvTreeListEntry* m_pCurrentlyDisplayed;
sal_uLong m_nAsyncDrop;
sal_Int16 m_nBorder; // sal_True when border should be shown
@@ -234,7 +234,7 @@ namespace dbaui
virtual void Execute(sal_uInt16 nId, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue>& aArgs);
// IControlActionListener overridables
- virtual sal_Bool requestQuickHelp( const SvLBoxEntry* _pEntry, String& _rText ) const;
+ virtual sal_Bool requestQuickHelp( const SvTreeListEntry* _pEntry, String& _rText ) const;
virtual sal_Bool requestDrag( sal_Int8 _nAction, const Point& _rPosPixel );
virtual sal_Int8 queryDrop( const AcceptDropEvent& _rEvt, const DataFlavorExVector& _rFlavors );
virtual sal_Int8 executeDrop( const ExecuteDropEvent& _rEvt );
@@ -262,11 +262,11 @@ namespace dbaui
// methods for handling the 'selection' (paintin them bold) of SvLBoxEntries
// returns <TRUE/> if the entry is selected (which means it's part of the selected path)
- sal_Bool isSelected(SvLBoxEntry* _pEntry) const;
+ sal_Bool isSelected(SvTreeListEntry* _pEntry) const;
// select the entry (and only the entry, not the whole path)
- void select(SvLBoxEntry* _pEntry, sal_Bool _bSelect = sal_True);
+ void select(SvTreeListEntry* _pEntry, sal_Bool _bSelect = sal_True);
// select the path of the entry (which must be an entry without children)
- void selectPath(SvLBoxEntry* _pEntry, sal_Bool _bSelect = sal_True);
+ void selectPath(SvTreeListEntry* _pEntry, sal_Bool _bSelect = sal_True);
virtual void loadMenu(const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& _xFrame);
@@ -311,52 +311,52 @@ namespace dbaui
void unloadAndCleanup( sal_Bool _bDisposeConnection = sal_True );
// disposes the connection associated with the given entry (which must represent a data source)
- void disposeConnection( SvLBoxEntry* _pDSEntry );
+ void disposeConnection( SvTreeListEntry* _pDSEntry );
/// flushs and disposes the given connection, and de-registers as listener
void impl_releaseConnection( SharedConnection& _rxConnection );
/** close the connection (and collapse the list entries) of the given list entries
*/
- void closeConnection(SvLBoxEntry* _pEntry,sal_Bool _bDisposeConnection = sal_True);
+ void closeConnection(SvTreeListEntry* _pEntry,sal_Bool _bDisposeConnection = sal_True);
- void populateTree(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess>& _xNameAccess, SvLBoxEntry* _pParent, EntryType _eEntryType);
+ void populateTree(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess>& _xNameAccess, SvTreeListEntry* _pParent, EntryType _eEntryType);
void initializeTreeModel();
/** search in the tree for query- or tablecontainer equal to this interface and return
this container entry
*/
- SvLBoxEntry* getEntryFromContainer(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess>& _rxNameAccess);
+ SvTreeListEntry* getEntryFromContainer(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess>& _rxNameAccess);
// return true when there is connection available
- sal_Bool ensureConnection(SvLBoxEntry* _pDSEntry, void * pDSData, SharedConnection& _rConnection );
- sal_Bool ensureConnection(SvLBoxEntry* _pAnyEntry, SharedConnection& _rConnection );
+ sal_Bool ensureConnection(SvTreeListEntry* _pDSEntry, void * pDSData, SharedConnection& _rConnection );
+ sal_Bool ensureConnection(SvTreeListEntry* _pAnyEntry, SharedConnection& _rConnection );
- sal_Bool getExistentConnectionFor( SvLBoxEntry* _pDSEntry, SharedConnection& _rConnection );
+ sal_Bool getExistentConnectionFor( SvTreeListEntry* _pDSEntry, SharedConnection& _rConnection );
/** returns an image provider which works with the connection belonging to the given entry
*/
::std::auto_ptr< ImageProvider >
- getImageProviderFor( SvLBoxEntry* _pAnyEntry );
+ getImageProviderFor( SvTreeListEntry* _pAnyEntry );
- void implAdministrate( SvLBoxEntry* _pApplyTo );
+ void implAdministrate( SvTreeListEntry* _pApplyTo );
TransferableHelper*
- implCopyObject( SvLBoxEntry* _pApplyTo, sal_Int32 _nCommandType, sal_Bool _bAllowConnection = sal_True );
+ implCopyObject( SvTreeListEntry* _pApplyTo, sal_Int32 _nCommandType, sal_Bool _bAllowConnection = sal_True );
- EntryType getEntryType( SvLBoxEntry* _pEntry ) const;
- EntryType getChildType( SvLBoxEntry* _pEntry ) const;
+ EntryType getEntryType( const SvTreeListEntry* _pEntry ) const;
+ EntryType getChildType( SvTreeListEntry* _pEntry ) const;
sal_Bool isObject( EntryType _eType ) const { return ( etTableOrView== _eType ) || ( etQuery == _eType ); }
sal_Bool isContainer( EntryType _eType ) const { return (etTableContainer == _eType) || (etQueryContainer == _eType); }
- sal_Bool isContainer( SvLBoxEntry* _pEntry ) const { return isContainer( getEntryType( _pEntry ) ); }
+ bool isContainer( const SvTreeListEntry* _pEntry ) const { return isContainer( getEntryType( _pEntry ) ); }
// ensure that the xObject for the given entry is set on the user data
- sal_Bool ensureEntryObject( SvLBoxEntry* _pEntry );
+ sal_Bool ensureEntryObject( SvTreeListEntry* _pEntry );
// get the display text of the entry given
- String GetEntryText( SvLBoxEntry* _pEntry ) const;
+ String GetEntryText( SvTreeListEntry* _pEntry ) const;
// is called when a table or a query was selected
DECL_LINK( OnSelectionChange, void* );
- DECL_LINK( OnExpandEntry, SvLBoxEntry* );
+ DECL_LINK( OnExpandEntry, SvTreeListEntry* );
DECL_LINK( OnCopyEntry, void* );
@@ -367,7 +367,7 @@ namespace dbaui
void implRemoveStatusListeners();
sal_Bool implSelect(const ::svx::ODataAccessDescriptor& _rDescriptor,sal_Bool _bSelectDirect = sal_False);
- bool implSelect( SvLBoxEntry* _pEntry );
+ bool implSelect( SvTreeListEntry* _pEntry );
/// selects the entry given and loads the grid control with the object's data
sal_Bool implSelect(
@@ -379,10 +379,10 @@ namespace dbaui
sal_Bool _bSelectDirect = sal_False
);
- SvLBoxEntry* implGetConnectionEntry(SvLBoxEntry* _pEntry) const;
+ SvTreeListEntry* implGetConnectionEntry(SvTreeListEntry* _pEntry) const;
/// inserts an entry into the tree
- SvLBoxEntry* implAppendEntry(
- SvLBoxEntry* _pParent,
+ SvTreeListEntry* implAppendEntry(
+ SvTreeListEntry* _pParent,
const String& _rName,
void* _pUserData,
EntryType _eEntryType
@@ -402,8 +402,8 @@ namespace dbaui
@param _bExpandAncestors
If <TRUE/>, all ancestor on the way to the entry will be expanded
*/
- SvLBoxEntry* getObjectEntry(const ::svx::ODataAccessDescriptor& _rDescriptor,
- SvLBoxEntry** _ppDataSourceEntry = NULL, SvLBoxEntry** _ppContainerEntry = NULL,
+ SvTreeListEntry* getObjectEntry(const ::svx::ODataAccessDescriptor& _rDescriptor,
+ SvTreeListEntry** _ppDataSourceEntry = NULL, SvTreeListEntry** _ppContainerEntry = NULL,
sal_Bool _bExpandAncestors = sal_True
);
/** retrieves the tree entry for the object described by data source name, command and command type
@@ -422,9 +422,9 @@ namespace dbaui
@param _bExpandAncestors
If <TRUE/>, all ancestor on the way to the entry will be expanded
*/
- SvLBoxEntry* getObjectEntry(
+ SvTreeListEntry* getObjectEntry(
const ::rtl::OUString& _rDataSource, const ::rtl::OUString& _rCommand, sal_Int32 _nCommandType,
- SvLBoxEntry** _ppDataSourceEntry = NULL, SvLBoxEntry** _ppContainerEntry = NULL,
+ SvTreeListEntry** _ppDataSourceEntry = NULL, SvTreeListEntry** _ppContainerEntry = NULL,
sal_Bool _bExpandAncestors = sal_True,
const SharedConnection& _rxConnection = SharedConnection()
);
@@ -444,20 +444,20 @@ namespace dbaui
#if OSL_DEBUG_LEVEL > 0
// checks whether the given tree entry denotes a data source
- bool impl_isDataSourceEntry( SvLBoxEntry* _pEntry ) const;
+ bool impl_isDataSourceEntry( SvTreeListEntry* _pEntry ) const;
#endif
/// retrieves the data source URL/name for the given entry representing a data source
- String getDataSourceAcessor( SvLBoxEntry* _pDataSourceEntry ) const;
+ String getDataSourceAcessor( SvTreeListEntry* _pDataSourceEntry ) const;
/** get the signature (command/escape processing) of the query the form is based on
<p>If the for is not based on a query or not even loaded, nothing happens and <FALSE/> is returned.</p>
*/
sal_Bool implGetQuerySignature( ::rtl::OUString& _rCommand, sal_Bool& _bEscapeProcessing );
- sal_Bool isEntryCopyAllowed(SvLBoxEntry* _pEntry) const;
+ sal_Bool isEntryCopyAllowed(SvTreeListEntry* _pEntry) const;
- void copyEntry(SvLBoxEntry* _pEntry);
+ void copyEntry(SvTreeListEntry* _pEntry);
// remove all grid columns and dispose them
void clearGridColumns(const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& _xColContainer);
@@ -470,7 +470,7 @@ namespace dbaui
@return
<TRUE/> if it is the currently displayed otherwise <FALSE/>
*/
- sal_Bool isCurrentlyDisplayedChanged(const String& _sName,SvLBoxEntry* _pContainer);
+ sal_Bool isCurrentlyDisplayedChanged(const String& _sName,SvTreeListEntry* _pContainer);
/** called whenever the content of the browser is used for preview, as the very last action
of the load process
diff --git a/dbaccess/source/ui/misc/WNameMatch.cxx b/dbaccess/source/ui/misc/WNameMatch.cxx
index b68b329a3162..6a40a71f7f4e 100644
--- a/dbaccess/source/ui/misc/WNameMatch.cxx
+++ b/dbaccess/source/ui/misc/WNameMatch.cxx
@@ -138,8 +138,8 @@ sal_Bool OWizNameMatching::LeavePage()
sal_Int32 nParamPos = 0;
- SvLBoxEntry* pLeftEntry = m_CTRL_LEFT.GetModel()->First();
- SvLBoxEntry* pRightEntry = m_CTRL_RIGHT.GetModel()->First();
+ SvTreeListEntry* pLeftEntry = m_CTRL_LEFT.GetModel()->First();
+ SvTreeListEntry* pRightEntry = m_CTRL_RIGHT.GetModel()->First();
while(pLeftEntry && pRightEntry)
{
OFieldDescription* pSrcField = static_cast<OFieldDescription*>(pLeftEntry->GetUserData());
@@ -189,7 +189,7 @@ String OWizNameMatching::GetTitle() const { return String(ModuleRes(STR_WIZ_NAME
// -----------------------------------------------------------------------
IMPL_LINK( OWizNameMatching, ButtonClickHdl, Button *, pButton )
{
- SvLBoxEntry* pEntry = m_CTRL_LEFT.FirstSelected();
+ SvTreeListEntry* pEntry = m_CTRL_LEFT.FirstSelected();
if ( pEntry )
{
sal_Int32 nPos = m_CTRL_LEFT.GetModel()->GetAbsPos(pEntry);
@@ -219,7 +219,7 @@ IMPL_LINK( OWizNameMatching, ButtonClickHdl, Button *, pButton )
//------------------------------------------------------------------------------
IMPL_LINK( OWizNameMatching, RightButtonClickHdl, Button *, pButton )
{
- SvLBoxEntry* pEntry = m_CTRL_RIGHT.FirstSelected();
+ SvTreeListEntry* pEntry = m_CTRL_RIGHT.FirstSelected();
if ( pEntry )
{
sal_Int32 nPos = m_CTRL_RIGHT.GetModel()->GetAbsPos(pEntry);
@@ -243,11 +243,11 @@ IMPL_LINK( OWizNameMatching, RightButtonClickHdl, Button *, pButton )
//------------------------------------------------------------------------------
IMPL_LINK( OWizNameMatching, TableListClickHdl, void*, /*NOTINTERESTEDIN*/ )
{
- SvLBoxEntry* pEntry = m_CTRL_LEFT.FirstSelected();
+ SvTreeListEntry* pEntry = m_CTRL_LEFT.FirstSelected();
if(pEntry)
{
sal_uLong nPos = m_CTRL_LEFT.GetModel()->GetAbsPos(pEntry);
- SvLBoxEntry* pOldEntry = m_CTRL_RIGHT.FirstSelected();
+ SvTreeListEntry* pOldEntry = m_CTRL_RIGHT.FirstSelected();
if(pOldEntry && nPos != m_CTRL_RIGHT.GetModel()->GetAbsPos(pOldEntry))
{
if(pOldEntry)
@@ -277,11 +277,11 @@ IMPL_LINK( OWizNameMatching, TableListClickHdl, void*, /*NOTINTERESTEDIN*/ )
//------------------------------------------------------------------------------
IMPL_LINK( OWizNameMatching, TableListRightSelectHdl, void*, /*NOTINTERESTEDIN*/ )
{
- SvLBoxEntry* pEntry = m_CTRL_RIGHT.FirstSelected();
+ SvTreeListEntry* pEntry = m_CTRL_RIGHT.FirstSelected();
if(pEntry)
{
sal_uLong nPos = m_CTRL_RIGHT.GetModel()->GetAbsPos(pEntry);
- SvLBoxEntry* pOldEntry = m_CTRL_LEFT.FirstSelected();
+ SvTreeListEntry* pOldEntry = m_CTRL_LEFT.FirstSelected();
if(pOldEntry && nPos != m_CTRL_LEFT.GetModel()->GetAbsPos(pOldEntry))
{
if(pOldEntry)
@@ -312,7 +312,7 @@ IMPL_LINK( OWizNameMatching, TableListRightSelectHdl, void*, /*NOTINTERESTEDIN*/
IMPL_LINK( OWizNameMatching, AllNoneClickHdl, Button *, pButton )
{
sal_Bool bAll = pButton == &m_pbAll;
- SvLBoxEntry* pEntry = m_CTRL_LEFT.First();
+ SvTreeListEntry* pEntry = m_CTRL_LEFT.First();
while(pEntry)
{
m_CTRL_LEFT.SetCheckButtonState( pEntry, bAll ? SV_BUTTON_CHECKED : SV_BUTTON_UNCHECKED);
@@ -329,16 +329,16 @@ class OColumnString : public SvLBoxString
{
sal_Bool m_bReadOnly;
public:
- OColumnString( SvLBoxEntry* pEntry, sal_uInt16 nFlags, const String& rStr,sal_Bool _RO)
+ OColumnString( SvTreeListEntry* pEntry, sal_uInt16 nFlags, const String& rStr,sal_Bool _RO)
:SvLBoxString(pEntry,nFlags,rStr)
,m_bReadOnly(_RO)
{
}
- virtual void Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvLBoxEntry* pEntry);
+ virtual void Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 nFlags, SvTreeListEntry* pEntry);
};
//------------------------------------------------------------------------
-void OColumnString::Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 /*nFlags*/, SvLBoxEntry* /*pEntry*/ )
+void OColumnString::Paint(const Point& rPos, SvTreeListBox& rDev, sal_uInt16 /*nFlags*/, SvTreeListEntry* /*pEntry*/ )
{
if(m_bReadOnly)
{
@@ -358,15 +358,15 @@ OColumnTreeBox::OColumnTreeBox( Window* pParent, const ResId& rResId )
SetSelectionMode( SINGLE_SELECTION );
}
//------------------------------------------------------------------------
-void OColumnTreeBox::InitEntry(SvLBoxEntry* pEntry, const String& rStr, const Image& rImg1, const Image& rImg2, SvLBoxButtonKind eButtonKind)
+void OColumnTreeBox::InitEntry(SvTreeListEntry* pEntry, const OUString& rStr, const Image& rImg1, const Image& rImg2, SvLBoxButtonKind eButtonKind)
{
- DBTreeListBox::InitEntry( pEntry, rStr, rImg1, rImg2, eButtonKind );
+ DBTreeListBox::InitEntry(pEntry, rStr, rImg1, rImg2, eButtonKind);
SvLBoxString* pString = new OColumnString(pEntry, 0, rStr,sal_False);
if (pString)
pEntry->ReplaceItem( pString, pEntry->ItemCount() - 1 );
}
//------------------------------------------------------------------------
-sal_Bool OColumnTreeBox::Select( SvLBoxEntry* pEntry, sal_Bool bSelect )
+sal_Bool OColumnTreeBox::Select( SvTreeListEntry* pEntry, sal_Bool bSelect )
{
if(bSelect)
{
@@ -386,7 +386,7 @@ void OColumnTreeBox::FillListBox( const ODatabaseExport::TColumnVector& _rList)
ODatabaseExport::TColumnVector::const_iterator aEnd = _rList.end();
for(;aIter != aEnd;++aIter)
{
- SvLBoxEntry* pEntry = InsertEntry((*aIter)->first,0,sal_False,LIST_APPEND,(*aIter)->second);
+ SvTreeListEntry* pEntry = InsertEntry((*aIter)->first,0,sal_False,LIST_APPEND,(*aIter)->second);
SvButtonState eState = !(m_bReadOnly && (*aIter)->second->IsAutoIncrement()) ? SV_BUTTON_CHECKED : SV_BUTTON_UNCHECKED;
SetCheckButtonState( pEntry, eState );
}
diff --git a/dbaccess/source/ui/querydesign/ConnectionLine.cxx b/dbaccess/source/ui/querydesign/ConnectionLine.cxx
index 10c0cad4701c..89df41cae188 100644
--- a/dbaccess/source/ui/querydesign/ConnectionLine.cxx
+++ b/dbaccess/source/ui/querydesign/ConnectionLine.cxx
@@ -82,7 +82,7 @@ namespace
@param _rNewConPos (in/out) the connection pos
@param _rNewDescrPos (in/out) the description pos
*/
- void calcPointsYValue(const OTableWindow* _pWin,SvLBoxEntry* _pEntry,Point& _rNewConPos,Point& _rNewDescrPos)
+ void calcPointsYValue(const OTableWindow* _pWin,SvTreeListEntry* _pEntry,Point& _rNewConPos,Point& _rNewDescrPos)
{
const OTableWindowListBox* pListBox = _pWin->GetListBox();
_rNewConPos.Y() = _pWin->GetPosPixel().Y();
@@ -232,8 +232,8 @@ sal_Bool OConnectionLine::RecalcLine()
if( !pSourceWin || !pDestWin )
return sal_False;
- SvLBoxEntry* pSourceEntry = pSourceWin->GetListBox()->GetEntryFromText( GetData()->GetSourceFieldName() );
- SvLBoxEntry* pDestEntry = pDestWin->GetListBox()->GetEntryFromText( GetData()->GetDestFieldName() );
+ SvTreeListEntry* pSourceEntry = pSourceWin->GetListBox()->GetEntryFromText( GetData()->GetSourceFieldName() );
+ SvTreeListEntry* pDestEntry = pDestWin->GetListBox()->GetEntryFromText( GetData()->GetDestFieldName() );
//////////////////////////////////////////////////////////////////////
// X-Koordinaten bestimmen
diff --git a/dbaccess/source/ui/querydesign/JoinTableView.cxx b/dbaccess/source/ui/querydesign/JoinTableView.cxx
index 022f38668a91..de041132fb80 100644
--- a/dbaccess/source/ui/querydesign/JoinTableView.cxx
+++ b/dbaccess/source/ui/querydesign/JoinTableView.cxx
@@ -968,8 +968,8 @@ void OJoinTableView::SelectConn(OTableConnection* pConn)
pSourceBox->SelectAll(sal_False);
pDestBox->SelectAll(sal_False);
- SvLBoxEntry* pFirstSourceVisible = pSourceBox->GetFirstEntryInView();
- SvLBoxEntry* pFirstDestVisible = pDestBox->GetFirstEntryInView();
+ SvTreeListEntry* pFirstSourceVisible = pSourceBox->GetFirstEntryInView();
+ SvTreeListEntry* pFirstDestVisible = pDestBox->GetFirstEntryInView();
const ::std::vector<OConnectionLine*>* pLines = pConn->GetConnLineList();
::std::vector<OConnectionLine*>::const_reverse_iterator aIter = pLines->rbegin();
@@ -977,14 +977,14 @@ void OJoinTableView::SelectConn(OTableConnection* pConn)
{
if ((*aIter)->IsValid())
{
- SvLBoxEntry* pSourceEntry = pSourceBox->GetEntryFromText((*aIter)->GetData()->GetSourceFieldName());
+ SvTreeListEntry* pSourceEntry = pSourceBox->GetEntryFromText((*aIter)->GetData()->GetSourceFieldName());
if (pSourceEntry)
{
pSourceBox->Select(pSourceEntry, sal_True);
pSourceBox->MakeVisible(pSourceEntry);
}
- SvLBoxEntry* pDestEntry = pDestBox->GetEntryFromText((*aIter)->GetData()->GetDestFieldName());
+ SvTreeListEntry* pDestEntry = pDestBox->GetEntryFromText((*aIter)->GetData()->GetDestFieldName());
if (pDestEntry)
{
pDestBox->Select(pDestEntry, sal_True);
diff --git a/dbaccess/source/ui/querydesign/QTableWindow.cxx b/dbaccess/source/ui/querydesign/QTableWindow.cxx
index 0bcbb0e0ed48..d07ab1eb3408 100644
--- a/dbaccess/source/ui/querydesign/QTableWindow.cxx
+++ b/dbaccess/source/ui/querydesign/QTableWindow.cxx
@@ -151,7 +151,7 @@ void OQueryTableWindow::deleteUserData(void*& _pUserData)
_pUserData = NULL;
}
//------------------------------------------------------------------------------
-void OQueryTableWindow::OnEntryDoubleClicked(SvLBoxEntry* pEntry)
+void OQueryTableWindow::OnEntryDoubleClicked(SvTreeListEntry* pEntry)
{
OSL_ENSURE(pEntry != NULL, "OQueryTableWindow::OnEntryDoubleClicked : pEntry darf nicht NULL sein !");
// man koennte das auch abfragen und dann ein return hinsetzen, aber so weist es vielleicht auf Fehler bei Aufrufer hin
@@ -182,7 +182,7 @@ sal_Bool OQueryTableWindow::ExistsField(const ::rtl::OUString& strFieldName, OTa
sal_Bool bExists = sal_False;
if(xConnection.is())
{
- SvLBoxEntry* pEntry = m_pListBox->First();
+ SvTreeListEntry* pEntry = m_pListBox->First();
try
{
Reference<XDatabaseMetaData> xMeta = xConnection->getMetaData();
diff --git a/dbaccess/source/ui/querydesign/QTableWindow.hxx b/dbaccess/source/ui/querydesign/QTableWindow.hxx
index 7f6b8921cb0c..247bb68ec375 100644
--- a/dbaccess/source/ui/querydesign/QTableWindow.hxx
+++ b/dbaccess/source/ui/querydesign/QTableWindow.hxx
@@ -57,7 +57,7 @@ namespace dbaui
protected:
virtual void KeyInput( const KeyEvent& rEvt );
- virtual void OnEntryDoubleClicked(SvLBoxEntry* pEntry);
+ virtual void OnEntryDoubleClicked(SvTreeListEntry* pEntry);
// wird aus dem DoubleClickHdl der ListBox heraus aufgerufen
/** delete the user data with the equal type as created within createUserData
@param _pUserData
diff --git a/dbaccess/source/ui/querydesign/QueryDesignView.cxx b/dbaccess/source/ui/querydesign/QueryDesignView.cxx
index ebddbfc41813..13446b2d9c53 100644
--- a/dbaccess/source/ui/querydesign/QueryDesignView.cxx
+++ b/dbaccess/source/ui/querydesign/QueryDesignView.cxx
@@ -3085,7 +3085,10 @@ OSQLParseNode* OQueryDesignView::getPredicateTreeFromEntry(OTableFieldDescRef pE
nType,
sal_False,
sal_False,
- xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers());
+ xMeta.is() && xMeta->supportsMixedCaseQuotedIdentifiers(),
+ ::rtl::OUString(),
+ ::rtl::OUString(),
+ ::rtl::OUString());
_rxColumn = pColumn;
pColumn->setFunction(sal_True);
pColumn->setRealName(pEntry->GetField());
diff --git a/dbaccess/source/ui/querydesign/TableWindow.cxx b/dbaccess/source/ui/querydesign/TableWindow.cxx
index a78a05c22638..27cd818442fb 100644
--- a/dbaccess/source/ui/querydesign/TableWindow.cxx
+++ b/dbaccess/source/ui/querydesign/TableWindow.cxx
@@ -183,7 +183,7 @@ sal_Bool OTableWindow::FillListBox()
if (GetData()->IsShowAll())
{
- SvLBoxEntry* pEntry = m_pListBox->InsertEntry( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("*")) );
+ SvTreeListEntry* pEntry = m_pListBox->InsertEntry( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("*")) );
pEntry->SetUserData( createUserData(NULL,false) );
}
@@ -205,7 +205,7 @@ sal_Bool OTableWindow::FillListBox()
const ::rtl::OUString* pIter = aColumns.getConstArray();
const ::rtl::OUString* pEnd = pIter + aColumns.getLength();
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
for (; pIter != pEnd; ++pIter)
{
bool bPrimaryKeyColumn = xPKeyColumns.is() && xPKeyColumns->hasByName( *pIter );
@@ -244,13 +244,13 @@ void OTableWindow::clearListBox()
{
if ( m_pListBox )
{
- SvLBoxEntry* pEntry = m_pListBox->First();
+ SvTreeListEntry* pEntry = m_pListBox->First();
while(pEntry)
{
void* pUserData = pEntry->GetUserData();
deleteUserData(pUserData);
- SvLBoxEntry* pNextEntry = m_pListBox->Next(pEntry);
+ SvTreeListEntry* pNextEntry = m_pListBox->Next(pEntry);
m_pListBox->GetModel()->Remove(pEntry);
pEntry = pNextEntry;
}
@@ -563,7 +563,7 @@ void OTableWindow::EnumValidFields(::std::vector< ::rtl::OUString>& arrstrFields
if ( m_pListBox )
{
arrstrFields.reserve(m_pListBox->GetEntryCount());
- SvLBoxEntry* pEntryLoop = m_pListBox->First();
+ SvTreeListEntry* pEntryLoop = m_pListBox->First();
while (pEntryLoop)
{
arrstrFields.push_back(m_pListBox->GetEntryText(pEntryLoop));
@@ -613,7 +613,7 @@ void OTableWindow::Command(const CommandEvent& rEvt)
ptWhere = rEvt.GetMousePosPixel();
else
{
- SvLBoxEntry* pCurrent = m_pListBox->GetCurEntry();
+ SvTreeListEntry* pCurrent = m_pListBox->GetCurEntry();
if ( pCurrent )
ptWhere = m_pListBox->GetEntryPosition(pCurrent);
else
diff --git a/dbaccess/source/ui/querydesign/TableWindowListBox.cxx b/dbaccess/source/ui/querydesign/TableWindowListBox.cxx
index 87ca37dbba6b..ab97283db94a 100644
--- a/dbaccess/source/ui/querydesign/TableWindowListBox.cxx
+++ b/dbaccess/source/ui/querydesign/TableWindowListBox.cxx
@@ -86,12 +86,12 @@ OTableWindowListBox::~OTableWindowListBox()
}
//------------------------------------------------------------------------------
-SvLBoxEntry* OTableWindowListBox::GetEntryFromText( const String& rEntryText )
+SvTreeListEntry* OTableWindowListBox::GetEntryFromText( const String& rEntryText )
{
//////////////////////////////////////////////////////////////////////
// Liste durchiterieren
SvTreeList* pTreeList = GetModel();
- SvLBoxEntry* pEntry = (SvLBoxEntry*)pTreeList->First();
+ SvTreeListEntry* pEntry = pTreeList->First();
OJoinDesignView* pView = m_pTabWin->getDesignView();
OJoinController& rController = pView->getController();
@@ -111,7 +111,7 @@ SvLBoxEntry* OTableWindowListBox::GetEntryFromText( const String& rEntryText )
{
return pEntry;
}
- pEntry = (SvLBoxEntry*)pTreeList->Next( pEntry );
+ pEntry = pTreeList->Next(pEntry);
}
}
catch(SQLException&)
@@ -174,7 +174,7 @@ long OTableWindowListBox::PreNotify(NotifyEvent& rNEvt)
//------------------------------------------------------------------------------
IMPL_LINK( OTableWindowListBox, ScrollUpHdl, SvTreeListBox*, /*pBox*/ )
{
- SvLBoxEntry* pEntry = GetEntry( m_aMousePos );
+ SvTreeListEntry* pEntry = GetEntry( m_aMousePos );
if( !pEntry )
return 0;
@@ -191,7 +191,7 @@ IMPL_LINK( OTableWindowListBox, ScrollUpHdl, SvTreeListBox*, /*pBox*/ )
//------------------------------------------------------------------------------
IMPL_LINK( OTableWindowListBox, ScrollDownHdl, SvTreeListBox*, /*pBox*/ )
{
- SvLBoxEntry* pEntry = GetEntry( m_aMousePos );
+ SvTreeListEntry* pEntry = GetEntry( m_aMousePos );
if( !pEntry )
return 0;
@@ -240,7 +240,7 @@ sal_Int8 OTableWindowListBox::AcceptDrop( const AcceptDropEvent& _rEvt )
// hit test
m_aMousePos = _rEvt.maPosPixel;
Size aOutputSize = GetOutputSizePixel();
- SvLBoxEntry* pEntry = GetEntry( m_aMousePos );
+ SvTreeListEntry* pEntry = GetEntry( m_aMousePos );
if( !pEntry )
return DND_ACTION_NONE;
diff --git a/dbaccess/source/ui/querydesign/querycontroller.cxx b/dbaccess/source/ui/querydesign/querycontroller.cxx
index 9bdd3a7f6208..752031dc377e 100644
--- a/dbaccess/source/ui/querydesign/querycontroller.cxx
+++ b/dbaccess/source/ui/querydesign/querycontroller.cxx
@@ -141,7 +141,7 @@ namespace dbaui
namespace
{
// -----------------------------------------------------------------------------
- void insertParseTree(SvTreeListBox* _pBox,::connectivity::OSQLParseNode* _pNode,SvLBoxEntry* _pParent = NULL)
+ void insertParseTree(SvTreeListBox* _pBox,::connectivity::OSQLParseNode* _pNode,SvTreeListEntry* _pParent = NULL)
{
::rtl::OUString rString;
if (!_pNode->isToken())
@@ -324,7 +324,7 @@ OQueryController::OQueryController(const Reference< XMultiServiceFactory >& _rM)
:OJoinController(_rM)
,OQueryController_PBase( getBroadcastHelper() )
,m_pParseContext( new svxform::OSystemParseContext )
- ,m_aSqlParser( _rM, m_pParseContext )
+ ,m_aSqlParser( comphelper::getComponentContext(_rM), m_pParseContext )
,m_pSqlIterator(NULL)
,m_nVisibleRows(0x400)
,m_nSplitPos(-1)
@@ -1598,7 +1598,7 @@ struct CommentStrip
static ::std::vector< CommentStrip > getComment( const ::rtl::OUString& rQuery )
{
::std::vector< CommentStrip > aRet;
- // First a quick search if there is any "--" or "//" or "/*", if not then
+ // First a quick search if there is any "--" or "//" or "/*", if not then
// the whole copying loop is pointless.
if (rQuery.indexOfAsciiL( "--", 2, 0) < 0 && rQuery.indexOfAsciiL( "//", 2, 0) < 0 &&
rQuery.indexOfAsciiL( "/*", 2, 0) < 0)
@@ -1667,10 +1667,10 @@ static ::std::vector< CommentStrip > getComment( const ::rtl::OUString& rQuery )
/** Concat/insert comments that were previously obtained with getComment().
- NOTE: The current parser implementation does not preserve newlines, so all
- comments are always appended to the entire query, also inline comments
- that would need positioning anyway that can't be obtained after
- recomposition. This is ugly but at least allows commented queries while
+ NOTE: The current parser implementation does not preserve newlines, so all
+ comments are always appended to the entire query, also inline comments
+ that would need positioning anyway that can't be obtained after
+ recomposition. This is ugly but at least allows commented queries while
preserving the comments _somehow_.
*/
static ::rtl::OUString concatComment( const ::rtl::OUString& rQuery, const ::std::vector< CommentStrip >& rComments )
diff --git a/dbaccess/source/ui/uno/composerdialogs.cxx b/dbaccess/source/ui/uno/composerdialogs.cxx
index ca5fdd188ec6..0a2cb1e87274 100644
--- a/dbaccess/source/ui/uno/composerdialogs.cxx
+++ b/dbaccess/source/ui/uno/composerdialogs.cxx
@@ -146,7 +146,7 @@ namespace dbaui
//---------------------------------------------------------------------
Dialog* RowsetFilterDialog::createComposerDialog( Window* _pParent, const Reference< XConnection >& _rxConnection, const Reference< XNameAccess >& _rxColumns )
{
- return new DlgFilterCrit( _pParent, m_aContext.getLegacyServiceFactory(), _rxConnection, m_xComposer, _rxColumns );
+ return new DlgFilterCrit( _pParent, m_aContext.getUNOContext(), _rxConnection, m_xComposer, _rxColumns );
}
//---------------------------------------------------------------------
diff --git a/dbaccess/source/ui/uno/dbinteraction.cxx b/dbaccess/source/ui/uno/dbinteraction.cxx
index 8cb12b91397a..e992ae06de5d 100644
--- a/dbaccess/source/ui/uno/dbinteraction.cxx
+++ b/dbaccess/source/ui/uno/dbinteraction.cxx
@@ -139,7 +139,7 @@ namespace dbaui
xParamCallback = Reference< XInteractionSupplyParameters >(_rContinuations[nParamPos], UNO_QUERY);
OSL_ENSURE(xParamCallback.is(), "BasicInteractionHandler::implHandle(ParametersRequest): can't set the parameters without an appropriate interaction handler!s");
- OParameterDialog aDlg(NULL, _rParamRequest.Parameters, _rParamRequest.Connection, m_xORB);
+ OParameterDialog aDlg(NULL, _rParamRequest.Parameters, _rParamRequest.Connection, comphelper::getComponentContext(m_xORB));
sal_Int16 nResult = aDlg.Execute();
try
{
diff --git a/dbaccess/uiconfig/dbapp/menubar/menubar.xml b/dbaccess/uiconfig/dbapp/menubar/menubar.xml
index 84e999a0d073..1ddbe5a2c73b 100644
--- a/dbaccess/uiconfig/dbapp/menubar/menubar.xml
+++ b/dbaccess/uiconfig/dbapp/menubar/menubar.xml
@@ -29,6 +29,9 @@
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menuseparator/>
<menu:menuitem menu:id=".uno:ExportTo"/>
<menu:menu menu:id=".uno:SendToMenu">
diff --git a/dbaccess/uiconfig/dbquery/menubar/menubar.xml b/dbaccess/uiconfig/dbquery/menubar/menubar.xml
index 4e980800dd19..dd84ef30e99a 100644
--- a/dbaccess/uiconfig/dbquery/menubar/menubar.xml
+++ b/dbaccess/uiconfig/dbquery/menubar/menubar.xml
@@ -27,6 +27,9 @@
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menuseparator/>
<menu:menuitem menu:id=".uno:Quit"/>
</menu:menupopup>
diff --git a/dbaccess/uiconfig/dbrelation/menubar/menubar.xml b/dbaccess/uiconfig/dbrelation/menubar/menubar.xml
index 688ecf2b68d0..f4a9ffc1e493 100644
--- a/dbaccess/uiconfig/dbrelation/menubar/menubar.xml
+++ b/dbaccess/uiconfig/dbrelation/menubar/menubar.xml
@@ -26,6 +26,9 @@
<menu:menuitem menu:id=".uno:CloseDoc"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:Save"/>
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menuseparator/>
<menu:menuitem menu:id=".uno:Quit"/>
</menu:menupopup>
diff --git a/dbaccess/uiconfig/dbtable/menubar/menubar.xml b/dbaccess/uiconfig/dbtable/menubar/menubar.xml
index 5fa12003a709..63982adf15f0 100644
--- a/dbaccess/uiconfig/dbtable/menubar/menubar.xml
+++ b/dbaccess/uiconfig/dbtable/menubar/menubar.xml
@@ -27,6 +27,9 @@
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menuseparator/>
<menu:menuitem menu:id=".uno:Quit"/>
</menu:menupopup>
diff --git a/dbaccess/uiconfig/dbtdata/menubar/menubar.xml b/dbaccess/uiconfig/dbtdata/menubar/menubar.xml
index 5f35b46de3e3..95c327e9c900 100644
--- a/dbaccess/uiconfig/dbtdata/menubar/menubar.xml
+++ b/dbaccess/uiconfig/dbtdata/menubar/menubar.xml
@@ -27,6 +27,9 @@
<menu:menuitem menu:id=".uno:SaveAll"/>
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menuseparator/>
<menu:menuitem menu:id=".uno:Quit"/>
</menu:menupopup>
diff --git a/desktop/scripts/soffice.sh b/desktop/scripts/soffice.sh
index 7727206c2a2b..9afcfdf4fcf0 100755
--- a/desktop/scripts/soffice.sh
+++ b/desktop/scripts/soffice.sh
@@ -155,7 +155,7 @@ fi
# valgrind --log-file=valgrind.log does not work well with --trace-children=yes
if [ -n "$VALGRINDCHECK" -a -z "$VALGRIND" ] ; then
echo "redirecting the standard and the error output to valgrind.log"
- exec &>valgrind.log
+ exec > valgrind.log 2>&1
fi
# oosplash does the rest: forcing pages in, javaldx etc. are
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx
index cff9f8ed65e6..400da64ad8fc 100644
--- a/desktop/source/app/app.cxx
+++ b/desktop/source/app/app.cxx
@@ -43,6 +43,7 @@
#include "migration.hxx"
#include <svtools/javacontext.hxx>
+#include <com/sun/star/frame/AutoRecovery.hpp>
#include <com/sun/star/frame/GlobalEventBroadcaster.hpp>
#include <com/sun/star/frame/XSessionManagerListener.hpp>
#include <com/sun/star/frame/XSynchronousDispatch.hpp>
@@ -65,7 +66,7 @@
#include <com/sun/star/configuration/InstallationIncompleteException.hpp>
#include <com/sun/star/configuration/backend/BackendSetupException.hpp>
#include <com/sun/star/configuration/backend/BackendAccessException.hpp>
-#include <com/sun/star/task/XJobExecutor.hpp>
+#include <com/sun/star/task/JobExecutor.hpp>
#include <com/sun/star/task/XRestartManager.hpp>
#include <com/sun/star/document/XEventListener.hpp>
#include <com/sun/star/frame/UICommandDescription.hpp>
@@ -2357,11 +2358,8 @@ void Desktop::OpenClients()
{
try
{
- Reference< XDispatch > xRecovery(
- ::comphelper::getProcessServiceFactory()->createInstance( OUString("com.sun.star.frame.AutoRecovery") ),
- ::com::sun::star::uno::UNO_QUERY_THROW );
-
- Reference< css::util::XURLTransformer > xParser( css::util::URLTransformer::create(::comphelper::getProcessComponentContext()) );
+ Reference< XDispatch > xRecovery = css::frame::AutoRecovery::create( ::comphelper::getProcessComponentContext() );
+ Reference< css::util::XURLTransformer > xParser = css::util::URLTransformer::create( ::comphelper::getProcessComponentContext() );
css::util::URL aCmd;
aCmd.Complete = ::rtl::OUString("vnd.sun.star.autorecovery:/disableRecovery");
@@ -2895,9 +2893,8 @@ void Desktop::DoFirstRunInitializations()
{
try
{
- Reference< XJobExecutor > xExecutor( ::comphelper::getProcessServiceFactory()->createInstance( ::rtl::OUString("com.sun.star.task.JobExecutor") ), UNO_QUERY );
- if( xExecutor.is() )
- xExecutor->trigger( ::rtl::OUString("onFirstRunInitialization") );
+ Reference< XJobExecutor > xExecutor = JobExecutor::create( ::comphelper::getProcessComponentContext() );
+ xExecutor->trigger( ::rtl::OUString("onFirstRunInitialization") );
}
catch(const ::com::sun::star::uno::Exception&)
{
diff --git a/desktop/source/app/main.c b/desktop/source/app/main.c
index c18fabd158d2..e358a38662d8 100644
--- a/desktop/source/app/main.c
+++ b/desktop/source/app/main.c
@@ -21,22 +21,38 @@
#include "sofficemain.h"
-SAL_IMPLEMENT_MAIN() {
- return soffice_main();
-}
-
#ifdef DBG_UTIL
#ifdef __gnu_linux__
#include <stdio.h>
#include <stdlib.h>
+static int g_Exiting = 0;
+
/* HACK: detect calls to xmlCleanupParser, which causes hard to debug crashes */
__attribute__ ((visibility("default"))) void xmlCleanupParser(void)
{
- fprintf(stderr, "\n*** ERROR: DO NOT call xmlCleanupParser()\n\n");
- abort();
+ /* there are libraries that register xmlCleanupParser as an atexit handler,
+ which is not entirely sound (another atexit handler could want to
+ use libxml), but not enough of a problem to complain.
+ (example found by llunak: KDE's Strigi library) */
+ if (!g_Exiting)
+ {
+ fprintf(stderr, "\n*** ERROR: DO NOT call xmlCleanupParser()\n\n");
+ abort();
+ }
}
#endif
#endif
+SAL_IMPLEMENT_MAIN() {
+ int ret = soffice_main();
+#ifdef DBG_UTIL
+#ifdef __gnu_linux__
+ g_Exiting = 1;
+#endif
+#endif
+ return ret;
+}
+
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/desktop/source/deployment/dp_persmap.cxx b/desktop/source/deployment/dp_persmap.cxx
index fb7aecad00ba..047ad5331e6c 100644
--- a/desktop/source/deployment/dp_persmap.cxx
+++ b/desktop/source/deployment/dp_persmap.cxx
@@ -122,6 +122,14 @@ bool PersistentMap::has( OString const & key ) const
return get( 0, key );
}
+// for 3 functions here MSVC gives C4702 "unreachable code" if optimization
+// is enabled and return is there and C4715 "not all control paths return
+// a value" if optimization disabled and no return...
+#ifdef _MSC_VER
+#pragma warning( push )
+#pragma warning( disable: 4702 )
+#endif
+
//______________________________________________________________________________
bool PersistentMap::get( OString * value, OString const & key ) const
{
@@ -144,9 +152,7 @@ bool PersistentMap::get( OString * value, OString const & key ) const
catch (DbException & exc) {
throw_rtexc( exc.get_errno(), exc.what() );
}
-#ifndef _MSC_VER
return false; // avoiding warning
-#endif
}
//______________________________________________________________________________
@@ -194,9 +200,7 @@ bool PersistentMap::erase( OString const & key, bool flush_immediately )
catch (DbException & exc) {
throw_rtexc( exc.get_errno(), exc.what() );
}
-#ifndef _MSC_VER
return false; // avoiding warning
-#endif
}
//______________________________________________________________________________
@@ -235,11 +239,13 @@ t_string2string_map PersistentMap::getEntries() const
catch (DbException & exc) {
throw_rtexc( exc.get_errno(), exc.what() );
}
-#ifndef _MSC_VER
return t_string2string_map(); // avoiding warning
-#endif
}
+#ifdef _MSC_VER
+#pragma warning( pop )
+#endif
+
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/desktop/source/deployment/gui/dp_gui_service.cxx b/desktop/source/deployment/gui/dp_gui_service.cxx
index 71c6ccd74ff4..6f067b9ba829 100644
--- a/desktop/source/deployment/gui/dp_gui_service.cxx
+++ b/desktop/source/deployment/gui/dp_gui_service.cxx
@@ -33,6 +33,7 @@
#include "cppuhelper/implbase2.hxx"
#include "cppuhelper/implementationentry.hxx"
#include "unotools/configmgr.hxx"
+#include "comphelper/processfactory.hxx"
#include "comphelper/servicedecl.hxx"
#include "comphelper/unwrapargs.hxx"
#include <i18npool/mslangid.hxx>
@@ -66,6 +67,7 @@ public:
// Application
virtual int Main();
+ virtual void DeInit();
};
//______________________________________________________________________________
@@ -84,6 +86,15 @@ int MyApp::Main()
return EXIT_SUCCESS;
}
+void MyApp::DeInit()
+{
+ css::uno::Reference< css::uno::XComponentContext > context(
+ comphelper::getProcessComponentContext());
+ dp_misc::disposeBridges(context);
+ css::uno::Reference< css::lang::XComponent >(
+ context, css::uno::UNO_QUERY_THROW)->dispose();
+ comphelper::setProcessServiceFactory(0);
+}
namespace
{
@@ -233,9 +244,7 @@ void ServiceImpl::startExecuteModal(
if (! bOfficePipePresent) {
OSL_ASSERT( ! bAppUp );
app.reset( new MyApp );
- if (! InitVCL( Reference<lang::XMultiServiceFactory>(
- m_xComponentContext->getServiceManager(),
- UNO_QUERY_THROW ) ))
+ if (! InitVCL() )
throw RuntimeException( OUSTR("Cannot initialize VCL!"),
static_cast<OWeakObject *>(this) );
AllSettings as = app->GetSettings();
diff --git a/desktop/source/deployment/gui/dp_gui_updatedialog.cxx b/desktop/source/deployment/gui/dp_gui_updatedialog.cxx
index 0b6a8df76fde..129663a28dec 100644
--- a/desktop/source/deployment/gui/dp_gui_updatedialog.cxx
+++ b/desktop/source/deployment/gui/dp_gui_updatedialog.cxx
@@ -42,7 +42,7 @@
#include "com/sun/star/awt/WindowAttribute.hpp"
#include "com/sun/star/awt/WindowClass.hpp"
#include "com/sun/star/awt/WindowDescriptor.hpp"
-#include "com/sun/star/awt/XToolkit.hpp"
+#include "com/sun/star/awt/Toolkit.hpp"
#include "com/sun/star/awt/XWindow.hpp"
#include "com/sun/star/awt/XWindowPeer.hpp"
#include "com/sun/star/beans/NamedValue.hpp"
@@ -554,17 +554,9 @@ UpdateDialog::UpdateDialog(
m_xExtensionManager = deployment::ExtensionManager::get( context );
- uno::Reference< awt::XToolkit > toolkit;
+ uno::Reference< awt::XToolkit2 > toolkit;
try {
- toolkit = uno::Reference< awt::XToolkit >(
- (uno::Reference< lang::XMultiComponentFactory >(
- m_context->getServiceManager(),
- uno::UNO_QUERY_THROW)->
- createInstanceWithContext(
- rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.Toolkit")),
- m_context)),
- uno::UNO_QUERY_THROW);
+ toolkit = awt::Toolkit::create(m_context);
} catch (const uno::RuntimeException &) {
throw;
} catch (const uno::Exception & e) {
@@ -662,7 +654,7 @@ void UpdateDialog::CheckListBox::KeyInput(KeyEvent const & event) {
//------------------------------------------------------------------------------
void UpdateDialog::CheckListBox::handlePopupMenu( const Point &rPos )
{
- SvListEntry *pData = GetEntry( rPos );
+ SvTreeListEntry *pData = GetEntry( rPos );
if ( pData )
{
diff --git a/desktop/source/deployment/inc/dp_misc.h b/desktop/source/deployment/inc/dp_misc.h
index 248b81f69805..cf17cb529578 100644
--- a/desktop/source/deployment/inc/dp_misc.h
+++ b/desktop/source/deployment/inc/dp_misc.h
@@ -159,6 +159,14 @@ void syncRepositories(
::com::sun::star::uno::Reference<
::com::sun::star::ucb::XCommandEnvironment> const & xCmdEnv);
+/** workaround: for some reason the bridge threads which communicate with the
+ uno.exe process are not released on time
+*/
+DESKTOP_DEPLOYMENTMISC_DLLPUBLIC
+void disposeBridges(
+ com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >
+ const & ctx);
+
}
#endif
diff --git a/desktop/source/deployment/manager/dp_extensionmanager.cxx b/desktop/source/deployment/manager/dp_extensionmanager.cxx
index de78275bb205..4ba55848494d 100644
--- a/desktop/source/deployment/manager/dp_extensionmanager.cxx
+++ b/desktop/source/deployment/manager/dp_extensionmanager.cxx
@@ -655,8 +655,22 @@ Reference<deploy::XPackage> ExtensionManager::addExtension(
//would remove the first one.
::osl::MutexGuard addGuard(m_addMutex);
- Reference<deploy::XPackage> xTmpExtension =
- getTempExtension(url, xAbortChannel, xCmdEnv);
+ Reference<deploy::XPackageManager> xTmpRepository(getTmpRepository());
+ // make sure xTmpRepository is alive as long as xTmpExtension is; as
+ // the "tmp" manager is only held weakly by m_xPackageManagerFactory, it
+ // could otherwise be disposed early, which would in turn dispose
+ // xTmpExtension's PackageRegistryBackend behind its back
+ Reference<deploy::XPackage> xTmpExtension(
+ xTmpRepository->addPackage(
+ url, uno::Sequence<beans::NamedValue>(), OUString(), xAbortChannel,
+ new TmpRepositoryCommandEnv()));
+ if (!xTmpExtension.is()) {
+ throw deploy::DeploymentException(
+ ("Extension Manager: Failed to create temporary XPackage for url: "
+ + url),
+ static_cast<OWeakObject*>(this), uno::Any());
+ }
+
//Make sure the extension is removed from the tmp repository in case
//of an exception
ExtensionRemoveGuard tmpExtensionRemoveGuard(xTmpExtension, getTmpRepository());
@@ -1404,25 +1418,6 @@ void ExtensionManager::checkUpdate(
static_cast<OWeakObject *>(this), request );
}
-Reference<deploy::XPackage> ExtensionManager::getTempExtension(
- OUString const & url,
- Reference<task::XAbortChannel> const & xAbortChannel,
- Reference<ucb::XCommandEnvironment> const & /*xCmdEnv*/)
-
-{
- Reference<ucb::XCommandEnvironment> tmpCmdEnvA(new TmpRepositoryCommandEnv());
- Reference<deploy::XPackage> xTmpPackage = getTmpRepository()->addPackage(
- url, uno::Sequence<beans::NamedValue>(),OUString(), xAbortChannel, tmpCmdEnvA);
- if (!xTmpPackage.is())
- {
- throw deploy::DeploymentException(
- OUSTR("Extension Manager: Failed to create temporary XPackage for url: ") + url,
- static_cast<OWeakObject*>(this), uno::Any());
-
- }
- return xTmpPackage;
-}
-
uno::Sequence<Reference<deploy::XPackage> > SAL_CALL
ExtensionManager::getExtensionsWithUnacceptedLicenses(
OUString const & repository,
diff --git a/desktop/source/deployment/manager/dp_extensionmanager.hxx b/desktop/source/deployment/manager/dp_extensionmanager.hxx
index c8d8b300da60..584f01ce07c1 100644
--- a/desktop/source/deployment/manager/dp_extensionmanager.hxx
+++ b/desktop/source/deployment/manager/dp_extensionmanager.hxx
@@ -280,11 +280,6 @@ private:
css::uno::Reference<css::deployment::XPackage> const & oldExtension,
css::uno::Reference<css::ucb::XCommandEnvironment> const & xCmdEnv);
- css::uno::Reference<css::deployment::XPackage> getTempExtension(
- ::rtl::OUString const & url,
- css::uno::Reference<css::task::XAbortChannel> const & xAbortChannel,
- css::uno::Reference<css::ucb::XCommandEnvironment> const & xCmdEnv);
-
void addExtensionsToMap(
id2extensions & mapExt,
css::uno::Sequence<css::uno::Reference<css::deployment::XPackage> > const & seqExt,
diff --git a/desktop/source/deployment/manager/dp_manager.cxx b/desktop/source/deployment/manager/dp_manager.cxx
index 894999efe105..bedc5013933c 100644
--- a/desktop/source/deployment/manager/dp_manager.cxx
+++ b/desktop/source/deployment/manager/dp_manager.cxx
@@ -436,15 +436,12 @@ Reference<deployment::XPackageManager> PackageManagerImpl::create(
catch (const RuntimeException &) {
throw;
}
- catch (const Exception &) {
+ catch (const Exception & e) {
Any exc( ::cppu::getCaughtException() );
- ::rtl::OUStringBuffer buf;
- buf.appendAscii( RTL_CONSTASCII_STRINGPARAM("[context=\"") );
- buf.append( context );
- buf.appendAscii( RTL_CONSTASCII_STRINGPARAM(
- "\"] caught unexpected exception!") );
throw lang::WrappedTargetRuntimeException(
- buf.makeStringAndClear(), Reference<XInterface>(), exc );
+ ("[context=\"" + context + "\"] caught unexpected "
+ + exc.getValueType().getTypeName() + ": " + e.Message),
+ Reference<XInterface>(), exc );
}
}
diff --git a/desktop/source/deployment/misc/dp_misc.cxx b/desktop/source/deployment/misc/dp_misc.cxx
index 31cb38c2f4ed..55d372431ef9 100644
--- a/desktop/source/deployment/misc/dp_misc.cxx
+++ b/desktop/source/deployment/misc/dp_misc.cxx
@@ -41,6 +41,7 @@
#include "osl/mutex.hxx"
#include "com/sun/star/ucb/CommandAbortedException.hpp"
#include "com/sun/star/task/XInteractionHandler.hpp"
+#include "com/sun/star/bridge/BridgeFactory.hpp"
#include "com/sun/star/bridge/UnoUrlResolver.hpp"
#include "com/sun/star/bridge/XUnoUrlResolver.hpp"
#include "com/sun/star/deployment/ExtensionManager.hpp"
@@ -586,7 +587,28 @@ void syncRepositories(
}
}
+void disposeBridges(Reference<css::uno::XComponentContext> const & ctx)
+{
+ if (!ctx.is())
+ return;
+ Reference<css::bridge::XBridgeFactory2> bridgeFac( css::bridge::BridgeFactory::create(ctx) );
+
+ const Sequence< Reference<css::bridge::XBridge> >seqBridges = bridgeFac->getExistingBridges();
+ for (sal_Int32 i = 0; i < seqBridges.getLength(); i++)
+ {
+ Reference<css::lang::XComponent> comp(seqBridges[i], UNO_QUERY);
+ if (comp.is())
+ {
+ try {
+ comp->dispose();
+ }
+ catch ( const css::lang::DisposedException& )
+ {
+ }
+ }
+ }
+}
}
diff --git a/desktop/source/deployment/registry/dp_backend.cxx b/desktop/source/deployment/registry/dp_backend.cxx
index 57703d5d3986..ad6c2a83263c 100644
--- a/desktop/source/deployment/registry/dp_backend.cxx
+++ b/desktop/source/deployment/registry/dp_backend.cxx
@@ -26,6 +26,9 @@
*
************************************************************************/
+#include "sal/config.h"
+
+#include <cassert>
#include "dp_backend.h"
#include "dp_ucb.h"
@@ -85,6 +88,7 @@ PackageRegistryBackend::PackageRegistryBackend(
m_eContext( CONTEXT_UNKNOWN ),
m_readOnly( false )
{
+ assert(xContext.is());
boost::optional<OUString> cachePath;
boost::optional<bool> readOnly;
comphelper::unwrapArgs( args, m_context, cachePath, readOnly );
diff --git a/desktop/source/deployment/registry/package/dp_package.cxx b/desktop/source/deployment/registry/package/dp_package.cxx
index cd1fd3066c42..d41ed12d2511 100644
--- a/desktop/source/deployment/registry/package/dp_package.cxx
+++ b/desktop/source/deployment/registry/package/dp_package.cxx
@@ -61,8 +61,8 @@
#include "com/sun/star/ucb/UnsupportedCommandException.hpp"
#include "com/sun/star/sdbc/XResultSet.hpp"
#include "com/sun/star/sdbc/XRow.hpp"
-#include "com/sun/star/packages/manifest/XManifestReader.hpp"
-#include "com/sun/star/packages/manifest/XManifestWriter.hpp"
+#include "com/sun/star/packages/manifest/ManifestReader.hpp"
+#include "com/sun/star/packages/manifest/ManifestWriter.hpp"
#include "com/sun/star/deployment/DependencyException.hpp"
#include "com/sun/star/deployment/LicenseException.hpp"
#include "com/sun/star/deployment/PlatformException.hpp"
@@ -1185,10 +1185,8 @@ void BackendImpl::PackageImpl::exportTo(
// write into pipe:
Reference<XComponentContext> xContext(
getMyBackend()->getComponentContext() );
- Reference<packages::manifest::XManifestWriter> xManifestWriter(
- xContext->getServiceManager()->createInstanceWithContext(
- OUSTR("com.sun.star.packages.manifest.ManifestWriter"),
- xContext ), UNO_QUERY_THROW );
+ Reference<packages::manifest::XManifestWriter> xManifestWriter =
+ packages::manifest::ManifestWriter::create( xContext );
Reference<io::XOutputStream> xPipe( io::Pipe::create(xContext), UNO_QUERY_THROW );
xManifestWriter->writeManifestSequence(
xPipe, comphelper::containerToSequence(manifest) );
@@ -1445,10 +1443,8 @@ void BackendImpl::PackageImpl::scanBundle(
const Reference<XComponentContext> xContext(
getMyBackend()->getComponentContext() );
- Reference<packages::manifest::XManifestReader> xManifestReader(
- xContext->getServiceManager()->createInstanceWithContext(
- OUSTR("com.sun.star.packages.manifest.ManifestReader"),
- xContext ), UNO_QUERY_THROW );
+ Reference<packages::manifest::XManifestReader> xManifestReader =
+ packages::manifest::ManifestReader::create( xContext );
const Sequence< Sequence<beans::PropertyValue> > manifestSeq(
xManifestReader->readManifestSequence( manifestContent.openStream() ) );
const OUString packageRootURL( getURL() );
diff --git a/desktop/source/pkgchk/unopkg/unopkg_app.cxx b/desktop/source/pkgchk/unopkg/unopkg_app.cxx
index c3387f0ec0a5..db3f65895383 100644
--- a/desktop/source/pkgchk/unopkg/unopkg_app.cxx
+++ b/desktop/source/pkgchk/unopkg/unopkg_app.cxx
@@ -48,11 +48,9 @@
#include "com/sun/star/deployment/ui/PackageManagerDialog.hpp"
#include "com/sun/star/ui/dialogs/XExecutableDialog.hpp"
-#include "com/sun/star/lang/DisposedException.hpp"
#include "boost/scoped_array.hpp"
#include "com/sun/star/ui/dialogs/XDialogClosedListener.hpp"
#include "com/sun/star/bridge/BridgeFactory.hpp"
-#include "com/sun/star/bridge/XBridgeFactory.hpp"
#include <stdio.h>
#include <vector>
@@ -190,36 +188,9 @@ Reference<deployment::XPackage> findPackage(
} // anon namespace
-
-//workaround for some reason the bridge threads which communicate with the uno.exe
-//process are not releases on time
-void disposeBridges(Reference<css::uno::XComponentContext> ctx)
-{
- if (!ctx.is())
- return;
-
- Reference<css::bridge::XBridgeFactory2> bridgeFac( css::bridge::BridgeFactory::create(ctx) );
-
- const Sequence< Reference<css::bridge::XBridge> >seqBridges = bridgeFac->getExistingBridges();
- for (sal_Int32 i = 0; i < seqBridges.getLength(); i++)
- {
- Reference<css::lang::XComponent> comp(seqBridges[i], UNO_QUERY);
- if (comp.is())
- {
- try {
- comp->dispose();
- }
- catch ( const css::lang::DisposedException& )
- {
- }
- }
- }
-}
-
extern "C" DESKTOP_DLLPUBLIC int unopkg_main()
{
tools::extendApplicationEnvironment();
- DisposeGuard disposeGuard;
bool bNoOtherErrorMsg = false;
OUString subCommand;
bool option_shared = false;
@@ -371,8 +342,7 @@ extern "C" DESKTOP_DLLPUBLIC int unopkg_main()
}
xComponentContext = getUNO(
- disposeGuard, option_verbose, option_shared, subcmd_gui,
- xLocalComponentContext );
+ option_verbose, option_shared, subcmd_gui, xLocalComponentContext );
Reference<deployment::XExtensionManager> xExtensionManager(
deployment::ExtensionManager::get( xComponentContext ) );
@@ -575,6 +545,7 @@ extern "C" DESKTOP_DLLPUBLIC int unopkg_main()
xDialog->startExecuteModal(xListener);
dialogEnded.wait();
+ return 0;
}
else
{
@@ -591,7 +562,7 @@ extern "C" DESKTOP_DLLPUBLIC int unopkg_main()
if (option_verbose)
dp_misc::writeConsole(OUSTR("\n" APP_NAME " done.\n"));
//Force to release all bridges which connect us to the child processes
- disposeBridges(xLocalComponentContext);
+ dp_misc::disposeBridges(xLocalComponentContext);
return 0;
}
catch (const ucb::CommandFailedException &e)
@@ -640,7 +611,7 @@ extern "C" DESKTOP_DLLPUBLIC int unopkg_main()
}
if (!bNoOtherErrorMsg)
dp_misc::writeConsoleError("\n" APP_NAME " failed.\n");
- disposeBridges(xLocalComponentContext);
+ dp_misc::disposeBridges(xLocalComponentContext);
return 1;
}
diff --git a/desktop/source/pkgchk/unopkg/unopkg_misc.cxx b/desktop/source/pkgchk/unopkg/unopkg_misc.cxx
index a034828646be..7a6c899c6ed2 100644
--- a/desktop/source/pkgchk/unopkg/unopkg_misc.cxx
+++ b/desktop/source/pkgchk/unopkg/unopkg_misc.cxx
@@ -368,16 +368,11 @@ void printf_packages(
namespace {
//------------------------------------------------------------------------------
-Reference<XComponentContext> bootstrapStandAlone(
- DisposeGuard & disposeGuard, bool /*verbose */)
+Reference<XComponentContext> bootstrapStandAlone()
{
Reference<XComponentContext> xContext =
::cppu::defaultBootstrap_InitialComponentContext();
- // assure disposing of local component context:
- disposeGuard.reset(
- Reference<lang::XComponent>( xContext, UNO_QUERY ) );
-
Reference<lang::XMultiServiceFactory> xServiceManager(
xContext->getServiceManager(), UNO_QUERY_THROW );
// set global process service factory used by unotools config helpers
@@ -462,7 +457,7 @@ OUString getLockFilePath()
}
//==============================================================================
Reference<XComponentContext> getUNO(
- DisposeGuard & disposeGuard, bool verbose, bool shared, bool bGui,
+ bool verbose, bool shared, bool bGui,
Reference<XComponentContext> & out_localContext)
{
// do not create any user data (for the root user) in --shared mode:
@@ -474,8 +469,7 @@ Reference<XComponentContext> getUNO(
// hold lock during process runtime:
static ::desktop::Lockfile s_lockfile( false /* no IPC server */ );
- Reference<XComponentContext> xComponentContext(
- bootstrapStandAlone( disposeGuard, verbose ) );
+ Reference<XComponentContext> xComponentContext( bootstrapStandAlone() );
out_localContext = xComponentContext;
if (::dp_misc::office_is_running()) {
xComponentContext.set(
@@ -496,9 +490,7 @@ Reference<XComponentContext> getUNO(
{
//We show a message box or print to the console that there
//is another instance already running
- if ( ! InitVCL( Reference<lang::XMultiServiceFactory>(
- xComponentContext->getServiceManager(),
- UNO_QUERY_THROW ) ))
+ if ( ! InitVCL() )
throw RuntimeException( OUSTR("Cannot initialize VCL!"),
NULL );
{
diff --git a/desktop/source/pkgchk/unopkg/unopkg_shared.h b/desktop/source/pkgchk/unopkg/unopkg_shared.h
index c8cdc3c51a78..adc6e8b66d87 100644
--- a/desktop/source/pkgchk/unopkg/unopkg_shared.h
+++ b/desktop/source/pkgchk/unopkg/unopkg_shared.h
@@ -28,7 +28,6 @@
#include "dp_misc.h"
#include "com/sun/star/uno/Exception.hpp"
-#include "com/sun/star/lang/XComponent.hpp"
#include "com/sun/star/uno/XComponentContext.hpp"
#include "com/sun/star/ucb/XCommandEnvironment.hpp"
#include "com/sun/star/deployment/XPackage.hpp"
@@ -121,25 +120,6 @@ bool isBootstrapVariable(sal_uInt32 * pIndex);
//##############################################################################
//==============================================================================
-class DisposeGuard
-{
- css::uno::Reference<css::lang::XComponent> m_xComp;
-
-public:
- inline ~DisposeGuard()
- {
- if (m_xComp.is())
- m_xComp->dispose();
- }
-
- inline void reset(
- css::uno::Reference<css::lang::XComponent> const & xComp )
- {
- m_xComp = xComp;
- }
-};
-
-//==============================================================================
css::uno::Reference<css::ucb::XCommandEnvironment> createCmdEnv(
css::uno::Reference<css::uno::XComponentContext> const & xContext,
::rtl::OUString const & logFile,
@@ -158,7 +138,7 @@ void printf_packages(
//==============================================================================
css::uno::Reference<css::uno::XComponentContext> getUNO(
- DisposeGuard & disposeGuard, bool verbose, bool shared, bool bGui,
+ bool verbose, bool shared, bool bGui,
css::uno::Reference<css::uno::XComponentContext> & out_LocalComponentContext);
}
diff --git a/desktop/source/splash/splash.cxx b/desktop/source/splash/splash.cxx
index 1f816cd14b2f..2321293f3a11 100644
--- a/desktop/source/splash/splash.cxx
+++ b/desktop/source/splash/splash.cxx
@@ -63,13 +63,6 @@ class SplashScreen
, public IntroWindow
{
private:
- struct FullScreenProgressRatioValue
- {
- double _fXRelPos;
- double _fYRelPos;
- double _fRelWidth;
- double _fRelHeight;
- };
enum BitmapMode { BM_FULLSCREEN, BM_DEFAULTMODE };
DECL_LINK( AppEventListenerHdl, VclWindowEvent * );
@@ -89,7 +82,6 @@ private:
bool _bNativeProgress;
OUString _sAppName;
OUString _sProgressText;
- std::vector< FullScreenProgressRatioValue > _sFullScreenProgressRatioValues;
sal_Int32 _iMax;
sal_Int32 _iProgress;
diff --git a/desktop/test/deployment/active/active_native.cxx b/desktop/test/deployment/active/active_native.cxx
index 9845fd511168..493728d44c3a 100644
--- a/desktop/test/deployment/active/active_native.cxx
+++ b/desktop/test/deployment/active/active_native.cxx
@@ -31,6 +31,7 @@
#include "boost/noncopyable.hpp"
#include "com/sun/star/awt/MessageBoxButtons.hpp"
#include "com/sun/star/awt/Rectangle.hpp"
+#include "com/sun/star/awt/Toolkit.hpp"
#include "com/sun/star/awt/XMessageBox.hpp"
#include "com/sun/star/awt/XMessageBoxFactory.hpp"
#include "com/sun/star/awt/XWindowPeer.hpp"
@@ -235,13 +236,12 @@ void Dispatch::dispatch(
css::uno::Sequence< css::beans::PropertyValue > const &)
throw (css::uno::RuntimeException)
{
- css::uno::Reference< css::lang::XMultiComponentFactory > smgr(
- context_->getServiceManager(), css::uno::UNO_SET_THROW);
+ css::uno::Reference< css::lang::XMultiComponentFactory > smgr( context_->getServiceManager(), css::uno::UNO_SET_THROW);
+ css::uno::Reference< css::awt::XToolkit > toolkit( css::awt::Toolkit::create(context_), css::uno::UNO_SET_THROW);
+
css::uno::Reference< css::awt::XMessageBox > box(
css::uno::Reference< css::awt::XMessageBoxFactory >(
- smgr->createInstanceWithContext(
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(
- "com.sun.star.awt.Toolkit")), context_),
+ toolkit,
css::uno::UNO_QUERY_THROW)->createMessageBox(
css::uno::Reference< css::awt::XWindowPeer >(
css::uno::Reference< css::frame::XFrame >(
diff --git a/desktop/test/deployment/passive/passive_native.cxx b/desktop/test/deployment/passive/passive_native.cxx
index 0da885d5a31d..5e409f6cb30d 100644
--- a/desktop/test/deployment/passive/passive_native.cxx
+++ b/desktop/test/deployment/passive/passive_native.cxx
@@ -32,6 +32,7 @@
#include "com/sun/star/awt/MessageBoxButtons.hpp"
#include "com/sun/star/awt/Rectangle.hpp"
#include "com/sun/star/awt/XMessageBox.hpp"
+#include "com/sun/star/awt/Toolkit.hpp"
#include "com/sun/star/awt/XMessageBoxFactory.hpp"
#include "com/sun/star/awt/XWindowPeer.hpp"
#include "com/sun/star/beans/PropertyValue.hpp"
@@ -233,13 +234,12 @@ void Dispatch::dispatch(
css::uno::Sequence< css::beans::PropertyValue > const &)
throw (css::uno::RuntimeException)
{
- css::uno::Reference< css::lang::XMultiComponentFactory > smgr(
- context_->getServiceManager(), css::uno::UNO_SET_THROW);
+ css::uno::Reference< css::lang::XMultiComponentFactory > smgr(context_->getServiceManager(), css::uno::UNO_SET_THROW);
+ css::uno::Reference< css::awt::XToolkit > toolkit( css::awt::Toolkit::create(context_), css::uno::UNO_SET_THROW);
+
css::uno::Reference< css::awt::XMessageBox > box(
css::uno::Reference< css::awt::XMessageBoxFactory >(
- smgr->createInstanceWithContext(
- rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(
- "com.sun.star.awt.Toolkit")), context_),
+ toolkit,
css::uno::UNO_QUERY_THROW)->createMessageBox(
css::uno::Reference< css::awt::XWindowPeer >(
css::uno::Reference< css::frame::XFrame >(
diff --git a/dictionaries b/dictionaries
new file mode 160000
+Subproject 028f44069fd346ba07b3a0263ee340022eb44d6
diff --git a/distro-configs/LibreOfficeLinux.conf b/distro-configs/LibreOfficeLinux.conf
index 242820fede46..bc56887922b4 100644
--- a/distro-configs/LibreOfficeLinux.conf
+++ b/distro-configs/LibreOfficeLinux.conf
@@ -37,11 +37,9 @@
--enable-ext-pdfimport
--enable-ext-nlpsolver
--enable-epm
---enable-binfilter
--enable-python=internal
--enable-online-update
--disable-unix-qstart-libpng
--disable-randr-link
--disable-kde4
--disable-dbus
- \ No newline at end of file
diff --git a/distro-configs/LibreOfficeMacOSX.conf b/distro-configs/LibreOfficeMacOSX.conf
index ab0fa362c1a0..19f12b236e20 100644
--- a/distro-configs/LibreOfficeMacOSX.conf
+++ b/distro-configs/LibreOfficeMacOSX.conf
@@ -1,6 +1,5 @@
--with-vendor=The Document Foundation
--enable-epm
---enable-binfilter
--with-java-target-version=1.5
--enable-scripting-beanshell
--enable-scripting-javascript
diff --git a/distro-configs/LibreOfficeMinGW.conf b/distro-configs/LibreOfficeMinGW.conf
index 642dcc975e4c..9ffade5b8fe0 100644
--- a/distro-configs/LibreOfficeMinGW.conf
+++ b/distro-configs/LibreOfficeMinGW.conf
@@ -22,7 +22,6 @@
--without-junit
--without-myspell-dicts
--disable-activex
---disable-binfilter
--disable-cairo-canvas
--disable-build-mozilla
--disable-directx
diff --git a/distro-configs/LibreOfficeOpenBSD.conf b/distro-configs/LibreOfficeOpenBSD.conf
index bcc5291ee411..f06eef64ebaf 100644
--- a/distro-configs/LibreOfficeOpenBSD.conf
+++ b/distro-configs/LibreOfficeOpenBSD.conf
@@ -10,7 +10,6 @@
--disable-opengl
--disable-randr-link
--disable-unix-qstart-libpng
---enable-binfilter
--enable-gstreamer-0-10
--enable-lockdown
--enable-ext-presenter-minimizer
diff --git a/distro-configs/LibreOfficeWin32.conf b/distro-configs/LibreOfficeWin32.conf
index 4ebd45931f22..36351d76fc90 100644
--- a/distro-configs/LibreOfficeWin32.conf
+++ b/distro-configs/LibreOfficeWin32.conf
@@ -7,7 +7,6 @@
--enable-extension-integration
--with-java-target-version=1.5
--disable-gtk
---enable-binfilter
--enable-scripting-beanshell
--enable-scripting-javascript
--enable-ext-wiki-publisher
diff --git a/distro-configs/OxygenOfficeLinux.conf b/distro-configs/OxygenOfficeLinux.conf
index 2be6a5d5add7..dfbc99eb44f8 100644
--- a/distro-configs/OxygenOfficeLinux.conf
+++ b/distro-configs/OxygenOfficeLinux.conf
@@ -5,7 +5,6 @@
--with-intro-progressbar-size=430,5
--with-intro-progressbar-position=5,210
--with-intro-progressbar-frame-color=138,156,190
---enable-binfilter
--enable-vba
--enable-mozilla
--enable-build-mozilla
diff --git a/distro-configs/OxygenOfficeWin32.conf b/distro-configs/OxygenOfficeWin32.conf
index 5cc637c03a66..43106a9dd124 100644
--- a/distro-configs/OxygenOfficeWin32.conf
+++ b/distro-configs/OxygenOfficeWin32.conf
@@ -2,7 +2,6 @@
--with-build-version=OxygenOffice Professional Beta 3.4.0 M000 - OxygenOffice Build 0
--with-intro-bitmap=$TARFILE_LOCATION/openintro_ooop.png
--with-about-bitmap=$TARFILE_LOCATION/openabout_ooop.png
---enable-binfilter
--enable-vba
--disable-build-mozilla
--disable-symbols
diff --git a/dmake/unix/arlib.c b/dmake/unix/arlib.c
index b401245aad5e..708063f95885 100644
--- a/dmake/unix/arlib.c
+++ b/dmake/unix/arlib.c
@@ -290,15 +290,15 @@ struct ar_args *arg;
#if ASCARCH
#if defined(_AIX)
- fread( (char *)&flhdr, sizeof(flhdr), 1, f );
+ if( fread( (char *)&flhdr, sizeof(flhdr), 1, f ) != 1 ) return (-1);
if( strncmp(flhdr.fl_magic,AIAMAG, SAIAMAG) != 0 ) return(-1);
fseek(f, atol(flhdr.fl_fstmoff), 0 ); /* postition to first member */
#else
- fread( magic, sizeof(magic), 1, f );
+ if( fread( magic, sizeof(magic), 1, f ) != 1 ) return( -1 );
if( strncmp(magic, ARMAG, SARMAG) != 0 ) return( -1 );
#endif
#else
- fread( (char*)&word, sizeof(word), 1, f );
+ if( fread( (char*)&word, sizeof(word), 1, f ) != 1 ) return( -1 );
if( word != ARMAG ) return( -1 );
#endif
diff --git a/download b/download
index 9674bfc3c1d0..637642db5300 100755
--- a/download
+++ b/download
@@ -52,17 +52,14 @@ if [ -d .git ] ; then
if [ -z "$GIT_LINK_SRC" ]; then
./g -f clone
else
+ echo "FIXME: GIT_LINK_SRC method is not yet implemented with submodules" 1>&2
# space-saving clone from another local workdir
- mkdir clone
- branch=$(git symbolic-ref HEAD | cut -d"/" -f 3)
- for i in $GIT_REPO_NAMES ; do
- bin/git-new-workdir $GIT_LINK_SRC/$i clone/$i $branch
- for d in clone/$i/* ; do
- if [ "${d}" != "clone/$i/git-hooks" ]; then
- ln -sfn ${d} $(basename ${d})
- fi
- done
+ for i in $GIT_NEEDED_SUBMODULES ; do
+ rm -r $i
+ cp -R $GIT_LINK_SRC/$i $i
+# bin/git-new-workdir $GIT_LINK_SRC/$i $i
done
+ git submodule update $GIT_NEEDED_SUBMODULES
fi
fi
@@ -153,9 +150,17 @@ downloaditem()
mv $2 ${i}_broken
else
mv $2 ..
+ if [ $? -ne 0 ]; then
+ echo cannot mv $2 to destination 2>&1 | tee -a $logfile
+ failed="$failed $2"
+ fi
fi
else
mv $2 ..
+ if [ $? -ne 0 ]; then
+ echo cannot mv $2 to destination 2>&1 | tee -a $logfile
+ failed="$failed $2"
+ fi
fi
fi
fi
@@ -169,7 +174,7 @@ for i in $filelist ; do
# echo $i
if [ "$i" != `echo $i | sed "s/^http:\///"` ]; then
tarurl=$i
- # TODO: check for comment
+ # TODO: check for comment
else
if [ "$tarurl" != "" ]; then
sum=`echo $i | sed "s/-.*//"`
@@ -189,7 +194,8 @@ if [ -f $start_dir/sources.ver -a ! -d $start_dir/.git ] ; then
lo_bugfix_release_sources_ver=`echo $lo_sources_ver | sed -e "s/\([0-9]*\.[0-9]*\.[0-9]*\).*/\1/"`
lo_src_dir="$start_dir/src"
mkdir -p "$lo_src_dir"
- for piece in `cat $start_dir/bin/repo-list` ; do
+ for piece in $GIT_NEEDED_SUBMODULES ; do
+ if [ "helpcontent2" = "$piece" ] ; then piece="help"; fi
tarname="libreoffice-$piece-$lo_sources_ver"
if [ ! -f "$TARFILE_LOCATION/$tarname.tar.xz" ] ; then
downloaditem "http://download.documentfoundation.org/libreoffice/src/$lo_bugfix_release_sources_ver" "$tarname.tar.xz" ""
@@ -210,52 +216,87 @@ if [ ! -z "$failed" ]; then
exit 1
fi
-if [ "$COM" = "MSC" -a -n "$md5sum" ]; then
- # This can be run only on Windows itself (Cygwin)
- TMPUNPACK=`cygpath -d $TARFILE_LOCATION/tmp`
- chmod a+w $TARFILE_LOCATION/tmp
+if [ "$COM" = "MSC" -a "$CPUNAME" = "INTEL" ]; then
+
+ # Windows builds need dbghelp.dll in external/dbghelp/
if [ ! -f ./external/dbghelp/dbghelp.dll -a -f $TARFILE_LOCATION/$DBGHELP_DLL ]; then
- cp $TARFILE_LOCATION/$DBGHELP_DLL ./external/dbghelp/dbghelp.dll
- fi
- if [ ! -f ./external/dbghelp/dbghelp.dll -a -f $TARFILE_LOCATION/dbg_x86.msi ]; then
- msiexec /a `cygpath -d $TARFILE_LOCATION/dbg_x86.msi` /qn TARGETDIR=$TMPUNPACK SHORTFILENAMES=1
- dbghelp_dll_path=PFiles/DbgTools/dbghelp.dll
- sum=`$md5sum $md5special $TARFILE_LOCATION/tmp/$dbghelp_dll_path | sed "s/ .*//"`
- if [ "$sum" = "4003e34416ebd25e4c115d49dc15e1a7" ]; then
- cp $TARFILE_LOCATION/tmp/$dbghelp_dll_path ./external/dbghelp/dbghelp.dll
+ cp $TARFILE_LOCATION/$DBGHELP_DLL ./external/dbghelp/dbghelp.dll
+ fi
+ if [ ! -f ./external/dbghelp/dbghelp.dll ]; then
+ echo "dbghelp.dll is missing in external/dbghelp/."
+ echo "Get it from the Microsoft site and put it there."
+ echo "(Note: Microsoft seems to enjoy changing the exact location of this file."
+ echo "You may have to search Microsoft's website.) Last time it was seen at:"
+ echo "<http://www.microsoft.com/downloads/release.asp?releaseid=30682>."
+ exit 1
+ fi
+
+ # Windows builds need gdiplus.dll in external/gdiplus/
+ if [ ! -f ./external/gdiplus/gdiplus.dll -a -f $TARFILE_LOCATION/WindowsXP-KB958911-x86-ENU.exe -a -n "$md5sum" ]; then
+ # This can be run only on Windows itself (Cygwin)
+ TMPUNPACK=`cygpath -d $TARFILE_LOCATION/tmp`
+ chmod a+w $TARFILE_LOCATION/tmp
+ gdiplus_dll_path=SP3QFE/asms/10/msft/windows/gdiplus/gdiplus.dll
+ chmod +x $TARFILE_LOCATION/WindowsXP-KB958911-x86-ENU.exe
+
+ # Run it through cmd so that the UAC prompt is displayed
+ echo
+ echo "NOTE: We are running the Microsoft KB958911 security fix installer"
+ echo "to get gdiplus.dll. You will most probably get a UAC prompt now."
+ echo "If you trust us, just enter your administrator password."
+ echo "The security fix is run with the /extract switch to just unpack"
+ echo "its files."
+ echo "If you don't trust us, just get gdiplus.dll yourself and put it"
+ echo "in external/gdiplus/gdiplus.dll."
+ echo "gdiplus.dll is included in the LibreOffice installer for the benefit of"
+ echo "Windows 2000 users."
+ # A few empty lines so that the above is visible even if the taskbar's auto-hide is turned on,
+ # and the UAC prompt caused it to taise (with a blinking icon for the UAC prompt)
+ echo
+ echo
+ echo
+ cmd /c "`cygpath -w $TARFILE_LOCATION/WindowsXP-KB958911-x86-ENU.exe` /extract:$TMPUNPACK /q"
+ if [ -f $TARFILE_LOCATION/tmp/$gdiplus_dll_path ]; then
+ echo "Extraction succeeded"
+ sum=`$md5sum $md5special $TARFILE_LOCATION/tmp/$gdiplus_dll_path | sed "s/ .*//"`
+ if [ "$sum" = "3a95b4d80a3586ab1e2f0c608608ebac" ]; then
+ cp $TARFILE_LOCATION/tmp/$gdiplus_dll_path ./external/gdiplus/gdiplus.dll
+ else
+ echo "But unexpected checksum of $gdiplus_dll_path"
+ fi
+ else
+ echo "WindowsXP-KB958911-x86-ENU.exe did not unpack the expected $gdiplus_dll_path"
fi
fi
- if [ ! -f ./external/gdiplus/gdiplus.dll -a -f $TARFILE_LOCATION/WindowsXP-KB958911-x86-ENU.exe ]; then
- gdiplus_dll_path=SP3QFE/asms/10/msft/windows/gdiplus/gdiplus.dll
- chmod +x `cygpath $TARFILE_LOCATION`/WindowsXP-KB958911-x86-ENU.exe
+ if [ ! -f ./external/gdiplus/gdiplus.dll ]; then
+ echo "gdiplus.dll is missing in external/gdiplus/."
+ echo "Get it from the Microsoft site and put it there."
+ echo "You may have to search Microsoft's website. Last time it was seen at:"
+ echo "<http://www.microsoft.com/downloads/details.aspx?familyid=6A63AB9C-DF12-4D41-933C-BE590FEAA05A&displaylang=en>."
+ exit 1
+ fi
+fi
+
+if [ "$COM" = "MSC" ]; then
+ if [ "$CPUNAME" = "INTEL" ]; then
+ ver=""
+ else
+ ver="-64"
+ fi
+ # use oowintool to copy CRT dlls and manifest
+ if ! ./oowintool --msvc-copy-dlls"$ver" ./external/msvcp ; then
+ echo "oowintool failed to copy CRT"
+ exit 1
+ fi
- # Run it through cmd so that the UAC prompt is displayed
- echo
- echo "NOTE: We are running the Microsoft KB958911 security fix installer"
- echo "to get gdiplus.dll. You will most probably get a UAC prompt now."
- echo "If you trust us, just enter your administrator password."
- echo "The security fix is run with the /extract switch to just unpack"
- echo "its files."
- echo "If you don't trust us, just get gdiplus.dll yourself and put it"
- echo "in external/gdiplus/gdiplus.dll."
- echo "gdiplus.dll is included in the LibreOffice installer for the benefit of"
- echo "Windows 2000 users."
- # A few empty lines so that the above is visible even if the taskbar's auto-hide is turned on,
- # and the UAC prompt caused it to taise (with a blinking icon for the UAC prompt)
- echo
- echo
- echo
- cmd /c "`cygpath -w $TARFILE_LOCATION/WindowsXP-KB958911-x86-ENU.exe` /extract:$TMPUNPACK /q"
- if [ -f $TARFILE_LOCATION/tmp/$gdiplus_dll_path ]; then
- echo "Extraction succeeded"
- sum=`$md5sum $md5special $TARFILE_LOCATION/tmp/$gdiplus_dll_path | sed "s/ .*//"`
- if [ "$sum" = "3a95b4d80a3586ab1e2f0c608608ebac" ]; then
- cp $TARFILE_LOCATION/tmp/$gdiplus_dll_path ./external/gdiplus/gdiplus.dll
- else
- echo "But unexpected checksum of $gdiplus_dll_path"
- fi
- else
- echo "WindowsXP-KB958911-x86-ENU.exe did not unpack the expected $gdiplus_dll_path"
+ # use oowintool to copy VC redist merge modules
+ if ! ./oowintool --msvc-copy-msms"$ver" ./external/msm"$VCVER" ; then
+ echo "oowintool failed to copy merge modules"
+ exit 1
+ fi
+ if [ "$CPUNAME" = "INTEL" ]; then
+ if ! ./oowintool --msvc-copy-msms-64 ./external/msm"$VCVER" ; then
+ echo "WARNING: oowintool failed to copy x64 merge modules, installation will lack the 64-bit Explorer extension"
fi
fi
fi
@@ -266,20 +307,6 @@ if [ -n "$OXYGENOFFICE_PACK" ] ; then
unzip -o -q $TARFILE_LOCATION/$OXYGENOFFICE_PACK -d $SRC_ROOT/src
fi
-[ -x "post_download" ] || { echo "'post_download' script not found, run ./autogen.sh." ; exit 1 ; }
-
-# Save the config.log from the main configure script
-# and restore it after running post_download.
-mv config.log config.log.save
-
-./post_download --build=$BUILD_PLATFORM --host=$HOST_PLATFORM
-post_download_status=$?
-
-test -f config.log && mv config.log post_download.log
-mv config.log.save config.log
-
-exit $post_download_status
-
# Local Variables:
# tab-width: 4
# indent-tabs-mode: nil
diff --git a/drawinglayer/Library_drawinglayer.mk b/drawinglayer/Library_drawinglayer.mk
index 39d53d5d58bb..5bab1bb2f4f3 100644
--- a/drawinglayer/Library_drawinglayer.mk
+++ b/drawinglayer/Library_drawinglayer.mk
@@ -38,6 +38,8 @@ $(eval $(call gb_Library_add_defs,drawinglayer,\
-DDRAWINGLAYER_DLLIMPLEMENTATION \
))
+$(eval $(call gb_Library_set_componentfile,drawinglayer,drawinglayer/drawinglayer))
+
$(eval $(call gb_Library_use_sdk_api,drawinglayer))
$(eval $(call gb_Library_use_externals,drawinglayer,\
@@ -92,9 +94,9 @@ $(eval $(call gb_Library_add_exception_objects,drawinglayer,\
drawinglayer/source/primitive2d/baseprimitive2d \
drawinglayer/source/primitive2d/bitmapprimitive2d \
drawinglayer/source/primitive2d/borderlineprimitive2d \
- drawinglayer/source/primitive2d/chartprimitive2d \
drawinglayer/source/primitive2d/clippedborderlineprimitive2d \
drawinglayer/source/primitive2d/controlprimitive2d \
+ drawinglayer/source/primitive2d/cropprimitive2d \
drawinglayer/source/primitive2d/discretebitmapprimitive2d \
drawinglayer/source/primitive2d/discreteshadowprimitive2d \
drawinglayer/source/primitive2d/embedded3dprimitive2d \
@@ -114,15 +116,17 @@ $(eval $(call gb_Library_add_exception_objects,drawinglayer,\
drawinglayer/source/primitive2d/metafileprimitive2d \
drawinglayer/source/primitive2d/modifiedcolorprimitive2d \
drawinglayer/source/primitive2d/pagepreviewprimitive2d \
+ drawinglayer/source/primitive2d/patternfillprimitive2d \
drawinglayer/source/primitive2d/pointarrayprimitive2d \
drawinglayer/source/primitive2d/polygonprimitive2d \
drawinglayer/source/primitive2d/polypolygonprimitive2d \
drawinglayer/source/primitive2d/primitivetools2d \
- drawinglayer/source/primitive2d/rendergraphicprimitive2d \
drawinglayer/source/primitive2d/sceneprimitive2d \
drawinglayer/source/primitive2d/sdrdecompositiontools2d \
drawinglayer/source/primitive2d/shadowprimitive2d \
drawinglayer/source/primitive2d/structuretagprimitive2d \
+ drawinglayer/source/primitive2d/svggradientprimitive2d \
+ drawinglayer/source/primitive2d/textbreakuphelper \
drawinglayer/source/primitive2d/textdecoratedprimitive2d \
drawinglayer/source/primitive2d/texteffectprimitive2d \
drawinglayer/source/primitive2d/textenumsprimitive2d \
@@ -159,7 +163,6 @@ $(eval $(call gb_Library_add_exception_objects,drawinglayer,\
drawinglayer/source/processor2d/canvasprocessor \
drawinglayer/source/processor2d/contourextractor2d \
drawinglayer/source/processor2d/getdigitlanguage \
- drawinglayer/source/processor2d/helperchartrenderer \
drawinglayer/source/processor2d/helperwrongspellrenderer \
drawinglayer/source/processor2d/hittestprocessor2d \
drawinglayer/source/processor2d/linegeometryextractor2d \
@@ -179,6 +182,9 @@ $(eval $(call gb_Library_add_exception_objects,drawinglayer,\
drawinglayer/source/processor3d/shadow3dextractor \
drawinglayer/source/processor3d/zbufferprocessor3d \
drawinglayer/source/texture/texture3d \
+ drawinglayer/source/tools/converters \
+ drawinglayer/source/drawinglayeruno/drawinglayeruno \
+ drawinglayer/source/drawinglayeruno/xprimitive2drenderer \
drawinglayer/source/texture/texture \
drawinglayer/source/dumper/XShapeDumper \
drawinglayer/source/dumper/EnhancedShapeDumper \
diff --git a/drawinglayer/Makefile b/drawinglayer/Makefile
index ccb1c85a04da..0997e628485b 100644
--- a/drawinglayer/Makefile
+++ b/drawinglayer/Makefile
@@ -1,4 +1,11 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
diff --git a/drawinglayer/Package_inc.mk b/drawinglayer/Package_inc.mk
index 7d41e6c2b5d8..0a40b0f8db48 100644
--- a/drawinglayer/Package_inc.mk
+++ b/drawinglayer/Package_inc.mk
@@ -54,9 +54,9 @@ $(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/baseprimitive2d.hxx,drawinglayer/primitive2d/baseprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/bitmapprimitive2d.hxx,drawinglayer/primitive2d/bitmapprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx,drawinglayer/primitive2d/borderlineprimitive2d.hxx))
-$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/chartprimitive2d.hxx,drawinglayer/primitive2d/chartprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/clippedborderlineprimitive2d.hxx,drawinglayer/primitive2d/clippedborderlineprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/controlprimitive2d.hxx,drawinglayer/primitive2d/controlprimitive2d.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/cropprimitive2d.hxx,drawinglayer/primitive2d/cropprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/discretebitmapprimitive2d.hxx,drawinglayer/primitive2d/discretebitmapprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/discreteshadowprimitive2d.hxx,drawinglayer/primitive2d/discreteshadowprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx,drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx))
@@ -77,23 +77,27 @@ $(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/metafileprimitive2d.hxx,drawinglayer/primitive2d/metafileprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx,drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx,drawinglayer/primitive2d/pagepreviewprimitive2d.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/patternfillprimitive2d.hxx,drawinglayer/primitive2d/patternfillprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx,drawinglayer/primitive2d/pointarrayprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/polygonprimitive2d.hxx,drawinglayer/primitive2d/polygonprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx,drawinglayer/primitive2d/polypolygonprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/primitivetools2d.hxx,drawinglayer/primitive2d/primitivetools2d.hxx))
-$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/rendergraphicprimitive2d.hxx,drawinglayer/primitive2d/rendergraphicprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/sceneprimitive2d.hxx,drawinglayer/primitive2d/sceneprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/sdrdecompositiontools2d.hxx,drawinglayer/primitive2d/sdrdecompositiontools2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/shadowprimitive2d.hxx,drawinglayer/primitive2d/shadowprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/structuretagprimitive2d.hxx,drawinglayer/primitive2d/structuretagprimitive2d.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx,drawinglayer/primitive2d/svggradientprimitive2d.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textbreakuphelper.hxx,drawinglayer/primitive2d/textbreakuphelper.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx,drawinglayer/primitive2d/textdecoratedprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/texteffectprimitive2d.hxx,drawinglayer/primitive2d/texteffectprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textenumsprimitive2d.hxx,drawinglayer/primitive2d/textenumsprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/texthierarchyprimitive2d.hxx,drawinglayer/primitive2d/texthierarchyprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textlayoutdevice.hxx,drawinglayer/primitive2d/textlayoutdevice.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textlineprimitive2d.hxx,drawinglayer/primitive2d/textlineprimitive2d.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textlineprimitive2d.hxx,drawinglayer/primitive2d/textlineprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textprimitive2d.hxx,drawinglayer/primitive2d/textprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx,drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx,drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/transformprimitive2d.hxx,drawinglayer/primitive2d/transformprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/transparenceprimitive2d.hxx,drawinglayer/primitive2d/transparenceprimitive2d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx,drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx))
@@ -104,6 +108,7 @@ $(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/groupprimitive3d.hxx,drawinglayer/primitive3d/groupprimitive3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/hatchtextureprimitive3d.hxx,drawinglayer/primitive3d/hatchtextureprimitive3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx,drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx,drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx,drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/polygonprimitive3d.hxx,drawinglayer/primitive3d/polygonprimitive3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/primitive3d/polygontubeprimitive3d.hxx,drawinglayer/primitive3d/polygontubeprimitive3d.hxx))
@@ -134,9 +139,12 @@ $(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/processor3d/
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/processor3d/defaultprocessor3d.hxx,drawinglayer/processor3d/defaultprocessor3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/processor3d/geometry2dextractor.hxx,drawinglayer/processor3d/geometry2dextractor.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/processor3d/shadow3dextractor.hxx,drawinglayer/processor3d/shadow3dextractor.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/processor3d/geometry2dextractor.hxx,drawinglayer/processor3d/geometry2dextractor.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/processor3d/shadow3dextractor.hxx,drawinglayer/processor3d/shadow3dextractor.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/processor3d/zbufferprocessor3d.hxx,drawinglayer/processor3d/zbufferprocessor3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/texture/texture3d.hxx,drawinglayer/texture/texture3d.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/texture/texture.hxx,drawinglayer/texture/texture.hxx))
+$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/tools/converters.hxx,drawinglayer/tools/converters.hxx))
$(eval $(call gb_Package_add_file,drawinglayer_inc,inc/drawinglayer/XShapeDumper.hxx,drawinglayer/XShapeDumper.hxx))
# vim: set noet sw=4 ts=4:
diff --git a/drawinglayer/README b/drawinglayer/README
index 70dda944b88f..fd4c1ffda58c 100644
--- a/drawinglayer/README
+++ b/drawinglayer/README
@@ -1,3 +1,3 @@
-*Somewhat of a middle layer between rendering subsystems and application cores.
-
+*Somewhat of a middle layer between rendering subsystems and application cores.
+
*It offers a nice and easy API to render complex shapes. \ No newline at end of file
diff --git a/wizards/com/sun/star/wizards/fax/pyfax.component b/drawinglayer/drawinglayer.component
index abc871137fbf..9f3c0c079099 100644
--- a/wizards/com/sun/star/wizards/fax/pyfax.component
+++ b/drawinglayer/drawinglayer.component
@@ -16,9 +16,10 @@
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
-->
-<component loader="com.sun.star.loader.Python"
+
+<component loader="com.sun.star.loader.SharedLibrary"
xmlns="http://openoffice.org/2010/uno-components">
- <implementation name="com.sun.star.wizards.fax.CallWizard">
- <service name="com.sun.star.task.Job"/>
+ <implementation name="drawinglayer::unorenderer::XPrimitive2DRenderer">
+ <service name="com.sun.star.graphic.Primitive2DTools"/>
</implementation>
</component>
diff --git a/drawinglayer/inc/drawinglayer/animation/animationtiming.hxx b/drawinglayer/inc/drawinglayer/animation/animationtiming.hxx
index b5166d820cdf..08ee95090f6c 100644
--- a/drawinglayer/inc/drawinglayer/animation/animationtiming.hxx
+++ b/drawinglayer/inc/drawinglayer/animation/animationtiming.hxx
@@ -1,37 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ANIMATION_ANIMATIONTIMING_HXX
#define INCLUDED_DRAWINGLAYER_ANIMATION_ANIMATIONTIMING_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <vector>
//////////////////////////////////////////////////////////////////////////////
diff --git a/drawinglayer/inc/drawinglayer/attribute/fillbitmapattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/fillbitmapattribute.hxx
index 2be10fd30285..ced46b3e4078 100644
--- a/drawinglayer/inc/drawinglayer/attribute/fillbitmapattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/fillbitmapattribute.hxx
@@ -1,38 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_FILLBITMAPATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_FILLBITMAPATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/fillgradientattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/fillgradientattribute.hxx
index 1a4dac4a3e04..6d01c86b84f5 100644
--- a/drawinglayer/inc/drawinglayer/attribute/fillgradientattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/fillgradientattribute.hxx
@@ -1,40 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_FILLGRADIENTATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_FILLGRADIENTATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/fillhatchattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/fillhatchattribute.hxx
index ec996eb06f1c..dc2665b33a59 100644
--- a/drawinglayer/inc/drawinglayer/attribute/fillhatchattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/fillhatchattribute.hxx
@@ -1,40 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_FILLHATCHATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_FILLHATCHATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/fontattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/fontattribute.hxx
index 86802f10f50d..36686fe1c912 100644
--- a/drawinglayer/inc/drawinglayer/attribute/fontattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/fontattribute.hxx
@@ -1,38 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_FONTATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_FONTATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/lineattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/lineattribute.hxx
index bc5df5227191..4984a1268d23 100644
--- a/drawinglayer/inc/drawinglayer/attribute/lineattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/lineattribute.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_LINEATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_LINEATTRIBUTE_HXX
@@ -32,6 +23,7 @@
#include <drawinglayer/drawinglayerdllapi.h>
#include <basegfx/vector/b2enums.hxx>
+#include <com/sun/star/drawing/LineCap.hpp>
//////////////////////////////////////////////////////////////////////////////
// predefines
@@ -60,7 +52,8 @@ namespace drawinglayer
explicit LineAttribute(
const basegfx::BColor& rColor,
double fWidth = 0.0,
- basegfx::B2DLineJoin aB2DLineJoin = basegfx::B2DLINEJOIN_ROUND);
+ basegfx::B2DLineJoin aB2DLineJoin = basegfx::B2DLINEJOIN_ROUND,
+ com::sun::star::drawing::LineCap aLineCap = com::sun::star::drawing::LineCap_BUTT);
LineAttribute();
LineAttribute(const LineAttribute& rCandidate);
LineAttribute& operator=(const LineAttribute& rCandidate);
@@ -76,6 +69,7 @@ namespace drawinglayer
const basegfx::BColor& getColor() const;
double getWidth() const;
basegfx::B2DLineJoin getLineJoin() const;
+ com::sun::star::drawing::LineCap getLineCap() const;
};
} // end of namespace attribute
} // end of namespace drawinglayer
diff --git a/drawinglayer/inc/drawinglayer/attribute/linestartendattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/linestartendattribute.hxx
index f88d1fda3891..563991915cae 100644
--- a/drawinglayer/inc/drawinglayer/attribute/linestartendattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/linestartendattribute.hxx
@@ -1,38 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_LINESTARTENDATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_LINESTARTENDATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/materialattribute3d.hxx b/drawinglayer/inc/drawinglayer/attribute/materialattribute3d.hxx
index b4ad301a2d14..cb64b0f9e330 100644
--- a/drawinglayer/inc/drawinglayer/attribute/materialattribute3d.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/materialattribute3d.hxx
@@ -1,38 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_MATERIALATTRIBUTE3D_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_MATERIALATTRIBUTE3D_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrallattribute3d.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrallattribute3d.hxx
index 2182f80ee124..abd46bf273fe 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrallattribute3d.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrallattribute3d.hxx
@@ -1,37 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRALLATTRIBUTE3D_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRALLATTRIBUTE3D_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <drawinglayer/attribute/sdrlineattribute.hxx>
#include <drawinglayer/attribute/sdrfillattribute.hxx>
#include <drawinglayer/attribute/sdrlinestartendattribute.hxx>
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrfillattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrfillattribute.hxx
index 69ea61e770a1..038916f7e71b 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrfillattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrfillattribute.hxx
@@ -1,40 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRFILLATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRFILLATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrfillbitmapattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrfillbitmapattribute.hxx
index 2af3783738c6..3f04c869453c 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrfillbitmapattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrfillbitmapattribute.hxx
@@ -1,38 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRFILLBITMAPATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRFILLBITMAPATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrlightattribute3d.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrlightattribute3d.hxx
index b7ed9a25cb0b..fe2e998d4ea7 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrlightattribute3d.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrlightattribute3d.hxx
@@ -1,40 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLIGHTATTRIBUTE3D_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLIGHTATTRIBUTE3D_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrlightingattribute3d.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrlightingattribute3d.hxx
index ff8c459c8e3c..08b333c319b7 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrlightingattribute3d.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrlightingattribute3d.hxx
@@ -1,39 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLIGHTINGATTRIBUTE3D_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLIGHTINGATTRIBUTE3D_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <vector>
//////////////////////////////////////////////////////////////////////////////
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrlineattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrlineattribute.hxx
index 98dbccdca535..f487b4d6d59a 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrlineattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrlineattribute.hxx
@@ -1,40 +1,29 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLINEATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLINEATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <basegfx/vector/b2enums.hxx>
+#include <com/sun/star/drawing/LineCap.hpp>
#include <vector>
//////////////////////////////////////////////////////////////////////////////
@@ -66,6 +55,7 @@ namespace drawinglayer
double fWidth,
double fTransparence,
const basegfx::BColor& rColor,
+ com::sun::star::drawing::LineCap eCap,
const ::std::vector< double >& rDotDashArray,
double fFullDotDashLen);
SdrLineAttribute();
@@ -86,6 +76,7 @@ namespace drawinglayer
const basegfx::BColor& getColor() const;
const ::std::vector< double >& getDotDashArray() const;
double getFullDotDashLen() const;
+ com::sun::star::drawing::LineCap getCap() const;
};
} // end of namespace attribute
} // end of namespace drawinglayer
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrlinestartendattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrlinestartendattribute.hxx
index 231b2e21b7ba..2715bb78ae6c 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrlinestartendattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrlinestartendattribute.hxx
@@ -1,40 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLINESTARTENDATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRLINESTARTENDATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrobjectattribute3d.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrobjectattribute3d.hxx
index 97a5388bf099..809efa5a22f0 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrobjectattribute3d.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrobjectattribute3d.hxx
@@ -1,39 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDROBJECTATTRIBUTE3D_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDROBJECTATTRIBUTE3D_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <com/sun/star/drawing/NormalsKind.hpp>
#include <com/sun/star/drawing/TextureProjectionMode.hpp>
#include <com/sun/star/drawing/TextureKind2.hpp>
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrsceneattribute3d.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrsceneattribute3d.hxx
index d2394da0fc3b..27107e43dc9b 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrsceneattribute3d.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrsceneattribute3d.hxx
@@ -1,39 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRSCENEATTRIBUTE3D_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRSCENEATTRIBUTE3D_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <com/sun/star/drawing/ProjectionMode.hpp>
#include <com/sun/star/drawing/ShadeMode.hpp>
diff --git a/drawinglayer/inc/drawinglayer/attribute/sdrshadowattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/sdrshadowattribute.hxx
index 900d312e3d23..91657cde8829 100644
--- a/drawinglayer/inc/drawinglayer/attribute/sdrshadowattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/sdrshadowattribute.hxx
@@ -1,40 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRSHADOWATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_SDRSHADOWATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
-
//////////////////////////////////////////////////////////////////////////////
// predefines
diff --git a/drawinglayer/inc/drawinglayer/attribute/strokeattribute.hxx b/drawinglayer/inc/drawinglayer/attribute/strokeattribute.hxx
index 7c9d1e6819ad..3759213f1a2a 100644
--- a/drawinglayer/inc/drawinglayer/attribute/strokeattribute.hxx
+++ b/drawinglayer/inc/drawinglayer/attribute/strokeattribute.hxx
@@ -1,37 +1,27 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_ATTRIBUTE_STROKEATTRIBUTE_HXX
#define INCLUDED_DRAWINGLAYER_ATTRIBUTE_STROKEATTRIBUTE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <vector>
//////////////////////////////////////////////////////////////////////////////
diff --git a/drawinglayer/inc/drawinglayer/geometry/viewinformation2d.hxx b/drawinglayer/inc/drawinglayer/geometry/viewinformation2d.hxx
index ef584eeedb81..e3d4f23ddd95 100644
--- a/drawinglayer/inc/drawinglayer/geometry/viewinformation2d.hxx
+++ b/drawinglayer/inc/drawinglayer/geometry/viewinformation2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_GEOMETRY_VIEWINFORMATION2D_HXX
#define INCLUDED_DRAWINGLAYER_GEOMETRY_VIEWINFORMATION2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/geometry/viewinformation3d.hxx b/drawinglayer/inc/drawinglayer/geometry/viewinformation3d.hxx
index 568eda63f91e..acaeff8b3c61 100644
--- a/drawinglayer/inc/drawinglayer/geometry/viewinformation3d.hxx
+++ b/drawinglayer/inc/drawinglayer/geometry/viewinformation3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_GEOMETRY_VIEWINFORMATION3D_HXX
#define INCLUDED_DRAWINGLAYER_GEOMETRY_VIEWINFORMATION3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/animatedprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/animatedprimitive2d.hxx
index 22eaf10e461f..59ee3225dc78 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/animatedprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/animatedprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_ANIMATEDPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_ANIMATEDPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx
index 6a2bbfa07976..3986aba3566b 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BACKGROUNDCOLORPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BACKGROUNDCOLORPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx
index ecab8e92850d..bc4a2fecaa0d 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/baseprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BASEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BASEPRIMITIVE2D_HXX
@@ -271,6 +262,10 @@ namespace drawinglayer
{
namespace primitive2d
{
+ /// support to handle a sequence of primitives as stl vector and convert it during creation
+ typedef ::std::vector< BasePrimitive2D* > Primitive2DVector;
+ Primitive2DSequence DRAWINGLAYER_DLLPUBLIC Primitive2DVectorToPrimitive2DSequence(const Primitive2DVector& rSource, bool bInvert = false);
+
/// get B2DRange from a given Primitive2DReference
basegfx::B2DRange DRAWINGLAYER_DLLPUBLIC getB2DRangeFromPrimitive2DReference(const Primitive2DReference& rCandidate, const geometry::ViewInformation2D& aViewInformation);
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/bitmapprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/bitmapprimitive2d.hxx
index b89656ffac03..fa262bd9fe95 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/bitmapprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/bitmapprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BITMAPPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BITMAPPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
index fed20e69c7cf..d9ed473851f4 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/borderlineprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BORDERLINEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_BORDERLINEPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/chartprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/chartprimitive2d.hxx
deleted file mode 100644
index 274d70953ebc..000000000000
--- a/drawinglayer/inc/drawinglayer/primitive2d/chartprimitive2d.hxx
+++ /dev/null
@@ -1,81 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CHARTPRIMITIVE2D_HXX
-#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CHARTPRIMITIVE2D_HXX
-
-#include <drawinglayer/drawinglayerdllapi.h>
-
-#include <drawinglayer/primitive2d/groupprimitive2d.hxx>
-#include <com/sun/star/frame/XModel.hpp>
-#include <basegfx/matrix/b2dhommatrix.hxx>
-
-//////////////////////////////////////////////////////////////////////////////
-
-namespace drawinglayer
-{
- namespace primitive2d
- {
- /** ChartPrimitive2D class
-
- This is a helper primitive which decomposes to the ChartMetaFile
- visualisation. It is used to allow specific renderers to do something
- direct for visualising the chart.
- */
- class DRAWINGLAYER_DLLPUBLIC ChartPrimitive2D : public GroupPrimitive2D
- {
- private:
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > mxChartModel;
- basegfx::B2DHomMatrix maTransformation;
-
- public:
- ChartPrimitive2D(
- const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& rxChartModel,
- const basegfx::B2DHomMatrix& rTransformation,
- const Primitive2DSequence& rChildren);
-
- /// data read access
- const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& getChartModel() const { return mxChartModel; }
- const basegfx::B2DHomMatrix& getTransformation() const { return maTransformation; }
-
- // compare operator
- virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
-
- // provide unique ID
- DeclPrimitrive2DIDBlock()
-
- virtual basegfx::B2DRange getB2DRange(const geometry::ViewInformation2D& rViewInformation) const;
- };
- } // end of namespace primitive2d
-} // end of namespace drawinglayer
-
-//////////////////////////////////////////////////////////////////////////////
-
-#endif //INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CHARTPRIMITIVE2D_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/controlprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/controlprimitive2d.hxx
index a40e90e680eb..789b7aa38471 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/controlprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/controlprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CONTROLPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CONTROLPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/cropprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/cropprimitive2d.hxx
new file mode 100644
index 000000000000..25d044b3231f
--- /dev/null
+++ b/drawinglayer/inc/drawinglayer/primitive2d/cropprimitive2d.hxx
@@ -0,0 +1,102 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CROPPRIMITIVE2D_HXX
+#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CROPPRIMITIVE2D_HXX
+
+#include <drawinglayer/drawinglayerdllapi.h>
+#include <drawinglayer/primitive2d/groupprimitive2d.hxx>
+#include <basegfx/matrix/b2dhommatrix.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ /** CropPrimitive2D class
+
+ Caution: Due to old constraints (old core definitions) the
+ crop distances describe how the uncropped content is defined
+ relative to the current object size. This means that maTransformation
+ describes the rurrent object size (the part of the object visible
+ with the crop applied). To get the original size and orientation
+ of the uncropped content it is necessary to calc back from the
+ current situation (maTransformation) using the crop values
+ to get to the uncropped original content.
+
+ Thus a transformation has to be calculated which will be applied
+ to the already exsisting content to get it to the uncropped state
+ ans then this is masked with the current state (mask polygon
+ created from unit polygon and maTransformation).
+
+ At least in this primitive the units of the crop values are
+ already in the local coordinate system; inthe core these distances
+ are defined relative to the object content size (PrefMapMode
+ and PrefSize of the content)...
+
+ Of course this is a primitive, so feel free to just ignore all that
+ stuff and use the automatically generated decomposition. Sigh.
+ */
+ class DRAWINGLAYER_DLLPUBLIC CropPrimitive2D : public GroupPrimitive2D
+ {
+ private:
+ // the transformation already applied to the child geometry
+ basegfx::B2DHomMatrix maTransformation;
+
+ // the crop offsets relative to the range of the unrotated content
+ double mfCropLeft;
+ double mfCropTop;
+ double mfCropRight;
+ double mfCropBottom;
+
+ public:
+ /// constructor
+ CropPrimitive2D(
+ const Primitive2DSequence& rChildren,
+ const basegfx::B2DHomMatrix& rTransformation,
+ double fCropLeft,
+ double fCropTop,
+ double fCropRight,
+ double fCropBottom);
+
+ /// data read access
+ const basegfx::B2DHomMatrix& getTransformation() const { return maTransformation; }
+ double getCropLeft() const { return mfCropLeft; }
+ double getCropTop() const { return mfCropTop; }
+ double getCropRight() const { return mfCropRight; }
+ double getCropBottom() const { return mfCropBottom; }
+
+ /// compare operator
+ virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
+
+ /// local decomposition
+ virtual Primitive2DSequence get2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const;
+
+ /// provide unique ID
+ DeclPrimitrive2DIDBlock()
+ };
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif //INCLUDED_DRAWINGLAYER_PRIMITIVE2D_CROPPRIMITIVE2D_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/discretebitmapprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/discretebitmapprimitive2d.hxx
index c7bb6815eb62..9b8528057c14 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/discretebitmapprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/discretebitmapprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_DISCRETEBITMAPPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_DISCRETEBITMAPPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/discreteshadowprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/discreteshadowprimitive2d.hxx
index d39dd2ddd21c..2c10292b1c59 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/discreteshadowprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/discreteshadowprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_QUADRATICSHADOWPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_QUADRATICSHADOWPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx
index daf4b8da834e..e44a8ebc1f23 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PRIMITIVETYPES2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PRIMITIVETYPES2D_HXX
@@ -66,30 +57,30 @@
#define PRIMITIVE2D_ID_POLYGONSTROKEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 22)
#define PRIMITIVE2D_ID_POLYGONSTROKEARROWPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 23)
#define PRIMITIVE2D_ID_POLYPOLYGONSTROKEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 24)
-#define PRIMITIVE2D_ID_POLYPOLYGONCOLORPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 25)
-#define PRIMITIVE2D_ID_POLYPOLYGONGRADIENTPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 26)
-#define PRIMITIVE2D_ID_POLYPOLYGONHATCHPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 27)
-#define PRIMITIVE2D_ID_POLYPOLYGONBITMAPPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 28)
-#define PRIMITIVE2D_ID_SCENEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 29)
-#define PRIMITIVE2D_ID_SHADOWPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 30)
-#define PRIMITIVE2D_ID_TEXTSIMPLEPORTIONPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 31)
-#define PRIMITIVE2D_ID_TEXTDECORATEDPORTIONPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 32)
-#define PRIMITIVE2D_ID_TRANSFORMPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 33)
-#define PRIMITIVE2D_ID_UNIFIEDTRANSPARENCEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 34)
-#define PRIMITIVE2D_ID_POINTARRAYPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 35)
-#define PRIMITIVE2D_ID_TEXTHIERARCHYFIELDPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 36)
-#define PRIMITIVE2D_ID_TEXTHIERARCHYLINEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 37)
-#define PRIMITIVE2D_ID_TEXTHIERARCHYPARAGRAPHPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 38)
-#define PRIMITIVE2D_ID_TEXTHIERARCHYBLOCKPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 39)
-#define PRIMITIVE2D_ID_TEXTHIERARCHYEDITPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 40)
-#define PRIMITIVE2D_ID_POLYGONWAVEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 41)
-#define PRIMITIVE2D_ID_WRONGSPELLPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 42)
-#define PRIMITIVE2D_ID_TEXTEFFECTPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 43)
-#define PRIMITIVE2D_ID_TEXTHIERARCHYBULLETPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 44)
-#define PRIMITIVE2D_ID_POLYPOLYGONHAIRLINEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 45)
-#define PRIMITIVE2D_ID_EXECUTEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 46)
-#define PRIMITIVE2D_ID_PAGEPREVIEWPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 47)
-#define PRIMITIVE2D_ID_CHARTPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 48)
+#define PRIMITIVE2D_ID_POLYPOLYGONSTROKEARROWPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 25)
+#define PRIMITIVE2D_ID_POLYPOLYGONCOLORPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 26)
+#define PRIMITIVE2D_ID_POLYPOLYGONGRADIENTPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 27)
+#define PRIMITIVE2D_ID_POLYPOLYGONHATCHPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 28)
+#define PRIMITIVE2D_ID_POLYPOLYGONBITMAPPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 29)
+#define PRIMITIVE2D_ID_SCENEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 30)
+#define PRIMITIVE2D_ID_SHADOWPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 31)
+#define PRIMITIVE2D_ID_TEXTSIMPLEPORTIONPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 32)
+#define PRIMITIVE2D_ID_TEXTDECORATEDPORTIONPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 33)
+#define PRIMITIVE2D_ID_TRANSFORMPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 34)
+#define PRIMITIVE2D_ID_UNIFIEDTRANSPARENCEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 35)
+#define PRIMITIVE2D_ID_POINTARRAYPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 36)
+#define PRIMITIVE2D_ID_TEXTHIERARCHYFIELDPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 37)
+#define PRIMITIVE2D_ID_TEXTHIERARCHYLINEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 38)
+#define PRIMITIVE2D_ID_TEXTHIERARCHYPARAGRAPHPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 39)
+#define PRIMITIVE2D_ID_TEXTHIERARCHYBLOCKPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 40)
+#define PRIMITIVE2D_ID_TEXTHIERARCHYEDITPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 41)
+#define PRIMITIVE2D_ID_POLYGONWAVEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 42)
+#define PRIMITIVE2D_ID_WRONGSPELLPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 43)
+#define PRIMITIVE2D_ID_TEXTEFFECTPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 44)
+#define PRIMITIVE2D_ID_TEXTHIERARCHYBULLETPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 45)
+#define PRIMITIVE2D_ID_POLYPOLYGONHAIRLINEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 46)
+#define PRIMITIVE2D_ID_EXECUTEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 47)
+#define PRIMITIVE2D_ID_PAGEPREVIEWPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 48)
#define PRIMITIVE2D_ID_STRUCTURETAGPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 49)
#define PRIMITIVE2D_ID_BORDERLINEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 50)
#define PRIMITIVE2D_ID_POLYPOLYGONMARKERPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 51)
@@ -103,8 +94,14 @@
#define PRIMITIVE2D_ID_EPSPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 59)
#define PRIMITIVE2D_ID_DISCRETESHADOWPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 60)
#define PRIMITIVE2D_ID_HIDDENGEOMETRYPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 61)
-#define PRIMITIVE2D_ID_CLIPPEDBORDERLINEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 62)
-#define PRIMITIVE2D_ID_RENDERGRAPHICPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 63)
+#define PRIMITIVE2D_ID_SVGLINEARGRADIENTPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 62)
+#define PRIMITIVE2D_ID_SVGRADIALGRADIENTPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 63)
+#define PRIMITIVE2D_ID_SVGLINEARATOMPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 64)
+#define PRIMITIVE2D_ID_SVGRADIALATOMPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 65)
+#define PRIMITIVE2D_ID_CROPPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 66)
+#define PRIMITIVE2D_ID_PATTERNFILLPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 67)
+
+#define PRIMITIVE2D_ID_CLIPPEDBORDERLINEPRIMITIVE2D (PRIMITIVE2D_ID_RANGE_DRAWINGLAYER| 68)
//////////////////////////////////////////////////////////////////////////////
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/embedded3dprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/embedded3dprimitive2d.hxx
index 922dbf9fe612..d7389bea2bc3 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/embedded3dprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/embedded3dprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_EMBEDDED3DPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_EMBEDDED3DPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/epsprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/epsprimitive2d.hxx
index 79c15d5a870b..577554481d6e 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/epsprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/epsprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_EPSPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_EPSPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/fillbitmapprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/fillbitmapprimitive2d.hxx
index 5285fef71c8b..0c82458840ad 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/fillbitmapprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/fillbitmapprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_FILLBITMAPPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_FILLBITMAPPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/fillgradientprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/fillgradientprimitive2d.hxx
index ccf6c7bc9f60..0f6c33ae8f95 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/fillgradientprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/fillgradientprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_FILLGRADIENTPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_FILLGRADIENTPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/fillhatchprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/fillhatchprimitive2d.hxx
index 2957bcbf7bf0..b0c27ba89107 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/fillhatchprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/fillhatchprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_FILLHATCHPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_FILLHATCHPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/graphicprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/graphicprimitive2d.hxx
index 15a5962c66a2..75bb6fc99341 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/graphicprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/graphicprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_GRAPHICPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_GRAPHICPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/gridprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/gridprimitive2d.hxx
index a201cdb6b4fb..3db300ff4da4 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/gridprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/gridprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_GRIDPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_GRIDPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/groupprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/groupprimitive2d.hxx
index 201baa198865..7dab4a628638 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/groupprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/groupprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_GROUPPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_GROUPPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/helplineprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/helplineprimitive2d.hxx
index 74c7528e84bb..c9addb8f3810 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/helplineprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/helplineprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_HELPLINEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_HELPLINEPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/hiddengeometryprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/hiddengeometryprimitive2d.hxx
index 01ec68ae3f34..35c8de40bc4d 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/hiddengeometryprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/hiddengeometryprimitive2d.hxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_HIDDENGEOMETRYPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_HIDDENGEOMETRYPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/invertprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/invertprimitive2d.hxx
index a2394bf79667..dfff3d9034ba 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/invertprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/invertprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_INVERTPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_INVERTPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/markerarrayprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/markerarrayprimitive2d.hxx
index 8ea6840cbd3e..b1bca354e60e 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/markerarrayprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/markerarrayprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MARKERARRAYPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MARKERARRAYPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/maskprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/maskprimitive2d.hxx
index b8045f7017a6..af5fcd9177d1 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/maskprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/maskprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MASKPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MASKPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/mediaprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/mediaprimitive2d.hxx
index d7c6fe07e43e..32cbe2e59a02 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/mediaprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/mediaprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MEDIAPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MEDIAPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx
index b57f58837e67..a8e8cf883991 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/metafileprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_METAFILEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_METAFILEPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx
index 9395a965638b..7584cfad27b7 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MODIFIEDCOLORPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_MODIFIEDCOLORPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx
index ae1c0765054f..5acdf2157f10 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/pagepreviewprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PAGEPREVIEWPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PAGEPREVIEWPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/patternfillprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/patternfillprimitive2d.hxx
new file mode 100644
index 000000000000..7787d6f6ba28
--- /dev/null
+++ b/drawinglayer/inc/drawinglayer/primitive2d/patternfillprimitive2d.hxx
@@ -0,0 +1,81 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PATTERNFILLPRIMITIVE2D_HXX
+#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PATTERNFILLPRIMITIVE2D_HXX
+
+#include <drawinglayer/drawinglayerdllapi.h>
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <basegfx/matrix/b2dhommatrix.hxx>
+#include <basegfx/polygon/b2dpolypolygon.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ /** PatternFillPrimitive2D class
+
+ This primitive allows filling a given PolyPolygon with a pattern
+ defined by a sequence of primitives which are mapped to the unit range.
+ The pattern is defined using a reference range which defines a rectangular
+ area relative to the PolyPolygon (in unit coordinates) which is virtually
+ infinitely repeated.
+ */
+ class DRAWINGLAYER_DLLPUBLIC PatternFillPrimitive2D : public BufferedDecompositionPrimitive2D
+ {
+ private:
+ const basegfx::B2DPolyPolygon maMask;
+ const Primitive2DSequence maChildren;
+ const basegfx::B2DRange maReferenceRange;
+
+ protected:
+ /// create local decomposition
+ virtual Primitive2DSequence create2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const;
+
+ public:
+ /// constructor
+ PatternFillPrimitive2D(
+ const basegfx::B2DPolyPolygon& rMask,
+ const Primitive2DSequence& rChildren,
+ const basegfx::B2DRange& rReferenceRange);
+
+ /// data read access
+ const basegfx::B2DPolyPolygon& getMask() const { return maMask; }
+ const Primitive2DSequence& getChildren() const { return maChildren; }
+ const basegfx::B2DRange& getReferenceRange() const { return maReferenceRange; }
+
+ /// compare operator
+ virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
+
+ /// get range
+ virtual basegfx::B2DRange getB2DRange(const geometry::ViewInformation2D& rViewInformation) const;
+
+ /// provide unique ID
+ DeclPrimitrive2DIDBlock()
+ };
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif //INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PATTERNFILLPRIMITIVE2D_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx
index 9da18b626140..8acb5956f60f 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/pointarrayprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_POINTARRAYPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_POINTARRAYPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx
index 5f73468a21c8..09e5b29039b3 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/polygonprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_POLYGONPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_POLYGONPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx
index 430df66b1703..f53d4cdf5759 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/polypolygonprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_POLYPOLYGONPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_POLYPOLYGONPRIMITIVE2D_HXX
@@ -179,6 +170,10 @@ namespace drawinglayer
const attribute::LineAttribute& rLineAttribute,
const attribute::StrokeAttribute& rStrokeAttribute);
+ PolyPolygonStrokePrimitive2D(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const attribute::LineAttribute& rLineAttribute);
+
/// data read access
const basegfx::B2DPolyPolygon& getB2DPolyPolygon() const { return maPolyPolygon; }
const attribute::LineAttribute& getLineAttribute() const { return maLineAttribute; }
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/primitivetools2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/primitivetools2d.hxx
index d83d699f3223..6ef63f1e916b 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/primitivetools2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/primitivetools2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PRIMITIVE2DTOOLS_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_PRIMITIVE2DTOOLS_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/rendergraphicprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/rendergraphicprimitive2d.hxx
deleted file mode 100644
index c3f53ab52122..000000000000
--- a/drawinglayer/inc/drawinglayer/primitive2d/rendergraphicprimitive2d.hxx
+++ /dev/null
@@ -1,93 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_RENDERGRAPHICPRIMITIVE2D_HXX
-#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_RENDERGRAPHICPRIMITIVE2D_HXX
-
-#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
-#include <basegfx/matrix/b2dhommatrix.hxx>
-#include <vcl/rendergraphic.hxx>
-#include <memory>
-
-//////////////////////////////////////////////////////////////////////////////
-// RenderGraphicPrimitive2D class
-
-namespace vcl { class RenderGraphicRasterizer; }
-
-namespace drawinglayer
-{
- namespace primitive2d
- {
- /** RenderGraphicPrimitive2D class
-
- This class is the central primitive for RenderGraphic-based primitives.
- */
- class RenderGraphicPrimitive2D : public BasePrimitive2D
- {
- private:
- /// the RenderGraphic data
- vcl::RenderGraphic maRenderGraphic;
- mutable std::auto_ptr< vcl::RenderGraphicRasterizer > mapCurrentRasterizer;
-
- /** the object transformation from unit coordinates, defining
- size, shear, rotate and position
- */
- basegfx::B2DHomMatrix maTransform;
-
- public:
- /// constructor
- RenderGraphicPrimitive2D(
- const vcl::RenderGraphic& rRenderGraphic,
- const basegfx::B2DHomMatrix& rTransform);
-
- /// data read access
- inline const vcl::RenderGraphic& getRenderGraphic() const { return maRenderGraphic; }
- inline const basegfx::B2DHomMatrix& getTransform() const { return maTransform; }
-
- // access to latest used vcl::GraphicRasterizer for possibly reusing
- // an already rendered vcl::RenderGraphic with the same transform
- // properties during the next rendering process
- inline const vcl::RenderGraphicRasterizer* getCurrentRasterizer() const { return( mapCurrentRasterizer.get() ); }
-
- /// compare operator
- virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
-
- /// get range
- virtual basegfx::B2DRange getB2DRange(const geometry::ViewInformation2D& rViewInformation) const;
-
- /// provide unique ID
- DeclPrimitrive2DIDBlock()
- };
- } // end of namespace primitive2d
-} // end of namespace drawinglayer
-
-//////////////////////////////////////////////////////////////////////////////
-
-#endif // INCLUDED_DRAWINGLAYER_PRIMITIVE2D_RENDERGRAPHICPRIMITIVE2D_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/sceneprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/sceneprimitive2d.hxx
index 1ac2750c5d9c..d865ba15161a 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/sceneprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/sceneprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SCENEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SCENEPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/sdrdecompositiontools2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/sdrdecompositiontools2d.hxx
index faee1aabeb8c..5ac29383ff76 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/sdrdecompositiontools2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/sdrdecompositiontools2d.hxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SDRDECOMPOSITIONTOOLS2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SDRDECOMPOSITIONTOOLS2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/shadowprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/shadowprimitive2d.hxx
index ec91a44201b8..956d1a3e2d76 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/shadowprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/shadowprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SHADOWPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SHADOWPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/structuretagprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/structuretagprimitive2d.hxx
index 65eec72d2401..bc2396e5ab23 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/structuretagprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/structuretagprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_STRUCTURETAGPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_STRUCTURETAGPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx
new file mode 100644
index 000000000000..39115a76d938
--- /dev/null
+++ b/drawinglayer/inc/drawinglayer/primitive2d/svggradientprimitive2d.hxx
@@ -0,0 +1,403 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SVGGRADIENTPRIMITIVE2D_HXX
+#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SVGGRADIENTPRIMITIVE2D_HXX
+
+#include <drawinglayer/drawinglayerdllapi.h>
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+#include <basegfx/color/bcolor.hxx>
+#include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <basegfx/matrix/b2dhommatrix.hxx>
+#include <drawinglayer/primitive2d/primitivetools2d.hxx>
+#include <vector>
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgGradientEntry class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ /// a single GradientStop defining a color and opacity at a distance
+ class SvgGradientEntry
+ {
+ private:
+ double mfOffset;
+ basegfx::BColor maColor;
+ double mfOpacity;
+
+ public:
+ SvgGradientEntry(double fOffset, const basegfx::BColor& rColor = basegfx::BColor(0.0, 0.0, 0.0), double fOpacity = 1.0)
+ : mfOffset(fOffset),
+ maColor(rColor),
+ mfOpacity(fOpacity)
+ {
+ }
+
+ double getOffset() const { return mfOffset; }
+ const basegfx::BColor& getColor() const { return maColor; }
+ double getOpacity() const { return mfOpacity; }
+
+ bool operator==(const SvgGradientEntry& rCompare) const
+ {
+ return (getOffset() == rCompare.getOffset()
+ && getColor() == getColor()
+ && getOpacity() == getOpacity());
+ }
+
+ bool operator<(const SvgGradientEntry& rCompare) const
+ {
+ return getOffset() < rCompare.getOffset();
+ }
+ };
+
+ typedef ::std::vector< SvgGradientEntry > SvgGradientEntryVector;
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgGradientHelper class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ enum SpreadMethod
+ {
+ Spread_pad = 0,
+ Spread_reflect,
+ Spread_repeat
+ };
+
+ /* helper for linear and radial gradient, both get derived from this
+ to share common definitions and functionality
+ **/
+ class SvgGradientHelper
+ {
+ private:
+ /// geometric definition, the geometry to be filled
+ basegfx::B2DPolyPolygon maPolyPolygon;
+
+ /// the gradient definition
+ SvgGradientEntryVector maGradientEntries;
+
+ /// start and/or center point
+ basegfx::B2DPoint maStart;
+
+ /// how to spread
+ SpreadMethod maSpreadMethod;
+
+ /// bitfield
+ bool mbPreconditionsChecked : 1;
+ bool mbCreatesContent : 1;
+ bool mbSingleEntry : 1;
+ bool mbFullyOpaque : 1;
+
+ protected:
+ /// local helpers
+ Primitive2DSequence createSingleGradientEntryFill() const;
+ virtual void createAtom(
+ Primitive2DVector& rTargetColor,
+ Primitive2DVector& rTargetOpacity,
+ const SvgGradientEntry& rFrom,
+ const SvgGradientEntry& rTo,
+ sal_Int32 nOffset) const = 0;
+ double createRun(
+ Primitive2DVector& rTargetColor,
+ Primitive2DVector& rTargetOpacity,
+ double fPos,
+ double fMax,
+ const SvgGradientEntryVector& rEntries,
+ sal_Int32 nOffset) const;
+ virtual void checkPreconditions();
+ Primitive2DSequence createResult(
+ const Primitive2DVector& rTargetColor,
+ const Primitive2DVector& rTargetOpacity,
+ const basegfx::B2DHomMatrix& rUnitGradientToObject,
+ bool bInvert = false) const;
+ bool getCreatesContent() const { return mbCreatesContent; }
+ bool getSingleEntry() const { return mbSingleEntry; }
+ void setSingleEntry() { mbSingleEntry = true; }
+ bool getPreconditionsChecked() const { return mbPreconditionsChecked; }
+ bool getFullyOpaque() const { return mbFullyOpaque; }
+
+ public:
+ /// constructor
+ SvgGradientHelper(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const SvgGradientEntryVector& rGradientEntries,
+ const basegfx::B2DPoint& rStart,
+ SpreadMethod aSpreadMethod = Spread_pad);
+ virtual ~SvgGradientHelper() {}
+
+ /// data read access
+ const basegfx::B2DPolyPolygon& getPolyPolygon() const { return maPolyPolygon; }
+ const SvgGradientEntryVector& getGradientEntries() const { return maGradientEntries; }
+ const basegfx::B2DPoint& getStart() const { return maStart; }
+ SpreadMethod getSpreadMethod() const { return maSpreadMethod; }
+
+ /// compare operator
+ bool equalTo(const SvgGradientHelper& rSvgGradientHelper) const;
+ };
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgLinearGradientPrimitive2D class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ /// the basic linear gradient primitive
+ class DRAWINGLAYER_DLLPUBLIC SvgLinearGradientPrimitive2D : public BufferedDecompositionPrimitive2D, public SvgGradientHelper
+ {
+ private:
+ /// the end point for linear gradient
+ basegfx::B2DPoint maEnd;
+
+ protected:
+ /// local helpers
+ virtual void createAtom(
+ Primitive2DVector& rTargetColor,
+ Primitive2DVector& rTargetOpacity,
+ const SvgGradientEntry& rFrom,
+ const SvgGradientEntry& rTo,
+ sal_Int32 nOffset) const;
+ virtual void checkPreconditions();
+
+ /// local decomposition.
+ virtual Primitive2DSequence create2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const;
+
+ public:
+ /// constructor
+ SvgLinearGradientPrimitive2D(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const SvgGradientEntryVector& rGradientEntries,
+ const basegfx::B2DPoint& rStart,
+ const basegfx::B2DPoint& rEnd,
+ SpreadMethod aSpreadMethod = Spread_pad);
+ virtual ~SvgLinearGradientPrimitive2D() {}
+
+ /// data read access
+ const basegfx::B2DPoint& getEnd() const { return maEnd; }
+
+ /// compare operator
+ virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
+
+ /// get range
+ virtual basegfx::B2DRange getB2DRange(const geometry::ViewInformation2D& rViewInformation) const;
+
+ /// provide unique ID
+ DeclPrimitrive2DIDBlock()
+ };
+} // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgRadialGradientPrimitive2D class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ /// the basic radial gradient primitive
+ class DRAWINGLAYER_DLLPUBLIC SvgRadialGradientPrimitive2D : public BufferedDecompositionPrimitive2D, public SvgGradientHelper
+ {
+ private:
+ /// the geometric definition
+ double mfRadius;
+
+ /// Focal only used when focal is set at all, see constructors
+ basegfx::B2DPoint maFocal;
+ basegfx::B2DVector maFocalVector;
+ double maFocalLength;
+
+ // internal helper for case Spread_reflect
+ SvgGradientEntryVector maMirroredGradientEntries;
+
+ /// bitfield
+ bool mbFocalSet : 1;
+
+ /// local helpers
+ const SvgGradientEntryVector& getMirroredGradientEntries() const;
+ void createMirroredGradientEntries();
+
+ protected:
+ /// local helpers
+ virtual void createAtom(
+ Primitive2DVector& rTargetColor,
+ Primitive2DVector& rTargetOpacity,
+ const SvgGradientEntry& rFrom,
+ const SvgGradientEntry& rTo,
+ sal_Int32 nOffset) const;
+ virtual void checkPreconditions();
+
+ /// local decomposition.
+ virtual Primitive2DSequence create2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const;
+
+ public:
+ /// constructor
+ SvgRadialGradientPrimitive2D(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const SvgGradientEntryVector& rGradientEntries,
+ const basegfx::B2DPoint& rStart,
+ double fRadius,
+ SpreadMethod aSpreadMethod = Spread_pad,
+ const basegfx::B2DPoint* pFocal = 0);
+
+ /// data read access
+ double getRadius() const { return mfRadius; }
+ const basegfx::B2DPoint& getFocal() const { return maFocal; }
+ bool isFocalSet() const { return mbFocalSet; }
+
+ /// compare operator
+ virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
+
+ /// get range
+ virtual basegfx::B2DRange getB2DRange(const geometry::ViewInformation2D& rViewInformation) const;
+
+ /// provide unique ID
+ DeclPrimitrive2DIDBlock()
+ };
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgLinearAtomPrimitive2D class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ /* basic primitive for a single linear GradientRun in unit coordiantes.
+ It's derived from DiscreteMetricDependentPrimitive2D to allow view-dependent
+ decompositions allowing reduced color steps
+ **/
+ class DRAWINGLAYER_DLLPUBLIC SvgLinearAtomPrimitive2D : public DiscreteMetricDependentPrimitive2D
+ {
+ private:
+ /// the geometric definition in unit coordiantes
+ basegfx::BColor maColorA;
+ basegfx::BColor maColorB;
+ double mfOffsetA;
+ double mfOffsetB;
+
+ protected:
+
+ /// local decomposition.
+ virtual Primitive2DSequence create2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const;
+
+ public:
+ /// constructor
+ SvgLinearAtomPrimitive2D(
+ const basegfx::BColor& aColorA, double fOffsetA,
+ const basegfx::BColor& aColorB, double fOffsetB);
+
+ /// data read access
+ const basegfx::BColor& getColorA() const { return maColorA; }
+ const basegfx::BColor& getColorB() const { return maColorB; }
+ double getOffsetA() const { return mfOffsetA; }
+ double getOffsetB() const { return mfOffsetB; }
+
+ /// compare operator
+ virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
+
+ /// provide unique ID
+ DeclPrimitrive2DIDBlock()
+ };
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgRadialAtomPrimitive2D class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ /* basic primitive for a single radial GradientRun in unit coordiantes.
+ It's derived from DiscreteMetricDependentPrimitive2D to allow view-dependent
+ decompositions allowing reduced color steps
+ **/
+ class DRAWINGLAYER_DLLPUBLIC SvgRadialAtomPrimitive2D : public DiscreteMetricDependentPrimitive2D
+ {
+ private:
+ /// the geometric definition in unit coordiantes
+ basegfx::BColor maColorA;
+ basegfx::BColor maColorB;
+ double mfScaleA;
+ double mfScaleB;
+
+ // helper to hold translation vectors when given (for focal)
+ struct VectorPair
+ {
+ basegfx::B2DVector maTranslateA;
+ basegfx::B2DVector maTranslateB;
+
+ VectorPair(const basegfx::B2DVector& rTranslateA, const basegfx::B2DVector& rTranslateB)
+ : maTranslateA(rTranslateA),
+ maTranslateB(rTranslateB)
+ {
+ }
+ };
+
+ /// Only used when focal is set
+ VectorPair* mpTranslate;
+
+ protected:
+
+ /// local decomposition.
+ virtual Primitive2DSequence create2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const;
+
+ public:
+ /// constructor
+ SvgRadialAtomPrimitive2D(
+ const basegfx::BColor& aColorA, double fScaleA, const basegfx::B2DVector& rTranslateA,
+ const basegfx::BColor& aColorB, double fScaleB, const basegfx::B2DVector& rTranslateB);
+ SvgRadialAtomPrimitive2D(
+ const basegfx::BColor& aColorA, double fScaleA,
+ const basegfx::BColor& aColorB, double fScaleB);
+ virtual ~SvgRadialAtomPrimitive2D();
+
+ /// data read access
+ const basegfx::BColor& getColorA() const { return maColorA; }
+ const basegfx::BColor& getColorB() const { return maColorB; }
+ double getScaleA() const { return mfScaleA; }
+ double getScaleB() const { return mfScaleB; }
+ bool isTranslateSet() const { return (0 != mpTranslate); }
+ basegfx::B2DVector getTranslateA() const { if(mpTranslate) return mpTranslate->maTranslateA; return basegfx::B2DVector(); }
+ basegfx::B2DVector getTranslateB() const { if(mpTranslate) return mpTranslate->maTranslateB; return basegfx::B2DVector(); }
+
+ /// compare operator
+ virtual bool operator==(const BasePrimitive2D& rPrimitive) const;
+
+ /// provide unique ID
+ DeclPrimitrive2DIDBlock()
+ };
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif //INCLUDED_DRAWINGLAYER_PRIMITIVE2D_SVGGRADIENTPRIMITIVE2D_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textbreakuphelper.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textbreakuphelper.hxx
new file mode 100644
index 000000000000..4a3996353a93
--- /dev/null
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textbreakuphelper.hxx
@@ -0,0 +1,84 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTBREAKUPHELPER_HXX
+#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTBREAKUPHELPER_HXX
+
+#include <drawinglayer/drawinglayerdllapi.h>
+#include <drawinglayer/primitive2d/textprimitive2d.hxx>
+#include <drawinglayer/primitive2d/textlayoutdevice.hxx>
+#include <basegfx/matrix/b2dhommatrixtools.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ enum BreakupUnit
+ {
+ BreakupUnit_character,
+ BreakupUnit_word,
+ BreakupUnit_sentence
+ };
+
+ class DRAWINGLAYER_DLLPUBLIC TextBreakupHelper
+ {
+ private:
+ const TextSimplePortionPrimitive2D& mrSource;
+ Primitive2DSequence mxResult;
+ TextLayouterDevice maTextLayouter;
+ basegfx::tools::B2DHomMatrixBufferedOnDemandDecompose maDecTrans;
+
+ /// bitfield
+ bool mbNoDXArray : 1;
+
+ /// create a portion from nIndex to nLength and append to rTempResult
+ void breakupPortion(Primitive2DVector& rTempResult, sal_uInt32 nIndex, sal_uInt32 nLength, bool bWordLineMode);
+
+ /// breakup complete primitive
+ void breakup(BreakupUnit aBreakupUnit);
+
+ protected:
+ /// allow user callback to allow changes to the new TextTransformation. Default
+ /// does nothing. Retval defines if a primitive gets created, e.g. return false
+ /// to suppress creation
+ virtual bool allowChange(sal_uInt32 nCount, basegfx::B2DHomMatrix& rNewTransform, sal_uInt32 nIndex, sal_uInt32 nLength);
+
+ /// allow read access to evtl. useful local parts
+ const TextLayouterDevice& getTextLayouter() const { return maTextLayouter; }
+ const basegfx::tools::B2DHomMatrixBufferedOnDemandDecompose& getDecTrans() const { return maDecTrans; }
+ const TextSimplePortionPrimitive2D& getSource() const { return mrSource; }
+
+ public:
+ TextBreakupHelper(const TextSimplePortionPrimitive2D& rSource);
+ virtual ~TextBreakupHelper();
+
+ /// get result
+ const Primitive2DSequence& getResult(BreakupUnit aBreakupUnit = BreakupUnit_character) const;
+ };
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif //INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTBREAKUPHELPER_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
index 4a3f3b99d2d6..506510958848 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textdecoratedprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTDECORATEDPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTDECORATEDPRIMITIVE2D_HXX
@@ -87,13 +78,6 @@ namespace drawinglayer
const ::std::vector< double >& rDXArray,
const attribute::FontAttribute& rFontAttribute) const;
- void impCorrectTextBoundary(
- ::com::sun::star::i18n::Boundary& rNextWordBoundary) const;
-
- void impSplitSingleWords(
- std::vector< Primitive2DReference >& rTarget,
- basegfx::tools::B2DHomMatrixBufferedOnDemandDecompose& rDecTrans) const;
-
protected:
/// local decomposition.
virtual Primitive2DSequence create2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const;
@@ -140,6 +124,10 @@ namespace drawinglayer
bool getEmphasisMarkBelow() const { return mbEmphasisMarkBelow; }
bool getShadow() const { return mbShadow; }
+ /// check if this needs to be a TextDecoratedPortionPrimitive2D or
+ /// if a TextSimplePortionPrimitive2D would be suficcient
+ bool decoratedIsNeeded() const;
+
/// compare operator
virtual bool operator==( const BasePrimitive2D& rPrimitive ) const;
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/texteffectprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/texteffectprimitive2d.hxx
index 3448e7895fb1..01fff05473d5 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/texteffectprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/texteffectprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTEFFECTPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTEFFECTPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textenumsprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textenumsprimitive2d.hxx
index 0a6cf61853c7..36531e6fce16 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textenumsprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textenumsprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTENUMSPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTENUMSPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/texthierarchyprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/texthierarchyprimitive2d.hxx
index 3b6990d0ba6a..b1b450c13bce 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/texthierarchyprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/texthierarchyprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTHIERARCHYPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTHIERARCHYPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx
index 1a3fa97bae73..a0338a371aad 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textlayoutdevice.hxx
@@ -1,42 +1,33 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_TEXTLAYOUTDEVICE_HXX
#define INCLUDED_DRAWINGLAYER_TEXTLAYOUTDEVICE_HXX
#include <drawinglayer/drawinglayerdllapi.h>
-#include <sal/types.h>
#include <tools/solar.h>
#include <tools/poly.hxx>
#include <basegfx/range/b2drange.hxx>
#include <vector>
#include <com/sun/star/lang/Locale.hpp>
+#include <basegfx/polygon/b2dpolypolygon.hxx>
//////////////////////////////////////////////////////////////////////////////
// predefines
@@ -50,11 +41,6 @@ namespace drawinglayer { namespace attribute {
class FontAttribute;
}}
-namespace basegfx {
- class B2DPolyPolygon;
- typedef ::std::vector< B2DPolyPolygon > B2DPolyPolygonVector;
-}
-
//////////////////////////////////////////////////////////////////////////////
// access to one global impTimedRefDev incarnation in namespace drawinglayer::primitive
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textlineprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textlineprimitive2d.hxx
index 0682965050d0..6bcca85a8bc2 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textlineprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textlineprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTLINEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTLINEPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textprimitive2d.hxx
index 187023e9965f..5a12e2bc678f 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTPRIMITIVE2D_HXX
@@ -39,15 +30,11 @@
#include <vector>
#include <com/sun/star/lang/Locale.hpp>
#include <drawinglayer/attribute/fontattribute.hxx>
+#include <basegfx/polygon/b2dpolypolygon.hxx>
//////////////////////////////////////////////////////////////////////////////
// predefines
-namespace basegfx {
- class B2DPolyPolygon;
- typedef ::std::vector< B2DPolyPolygon > B2DPolyPolygonVector;
-}
-
class OutputDevice;
//////////////////////////////////////////////////////////////////////////////
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx
index eab0a87533da..216fe740933a 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTSTRIKEOUTPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TEXTSTRIKEOUTPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/transformprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/transformprimitive2d.hxx
index 27873166dba8..e58c530fa71f 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/transformprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/transformprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TRANSFORMPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TRANSFORMPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/transparenceprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/transparenceprimitive2d.hxx
index 3b5d174c69ae..1c742da909d3 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/transparenceprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/transparenceprimitive2d.hxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TRANSPARENCEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_TRANSPARENCEPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx
index 7af46b4e5892..e30de32107f6 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_UNIFIEDTRANSPARENCEPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_UNIFIEDTRANSPARENCEPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/wallpaperprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/wallpaperprimitive2d.hxx
index 8590cd8ef5b5..0e370b74dab0 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/wallpaperprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/wallpaperprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_WALLPAPERPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_WALLPAPERPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive2d/wrongspellprimitive2d.hxx b/drawinglayer/inc/drawinglayer/primitive2d/wrongspellprimitive2d.hxx
index b0a7f40b3927..cafd40f40aa3 100644
--- a/drawinglayer/inc/drawinglayer/primitive2d/wrongspellprimitive2d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive2d/wrongspellprimitive2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE2D_WRONGSPELLPRIMITIVE2D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE2D_WRONGSPELLPRIMITIVE2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/baseprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/baseprimitive3d.hxx
index e28c2a84de3b..90c2e4205eee 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/baseprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/baseprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_BASEPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_BASEPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/groupprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/groupprimitive3d.hxx
index 852bf127e04c..d8d3f5b77446 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/groupprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/groupprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_GROUPPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_GROUPPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/hatchtextureprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/hatchtextureprimitive3d.hxx
index a08d53b0d464..981027a1615b 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/hatchtextureprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/hatchtextureprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_HATCHTEXTUREPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_HATCHTEXTUREPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx
index f0aa95cf35f8..7fe7359b4824 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/hiddengeometryprimitive3d.hxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_HIDDENGEOMETRYPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_HIDDENGEOMETRYPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx
index 523bdc0c054d..0e5fe4329e12 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/modifiedcolorprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_MODIFIEDCOLORPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_MODIFIEDCOLORPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx
index 21a6e17746a1..62fb60265732 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/polygonprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_POLYGONPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_POLYGONPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/polygontubeprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/polygontubeprimitive3d.hxx
index 4db9da911156..56f7dc4b4d4a 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/polygontubeprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/polygontubeprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_POLYGONTUBEPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_POLYGONTUBEPRIMITIVE3D_HXX
@@ -65,6 +56,7 @@ namespace drawinglayer
double mfDegreeStepWidth;
double mfMiterMinimumAngle;
basegfx::B2DLineJoin maLineJoin;
+ com::sun::star::drawing::LineCap maLineCap;
protected:
/** access methods to maLast3DDecomposition. The usage of this methods may allow
@@ -82,7 +74,9 @@ namespace drawinglayer
PolygonTubePrimitive3D(
const basegfx::B3DPolygon& rPolygon,
const basegfx::BColor& rBColor,
- double fRadius, basegfx::B2DLineJoin aLineJoin,
+ double fRadius,
+ basegfx::B2DLineJoin aLineJoin,
+ com::sun::star::drawing::LineCap aLineCap,
double fDegreeStepWidth = 10.0 * F_PI180,
double fMiterMinimumAngle = 15.0 * F_PI180);
@@ -91,6 +85,7 @@ namespace drawinglayer
double getDegreeStepWidth() const { return mfDegreeStepWidth; }
double getMiterMinimumAngle() const { return mfMiterMinimumAngle; }
basegfx::B2DLineJoin getLineJoin() const { return maLineJoin; }
+ com::sun::star::drawing::LineCap getLineCap() const { return maLineCap; }
/// compare operator
virtual bool operator==(const BasePrimitive3D& rPrimitive) const;
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx
index 5ff1f644bee0..7f916afe978c 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/polypolygonprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_POLYPOLYGONPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_POLYPOLYGONPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrcubeprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrcubeprimitive3d.hxx
index 84990fce03e8..513d120c5343 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrcubeprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrcubeprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRCUBEPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRCUBEPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrdecompositiontools3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrdecompositiontools3d.hxx
index e43b351e8195..ffe0e2cea676 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrdecompositiontools3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrdecompositiontools3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRDECOMPOSITIONTOOLS3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRDECOMPOSITIONTOOLS3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudelathetools3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudelathetools3d.hxx
index fd0f8b3e7163..d741b4c1b223 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudelathetools3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudelathetools3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDREXTRUDELATHETOOLS3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDREXTRUDELATHETOOLS3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudeprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudeprimitive3d.hxx
index e4e71ea906a9..055e7e71dd4c 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudeprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrextrudeprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDREXTRUDEPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDREXTRUDEPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrlatheprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrlatheprimitive3d.hxx
index 92927f4389f4..7632e8e5985c 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrlatheprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrlatheprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRLATHEPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRLATHEPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrpolypolygonprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrpolypolygonprimitive3d.hxx
index 2b7cf4867c49..2d9976224e6b 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrpolypolygonprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrpolypolygonprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRPOLYPOLYGONPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRPOLYPOLYGONPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrprimitive3d.hxx
index 63371b0ac1ff..6563f5172f67 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/sdrsphereprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/sdrsphereprimitive3d.hxx
index 170cd0c0df28..48e7ee42ceb2 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/sdrsphereprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/sdrsphereprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRSPHEREPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SDRSPHEREPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/shadowprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/shadowprimitive3d.hxx
index 0da7aafd4e96..76be7e7742f4 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/shadowprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/shadowprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SHADOWPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_SHADOWPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/textureprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/textureprimitive3d.hxx
index dc88b41ffc1f..1ce8e9bcd57c 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/textureprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/textureprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_TEXTUREPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_TEXTUREPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/primitive3d/transformprimitive3d.hxx b/drawinglayer/inc/drawinglayer/primitive3d/transformprimitive3d.hxx
index d42f2c191585..85a88a330d77 100644
--- a/drawinglayer/inc/drawinglayer/primitive3d/transformprimitive3d.hxx
+++ b/drawinglayer/inc/drawinglayer/primitive3d/transformprimitive3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PRIMITIVE3D_TRANSFORMPRIMITIVE3D_HXX
#define INCLUDED_DRAWINGLAYER_PRIMITIVE3D_TRANSFORMPRIMITIVE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor2d/baseprocessor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/baseprocessor2d.hxx
index 0fb1acec2150..62a0f874a9ae 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/baseprocessor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/baseprocessor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_BASEPROCESSOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_BASEPROCESSOR2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor2d/canvasprocessor.hxx b/drawinglayer/inc/drawinglayer/processor2d/canvasprocessor.hxx
index b23363e6da36..690924f6f4bd 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/canvasprocessor.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/canvasprocessor.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _DRAWINGLAYER_PROCESSOR_CANVASPROCESSOR_HXX
#define _DRAWINGLAYER_PROCESSOR_CANVASPROCESSOR_HXX
@@ -59,7 +50,6 @@ namespace drawinglayer { namespace primitive2d {
class MetafilePrimitive2D;
class TextSimplePortionPrimitive2D;
class BitmapPrimitive2D;
- class RenderGraphicPrimitive2D;
class TransparencePrimitive2D;
class PolygonStrokePrimitive2D;
class FillBitmapPrimitive2D;
@@ -80,10 +70,6 @@ namespace drawinglayer
class DRAWINGLAYER_DLLPUBLIC canvasProcessor2D : public BaseProcessor2D
{
private:
- // The Pixel renderer resets the original MapMode from the OutputDevice.
- // For some situations it is necessary to get it again, so it is rescued here
- MapMode maOriginalMapMode;
-
// the (current) destination OutDev and canvas
OutputDevice* mpOutputDevice;
com::sun::star::uno::Reference< com::sun::star::rendering::XCanvas > mxCanvas;
@@ -112,7 +98,6 @@ namespace drawinglayer
void impRenderMetafilePrimitive2D(const primitive2d::MetafilePrimitive2D& rMetaCandidate);
void impRenderTextSimplePortionPrimitive2D(const primitive2d::TextSimplePortionPrimitive2D& rTextCandidate);
void impRenderBitmapPrimitive2D(const primitive2d::BitmapPrimitive2D& rBitmapCandidate);
- void impRenderRenderGraphicPrimitive2D(const primitive2d::RenderGraphicPrimitive2D& rRenderGraphicCandidate);
void impRenderTransparencePrimitive2D(const primitive2d::TransparencePrimitive2D& rTransparenceCandidate);
void impRenderPolygonStrokePrimitive2D(const primitive2d::PolygonStrokePrimitive2D& rPolygonStrokePrimitive);
void impRenderFillBitmapPrimitive2D(const primitive2d::FillBitmapPrimitive2D& rFillBitmapPrimitive2D);
diff --git a/drawinglayer/inc/drawinglayer/processor2d/contourextractor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/contourextractor2d.hxx
index 48a87c21df45..af390a8cd7b7 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/contourextractor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/contourextractor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_CONTOUREXTRACTOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_CONTOUREXTRACTOR2D_HXX
@@ -50,16 +41,22 @@ namespace drawinglayer
{
private:
/// the extracted contour
- std::vector< basegfx::B2DPolyPolygon > maExtractedContour;
+ basegfx::B2DPolyPolygonVector maExtractedContour;
+
+ /// bitfield
+ bool mbExtractFillOnly : 1;
/// tooling methods
void processBasePrimitive2D(const primitive2d::BasePrimitive2D& rCandidate);
public:
- explicit ContourExtractor2D(const geometry::ViewInformation2D& rViewInformation);
+ explicit ContourExtractor2D(
+ const geometry::ViewInformation2D& rViewInformation,
+ bool bExtractFillOnly);
+
virtual ~ContourExtractor2D();
- const std::vector< basegfx::B2DPolyPolygon >& getExtractedContour() const { return maExtractedContour; }
+ const basegfx::B2DPolyPolygonVector& getExtractedContour() const { return maExtractedContour; }
};
} // end of namespace processor2d
} // end of namespace drawinglayer
diff --git a/drawinglayer/inc/drawinglayer/processor2d/hittestprocessor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/hittestprocessor2d.hxx
index 8d11bf58a9e7..fc2ab3252558 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/hittestprocessor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/hittestprocessor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_HITTESTPROCESSOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_HITTESTPROCESSOR2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor2d/linegeometryextractor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/linegeometryextractor2d.hxx
index 3f47de018c18..4905f4062c5f 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/linegeometryextractor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/linegeometryextractor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_LINEGEOMETRYEXTRACTOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_LINEGEOMETRYEXTRACTOR2D_HXX
@@ -33,6 +24,7 @@
#include <drawinglayer/processor2d/baseprocessor2d.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
+#include <basegfx/polygon/b2dpolygon.hxx>
//////////////////////////////////////////////////////////////////////////////
@@ -48,8 +40,8 @@ namespace drawinglayer
class DRAWINGLAYER_DLLPUBLIC LineGeometryExtractor2D : public BaseProcessor2D
{
private:
- std::vector< basegfx::B2DPolygon > maExtractedHairlines;
- std::vector< basegfx::B2DPolyPolygon > maExtractedLineFills;
+ basegfx::B2DPolygonVector maExtractedHairlines;
+ basegfx::B2DPolyPolygonVector maExtractedLineFills;
/// bitfield
unsigned mbInLineGeometry : 1;
@@ -61,8 +53,8 @@ namespace drawinglayer
LineGeometryExtractor2D(const geometry::ViewInformation2D& rViewInformation);
virtual ~LineGeometryExtractor2D();
- const std::vector< basegfx::B2DPolygon >& getExtractedHairlines() const { return maExtractedHairlines; }
- const std::vector< basegfx::B2DPolyPolygon >& getExtractedLineFills() const { return maExtractedLineFills; }
+ const basegfx::B2DPolygonVector& getExtractedHairlines() const { return maExtractedHairlines; }
+ const basegfx::B2DPolyPolygonVector& getExtractedLineFills() const { return maExtractedLineFills; }
};
} // end of namespace processor2d
} // end of namespace drawinglayer
diff --git a/drawinglayer/inc/drawinglayer/processor2d/processorfromoutputdevice.hxx b/drawinglayer/inc/drawinglayer/processor2d/processorfromoutputdevice.hxx
index 3f5957f47b26..cd149db71e6d 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/processorfromoutputdevice.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/processorfromoutputdevice.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _PROCESSOR_FROM_OUTPUTDEVICE_HXX
#define _PROCESSOR_FROM_OUTPUTDEVICE_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor2d/textaspolygonextractor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/textaspolygonextractor2d.hxx
index 96a83d572101..239e624ccced 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/textaspolygonextractor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/textaspolygonextractor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_TEXTASPOLYGONEXTRACTOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_TEXTASPOLYGONEXTRACTOR2D_HXX
@@ -44,7 +35,7 @@ namespace drawinglayer
namespace processor2d
{
/// helper data structure for returning the result
- struct TextAsPolygonDataNode
+ struct DRAWINGLAYER_DLLPUBLIC TextAsPolygonDataNode
{
private:
basegfx::B2DPolyPolygon maB2DPolyPolygon;
diff --git a/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx
index aeeed5d0daa0..d17476452f04 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/vclmetafileprocessor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLMETAFILEPROCESSOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLMETAFILEPROCESSOR2D_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor2d/vclpixelprocessor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/vclpixelprocessor2d.hxx
index 70b92ada4436..c3003f096467 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/vclpixelprocessor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/vclpixelprocessor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLPIXELPROCESSOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLPIXELPROCESSOR2D_HXX
@@ -49,11 +40,6 @@ namespace drawinglayer
class DRAWINGLAYER_DLLPUBLIC VclPixelProcessor2D : public VclProcessor2D
{
private:
- /* The Pixel renderer resets the original MapMode from the OutputDevice.
- For some situations it is necessary to get it again, so it is rescued here
- */
- MapMode maOriginalMapMode;
-
protected:
/* the local processor for BasePrinitive2D-Implementation based primitives,
called from the common process()-implementation
@@ -66,9 +52,6 @@ namespace drawinglayer
const geometry::ViewInformation2D& rViewInformation,
OutputDevice& rOutDev);
virtual ~VclPixelProcessor2D();
-
- /// data read access
- const MapMode& getOriginalMapMode() const { return maOriginalMapMode; }
};
} // end of namespace processor2d
} // end of namespace drawinglayer
diff --git a/drawinglayer/inc/drawinglayer/processor2d/vclprocessor2d.hxx b/drawinglayer/inc/drawinglayer/processor2d/vclprocessor2d.hxx
index a8d6755681ed..32dafbc42b0a 100644
--- a/drawinglayer/inc/drawinglayer/processor2d/vclprocessor2d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor2d/vclprocessor2d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLPROCESSOR2D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLPROCESSOR2D_HXX
@@ -44,7 +35,6 @@ namespace drawinglayer { namespace primitive2d {
class TextSimplePortionPrimitive2D;
class PolygonHairlinePrimitive2D;
class BitmapPrimitive2D;
- class RenderGraphicPrimitive2D;
class FillBitmapPrimitive2D;
class PolyPolygonGradientPrimitive2D;
class PolyPolygonBitmapPrimitive2D;
@@ -61,6 +51,8 @@ namespace drawinglayer { namespace primitive2d {
class ControlPrimitive2D;
class PagePreviewPrimitive2D;
class EpsPrimitive2D;
+ class SvgLinearAtomPrimitive2D;
+ class SvgRadialAtomPrimitive2D;
}}
//////////////////////////////////////////////////////////////////////////////
@@ -101,7 +93,6 @@ namespace drawinglayer
void RenderTextSimpleOrDecoratedPortionPrimitive2D(const primitive2d::TextSimplePortionPrimitive2D& rTextCandidate);
void RenderPolygonHairlinePrimitive2D(const primitive2d::PolygonHairlinePrimitive2D& rPolygonCandidate, bool bPixelBased);
void RenderBitmapPrimitive2D(const primitive2d::BitmapPrimitive2D& rBitmapCandidate);
- void RenderRenderGraphicPrimitive2D(const primitive2d::RenderGraphicPrimitive2D& rRenderGraphicCandidate);
void RenderFillBitmapPrimitive2D(const primitive2d::FillBitmapPrimitive2D& rFillBitmapCandidate);
void RenderPolyPolygonGradientPrimitive2D(const primitive2d::PolyPolygonGradientPrimitive2D& rPolygonCandidate);
void RenderPolyPolygonBitmapPrimitive2D(const primitive2d::PolyPolygonBitmapPrimitive2D& rPolygonCandidate);
@@ -117,6 +108,8 @@ namespace drawinglayer
void RenderPointArrayPrimitive2D(const primitive2d::PointArrayPrimitive2D& rPointArrayCandidate);
void RenderPolygonStrokePrimitive2D(const primitive2d::PolygonStrokePrimitive2D& rPolygonStrokeCandidate);
void RenderEpsPrimitive2D(const primitive2d::EpsPrimitive2D& rEpsPrimitive2D);
+ void RenderSvgLinearAtomPrimitive2D(const primitive2d::SvgLinearAtomPrimitive2D& rCandidate);
+ void RenderSvgRadialAtomPrimitive2D(const primitive2d::SvgRadialAtomPrimitive2D& rCandidate);
/////////////////////////////////////////////////////////////////////////////
// DrawMode adaption support
diff --git a/drawinglayer/inc/drawinglayer/processor3d/baseprocessor3d.hxx b/drawinglayer/inc/drawinglayer/processor3d/baseprocessor3d.hxx
index 1e7e35f94e7e..834779982ba5 100644
--- a/drawinglayer/inc/drawinglayer/processor3d/baseprocessor3d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor3d/baseprocessor3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR3D_BASEPROCESSOR3D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR3D_BASEPROCESSOR3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor3d/cutfindprocessor3d.hxx b/drawinglayer/inc/drawinglayer/processor3d/cutfindprocessor3d.hxx
index 2045f0cbec90..2b4714ca3054 100644
--- a/drawinglayer/inc/drawinglayer/processor3d/cutfindprocessor3d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor3d/cutfindprocessor3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR3D_CUTFINDPROCESSOR3D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR3D_CUTFINDPROCESSOR3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor3d/defaultprocessor3d.hxx b/drawinglayer/inc/drawinglayer/processor3d/defaultprocessor3d.hxx
index 9525cbc7fa8f..010fba3b1f1d 100644
--- a/drawinglayer/inc/drawinglayer/processor3d/defaultprocessor3d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor3d/defaultprocessor3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR3D_DEFAULTPROCESSOR3D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR3D_DEFAULTPROCESSOR3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor3d/geometry2dextractor.hxx b/drawinglayer/inc/drawinglayer/processor3d/geometry2dextractor.hxx
index b68f2ddba38f..d85e6843f54d 100644
--- a/drawinglayer/inc/drawinglayer/processor3d/geometry2dextractor.hxx
+++ b/drawinglayer/inc/drawinglayer/processor3d/geometry2dextractor.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR3D_GEOMETRY2DEXTRACTOR_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR3D_GEOMETRY2DEXTRACTOR_HXX
diff --git a/drawinglayer/inc/drawinglayer/processor3d/shadow3dextractor.hxx b/drawinglayer/inc/drawinglayer/processor3d/shadow3dextractor.hxx
index 25943fe8a285..183d61271c83 100644
--- a/drawinglayer/inc/drawinglayer/processor3d/shadow3dextractor.hxx
+++ b/drawinglayer/inc/drawinglayer/processor3d/shadow3dextractor.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR3D_SHADOW3DEXTRACTOR_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR3D_SHADOW3DEXTRACTOR_HXX
@@ -57,12 +48,9 @@ namespace drawinglayer
class DRAWINGLAYER_DLLPUBLIC Shadow3DExtractingProcessor : public BaseProcessor3D
{
private:
- /// typedef for data handling
- typedef std::vector< primitive2d::BasePrimitive2D* > BasePrimitive2DVector;
-
/// result holding vector (2D) and target vector for stacking (inited to &maPrimitive2DSequence)
- BasePrimitive2DVector maPrimitive2DSequence;
- BasePrimitive2DVector* mpPrimitive2DSequence;
+ primitive2d::Primitive2DVector maPrimitive2DSequence;
+ primitive2d::Primitive2DVector* mpPrimitive2DSequence;
/// object transformation for scene for 2d definition
basegfx::B2DHomMatrix maObjectTransformation;
@@ -99,10 +87,6 @@ namespace drawinglayer
*/
virtual void processBasePrimitive3D(const primitive3d::BasePrimitive3D& rCandidate);
- /// helper to convert from BasePrimitive2DVector to primitive2d::Primitive2DSequence
- const primitive2d::Primitive2DSequence getPrimitive2DSequenceFromBasePrimitive2DVector(
- const BasePrimitive2DVector& rVector) const;
-
public:
Shadow3DExtractingProcessor(
const geometry::ViewInformation3D& rViewInformation,
diff --git a/drawinglayer/inc/drawinglayer/processor3d/zbufferprocessor3d.hxx b/drawinglayer/inc/drawinglayer/processor3d/zbufferprocessor3d.hxx
index b849f69873d9..8570809b465d 100644
--- a/drawinglayer/inc/drawinglayer/processor3d/zbufferprocessor3d.hxx
+++ b/drawinglayer/inc/drawinglayer/processor3d/zbufferprocessor3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR3D_ZBUFFERPROCESSOR3D_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR3D_ZBUFFERPROCESSOR3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/texture/texture.hxx b/drawinglayer/inc/drawinglayer/texture/texture.hxx
index 8333ad0020ea..5d1751d70889 100644
--- a/drawinglayer/inc/drawinglayer/texture/texture.hxx
+++ b/drawinglayer/inc/drawinglayer/texture/texture.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_TEXTURE_TEXTURE_HXX
#define INCLUDED_DRAWINGLAYER_TEXTURE_TEXTURE_HXX
diff --git a/drawinglayer/inc/drawinglayer/texture/texture3d.hxx b/drawinglayer/inc/drawinglayer/texture/texture3d.hxx
index beffa9b76e53..713cea76c928 100644
--- a/drawinglayer/inc/drawinglayer/texture/texture3d.hxx
+++ b/drawinglayer/inc/drawinglayer/texture/texture3d.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_TEXTURE_TEXTURE3D_HXX
#define INCLUDED_DRAWINGLAYER_TEXTURE_TEXTURE3D_HXX
diff --git a/drawinglayer/inc/drawinglayer/tools/converters.hxx b/drawinglayer/inc/drawinglayer/tools/converters.hxx
new file mode 100644
index 000000000000..5bc9ddbb18e4
--- /dev/null
+++ b/drawinglayer/inc/drawinglayer/tools/converters.hxx
@@ -0,0 +1,47 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef INCLUDED_DRAWINGLAYER_TOOLS_CONVERTERS_HXX
+#define INCLUDED_DRAWINGLAYER_TOOLS_CONVERTERS_HXX
+
+#include <drawinglayer/drawinglayerdllapi.h>
+#include <vcl/bitmapex.hxx>
+#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace tools
+ {
+ BitmapEx DRAWINGLAYER_DLLPUBLIC convertToBitmapEx(
+ const drawinglayer::primitive2d::Primitive2DSequence& rSeq,
+ const geometry::ViewInformation2D& rViewInformation2D,
+ sal_uInt32 nDiscreteWidth,
+ sal_uInt32 nDiscreteHeight,
+ sal_uInt32 nMaxQuadratPixels);
+
+ } // end of namespace tools
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+#endif // INCLUDED_DRAWINGLAYER_TOOLS_CONVERTERS_HXX
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/attribute/fillbitmapattribute.cxx b/drawinglayer/source/attribute/fillbitmapattribute.cxx
index 6d16891a6a69..b3151785f75f 100644
--- a/drawinglayer/source/attribute/fillbitmapattribute.cxx
+++ b/drawinglayer/source/attribute/fillbitmapattribute.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/fillbitmapattribute.hxx>
#include <vcl/bitmapex.hxx>
diff --git a/drawinglayer/source/attribute/lineattribute.cxx b/drawinglayer/source/attribute/lineattribute.cxx
index 26d5e6a8ac95..6d506c01ae2c 100644
--- a/drawinglayer/source/attribute/lineattribute.cxx
+++ b/drawinglayer/source/attribute/lineattribute.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/lineattribute.hxx>
#include <basegfx/color/bcolor.hxx>
@@ -45,15 +36,18 @@ namespace drawinglayer
basegfx::BColor maColor; // color
double mfWidth; // absolute line width
basegfx::B2DLineJoin meLineJoin; // type of LineJoin
+ com::sun::star::drawing::LineCap meLineCap; // BUTT, ROUND, or SQUARE
ImpLineAttribute(
const basegfx::BColor& rColor,
double fWidth,
- basegfx::B2DLineJoin aB2DLineJoin)
+ basegfx::B2DLineJoin aB2DLineJoin,
+ com::sun::star::drawing::LineCap aLineCap)
: mnRefCount(0),
maColor(rColor),
mfWidth(fWidth),
- meLineJoin(aB2DLineJoin)
+ meLineJoin(aB2DLineJoin),
+ meLineCap(aLineCap)
{
}
@@ -61,12 +55,14 @@ namespace drawinglayer
const basegfx::BColor& getColor() const { return maColor; }
double getWidth() const { return mfWidth; }
basegfx::B2DLineJoin getLineJoin() const { return meLineJoin; }
+ com::sun::star::drawing::LineCap getLineCap() const { return meLineCap; }
bool operator==(const ImpLineAttribute& rCandidate) const
{
return (getColor() == rCandidate.getColor()
&& getWidth() == rCandidate.getWidth()
- && getLineJoin() == rCandidate.getLineJoin());
+ && getLineJoin() == rCandidate.getLineJoin()
+ && getLineCap() == rCandidate.getLineCap());
}
static ImpLineAttribute* get_global_default()
@@ -78,7 +74,8 @@ namespace drawinglayer
pDefault = new ImpLineAttribute(
basegfx::BColor(),
0.0,
- basegfx::B2DLINEJOIN_ROUND);
+ basegfx::B2DLINEJOIN_ROUND,
+ com::sun::star::drawing::LineCap_BUTT);
// never delete; start with RefCount 1, not 0
pDefault->mnRefCount++;
@@ -91,9 +88,14 @@ namespace drawinglayer
LineAttribute::LineAttribute(
const basegfx::BColor& rColor,
double fWidth,
- basegfx::B2DLineJoin aB2DLineJoin)
- : mpLineAttribute(new ImpLineAttribute(
- rColor, fWidth, aB2DLineJoin))
+ basegfx::B2DLineJoin aB2DLineJoin,
+ com::sun::star::drawing::LineCap aLineCap)
+ : mpLineAttribute(
+ new ImpLineAttribute(
+ rColor,
+ fWidth,
+ aB2DLineJoin,
+ aLineCap))
{
}
@@ -176,6 +178,11 @@ namespace drawinglayer
return mpLineAttribute->getLineJoin();
}
+ com::sun::star::drawing::LineCap LineAttribute::getLineCap() const
+ {
+ return mpLineAttribute->getLineCap();
+ }
+
} // end of namespace attribute
} // end of namespace drawinglayer
diff --git a/drawinglayer/source/attribute/sdrallattribute3d.cxx b/drawinglayer/source/attribute/sdrallattribute3d.cxx
index 4082a28d0abc..9b6b0e5a2f84 100644
--- a/drawinglayer/source/attribute/sdrallattribute3d.cxx
+++ b/drawinglayer/source/attribute/sdrallattribute3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/sdrallattribute3d.hxx>
diff --git a/drawinglayer/source/attribute/sdrfillbitmapattribute.cxx b/drawinglayer/source/attribute/sdrfillbitmapattribute.cxx
index 0134179d0157..600777863bc8 100644
--- a/drawinglayer/source/attribute/sdrfillbitmapattribute.cxx
+++ b/drawinglayer/source/attribute/sdrfillbitmapattribute.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/sdrfillbitmapattribute.hxx>
#include <drawinglayer/attribute/fillbitmapattribute.hxx>
diff --git a/drawinglayer/source/attribute/sdrlightattribute3d.cxx b/drawinglayer/source/attribute/sdrlightattribute3d.cxx
index b4e6da03271b..51cdaf6dae05 100644
--- a/drawinglayer/source/attribute/sdrlightattribute3d.cxx
+++ b/drawinglayer/source/attribute/sdrlightattribute3d.cxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/sdrlightattribute3d.hxx>
#include <basegfx/color/bcolor.hxx>
diff --git a/drawinglayer/source/attribute/sdrlightingattribute3d.cxx b/drawinglayer/source/attribute/sdrlightingattribute3d.cxx
index a48a7b1b9e0e..34028408d2b9 100644
--- a/drawinglayer/source/attribute/sdrlightingattribute3d.cxx
+++ b/drawinglayer/source/attribute/sdrlightingattribute3d.cxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/sdrlightingattribute3d.hxx>
#include <basegfx/color/bcolor.hxx>
diff --git a/drawinglayer/source/attribute/sdrlineattribute.cxx b/drawinglayer/source/attribute/sdrlineattribute.cxx
index 0ba50c01ac6a..1da5a79780d8 100644
--- a/drawinglayer/source/attribute/sdrlineattribute.cxx
+++ b/drawinglayer/source/attribute/sdrlineattribute.cxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/sdrlineattribute.hxx>
#include <basegfx/color/bcolor.hxx>
@@ -48,6 +37,7 @@ namespace drawinglayer
double mfWidth; // 1/100th mm, 0.0==hair
double mfTransparence; // [0.0 .. 1.0], 0.0==no transp.
basegfx::BColor maColor; // color of line
+ com::sun::star::drawing::LineCap meCap; // BUTT, ROUND, or SQUARE
::std::vector< double > maDotDashArray; // array of double which defines the dot-dash pattern
double mfFullDotDashLen; // sum of maDotDashArray (for convenience)
@@ -56,6 +46,7 @@ namespace drawinglayer
double fWidth,
double fTransparence,
const basegfx::BColor& rColor,
+ com::sun::star::drawing::LineCap eCap,
const ::std::vector< double >& rDotDashArray,
double fFullDotDashLen)
: mnRefCount(0),
@@ -63,6 +54,7 @@ namespace drawinglayer
mfWidth(fWidth),
mfTransparence(fTransparence),
maColor(rColor),
+ meCap(eCap),
maDotDashArray(rDotDashArray),
mfFullDotDashLen(fFullDotDashLen)
{
@@ -74,6 +66,7 @@ namespace drawinglayer
mfWidth(0.0),
mfTransparence(0.0),
maColor(rColor),
+ meCap(com::sun::star::drawing::LineCap_BUTT),
maDotDashArray(),
mfFullDotDashLen(0.0)
{
@@ -84,6 +77,7 @@ namespace drawinglayer
double getWidth() const { return mfWidth; }
double getTransparence() const { return mfTransparence; }
const basegfx::BColor& getColor() const { return maColor; }
+ com::sun::star::drawing::LineCap getCap() const { return meCap; }
const ::std::vector< double >& getDotDashArray() const { return maDotDashArray; }
double getFullDotDashLen() const { return mfFullDotDashLen; }
@@ -93,6 +87,7 @@ namespace drawinglayer
&& getWidth() == rCandidate.getWidth()
&& getTransparence() == rCandidate.getTransparence()
&& getColor() == rCandidate.getColor()
+ && getCap() == rCandidate.getCap()
&& getDotDashArray() == rCandidate.getDotDashArray());
}
@@ -107,6 +102,7 @@ namespace drawinglayer
0.0,
0.0,
basegfx::BColor(),
+ com::sun::star::drawing::LineCap_BUTT,
std::vector< double >(),
0.0);
@@ -123,10 +119,19 @@ namespace drawinglayer
double fWidth,
double fTransparence,
const basegfx::BColor& rColor,
+ com::sun::star::drawing::LineCap eCap,
const ::std::vector< double >& rDotDashArray,
double fFullDotDashLen)
- : mpSdrLineAttribute(new ImpSdrLineAttribute(
- eJoin, fWidth, fTransparence, rColor, rDotDashArray, fFullDotDashLen))
+ : mpSdrLineAttribute(
+ new ImpSdrLineAttribute(
+ eJoin,
+ fWidth,
+ fTransparence,
+ rColor,
+ eCap,
+ rDotDashArray,
+ fFullDotDashLen))
+
{
}
@@ -224,6 +229,11 @@ namespace drawinglayer
return mpSdrLineAttribute->getFullDotDashLen();
}
+ com::sun::star::drawing::LineCap SdrLineAttribute::getCap() const
+ {
+ return mpSdrLineAttribute->getCap();
+ }
+
} // end of namespace attribute
} // end of namespace drawinglayer
diff --git a/drawinglayer/source/attribute/sdrobjectattribute3d.cxx b/drawinglayer/source/attribute/sdrobjectattribute3d.cxx
index 9f6dbb437b91..a0b1e453d950 100644
--- a/drawinglayer/source/attribute/sdrobjectattribute3d.cxx
+++ b/drawinglayer/source/attribute/sdrobjectattribute3d.cxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/sdrobjectattribute3d.hxx>
#include <drawinglayer/attribute/materialattribute3d.hxx>
diff --git a/drawinglayer/source/attribute/sdrsceneattribute3d.cxx b/drawinglayer/source/attribute/sdrsceneattribute3d.cxx
index 02090291782c..6f270140757f 100644
--- a/drawinglayer/source/attribute/sdrsceneattribute3d.cxx
+++ b/drawinglayer/source/attribute/sdrsceneattribute3d.cxx
@@ -1,32 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 2.1.
+ * This file incorporates work covered by the following license notice:
*
- *
- * GNU Lesser General Public License Version 2.1
- * =============================================
- * Copyright 2005 by Sun Microsystems, Inc.
- * 901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License version 2.1, as published by the Free Software Foundation.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/attribute/sdrsceneattribute3d.hxx>
diff --git a/drawinglayer/source/drawinglayeruno/drawinglayeruno.cxx b/drawinglayer/source/drawinglayeruno/drawinglayeruno.cxx
new file mode 100644
index 000000000000..c5486eb27ad2
--- /dev/null
+++ b/drawinglayer/source/drawinglayeruno/drawinglayeruno.cxx
@@ -0,0 +1,89 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <drawinglayer/drawinglayerdllapi.h>
+#include <com/sun/star/uno/Reference.h>
+#include <com/sun/star/uno/RuntimeException.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/registry/XRegistryKey.hpp>
+#include <com/sun/star/lang/XComponent.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/lang/XSingleServiceFactory.hpp>
+#include <uno/environment.h>
+#include <cppuhelper/factory.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+using namespace ::com::sun::star;
+
+//////////////////////////////////////////////////////////////////////////////
+// predefines
+
+namespace drawinglayer
+{
+ namespace unorenderer
+ {
+ extern uno::Sequence< rtl::OUString > SAL_CALL XPrimitive2DRenderer_getSupportedServiceNames();
+ extern rtl::OUString SAL_CALL XPrimitive2DRenderer_getImplementationName();
+ extern uno::Reference< uno::XInterface > SAL_CALL XPrimitive2DRenderer_createInstance( const uno::Reference< lang::XMultiServiceFactory > & );
+ } // end of namespace unorenderer
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// component_getImplementationEnvironment
+
+extern "C"
+{
+ DRAWINGLAYER_DLLPUBLIC void SAL_CALL component_getImplementationEnvironment( const sal_Char ** ppEnvTypeName, uno_Environment ** /* ppEnv */ )
+ {
+ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+ }
+}
+
+//////////////////////////////////////////////////////////////////////////////
+// component_getFactory
+
+extern "C"
+{
+ DRAWINGLAYER_DLLPUBLIC void* SAL_CALL component_getFactory( const sal_Char* pImplName, void* pServiceManager, void* /* pRegistryKey */ )
+ {
+ uno::Reference< lang::XSingleServiceFactory > xFactory;
+ void* pRet = 0;
+
+ if(drawinglayer::unorenderer::XPrimitive2DRenderer_getImplementationName().equalsAscii(pImplName))
+ {
+ xFactory = ::cppu::createSingleFactory(
+ reinterpret_cast< lang::XMultiServiceFactory * >(pServiceManager),
+ drawinglayer::unorenderer::XPrimitive2DRenderer_getImplementationName(),
+ drawinglayer::unorenderer::XPrimitive2DRenderer_createInstance,
+ drawinglayer::unorenderer::XPrimitive2DRenderer_getSupportedServiceNames());
+ }
+
+ if(xFactory.is())
+ {
+ xFactory->acquire();
+ pRet = xFactory.get();
+ }
+
+ return pRet;
+ }
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx b/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx
new file mode 100644
index 000000000000..30540cec2753
--- /dev/null
+++ b/drawinglayer/source/drawinglayeruno/xprimitive2drenderer.cxx
@@ -0,0 +1,217 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <com/sun/star/graphic/XPrimitive2DRenderer.hpp>
+#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <cppuhelper/implbase2.hxx>
+#include <com/sun/star/xml/sax/XParser.hpp>
+#include <com/sun/star/xml/sax/InputSource.hpp>
+#include <comphelper/processfactory.hxx>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
+#include <basegfx/numeric/ftools.hxx>
+#include <vcl/bitmapex.hxx>
+#include <drawinglayer/tools/converters.hxx>
+#include <vcl/canvastools.hxx>
+#include <com/sun/star/geometry/RealRectangle2D.hpp>
+#include <basegfx/matrix/b2dhommatrixtools.hxx>
+#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+using namespace ::com::sun::star;
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace unorenderer
+ {
+ class XPrimitive2DRenderer : public ::cppu::WeakAggImplHelper2< graphic::XPrimitive2DRenderer, lang::XServiceInfo >
+ {
+ private:
+ XPrimitive2DRenderer(const XPrimitive2DRenderer&);
+ XPrimitive2DRenderer& operator=(const XPrimitive2DRenderer&);
+
+ protected:
+ public:
+ XPrimitive2DRenderer();
+ virtual ~XPrimitive2DRenderer();
+
+ // XPrimitive2DRenderer
+ virtual uno::Reference< rendering::XBitmap > SAL_CALL rasterize(
+ const uno::Sequence< uno::Reference< graphic::XPrimitive2D > >& Primitive2DSequence,
+ const uno::Sequence< beans::PropertyValue >& aViewInformationSequence,
+ ::sal_uInt32 DPI_X,
+ ::sal_uInt32 DPI_Y,
+ const ::com::sun::star::geometry::RealRectangle2D& Range,
+ ::sal_uInt32 MaximumQuadraticPixels) throw (uno::RuntimeException);
+
+ // XServiceInfo
+ virtual rtl::OUString SAL_CALL getImplementationName() throw(uno::RuntimeException);
+ virtual ::sal_Bool SAL_CALL supportsService(const rtl::OUString&) throw(uno::RuntimeException);
+ virtual uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames() throw(uno::RuntimeException);
+ };
+ } // end of namespace unorenderer
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// uno functions
+
+namespace drawinglayer
+{
+ namespace unorenderer
+ {
+ uno::Sequence< rtl::OUString > XPrimitive2DRenderer_getSupportedServiceNames()
+ {
+ static rtl::OUString aServiceName(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.graphic.Primitive2DTools" ) );
+ static uno::Sequence< rtl::OUString > aServiceNames( &aServiceName, 1 );
+
+ return( aServiceNames );
+ }
+
+ rtl::OUString XPrimitive2DRenderer_getImplementationName()
+ {
+ return rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "drawinglayer::unorenderer::XPrimitive2DRenderer" ) );
+ }
+
+ uno::Reference< uno::XInterface > SAL_CALL XPrimitive2DRenderer_createInstance(const uno::Reference< lang::XMultiServiceFactory >&)
+ {
+ return static_cast< ::cppu::OWeakObject* >(new XPrimitive2DRenderer);
+ }
+ } // end of namespace unorenderer
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace unorenderer
+ {
+ XPrimitive2DRenderer::XPrimitive2DRenderer()
+ {
+ }
+
+ XPrimitive2DRenderer::~XPrimitive2DRenderer()
+ {
+ }
+
+ uno::Reference< rendering::XBitmap > XPrimitive2DRenderer::rasterize(
+ const uno::Sequence< uno::Reference< graphic::XPrimitive2D > >& Primitive2DSequence,
+ const uno::Sequence< beans::PropertyValue >& aViewInformationSequence,
+ ::sal_uInt32 DPI_X,
+ ::sal_uInt32 DPI_Y,
+ const ::com::sun::star::geometry::RealRectangle2D& Range,
+ ::sal_uInt32 MaximumQuadraticPixels) throw (uno::RuntimeException)
+ {
+ uno::Reference< rendering::XBitmap > XBitmap;
+
+ if(Primitive2DSequence.hasElements())
+ {
+ const basegfx::B2DRange aRange(Range.X1, Range.Y1, Range.X2, Range.Y2);
+ const double fWidth(aRange.getWidth());
+ const double fHeight(aRange.getHeight());
+
+ if(basegfx::fTools::more(fWidth, 0.0) && basegfx::fTools::more(fHeight, 0.0))
+ {
+ if(0 == DPI_X)
+ {
+ DPI_X = 75;
+ }
+
+ if(0 == DPI_Y)
+ {
+ DPI_Y = 75;
+ }
+
+ if(0 == MaximumQuadraticPixels)
+ {
+ MaximumQuadraticPixels = 500000;
+ }
+
+ const geometry::ViewInformation2D aViewInformation2D(aViewInformationSequence);
+ const double fFactor100th_mmToInch(2.54/1000.0);
+ const sal_uInt32 nDiscreteWidth(basegfx::fround((fWidth * fFactor100th_mmToInch) * DPI_X));
+ const sal_uInt32 nDiscreteHeight(basegfx::fround((fHeight * fFactor100th_mmToInch) * DPI_Y));
+
+ basegfx::B2DHomMatrix aEmbedding(
+ basegfx::tools::createTranslateB2DHomMatrix(
+ -aRange.getMinX(),
+ -aRange.getMinY()));
+
+ aEmbedding.scale(
+ nDiscreteWidth / fWidth,
+ nDiscreteHeight / fHeight);
+
+ const primitive2d::Primitive2DReference xEmbedRef(
+ new primitive2d::TransformPrimitive2D(
+ aEmbedding,
+ Primitive2DSequence));
+ const primitive2d::Primitive2DSequence xEmbedSeq(&xEmbedRef, 1);
+
+ BitmapEx aBitmapEx(
+ tools::convertToBitmapEx(
+ xEmbedSeq,
+ aViewInformation2D,
+ nDiscreteWidth,
+ nDiscreteHeight,
+ MaximumQuadraticPixels));
+
+ if(!aBitmapEx.IsEmpty())
+ {
+ const uno::Reference< rendering::XGraphicDevice > xGraphicDevice;
+
+ aBitmapEx.SetPrefMapMode(MapMode(MAP_100TH_MM));
+ aBitmapEx.SetPrefSize(Size(basegfx::fround(fWidth), basegfx::fround(fHeight)));
+ XBitmap = vcl::unotools::xBitmapFromBitmapEx(xGraphicDevice, aBitmapEx);
+ }
+ }
+ }
+
+ return XBitmap;
+ }
+
+ rtl::OUString SAL_CALL XPrimitive2DRenderer::getImplementationName() throw(uno::RuntimeException)
+ {
+ return(XPrimitive2DRenderer_getImplementationName());
+ }
+
+ sal_Bool SAL_CALL XPrimitive2DRenderer::supportsService(const rtl::OUString& rServiceName) throw(uno::RuntimeException)
+ {
+ const uno::Sequence< rtl::OUString > aServices(XPrimitive2DRenderer_getSupportedServiceNames());
+
+ for(sal_Int32 nService(0); nService < aServices.getLength(); nService++)
+ {
+ if(rServiceName == aServices[nService])
+ {
+ return sal_True;
+ }
+ }
+
+ return sal_False;
+ }
+
+ uno::Sequence< rtl::OUString > SAL_CALL XPrimitive2DRenderer::getSupportedServiceNames() throw(uno::RuntimeException)
+ {
+ return XPrimitive2DRenderer_getSupportedServiceNames();
+ }
+
+ } // end of namespace unorenderer
+} // end of namespace drawinglayer
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/primitive2d/baseprimitive2d.cxx b/drawinglayer/source/primitive2d/baseprimitive2d.cxx
index 54b23ed50930..293f9fdd0868 100644
--- a/drawinglayer/source/primitive2d/baseprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/baseprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/baseprimitive2d.hxx>
#include <drawinglayer/geometry/viewinformation2d.hxx>
@@ -117,6 +108,27 @@ namespace drawinglayer
{
namespace primitive2d
{
+ // convert helper stl vector of primitives to Primitive2DSequence
+ Primitive2DSequence Primitive2DVectorToPrimitive2DSequence(const Primitive2DVector& rSource, bool bInvert)
+ {
+ const sal_uInt32 nSize(rSource.size());
+ Primitive2DSequence aRetval;
+
+ aRetval.realloc(nSize);
+
+ for(sal_uInt32 a(0); a < nSize; a++)
+ {
+ aRetval[bInvert ? nSize - 1 - a : a] = rSource[a];
+ }
+
+ // all entries taken over to Uno References as owners. To avoid
+ // errors with users of this mechanism to delete pointers to BasePrimitive2D
+ // itself, clear given vector
+ const_cast< Primitive2DVector& >(rSource).clear();
+
+ return aRetval;
+ }
+
// get B2DRange from a given Primitive2DReference
basegfx::B2DRange getB2DRangeFromPrimitive2DReference(const Primitive2DReference& rCandidate, const geometry::ViewInformation2D& aViewInformation)
{
diff --git a/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx b/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
index 36c916d07be0..31f78f5b2144 100644
--- a/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/borderlineprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/geometry/viewinformation2d.hxx>
#include <drawinglayer/primitive2d/borderlineprimitive2d.hxx>
diff --git a/drawinglayer/source/primitive2d/chartprimitive2d.cxx b/drawinglayer/source/primitive2d/chartprimitive2d.cxx
deleted file mode 100644
index ebe19288d299..000000000000
--- a/drawinglayer/source/primitive2d/chartprimitive2d.cxx
+++ /dev/null
@@ -1,79 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include <drawinglayer/primitive2d/chartprimitive2d.hxx>
-#include <basegfx/tools/canvastools.hxx>
-#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
-
-//////////////////////////////////////////////////////////////////////////////
-
-using namespace com::sun::star;
-
-//////////////////////////////////////////////////////////////////////////////
-
-namespace drawinglayer
-{
- namespace primitive2d
- {
- ChartPrimitive2D::ChartPrimitive2D(
- const uno::Reference< frame::XModel >& rxChartModel,
- const basegfx::B2DHomMatrix& rTransformation,
- const Primitive2DSequence& rChildren)
- : GroupPrimitive2D(rChildren),
- mxChartModel(rxChartModel),
- maTransformation(rTransformation)
- {
- }
-
- bool ChartPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
- {
- if(GroupPrimitive2D::operator==(rPrimitive))
- {
- const ChartPrimitive2D& rCompare = static_cast< const ChartPrimitive2D& >(rPrimitive);
-
- return (getChartModel() == rCompare.getChartModel()
- && getTransformation() == rCompare.getTransformation());
- }
-
- return false;
- }
-
- // provide unique ID
- ImplPrimitrive2DIDBlock(ChartPrimitive2D, PRIMITIVE2D_ID_CHARTPRIMITIVE2D)
-
- basegfx::B2DRange ChartPrimitive2D::getB2DRange(const geometry::ViewInformation2D& /*rViewInformation*/) const
- {
- basegfx::B2DRange aRetval(0.0, 0.0, 1.0, 1.0);
- aRetval.transform(getTransformation());
- return aRetval;
- }
-
- } // end of namespace primitive2d
-} // end of namespace drawinglayer
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/primitive2d/controlprimitive2d.cxx b/drawinglayer/source/primitive2d/controlprimitive2d.cxx
index 12c3f83796e1..cb09566ccf17 100644
--- a/drawinglayer/source/primitive2d/controlprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/controlprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/controlprimitive2d.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
diff --git a/drawinglayer/source/primitive2d/cropprimitive2d.cxx b/drawinglayer/source/primitive2d/cropprimitive2d.cxx
new file mode 100644
index 000000000000..9ce8f82f0b77
--- /dev/null
+++ b/drawinglayer/source/primitive2d/cropprimitive2d.cxx
@@ -0,0 +1,196 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <drawinglayer/primitive2d/cropprimitive2d.hxx>
+#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
+#include <basegfx/matrix/b2dhommatrix.hxx>
+#include <basegfx/matrix/b2dhommatrixtools.hxx>
+#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
+#include <basegfx/polygon/b2dpolygon.hxx>
+#include <basegfx/polygon/b2dpolygontools.hxx>
+#include <drawinglayer/primitive2d/maskprimitive2d.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+using namespace com::sun::star;
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ CropPrimitive2D::CropPrimitive2D(
+ const Primitive2DSequence& rChildren,
+ const basegfx::B2DHomMatrix& rTransformation,
+ double fCropLeft,
+ double fCropTop,
+ double fCropRight,
+ double fCropBottom)
+ : GroupPrimitive2D(rChildren),
+ maTransformation(rTransformation),
+ mfCropLeft(fCropLeft),
+ mfCropTop(fCropTop),
+ mfCropRight(fCropRight),
+ mfCropBottom(fCropBottom)
+ {
+ }
+
+ bool CropPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
+ {
+ if(GroupPrimitive2D::operator==(rPrimitive))
+ {
+ const CropPrimitive2D& rCompare = static_cast< const CropPrimitive2D& >(rPrimitive);
+
+ return (getTransformation() == rCompare.getTransformation()
+ && getCropLeft() == rCompare.getCropLeft()
+ && getCropTop() == rCompare.getCropTop()
+ && getCropRight() == rCompare.getCropRight()
+ && getCropBottom() == rCompare.getCropBottom());
+ }
+
+ return false;
+ }
+
+ Primitive2DSequence CropPrimitive2D::get2DDecomposition(const geometry::ViewInformation2D& /*rViewInformation*/) const
+ {
+ Primitive2DSequence xRetval;
+
+ if(getChildren().hasElements())
+ {
+ // decompose to have current translate and scale
+ basegfx::B2DVector aScale, aTranslate;
+ double fRotate, fShearX;
+
+ getTransformation().decompose(aScale, aTranslate, fRotate, fShearX);
+
+ // detect 180 degree rotation, this is the same as mirrored in X and Y,
+ // thus change to mirroring. Prefer mirroring here. Use the equal call
+ // with getSmallValue here, the original which uses rtl::math::approxEqual
+ // is too correct here. Maybe this changes with enhanced precision in aw080
+ // to the better so that this can be reduced to the more precise call again
+ if(basegfx::fTools::equal(fRotate, F_PI, 0.000000001))
+ {
+ aScale.setX(aScale.getX() * -1.0);
+ aScale.setY(aScale.getY() * -1.0);
+ fRotate = 0.0;
+ }
+
+ // create target translate and scale
+ const bool bMirroredX(aScale.getX() < 0.0);
+ const bool bMirroredY(aScale.getY() < 0.0);
+ basegfx::B2DVector aTargetScale(aScale);
+ basegfx::B2DVector aTargetTranslate(aTranslate);
+
+ if(bMirroredX)
+ {
+ aTargetTranslate.setX(aTargetTranslate.getX() + getCropRight());
+ aTargetScale.setX(aTargetScale.getX() - getCropLeft() - getCropRight());
+ }
+ else
+ {
+ aTargetTranslate.setX(aTargetTranslate.getX() - getCropLeft());
+ aTargetScale.setX(aTargetScale.getX() + getCropRight() + getCropLeft());
+ }
+
+ if(bMirroredY)
+ {
+ aTargetTranslate.setY(aTargetTranslate.getY() + getCropBottom());
+ aTargetScale.setY(aTargetScale.getY() - getCropTop() - getCropBottom());
+ }
+ else
+ {
+ aTargetTranslate.setY(aTargetTranslate.getY() - getCropTop());
+ aTargetScale.setY(aTargetScale.getY() + getCropBottom() + getCropTop());
+ }
+
+ // create ranges to make comparisons
+ const basegfx::B2DRange aCurrent(
+ aTranslate.getX(), aTranslate.getY(),
+ aTranslate.getX() + aScale.getX(), aTranslate.getY() + aScale.getY());
+ const basegfx::B2DRange aCropped(
+ aTargetTranslate.getX(), aTargetTranslate.getY(),
+ aTargetTranslate.getX() + aTargetScale.getX(), aTargetTranslate.getY() + aTargetScale.getY());
+
+ if(aCropped.isEmpty())
+ {
+ // nothing to return since cropped content is completely empty
+ }
+ else if(aCurrent.equal(aCropped))
+ {
+ // no crop, just use content
+ xRetval = getChildren();
+ }
+ else
+ {
+ // build new combined content transformation
+ basegfx::B2DHomMatrix aNewObjectTransform(getTransformation());
+
+ // remove content transform by inverting
+ aNewObjectTransform.invert();
+
+ // add target values and original shear/rotate
+ aNewObjectTransform = basegfx::tools::createScaleShearXRotateTranslateB2DHomMatrix(
+ aTargetScale.getX(),
+ aTargetScale.getY(),
+ fShearX,
+ fRotate,
+ aTargetTranslate.getX(),
+ aTargetTranslate.getY())
+ * aNewObjectTransform;
+
+ // prepare TransformPrimitive2D with xPrimitive
+ const Primitive2DReference xTransformPrimitive(
+ new TransformPrimitive2D(
+ aNewObjectTransform,
+ getChildren()));
+
+ if(aCurrent.isInside(aCropped))
+ {
+ // crop just shrunk so that its inside content,
+ // no need to use a mask since not really cropped.
+ xRetval = Primitive2DSequence(&xTransformPrimitive, 1);
+ }
+ else
+ {
+ // mask with original object's bounds
+ basegfx::B2DPolyPolygon aMaskPolyPolygon(basegfx::tools::createUnitPolygon());
+ aMaskPolyPolygon.transform(getTransformation());
+
+ // create maskPrimitive with aMaskPolyPolygon and aMaskContentVector
+ const Primitive2DReference xMask(
+ new MaskPrimitive2D(
+ aMaskPolyPolygon,
+ Primitive2DSequence(&xTransformPrimitive, 1)));
+
+ xRetval = Primitive2DSequence(&xMask, 1);
+ }
+ }
+ }
+
+ return xRetval;
+ }
+
+ // provide unique ID
+ ImplPrimitrive2DIDBlock(CropPrimitive2D, PRIMITIVE2D_ID_CROPPRIMITIVE2D)
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/primitive2d/epsprimitive2d.cxx b/drawinglayer/source/primitive2d/epsprimitive2d.cxx
index 9f14316084ab..e265b8c4f432 100644
--- a/drawinglayer/source/primitive2d/epsprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/epsprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/epsprimitive2d.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
diff --git a/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx b/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx
index 9da78c2a3e0d..2420241946b2 100644
--- a/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/fillgradientprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/fillgradientprimitive2d.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
diff --git a/drawinglayer/source/primitive2d/graphicprimitive2d.cxx b/drawinglayer/source/primitive2d/graphicprimitive2d.cxx
index cee3c2c9693b..74d8f0c21dfb 100644
--- a/drawinglayer/source/primitive2d/graphicprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/graphicprimitive2d.cxx
@@ -1,42 +1,33 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/graphicprimitive2d.hxx>
#include <drawinglayer/animation/animationtiming.hxx>
#include <drawinglayer/primitive2d/bitmapprimitive2d.hxx>
-#include <drawinglayer/primitive2d/rendergraphicprimitive2d.hxx>
#include <drawinglayer/primitive2d/animatedprimitive2d.hxx>
#include <drawinglayer/primitive2d/metafileprimitive2d.hxx>
#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
-#include <drawinglayer/primitive2d/maskprimitive2d.hxx>
+#include <drawinglayer/primitive2d/cropprimitive2d.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
+#include <drawinglayer/primitive2d/maskprimitive2d.hxx>
//////////////////////////////////////////////////////////////////////////////
// helper class for animated graphics
@@ -247,8 +238,8 @@ namespace drawinglayer
aSuppressGraphicAttr.SetRotation(0);
aSuppressGraphicAttr.SetMirrorFlags(0);
- const GraphicObject& rGraphicObject = getGraphicObject();
- const Graphic aTransformedGraphic(rGraphicObject.GetTransformedGraphic(&aSuppressGraphicAttr));
+ const GraphicObject& rGraphicObject = getGraphicObject();
+ const Graphic aTransformedGraphic(rGraphicObject.GetTransformedGraphic(&aSuppressGraphicAttr));
switch(aTransformedGraphic.GetType())
{
@@ -281,6 +272,32 @@ namespace drawinglayer
xPrimitive = Primitive2DReference(new AnimatedSwitchPrimitive2D(aAnimationList, aBitmapPrimitives, false));
}
}
+ else if(aTransformedGraphic.getSvgData().get())
+ {
+ // embedded Svg fill, create embed transform
+ const basegfx::B2DRange& rSvgRange(aTransformedGraphic.getSvgData()->getRange());
+
+ if(basegfx::fTools::more(rSvgRange.getWidth(), 0.0) && basegfx::fTools::more(rSvgRange.getHeight(), 0.0))
+ {
+ // translate back to origin, scale to unit coordinates
+ basegfx::B2DHomMatrix aEmbedSvg(
+ basegfx::tools::createTranslateB2DHomMatrix(
+ -rSvgRange.getMinX(),
+ -rSvgRange.getMinY()));
+
+ aEmbedSvg.scale(
+ 1.0 / rSvgRange.getWidth(),
+ 1.0 / rSvgRange.getHeight());
+
+ // apply created object transformation
+ aEmbedSvg = aTransform * aEmbedSvg;
+
+ // add Svg primitives embedded
+ xPrimitive = new TransformPrimitive2D(
+ aEmbedSvg,
+ aTransformedGraphic.getSvgData()->getPrimitive2DSequence());
+ }
+ }
else
{
xPrimitive = Primitive2DReference(new BitmapPrimitive2D(aTransformedGraphic.GetBitmapEx(), aTransform));
@@ -291,46 +308,33 @@ namespace drawinglayer
case GRAPHIC_GDIMETAFILE :
{
- // create MetafilePrimitive2D
- const GDIMetaFile& rMetafile = aTransformedGraphic.GetGDIMetaFile();
-
- if( aTransformedGraphic.IsRenderGraphic() )
- {
- xPrimitive = Primitive2DReference(
- new RenderGraphicPrimitive2D(
- static_cast< MetaRenderGraphicAction* >(rMetafile.GetAction(0))->GetRenderGraphic(),
- aTransform));
- }
- else
- {
- xPrimitive = Primitive2DReference(
- new MetafilePrimitive2D(
- aTransform,
- rMetafile));
-
- // #i100357# find out if clipping is needed for this primitive. Unfortunately,
- // there exist Metafiles who's content is bigger than the proposed PrefSize set
- // at them. This is an error, but we need to work around this
- const Size aMetaFilePrefSize(rMetafile.GetPrefSize());
- const Size aMetaFileRealSize(
- const_cast< GDIMetaFile& >(rMetafile).GetBoundRect(
+ // create MetafilePrimitive2D
+ const GDIMetaFile& rMetafile = aTransformedGraphic.GetGDIMetaFile();
+
+ xPrimitive = Primitive2DReference(
+ new MetafilePrimitive2D( aTransform, rMetafile ) );
+
+ // #i100357# find out if clipping is needed for this primitive. Unfortunately,
+ // there exist Metafiles who's content is bigger than the proposed PrefSize set
+ // at them. This is an error, but we need to work around this
+ const Size aMetaFilePrefSize(rMetafile.GetPrefSize());
+ const Size aMetaFileRealSize(
+ const_cast< GDIMetaFile& >(rMetafile).GetBoundRect(
*Application::GetDefaultDevice()).GetSize());
- if(aMetaFileRealSize.getWidth() > aMetaFilePrefSize.getWidth()
- || aMetaFileRealSize.getHeight() > aMetaFilePrefSize.getHeight())
- {
- // clipping needed. Embed to MaskPrimitive2D. Create children and mask polygon
- const primitive2d::Primitive2DSequence aChildContent(&xPrimitive, 1);
- basegfx::B2DPolygon aMaskPolygon(basegfx::tools::createUnitPolygon());
- aMaskPolygon.transform(aTransform);
-
- xPrimitive = Primitive2DReference(
- new MaskPrimitive2D(
- basegfx::B2DPolyPolygon(aMaskPolygon),
- aChildContent));
- }
- }
-
+ if(aMetaFileRealSize.getWidth() > aMetaFilePrefSize.getWidth()
+ || aMetaFileRealSize.getHeight() > aMetaFilePrefSize.getHeight())
+ {
+ // clipping needed. Embed to MaskPrimitive2D. Create childs and mask polygon
+ const primitive2d::Primitive2DSequence aChildContent(&xPrimitive, 1);
+ basegfx::B2DPolygon aMaskPolygon(basegfx::tools::createUnitPolygon());
+ aMaskPolygon.transform(aTransform);
+
+ xPrimitive = Primitive2DReference(
+ new MaskPrimitive2D(
+ basegfx::B2DPolyPolygon(aMaskPolygon),
+ aChildContent));
+ }
break;
}
@@ -346,16 +350,6 @@ namespace drawinglayer
// check for cropping
if(getGraphicAttr().IsCropped())
{
- // decompose to get current pos and size
- basegfx::B2DVector aScale, aTranslate;
- double fRotate, fShearX;
- getTransform().decompose(aScale, aTranslate, fRotate, fShearX);
-
- // create ranges. The current object range is just scale and translate
- const basegfx::B2DRange aCurrent(
- aTranslate.getX(), aTranslate.getY(),
- aTranslate.getX() + aScale.getX(), aTranslate.getY() + aScale.getY());
-
// calculate scalings between real image size and logic object size. This
// is necessary since the crop values are relative to original bitmap size
double fFactorX(1.0);
@@ -377,68 +371,31 @@ namespace drawinglayer
const double fDivX(aBitmapSize.Width() - getGraphicAttr().GetLeftCrop() - getGraphicAttr().GetRightCrop());
const double fDivY(aBitmapSize.Height() - getGraphicAttr().GetTopCrop() - getGraphicAttr().GetBottomCrop());
+ const basegfx::B2DVector aScale(aTransform * basegfx::B2DVector(1.0, 1.0));
if(!basegfx::fTools::equalZero(fDivX))
{
- fFactorX = aScale.getX() / fDivX;
+ fFactorX = fabs(aScale.getX()) / fDivX;
}
if(!basegfx::fTools::equalZero(fDivY))
{
- fFactorY = aScale.getY() / fDivY;
+ fFactorY = fabs(aScale.getY()) / fDivY;
}
}
- // Create cropped range, describes the bounds of the original graphic
- basegfx::B2DRange aCropped;
- aCropped.expand(aCurrent.getMinimum() - basegfx::B2DPoint(getGraphicAttr().GetLeftCrop() * fFactorX, getGraphicAttr().GetTopCrop() * fFactorY));
- aCropped.expand(aCurrent.getMaximum() + basegfx::B2DPoint(getGraphicAttr().GetRightCrop() * fFactorX, getGraphicAttr().GetBottomCrop() * fFactorY));
-
- if(aCropped.isEmpty())
- {
- // nothing to add since cropped bitmap is completely empty
- // xPrimitive will not be used
- }
- else
- {
- // build new object transformation for transform primitive which contains xPrimitive
- basegfx::B2DHomMatrix aNewObjectTransform(getTransform());
- aNewObjectTransform.invert();
- aNewObjectTransform = basegfx::tools::createScaleTranslateB2DHomMatrix(
- aCropped.getWidth(), aCropped.getHeight(),
- aCropped.getMinX() - aCurrent.getMinX(), aCropped.getMinY() - aCurrent.getMinY())
- * aNewObjectTransform;
-
- // add shear, rotate and translate using combined matrix to speedup
- const basegfx::B2DHomMatrix aCombinedMatrix(basegfx::tools::createShearXRotateTranslateB2DHomMatrix(
- fShearX, fRotate, aTranslate.getX(), aTranslate.getY()));
- aNewObjectTransform = aCombinedMatrix * aNewObjectTransform;
-
- // prepare TransformPrimitive2D with xPrimitive
- const Primitive2DReference xTransformPrimitive(new TransformPrimitive2D(aNewObjectTransform, Primitive2DSequence(&xPrimitive, 1L)));
-
- if(aCurrent.isInside(aCropped))
- {
- // cropped just got smaller, no need to really use a mask. Add to destination directly
- appendPrimitive2DReferenceToPrimitive2DSequence(aRetval, xTransformPrimitive);
- }
- else
- {
- // cropped got bigger, mask it with original object's bounds
- basegfx::B2DPolyPolygon aMaskPolyPolygon(basegfx::tools::createUnitPolygon());
- aMaskPolyPolygon.transform(getTransform());
-
- // create maskPrimitive with aMaskPolyPolygon and aMaskContentVector
- const Primitive2DReference xRefB(new MaskPrimitive2D(aMaskPolyPolygon, Primitive2DSequence(&xTransformPrimitive, 1L)));
- appendPrimitive2DReferenceToPrimitive2DSequence(aRetval, xRefB);
- }
- }
- }
- else
- {
- // add to decomposition
- appendPrimitive2DReferenceToPrimitive2DSequence(aRetval, xPrimitive);
+ // embed content in cropPrimitive
+ xPrimitive = new CropPrimitive2D(
+ Primitive2DSequence(&xPrimitive, 1),
+ aTransform,
+ getGraphicAttr().GetLeftCrop() * fFactorX,
+ getGraphicAttr().GetTopCrop() * fFactorY,
+ getGraphicAttr().GetRightCrop() * fFactorX,
+ getGraphicAttr().GetBottomCrop() * fFactorY);
}
+
+ // add to decomposition
+ appendPrimitive2DReferenceToPrimitive2DSequence(aRetval, xPrimitive);
}
}
diff --git a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
index 5f2239780142..791801bbb607 100644
--- a/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/metafileprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/metafileprimitive2d.hxx>
#include <basegfx/tools/canvastools.hxx>
@@ -61,7 +52,6 @@
#include <drawinglayer/primitive2d/textlineprimitive2d.hxx>
#include <drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx>
#include <drawinglayer/primitive2d/epsprimitive2d.hxx>
-#include <drawinglayer/primitive2d/rendergraphicprimitive2d.hxx>
#include <numeric>
//////////////////////////////////////////////////////////////////////////////
@@ -709,7 +699,8 @@ namespace
const drawinglayer::attribute::LineAttribute aLineAttribute(
rProperties.getLineColor(),
bWidthUsed ? rLineInfo.GetWidth() : 0.0,
- rLineInfo.GetLineJoin());
+ rLineInfo.GetLineJoin(),
+ rLineInfo.GetLineCap());
if(bDashDotUsed)
{
@@ -3067,33 +3058,6 @@ namespace
break;
}
- case META_RENDERGRAPHIC_ACTION :
- {
- const MetaRenderGraphicAction* pA = (const MetaRenderGraphicAction*)pAction;
- const Rectangle aRectangle(pA->GetPoint(), pA->GetSize());
-
- if(!aRectangle.IsEmpty())
- {
- // create object transform
- basegfx::B2DHomMatrix aObjectTransform;
-
- aObjectTransform.set(0, 0, aRectangle.GetWidth());
- aObjectTransform.set(1, 1, aRectangle.GetHeight());
- aObjectTransform.set(0, 2, aRectangle.Left());
- aObjectTransform.set(1, 2, aRectangle.Top());
-
- // add current transformation
- aObjectTransform = rPropertyHolders.Current().getTransformation() * aObjectTransform;
-
- // embed using EpsPrimitive
- rTargetHolders.Current().append(
- new drawinglayer::primitive2d::RenderGraphicPrimitive2D(
- pA->GetRenderGraphic(),
- aObjectTransform ) );
- }
-
- break;
- }
case META_COMMENT_ACTION :
{
/** CHECKED, WORKS WELL */
diff --git a/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx b/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx
new file mode 100644
index 000000000000..f7c665384a53
--- /dev/null
+++ b/drawinglayer/source/primitive2d/patternfillprimitive2d.cxx
@@ -0,0 +1,150 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <drawinglayer/primitive2d/patternfillprimitive2d.hxx>
+#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
+#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
+#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
+#include <basegfx/polygon/b2dpolygontools.hxx>
+#include <basegfx/matrix/b2dhommatrixtools.hxx>
+#include <drawinglayer/texture/texture.hxx>
+#include <drawinglayer/primitive2d/maskprimitive2d.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+using namespace com::sun::star;
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ Primitive2DSequence PatternFillPrimitive2D::create2DDecomposition(const geometry::ViewInformation2D& rViewInformation) const
+ {
+ Primitive2DSequence aRetval;
+
+ if(getChildren().hasElements())
+ {
+ if(!getReferenceRange().isEmpty() && getReferenceRange().getWidth() > 0.0 && getReferenceRange().getHeight() > 0.0)
+ {
+ const basegfx::B2DRange aMaskRange(getMask().getB2DRange());
+
+ if(!aMaskRange.isEmpty() && aMaskRange.getWidth() > 0.0 && aMaskRange.getHeight() > 0.0)
+ {
+ // create tiling matrices
+ ::std::vector< basegfx::B2DHomMatrix > aMatrices;
+ texture::GeoTexSvxTiled aTiling(getReferenceRange().getMinimum(), getReferenceRange().getRange());
+ aTiling.appendTransformations(aMatrices);
+
+ // check if content needs to be clipped
+ const basegfx::B2DRange aUnitRange(0.0, 0.0, 1.0, 1.0);
+ const basegfx::B2DRange aContentRange(getB2DRangeFromPrimitive2DSequence(getChildren(), rViewInformation));
+ Primitive2DSequence aContent(getChildren());
+
+ if(!aUnitRange.isInside(aContentRange))
+ {
+ const Primitive2DReference xRef(
+ new MaskPrimitive2D(
+ basegfx::B2DPolyPolygon(basegfx::tools::createPolygonFromRect(aUnitRange)),
+ aContent));
+
+ aContent = Primitive2DSequence(&xRef, 1);
+ }
+
+ // resize result
+ aRetval.realloc(aMatrices.size());
+
+ // create one primitive for each matrix
+ for(sal_uInt32 a(0); a < aMatrices.size(); a++)
+ {
+ aRetval[a] = new TransformPrimitive2D(
+ aMatrices[a],
+ aContent);
+ }
+
+ // transform result which is in unit coordinates to mask's object coordiantes
+ {
+ const basegfx::B2DHomMatrix aMaskTransform(
+ basegfx::tools::createScaleTranslateB2DHomMatrix(
+ aMaskRange.getRange(),
+ aMaskRange.getMinimum()));
+
+ const Primitive2DReference xRef(
+ new TransformPrimitive2D(
+ aMaskTransform,
+ aRetval));
+
+ aRetval = Primitive2DSequence(&xRef, 1);
+ }
+
+ // embed result in mask
+ {
+ const Primitive2DReference xRef(
+ new MaskPrimitive2D(
+ getMask(),
+ aRetval));
+
+ aRetval = Primitive2DSequence(&xRef, 1);
+ }
+
+ }
+ }
+ }
+
+ return aRetval;
+ }
+
+ PatternFillPrimitive2D::PatternFillPrimitive2D(
+ const basegfx::B2DPolyPolygon& rMask,
+ const Primitive2DSequence& rChildren,
+ const basegfx::B2DRange& rReferenceRange)
+ : BufferedDecompositionPrimitive2D(),
+ maMask(rMask),
+ maChildren(rChildren),
+ maReferenceRange(rReferenceRange)
+ {
+ }
+
+ bool PatternFillPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
+ {
+ if(BufferedDecompositionPrimitive2D::operator==(rPrimitive))
+ {
+ const PatternFillPrimitive2D& rCompare = static_cast< const PatternFillPrimitive2D& >(rPrimitive);
+
+ return (getMask() == rCompare.getMask()
+ && getChildren() == rCompare.getChildren()
+ && getReferenceRange() == rCompare.getReferenceRange());
+ }
+
+ return false;
+ }
+
+ basegfx::B2DRange PatternFillPrimitive2D::getB2DRange(const geometry::ViewInformation2D& /* rViewInformation */ ) const
+ {
+ return getMask().getB2DRange();
+ }
+
+ // provide unique ID
+ ImplPrimitrive2DIDBlock(PatternFillPrimitive2D, PRIMITIVE2D_ID_PATTERNFILLPRIMITIVE2D)
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/primitive2d/polygonprimitive2d.cxx b/drawinglayer/source/primitive2d/polygonprimitive2d.cxx
index 373698db2b6b..ccc52baf6e94 100644
--- a/drawinglayer/source/primitive2d/polygonprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/polygonprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <basegfx/tools/canvastools.hxx>
@@ -34,6 +25,7 @@
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
#include <drawinglayer/geometry/viewinformation2d.hxx>
#include <basegfx/polygon/b2dlinegeometry.hxx>
+#include <com/sun/star/drawing/LineCap.hpp>
//////////////////////////////////////////////////////////////////////////////
@@ -254,13 +246,17 @@ namespace drawinglayer
// create fat line data
const double fHalfLineWidth(getLineAttribute().getWidth() / 2.0);
const basegfx::B2DLineJoin aLineJoin(getLineAttribute().getLineJoin());
+ const com::sun::star::drawing::LineCap aLineCap(getLineAttribute().getLineCap());
basegfx::B2DPolyPolygon aAreaPolyPolygon;
for(sal_uInt32 a(0L); a < nCount; a++)
{
// New version of createAreaGeometry; now creates bezier polygons
aAreaPolyPolygon.append(basegfx::tools::createAreaGeometry(
- aHairLinePolyPolygon.getB2DPolygon(a), fHalfLineWidth, aLineJoin));
+ aHairLinePolyPolygon.getB2DPolygon(a),
+ fHalfLineWidth,
+ aLineJoin,
+ aLineCap));
}
// prepare return value
@@ -341,10 +337,28 @@ namespace drawinglayer
if(getLineAttribute().getWidth())
{
+ bool bUseDecomposition(false);
+
if(basegfx::B2DLINEJOIN_MITER == getLineAttribute().getLineJoin())
{
// if line is mitered, use parent call since mitered line
// geometry may use more space than the geometry grown by half line width
+ bUseDecomposition = true;
+ }
+
+ if(!bUseDecomposition && com::sun::star::drawing::LineCap_SQUARE == getLineAttribute().getLineCap())
+ {
+ // when drawing::LineCap_SQUARE is used the below method to grow the polygon
+ // range by half line width will not work, so use decomposition. Interestingly,
+ // the grow method below works perfectly for LineCap_ROUND since the grow is in
+ // all directions and the rounded cap needs the same grow in all directions independent
+ // from it's orientation. Unfortunately this is not the case for drawing::LineCap_SQUARE
+ bUseDecomposition = true;
+ }
+
+ if(bUseDecomposition)
+ {
+ // get correct range by using the decomposition fallback, reasons see above cases
aRetval = BufferedDecompositionPrimitive2D::getB2DRange(rViewInformation);
}
else
diff --git a/drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx b/drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx
index 13149c1d7695..1006842963de 100644
--- a/drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/polypolygonprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
#include <basegfx/polygon/b2dpolypolygontools.hxx>
@@ -210,6 +201,16 @@ namespace drawinglayer
{
}
+ PolyPolygonStrokePrimitive2D::PolyPolygonStrokePrimitive2D(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const attribute::LineAttribute& rLineAttribute)
+ : BufferedDecompositionPrimitive2D(),
+ maPolyPolygon(rPolyPolygon),
+ maLineAttribute(rLineAttribute),
+ maStrokeAttribute()
+ {
+ }
+
bool PolyPolygonStrokePrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
{
if(BufferedDecompositionPrimitive2D::operator==(rPrimitive))
diff --git a/drawinglayer/source/primitive2d/rendergraphicprimitive2d.cxx b/drawinglayer/source/primitive2d/rendergraphicprimitive2d.cxx
deleted file mode 100644
index 8e317a14301c..000000000000
--- a/drawinglayer/source/primitive2d/rendergraphicprimitive2d.cxx
+++ /dev/null
@@ -1,79 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include <drawinglayer/primitive2d/rendergraphicprimitive2d.hxx>
-#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
-#include <basegfx/tools/canvastools.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
-
-//////////////////////////////////////////////////////////////////////////////
-
-using namespace com::sun::star;
-
-//////////////////////////////////////////////////////////////////////////////
-
-namespace drawinglayer
-{
- namespace primitive2d
- {
- RenderGraphicPrimitive2D::RenderGraphicPrimitive2D(
- const vcl::RenderGraphic& rRenderGraphic,
- const basegfx::B2DHomMatrix& rTransform)
- : BasePrimitive2D(),
- maRenderGraphic(rRenderGraphic),
- maTransform(rTransform)
- {
- }
-
- bool RenderGraphicPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
- {
- if(BasePrimitive2D::operator==(rPrimitive))
- {
- const RenderGraphicPrimitive2D& rCompare = (RenderGraphicPrimitive2D&)rPrimitive;
-
- return (getRenderGraphic() == rCompare.getRenderGraphic()
- && getTransform() == rCompare.getTransform());
- }
-
- return false;
- }
-
- basegfx::B2DRange RenderGraphicPrimitive2D::getB2DRange(const geometry::ViewInformation2D& /*rViewInformation*/) const
- {
- basegfx::B2DRange aRetval(0.0, 0.0, 1.0, 1.0);
- aRetval.transform(maTransform);
- return aRetval;
- }
-
- // provide unique ID
- ImplPrimitrive2DIDBlock(RenderGraphicPrimitive2D, PRIMITIVE2D_ID_RENDERGRAPHICPRIMITIVE2D)
-
- } // end of namespace primitive2d
-} // end of namespace drawinglayer
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/primitive2d/sceneprimitive2d.cxx b/drawinglayer/source/primitive2d/sceneprimitive2d.cxx
index 165fcc9f795c..32bc48ca763e 100644
--- a/drawinglayer/source/primitive2d/sceneprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/sceneprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/sceneprimitive2d.hxx>
#include <basegfx/tools/canvastools.hxx>
@@ -207,24 +198,84 @@ namespace drawinglayer
}
}
- // calculate logic render size in world coordinates for usage in renderer
- basegfx::B2DVector aLogicRenderSize(
- aDiscreteRange.getWidth() * fReduceFactor,
- aDiscreteRange.getHeight() * fReduceFactor);
- aLogicRenderSize *= rViewInformation.getInverseObjectToViewTransformation();
-
// determine the oversample value
static sal_uInt16 nDefaultOversampleValue(3);
const sal_uInt16 nOversampleValue(aDrawinglayerOpt.IsAntiAliasing() ? nDefaultOversampleValue : 0);
+ geometry::ViewInformation3D aViewInformation3D(getViewInformation3D());
+ {
+ // calculate a transformation from DiscreteRange to evtl. rotated/sheared content.
+ // Start with full transformation from object to discrete units
+ basegfx::B2DHomMatrix aObjToUnit(rViewInformation.getObjectToViewTransformation() * getObjectTransformation());
+
+ // bring to unit coordinates by applying inverse DiscreteRange
+ aObjToUnit.translate(-aDiscreteRange.getMinX(), -aDiscreteRange.getMinY());
+ aObjToUnit.scale(1.0 / aDiscreteRange.getWidth(), 1.0 / aDiscreteRange.getHeight());
+
+ // calculate transformed user coordinate system
+ const basegfx::B2DPoint aStandardNull(0.0, 0.0);
+ const basegfx::B2DPoint aUnitRangeTopLeft(aObjToUnit * aStandardNull);
+ const basegfx::B2DVector aStandardXAxis(1.0, 0.0);
+ const basegfx::B2DVector aUnitRangeXAxis(aObjToUnit * aStandardXAxis);
+ const basegfx::B2DVector aStandardYAxis(0.0, 1.0);
+ const basegfx::B2DVector aUnitRangeYAxis(aObjToUnit * aStandardYAxis);
+
+ if(!aUnitRangeTopLeft.equal(aStandardNull) || !aUnitRangeXAxis.equal(aStandardXAxis) || !aUnitRangeYAxis.equal(aStandardYAxis))
+ {
+ // build transformation from unit range to user coordinate system; the unit range
+ // X and Y axes are the column vectors, the null point is the offset
+ basegfx::B2DHomMatrix aUnitRangeToUser;
+
+ aUnitRangeToUser.set3x2(
+ aUnitRangeXAxis.getX(), aUnitRangeYAxis.getX(), aUnitRangeTopLeft.getX(),
+ aUnitRangeXAxis.getY(), aUnitRangeYAxis.getY(), aUnitRangeTopLeft.getY());
+
+ // decompose to allow to apply this to the 3D transformation
+ basegfx::B2DVector aScale, aTranslate;
+ double fRotate, fShearX;
+ aUnitRangeToUser.decompose(aScale, aTranslate, fRotate, fShearX);
+
+ // apply before DeviceToView and after Projection, 3D is in range [-1.0 .. 1.0] in X,Y and Z
+ // and not yet flipped in Y
+ basegfx::B3DHomMatrix aExtendedProjection(aViewInformation3D.getProjection());
+
+ // bring to unit coordiantes, flip Y, leave Z unchanged
+ aExtendedProjection.scale(0.5, -0.5, 1.0);
+ aExtendedProjection.translate(0.5, 0.5, 0.0);
+
+ // apply extra; Y is flipped now, go with positive shear and rotate values
+ aExtendedProjection.scale(aScale.getX(), aScale.getY(), 1.0);
+ aExtendedProjection.shearXZ(fShearX, 0.0);
+ aExtendedProjection.rotate(0.0, 0.0, fRotate);
+ aExtendedProjection.translate(aTranslate.getX(), aTranslate.getY(), 0.0);
+
+ // back to state after projection
+ aExtendedProjection.translate(-0.5, -0.5, 0.0);
+ aExtendedProjection.scale(2.0, -2.0, 1.0);
+
+ aViewInformation3D = geometry::ViewInformation3D(
+ aViewInformation3D.getObjectTransformation(),
+ aViewInformation3D.getOrientation(),
+ aExtendedProjection,
+ aViewInformation3D.getDeviceToView(),
+ aViewInformation3D.getViewTime(),
+ aViewInformation3D.getExtendedInformationSequence());
+ }
+ }
+
+ // calculate logic render size in world coordinates for usage in renderer
+ const basegfx::B2DHomMatrix aInverseOToV(rViewInformation.getInverseObjectToViewTransformation());
+ const double fLogicX((aInverseOToV * basegfx::B2DVector(aDiscreteRange.getWidth() * fReduceFactor, 0.0)).getLength());
+ const double fLogicY((aInverseOToV * basegfx::B2DVector(0.0, aDiscreteRange.getHeight() * fReduceFactor)).getLength());
+
// use default 3D primitive processor to create BitmapEx for aUnitVisiblePart and process
processor3d::ZBufferProcessor3D aZBufferProcessor3D(
- getViewInformation3D(),
+ aViewInformation3D,
rViewInformation,
getSdrSceneAttribute(),
getSdrLightingAttribute(),
- aLogicRenderSize.getX(),
- aLogicRenderSize.getY(),
+ fLogicX,
+ fLogicY,
aUnitVisibleRange,
nOversampleValue);
@@ -245,7 +296,7 @@ namespace drawinglayer
aNew2DTransform.set(1, 2, aVisibleDiscreteRange.getMinY());
// transform back to world coordinates for usage in primitive creation
- aNew2DTransform *= rViewInformation.getInverseObjectToViewTransformation();
+ aNew2DTransform *= aInverseOToV;
// create bitmap primitive and add
const Primitive2DReference xRef(new BitmapPrimitive2D(maOldRenderedBitmap, aNew2DTransform));
diff --git a/drawinglayer/source/primitive2d/svggradientprimitive2d.cxx b/drawinglayer/source/primitive2d/svggradientprimitive2d.cxx
new file mode 100644
index 000000000000..a8c60da51299
--- /dev/null
+++ b/drawinglayer/source/primitive2d/svggradientprimitive2d.cxx
@@ -0,0 +1,1087 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <drawinglayer/primitive2d/svggradientprimitive2d.hxx>
+#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
+#include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
+#include <drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx>
+#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
+#include <basegfx/matrix/b2dhommatrixtools.hxx>
+#include <basegfx/polygon/b2dpolygontools.hxx>
+#include <basegfx/polygon/b2dpolygon.hxx>
+#include <drawinglayer/primitive2d/transparenceprimitive2d.hxx>
+#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
+#include <drawinglayer/primitive2d/maskprimitive2d.hxx>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+
+using namespace com::sun::star;
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace
+{
+ sal_uInt32 calculateStepsForSvgGradient(const basegfx::BColor& rColorA, const basegfx::BColor& rColorB, double fDelta, double fDiscreteUnit)
+ {
+ // use color distance, assume to do every color step (full quality)
+ sal_uInt32 nSteps(basegfx::fround(rColorA.getDistance(rColorB) * 255.0));
+
+ if(nSteps)
+ {
+ // calc discrete length to change color all 1.5 disctete units (pixels)
+ const sal_uInt32 nDistSteps(basegfx::fround(fDelta / (fDiscreteUnit * 1.5)));
+
+ nSteps = std::min(nSteps, nDistSteps);
+ }
+
+ // roughly cut when too big or too small
+ nSteps = std::min(nSteps, sal_uInt32(255));
+ nSteps = std::max(nSteps, sal_uInt32(1));
+
+ return nSteps;
+ }
+} // end of anonymous namespace
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ Primitive2DSequence SvgGradientHelper::createSingleGradientEntryFill() const
+ {
+ const SvgGradientEntryVector& rEntries = getGradientEntries();
+ const sal_uInt32 nCount(rEntries.size());
+ Primitive2DSequence xRetval;
+
+ if(nCount)
+ {
+ const SvgGradientEntry& rSingleEntry = rEntries[nCount - 1];
+ const double fOpacity(rSingleEntry.getOpacity());
+
+ if(fOpacity > 0.0)
+ {
+ Primitive2DReference xRef(
+ new PolyPolygonColorPrimitive2D(
+ getPolyPolygon(),
+ rSingleEntry.getColor()));
+
+ if(fOpacity < 1.0)
+ {
+ const Primitive2DSequence aContent(&xRef, 1);
+
+ xRef = Primitive2DReference(
+ new UnifiedTransparencePrimitive2D(
+ aContent,
+ 1.0 - fOpacity));
+ }
+
+ xRetval = Primitive2DSequence(&xRef, 1);
+ }
+ }
+ else
+ {
+ OSL_ENSURE(false, "Single gradient entry construction without entry (!)");
+ }
+
+ return xRetval;
+ }
+
+ void SvgGradientHelper::checkPreconditions()
+ {
+ mbPreconditionsChecked = true;
+ const SvgGradientEntryVector& rEntries = getGradientEntries();
+
+ if(rEntries.empty())
+ {
+ // no fill at all
+ }
+ else
+ {
+ const sal_uInt32 nCount(rEntries.size());
+
+ if(1 == nCount)
+ {
+ // fill with single existing color
+ setSingleEntry();
+ }
+ else
+ {
+ // sort maGradientEntries when more than one
+ std::sort(maGradientEntries.begin(), maGradientEntries.end());
+
+ // gradient with at least two colors
+ bool bAllInvisible(true);
+
+ for(sal_uInt32 a(0); a < nCount; a++)
+ {
+ const SvgGradientEntry& rCandidate = rEntries[a];
+
+ if(basegfx::fTools::equalZero(rCandidate.getOpacity()))
+ {
+ // invisible
+ mbFullyOpaque = false;
+ }
+ else if(basegfx::fTools::equal(rCandidate.getOpacity(), 1.0))
+ {
+ // completely opaque
+ bAllInvisible = false;
+ }
+ else
+ {
+ // opacity
+ bAllInvisible = false;
+ mbFullyOpaque = false;
+ }
+ }
+
+ if(bAllInvisible)
+ {
+ // all invisible, nothing to do
+ }
+ else
+ {
+ const basegfx::B2DRange aPolyRange(getPolyPolygon().getB2DRange());
+
+ if(aPolyRange.isEmpty())
+ {
+ // no range to fill, nothing to do
+ }
+ else
+ {
+ const double fPolyWidth(aPolyRange.getWidth());
+ const double fPolyHeight(aPolyRange.getHeight());
+
+ if(basegfx::fTools::equalZero(fPolyWidth) || basegfx::fTools::equalZero(fPolyHeight))
+ {
+ // no width/height to fill, nothing to do
+ }
+ else
+ {
+ mbCreatesContent = true;
+ }
+ }
+ }
+ }
+ }
+ }
+
+ double SvgGradientHelper::createRun(
+ Primitive2DVector& rTargetColor,
+ Primitive2DVector& rTargetOpacity,
+ double fPos,
+ double fMax,
+ const SvgGradientEntryVector& rEntries,
+ sal_Int32 nOffset) const
+ {
+ const sal_uInt32 nCount(rEntries.size());
+
+ if(nCount)
+ {
+ const SvgGradientEntry& rStart = rEntries[0];
+ const bool bCreateStartPad(fPos < 0.0 && Spread_pad == getSpreadMethod());
+ const bool bCreateStartFill(rStart.getOffset() > 0.0);
+ sal_uInt32 nIndex(0);
+
+ if(bCreateStartPad || bCreateStartFill)
+ {
+ const SvgGradientEntry aTemp(bCreateStartPad ? fPos : 0.0, rStart.getColor(), rStart.getOpacity());
+
+ createAtom(rTargetColor, rTargetOpacity, aTemp, rStart, nOffset);
+ fPos = rStart.getOffset();
+ }
+
+ while(fPos < 1.0 && nIndex + 1 < nCount)
+ {
+ const SvgGradientEntry& rCandidateA = rEntries[nIndex++];
+ const SvgGradientEntry& rCandidateB = rEntries[nIndex];
+
+ createAtom(rTargetColor, rTargetOpacity, rCandidateA, rCandidateB, nOffset);
+ fPos = rCandidateB.getOffset();
+ }
+
+ const SvgGradientEntry& rEnd = rEntries[nCount - 1];
+ const bool bCreateEndPad(fPos < fMax && Spread_pad == getSpreadMethod());
+ const bool bCreateEndFill(rEnd.getOffset() < 1.0);
+
+ if(bCreateEndPad || bCreateEndFill)
+ {
+ fPos = bCreateEndPad ? fMax : 1.0;
+ const SvgGradientEntry aTemp(fPos, rEnd.getColor(), rEnd.getOpacity());
+
+ createAtom(rTargetColor, rTargetOpacity, rEnd, aTemp, nOffset);
+ }
+ }
+ else
+ {
+ OSL_ENSURE(false, "GradientAtom creation without ColorStops (!)");
+ fPos = fMax;
+ }
+
+ return fPos;
+ }
+
+ Primitive2DSequence SvgGradientHelper::createResult(
+ const Primitive2DVector& rTargetColor,
+ const Primitive2DVector& rTargetOpacity,
+ const basegfx::B2DHomMatrix& rUnitGradientToObject,
+ bool bInvert) const
+ {
+ Primitive2DSequence xRetval;
+ const Primitive2DSequence aTargetColorEntries(Primitive2DVectorToPrimitive2DSequence(rTargetColor, bInvert));
+ const Primitive2DSequence aTargetOpacityEntries(Primitive2DVectorToPrimitive2DSequence(rTargetOpacity, bInvert));
+
+ if(aTargetColorEntries.hasElements())
+ {
+ Primitive2DReference xRefContent;
+
+ if(aTargetOpacityEntries.hasElements())
+ {
+ const Primitive2DReference xRefOpacity = new TransparencePrimitive2D(
+ aTargetColorEntries,
+ aTargetOpacityEntries);
+
+ xRefContent = new TransformPrimitive2D(
+ rUnitGradientToObject,
+ Primitive2DSequence(&xRefOpacity, 1));
+ }
+ else
+ {
+ xRefContent = new TransformPrimitive2D(
+ rUnitGradientToObject,
+ aTargetColorEntries);
+ }
+
+ xRefContent = new MaskPrimitive2D(
+ getPolyPolygon(),
+ Primitive2DSequence(&xRefContent, 1));
+
+ xRetval = Primitive2DSequence(&xRefContent, 1);
+ }
+
+ return xRetval;
+ }
+
+ SvgGradientHelper::SvgGradientHelper(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const SvgGradientEntryVector& rGradientEntries,
+ const basegfx::B2DPoint& rStart,
+ SpreadMethod aSpreadMethod)
+ : maPolyPolygon(rPolyPolygon),
+ maGradientEntries(rGradientEntries),
+ maStart(rStart),
+ maSpreadMethod(aSpreadMethod),
+ mbPreconditionsChecked(false),
+ mbCreatesContent(false),
+ mbSingleEntry(false),
+ mbFullyOpaque(true)
+ {
+ }
+
+ bool SvgGradientHelper::equalTo(const SvgGradientHelper& rSvgGradientHelper) const
+ {
+ const SvgGradientHelper& rCompare = static_cast< const SvgGradientHelper& >(rSvgGradientHelper);
+
+ return (getPolyPolygon() == rCompare.getPolyPolygon()
+ && getGradientEntries() == rCompare.getGradientEntries()
+ && getStart() == rCompare.getStart()
+ && getSpreadMethod() == rCompare.getSpreadMethod());
+ }
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ void SvgLinearGradientPrimitive2D::checkPreconditions()
+ {
+ // call parent
+ SvgGradientHelper::checkPreconditions();
+
+ if(getCreatesContent())
+ {
+ // Check Vector
+ const basegfx::B2DVector aVector(getEnd() - getStart());
+
+ if(basegfx::fTools::equalZero(aVector.getX()) && basegfx::fTools::equalZero(aVector.getY()))
+ {
+ // fill with single color using last stop color
+ setSingleEntry();
+ }
+ }
+ }
+
+ void SvgLinearGradientPrimitive2D::createAtom(
+ Primitive2DVector& rTargetColor,
+ Primitive2DVector& rTargetOpacity,
+ const SvgGradientEntry& rFrom,
+ const SvgGradientEntry& rTo,
+ sal_Int32 nOffset) const
+ {
+ // create gradient atom [rFrom.getOffset() .. rTo.getOffset()] with (rFrom.getOffset() > rTo.getOffset())
+ if(rFrom.getOffset() == rTo.getOffset())
+ {
+ OSL_ENSURE(false, "SvgGradient Atom creation with no step width (!)");
+ }
+ else
+ {
+ rTargetColor.push_back(
+ new SvgLinearAtomPrimitive2D(
+ rFrom.getColor(), rFrom.getOffset() + nOffset,
+ rTo.getColor(), rTo.getOffset() + nOffset));
+
+ const double fTransFrom(1.0 - rFrom.getOpacity());
+ const double fTransTo(1.0 - rTo.getOpacity());
+
+ rTargetOpacity.push_back(
+ new SvgLinearAtomPrimitive2D(
+ basegfx::BColor(fTransFrom, fTransFrom, fTransFrom), rFrom.getOffset() + nOffset,
+ basegfx::BColor(fTransTo,fTransTo, fTransTo), rTo.getOffset() + nOffset));
+ }
+ }
+
+ Primitive2DSequence SvgLinearGradientPrimitive2D::create2DDecomposition(const geometry::ViewInformation2D& /*rViewInformation*/) const
+ {
+ Primitive2DSequence xRetval;
+
+ if(!getPreconditionsChecked())
+ {
+ const_cast< SvgLinearGradientPrimitive2D* >(this)->checkPreconditions();
+ }
+
+ if(getSingleEntry())
+ {
+ // fill with last existing color
+ xRetval = createSingleGradientEntryFill();
+ }
+ else if(getCreatesContent())
+ {
+ // at least two color stops in range [0.0 .. 1.0], sorted, non-null vector, not completely
+ // invisible, width and height to fill are not empty
+ const basegfx::B2DRange aPolyRange(getPolyPolygon().getB2DRange());
+ const double fPolyWidth(aPolyRange.getWidth());
+ const double fPolyHeight(aPolyRange.getHeight());
+
+ // create ObjectTransform based on polygon range
+ const basegfx::B2DHomMatrix aObjectTransform(
+ basegfx::tools::createScaleTranslateB2DHomMatrix(
+ fPolyWidth, fPolyHeight,
+ aPolyRange.getMinX(), aPolyRange.getMinY()));
+
+ // create unit transform from unit vector [0.0 .. 1.0] along the X-Axis to given
+ // gradient vector defined by Start,End
+ const basegfx::B2DVector aVector(getEnd() - getStart());
+ const double fVectorLength(aVector.getLength());
+ basegfx::B2DHomMatrix aUnitGradientToGradient;
+
+ aUnitGradientToGradient.scale(fVectorLength, 1.0);
+ aUnitGradientToGradient.rotate(atan2(aVector.getY(), aVector.getX()));
+ aUnitGradientToGradient.translate(getStart().getX(), getStart().getY());
+
+ // create full transform from unit gradient coordinates to object coordinates
+ // including the SvgGradient transformation
+ basegfx::B2DHomMatrix aUnitGradientToObject(aObjectTransform * aUnitGradientToGradient);
+
+ // create inverse from it
+ basegfx::B2DHomMatrix aObjectToUnitGradient(aUnitGradientToObject);
+ aObjectToUnitGradient.invert();
+
+ // back-transform polygon to unit gradient coordinates and get
+ // UnitRage. This is the range the gradient has to cover
+ basegfx::B2DPolyPolygon aUnitPoly(getPolyPolygon());
+ aUnitPoly.transform(aObjectToUnitGradient);
+ const basegfx::B2DRange aUnitRange(aUnitPoly.getB2DRange());
+
+ // prepare result vectors
+ Primitive2DVector aTargetColor;
+ Primitive2DVector aTargetOpacity;
+
+ if(basegfx::fTools::more(aUnitRange.getWidth(), 0.0))
+ {
+ // add a pre-multiply to aUnitGradientToObject to allow
+ // multiplication of the polygon(xl, 0.0, xr, 1.0)
+ const basegfx::B2DHomMatrix aPreMultiply(
+ basegfx::tools::createScaleTranslateB2DHomMatrix(
+ 1.0, aUnitRange.getHeight(), 0.0, aUnitRange.getMinY()));
+ aUnitGradientToObject = aUnitGradientToObject * aPreMultiply;
+
+ // create central run, may also already do all necessary when
+ // Spread_pad is set as SpreadMethod and/or the range is smaller
+ double fPos(createRun(aTargetColor, aTargetOpacity, aUnitRange.getMinX(), aUnitRange.getMaxX(), getGradientEntries(), 0));
+
+ if(fPos < aUnitRange.getMaxX())
+ {
+ // can only happen when SpreadMethod is Spread_reflect or Spread_repeat,
+ // else the start and end pads are already created and fPos == aUnitRange.getMaxX().
+ // Its possible to express the repeated linear gradient by adding the
+ // transformed central run. Crete it this way
+ Primitive2DSequence aTargetColorEntries(Primitive2DVectorToPrimitive2DSequence(aTargetColor));
+ Primitive2DSequence aTargetOpacityEntries(Primitive2DVectorToPrimitive2DSequence(aTargetOpacity));
+ aTargetColor.clear();
+ aTargetOpacity.clear();
+
+ if(aTargetColorEntries.hasElements())
+ {
+ // add original central run as group primitive
+ aTargetColor.push_back(new GroupPrimitive2D(aTargetColorEntries));
+
+ if(aTargetOpacityEntries.hasElements())
+ {
+ aTargetOpacity.push_back(new GroupPrimitive2D(aTargetOpacityEntries));
+ }
+
+ // add negative runs
+ fPos = 0.0;
+ sal_Int32 nOffset(0);
+
+ while(fPos > aUnitRange.getMinX())
+ {
+ fPos -= 1.0;
+ nOffset++;
+
+ basegfx::B2DHomMatrix aTransform;
+ const bool bMirror(Spread_reflect == getSpreadMethod() && (nOffset % 2));
+
+ if(bMirror)
+ {
+ aTransform.scale(-1.0, 1.0);
+ aTransform.translate(fPos + 1.0, 0.0);
+ }
+ else
+ {
+ aTransform.translate(fPos, 0.0);
+ }
+
+ aTargetColor.push_back(new TransformPrimitive2D(aTransform, aTargetColorEntries));
+
+ if(aTargetOpacityEntries.hasElements())
+ {
+ aTargetOpacity.push_back(new TransformPrimitive2D(aTransform, aTargetOpacityEntries));
+ }
+ }
+
+ // add positive runs
+ fPos = 1.0;
+ nOffset = 1;
+
+ while(fPos < aUnitRange.getMaxX())
+ {
+ basegfx::B2DHomMatrix aTransform;
+ const bool bMirror(Spread_reflect == getSpreadMethod() && (nOffset % 2));
+
+ if(bMirror)
+ {
+ aTransform.scale(-1.0, 1.0);
+ aTransform.translate(fPos + 1.0, 0.0);
+ }
+ else
+ {
+ aTransform.translate(fPos, 0.0);
+ }
+
+ aTargetColor.push_back(new TransformPrimitive2D(aTransform, aTargetColorEntries));
+
+ if(aTargetOpacityEntries.hasElements())
+ {
+ aTargetOpacity.push_back(new TransformPrimitive2D(aTransform, aTargetOpacityEntries));
+ }
+
+ fPos += 1.0;
+ nOffset++;
+ }
+ }
+ }
+ }
+
+ xRetval = createResult(aTargetColor, aTargetOpacity, aUnitGradientToObject);
+ }
+
+ return xRetval;
+ }
+
+ SvgLinearGradientPrimitive2D::SvgLinearGradientPrimitive2D(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const SvgGradientEntryVector& rGradientEntries,
+ const basegfx::B2DPoint& rStart,
+ const basegfx::B2DPoint& rEnd,
+ SpreadMethod aSpreadMethod)
+ : BufferedDecompositionPrimitive2D(),
+ SvgGradientHelper(rPolyPolygon, rGradientEntries, rStart, aSpreadMethod),
+ maEnd(rEnd)
+ {
+ }
+
+ bool SvgLinearGradientPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
+ {
+ const SvgGradientHelper* pSvgGradientHelper = dynamic_cast< const SvgGradientHelper* >(&rPrimitive);
+
+ if(pSvgGradientHelper && SvgGradientHelper::equalTo(*pSvgGradientHelper))
+ {
+ const SvgLinearGradientPrimitive2D& rCompare = static_cast< const SvgLinearGradientPrimitive2D& >(rPrimitive);
+
+ return (getEnd() == rCompare.getEnd());
+ }
+
+ return false;
+ }
+
+ basegfx::B2DRange SvgLinearGradientPrimitive2D::getB2DRange(const geometry::ViewInformation2D& /*rViewInformation*/) const
+ {
+ // return ObjectRange
+ return getPolyPolygon().getB2DRange();
+ }
+
+ // provide unique ID
+ ImplPrimitrive2DIDBlock(SvgLinearGradientPrimitive2D, PRIMITIVE2D_ID_SVGLINEARGRADIENTPRIMITIVE2D)
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ void SvgRadialGradientPrimitive2D::checkPreconditions()
+ {
+ // call parent
+ SvgGradientHelper::checkPreconditions();
+
+ if(getCreatesContent())
+ {
+ // Check Radius
+ if(basegfx::fTools::equalZero(getRadius()))
+ {
+ // fill with single color using last stop color
+ setSingleEntry();
+ }
+ }
+ }
+
+ void SvgRadialGradientPrimitive2D::createAtom(
+ Primitive2DVector& rTargetColor,
+ Primitive2DVector& rTargetOpacity,
+ const SvgGradientEntry& rFrom,
+ const SvgGradientEntry& rTo,
+ sal_Int32 nOffset) const
+ {
+ // create gradient atom [rFrom.getOffset() .. rTo.getOffset()] with (rFrom.getOffset() > rTo.getOffset())
+ if(rFrom.getOffset() == rTo.getOffset())
+ {
+ OSL_ENSURE(false, "SvgGradient Atom creation with no step width (!)");
+ }
+ else
+ {
+ const double fScaleFrom(rFrom.getOffset() + nOffset);
+ const double fScaleTo(rTo.getOffset() + nOffset);
+
+ if(isFocalSet())
+ {
+ const basegfx::B2DVector aTranslateFrom(maFocalVector * (maFocalLength - fScaleFrom));
+ const basegfx::B2DVector aTranslateTo(maFocalVector * (maFocalLength - fScaleTo));
+
+ rTargetColor.push_back(
+ new SvgRadialAtomPrimitive2D(
+ rFrom.getColor(), fScaleFrom, aTranslateFrom,
+ rTo.getColor(), fScaleTo, aTranslateTo));
+ }
+ else
+ {
+ rTargetColor.push_back(
+ new SvgRadialAtomPrimitive2D(
+ rFrom.getColor(), fScaleFrom,
+ rTo.getColor(), fScaleTo));
+ }
+
+ const double fTransFrom(1.0 - rFrom.getOpacity());
+ const double fTransTo(1.0 - rTo.getOpacity());
+ const basegfx::BColor aColorFrom(fTransFrom, fTransFrom, fTransFrom);
+ const basegfx::BColor aColorTo(fTransTo, fTransTo, fTransTo);
+
+ if(isFocalSet())
+ {
+ const basegfx::B2DVector aTranslateFrom(maFocalVector * (maFocalLength - fScaleFrom));
+ const basegfx::B2DVector aTranslateTo(maFocalVector * (maFocalLength - fScaleTo));
+
+ rTargetOpacity.push_back(
+ new SvgRadialAtomPrimitive2D(
+ aColorFrom, fScaleFrom, aTranslateFrom,
+ aColorTo, fScaleTo, aTranslateTo));
+ }
+ else
+ {
+ rTargetOpacity.push_back(
+ new SvgRadialAtomPrimitive2D(
+ aColorFrom, fScaleFrom,
+ aColorTo, fScaleTo));
+ }
+ }
+ }
+
+ const SvgGradientEntryVector& SvgRadialGradientPrimitive2D::getMirroredGradientEntries() const
+ {
+ if(maMirroredGradientEntries.empty() && !getGradientEntries().empty())
+ {
+ const_cast< SvgRadialGradientPrimitive2D* >(this)->createMirroredGradientEntries();
+ }
+
+ return maMirroredGradientEntries;
+ }
+
+ void SvgRadialGradientPrimitive2D::createMirroredGradientEntries()
+ {
+ if(maMirroredGradientEntries.empty() && !getGradientEntries().empty())
+ {
+ const sal_uInt32 nCount(getGradientEntries().size());
+ maMirroredGradientEntries.clear();
+ maMirroredGradientEntries.reserve(nCount);
+
+ for(sal_uInt32 a(0); a < nCount; a++)
+ {
+ const SvgGradientEntry& rCandidate = getGradientEntries()[nCount - 1 - a];
+
+ maMirroredGradientEntries.push_back(
+ SvgGradientEntry(
+ 1.0 - rCandidate.getOffset(),
+ rCandidate.getColor(),
+ rCandidate.getOpacity()));
+ }
+ }
+ }
+
+ Primitive2DSequence SvgRadialGradientPrimitive2D::create2DDecomposition(const geometry::ViewInformation2D& /*rViewInformation*/) const
+ {
+ Primitive2DSequence xRetval;
+
+ if(!getPreconditionsChecked())
+ {
+ const_cast< SvgRadialGradientPrimitive2D* >(this)->checkPreconditions();
+ }
+
+ if(getSingleEntry())
+ {
+ // fill with last existing color
+ xRetval = createSingleGradientEntryFill();
+ }
+ else if(getCreatesContent())
+ {
+ // at least two color stops in range [0.0 .. 1.0], sorted, non-null vector, not completely
+ // invisible, width and height to fill are not empty
+ const basegfx::B2DRange aPolyRange(getPolyPolygon().getB2DRange());
+ const double fPolyWidth(aPolyRange.getWidth());
+ const double fPolyHeight(aPolyRange.getHeight());
+
+ // create ObjectTransform based on polygon range
+ const basegfx::B2DHomMatrix aObjectTransform(
+ basegfx::tools::createScaleTranslateB2DHomMatrix(
+ fPolyWidth, fPolyHeight,
+ aPolyRange.getMinX(), aPolyRange.getMinY()));
+
+ // create unit transform from unit vector to given linear gradient vector
+ basegfx::B2DHomMatrix aUnitGradientToGradient;
+
+ aUnitGradientToGradient.scale(getRadius(), getRadius());
+ aUnitGradientToGradient.translate(getStart().getX(), getStart().getY());
+
+ // create full transform from unit gradient coordinates to object coordinates
+ // including the SvgGradient transformation
+ basegfx::B2DHomMatrix aUnitGradientToObject(aObjectTransform * aUnitGradientToGradient);
+
+ // create inverse from it
+ basegfx::B2DHomMatrix aObjectToUnitGradient(aUnitGradientToObject);
+ aObjectToUnitGradient.invert();
+
+ // back-transform polygon to unit gradient coordinates and get
+ // UnitRage. This is the range the gradient has to cover
+ basegfx::B2DPolyPolygon aUnitPoly(getPolyPolygon());
+ aUnitPoly.transform(aObjectToUnitGradient);
+ const basegfx::B2DRange aUnitRange(aUnitPoly.getB2DRange());
+
+ // create range which the gradient has to cover to cover the whole given geometry.
+ // For circle, go from 0.0 to max radius in all directions (the corners)
+ double fMax(basegfx::B2DVector(aUnitRange.getMinimum()).getLength());
+ fMax = std::max(fMax, basegfx::B2DVector(aUnitRange.getMaximum()).getLength());
+ fMax = std::max(fMax, basegfx::B2DVector(aUnitRange.getMinX(), aUnitRange.getMaxY()).getLength());
+ fMax = std::max(fMax, basegfx::B2DVector(aUnitRange.getMaxX(), aUnitRange.getMinY()).getLength());
+
+ // prepare result vectors
+ Primitive2DVector aTargetColor;
+ Primitive2DVector aTargetOpacity;
+
+ if(0.0 < fMax)
+ {
+ // prepare maFocalVector
+ if(isFocalSet())
+ {
+ const_cast< SvgRadialGradientPrimitive2D* >(this)->maFocalLength = fMax;
+ }
+
+ // create central run, may also already do all necessary when
+ // Spread_pad is set as SpreadMethod and/or the range is smaller
+ double fPos(createRun(aTargetColor, aTargetOpacity, 0.0, fMax, getGradientEntries(), 0));
+
+ if(fPos < fMax)
+ {
+ // can only happen when SpreadMethod is Spread_reflect or Spread_repeat,
+ // else the start and end pads are already created and fPos == fMax.
+ // For radial there is no way to transform the already created
+ // central run, it needs to be created from 1.0 to fMax
+ sal_Int32 nOffset(1);
+
+ while(fPos < fMax)
+ {
+ const bool bMirror(Spread_reflect == getSpreadMethod() && (nOffset % 2));
+
+ if(bMirror)
+ {
+ createRun(aTargetColor, aTargetOpacity, 0.0, fMax, getMirroredGradientEntries(), nOffset);
+ }
+ else
+ {
+ createRun(aTargetColor, aTargetOpacity, 0.0, fMax, getGradientEntries(), nOffset);
+ }
+
+ nOffset++;
+ fPos += 1.0;
+ }
+ }
+ }
+
+ xRetval = createResult(aTargetColor, aTargetOpacity, aUnitGradientToObject, true);
+ }
+
+ return xRetval;
+ }
+
+ SvgRadialGradientPrimitive2D::SvgRadialGradientPrimitive2D(
+ const basegfx::B2DPolyPolygon& rPolyPolygon,
+ const SvgGradientEntryVector& rGradientEntries,
+ const basegfx::B2DPoint& rStart,
+ double fRadius,
+ SpreadMethod aSpreadMethod,
+ const basegfx::B2DPoint* pFocal)
+ : BufferedDecompositionPrimitive2D(),
+ SvgGradientHelper(rPolyPolygon, rGradientEntries, rStart, aSpreadMethod),
+ mfRadius(fRadius),
+ maFocal(rStart),
+ maFocalVector(0.0, 0.0),
+ maFocalLength(0.0),
+ maMirroredGradientEntries(),
+ mbFocalSet(false)
+ {
+ if(pFocal)
+ {
+ maFocal = *pFocal;
+ maFocalVector = maFocal - getStart();
+ mbFocalSet = true;
+ }
+ }
+
+ bool SvgRadialGradientPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
+ {
+ const SvgGradientHelper* pSvgGradientHelper = dynamic_cast< const SvgGradientHelper* >(&rPrimitive);
+
+ if(pSvgGradientHelper && SvgGradientHelper::equalTo(*pSvgGradientHelper))
+ {
+ const SvgRadialGradientPrimitive2D& rCompare = static_cast< const SvgRadialGradientPrimitive2D& >(rPrimitive);
+
+ if(getRadius() == rCompare.getRadius())
+ {
+ if(isFocalSet() == rCompare.isFocalSet())
+ {
+ if(isFocalSet())
+ {
+ return getFocal() == rCompare.getFocal();
+ }
+ else
+ {
+ return true;
+ }
+ }
+ }
+ }
+
+ return false;
+ }
+
+ basegfx::B2DRange SvgRadialGradientPrimitive2D::getB2DRange(const geometry::ViewInformation2D& /*rViewInformation*/) const
+ {
+ // return ObjectRange
+ return getPolyPolygon().getB2DRange();
+ }
+
+ // provide unique ID
+ ImplPrimitrive2DIDBlock(SvgRadialGradientPrimitive2D, PRIMITIVE2D_ID_SVGRADIALGRADIENTPRIMITIVE2D)
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgLinearAtomPrimitive2D class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ Primitive2DSequence SvgLinearAtomPrimitive2D::create2DDecomposition(const geometry::ViewInformation2D& /*rViewInformation*/) const
+ {
+ Primitive2DSequence xRetval;
+ const double fDelta(getOffsetB() - getOffsetA());
+
+ if(!basegfx::fTools::equalZero(fDelta))
+ {
+ // use one discrete unit for overlap (one pixel)
+ const double fDiscreteUnit(getDiscreteUnit());
+
+ // use color distance and discrete lengths to calculate step count
+ const sal_uInt32 nSteps(calculateStepsForSvgGradient(getColorA(), getColorB(), fDelta, fDiscreteUnit));
+
+ // prepare loop and polygon (with overlap for linear gradients)
+ double fStart(0.0);
+ double fStep(fDelta / nSteps);
+ const basegfx::B2DPolygon aPolygon(
+ basegfx::tools::createPolygonFromRect(
+ basegfx::B2DRange(
+ getOffsetA() - fDiscreteUnit,
+ 0.0,
+ getOffsetA() + fStep + fDiscreteUnit,
+ 1.0)));
+
+ // loop and create primitives
+ xRetval.realloc(nSteps);
+
+ for(sal_uInt32 a(0); a < nSteps; a++, fStart += fStep)
+ {
+ basegfx::B2DPolygon aNew(aPolygon);
+
+ aNew.transform(basegfx::tools::createTranslateB2DHomMatrix(fStart, 0.0));
+ xRetval[a] = new PolyPolygonColorPrimitive2D(
+ basegfx::B2DPolyPolygon(aNew),
+ basegfx::interpolate(getColorA(), getColorB(), fStart/fDelta));
+ }
+ }
+
+ return xRetval;
+ }
+
+ SvgLinearAtomPrimitive2D::SvgLinearAtomPrimitive2D(
+ const basegfx::BColor& aColorA, double fOffsetA,
+ const basegfx::BColor& aColorB, double fOffsetB)
+ : DiscreteMetricDependentPrimitive2D(),
+ maColorA(aColorA),
+ maColorB(aColorB),
+ mfOffsetA(fOffsetA),
+ mfOffsetB(fOffsetB)
+ {
+ if(mfOffsetA > mfOffsetB)
+ {
+ OSL_ENSURE(false, "Wrong offset order (!)");
+ ::std::swap(mfOffsetA, mfOffsetB);
+ }
+ }
+
+ bool SvgLinearAtomPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
+ {
+ if(DiscreteMetricDependentPrimitive2D::operator==(rPrimitive))
+ {
+ const SvgLinearAtomPrimitive2D& rCompare = static_cast< const SvgLinearAtomPrimitive2D& >(rPrimitive);
+
+ return (getColorA() == rCompare.getColorA()
+ && getColorB() == rCompare.getColorB()
+ && getOffsetA() == rCompare.getOffsetA()
+ && getOffsetB() == rCompare.getOffsetB());
+ }
+
+ return false;
+ }
+
+ // provide unique ID
+ ImplPrimitrive2DIDBlock(SvgLinearAtomPrimitive2D, PRIMITIVE2D_ID_SVGLINEARATOMPRIMITIVE2D)
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+//////////////////////////////////////////////////////////////////////////////
+// SvgRadialAtomPrimitive2D class
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ Primitive2DSequence SvgRadialAtomPrimitive2D::create2DDecomposition(const geometry::ViewInformation2D& /*rViewInformation*/) const
+ {
+ Primitive2DSequence xRetval;
+ const double fDeltaScale(getScaleB() - getScaleA());
+
+ if(!basegfx::fTools::equalZero(fDeltaScale))
+ {
+ // use one discrete unit for overlap (one pixel)
+ const double fDiscreteUnit(getDiscreteUnit());
+
+ // use color distance and discrete lengths to calculate step count
+ const sal_uInt32 nSteps(calculateStepsForSvgGradient(getColorA(), getColorB(), fDeltaScale, fDiscreteUnit));
+
+ // prepare loop (outside to inside, full polygons, no polypolygons with holes)
+ double fEndScale(getScaleB());
+ double fStepScale(fDeltaScale / nSteps);
+
+ // loop and create primitives
+ xRetval.realloc(nSteps);
+
+ for(sal_uInt32 a(0); a < nSteps; a++, fEndScale -= fStepScale)
+ {
+ const double fUnitScale(fEndScale/fDeltaScale);
+ basegfx::B2DHomMatrix aTransform;
+
+ if(isTranslateSet())
+ {
+ const basegfx::B2DVector aTranslate(
+ basegfx::interpolate(
+ getTranslateA(),
+ getTranslateB(),
+ fUnitScale));
+
+ aTransform = basegfx::tools::createScaleTranslateB2DHomMatrix(
+ fEndScale,
+ fEndScale,
+ aTranslate.getX(),
+ aTranslate.getY());
+ }
+ else
+ {
+ aTransform = basegfx::tools::createScaleB2DHomMatrix(
+ fEndScale,
+ fEndScale);
+ }
+
+ basegfx::B2DPolygon aNew(basegfx::tools::createPolygonFromUnitCircle());
+
+ aNew.transform(aTransform);
+ xRetval[a] = new PolyPolygonColorPrimitive2D(
+ basegfx::B2DPolyPolygon(aNew),
+ basegfx::interpolate(getColorA(), getColorB(), fUnitScale));
+ }
+ }
+
+ return xRetval;
+ }
+
+ SvgRadialAtomPrimitive2D::SvgRadialAtomPrimitive2D(
+ const basegfx::BColor& aColorA, double fScaleA, const basegfx::B2DVector& rTranslateA,
+ const basegfx::BColor& aColorB, double fScaleB, const basegfx::B2DVector& rTranslateB)
+ : DiscreteMetricDependentPrimitive2D(),
+ maColorA(aColorA),
+ maColorB(aColorB),
+ mfScaleA(fScaleA),
+ mfScaleB(fScaleB),
+ mpTranslate(0)
+ {
+ // check and evtl. set translations
+ if(!rTranslateA.equal(rTranslateB))
+ {
+ mpTranslate = new VectorPair(rTranslateA, rTranslateB);
+ }
+
+ // scale A and B have to be positive
+ mfScaleA = ::std::max(mfScaleA, 0.0);
+ mfScaleB = ::std::max(mfScaleB, 0.0);
+
+ // scale B has to be bigger than scale A; swap if different
+ if(mfScaleA > mfScaleB)
+ {
+ OSL_ENSURE(false, "Wrong offset order (!)");
+ ::std::swap(mfScaleA, mfScaleB);
+
+ if(mpTranslate)
+ {
+ ::std::swap(mpTranslate->maTranslateA, mpTranslate->maTranslateB);
+ }
+ }
+ }
+
+ SvgRadialAtomPrimitive2D::SvgRadialAtomPrimitive2D(
+ const basegfx::BColor& aColorA, double fScaleA,
+ const basegfx::BColor& aColorB, double fScaleB)
+ : DiscreteMetricDependentPrimitive2D(),
+ maColorA(aColorA),
+ maColorB(aColorB),
+ mfScaleA(fScaleA),
+ mfScaleB(fScaleB),
+ mpTranslate(0)
+ {
+ // scale A and B have to be positive
+ mfScaleA = ::std::max(mfScaleA, 0.0);
+ mfScaleB = ::std::max(mfScaleB, 0.0);
+
+ // scale B has to be bigger than scale A; swap if different
+ if(mfScaleA > mfScaleB)
+ {
+ OSL_ENSURE(false, "Wrong offset order (!)");
+ ::std::swap(mfScaleA, mfScaleB);
+ }
+ }
+
+ SvgRadialAtomPrimitive2D::~SvgRadialAtomPrimitive2D()
+ {
+ if(mpTranslate)
+ {
+ delete mpTranslate;
+ mpTranslate = 0;
+ }
+ }
+
+ bool SvgRadialAtomPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
+ {
+ if(DiscreteMetricDependentPrimitive2D::operator==(rPrimitive))
+ {
+ const SvgRadialAtomPrimitive2D& rCompare = static_cast< const SvgRadialAtomPrimitive2D& >(rPrimitive);
+
+ if(getColorA() == rCompare.getColorA()
+ && getColorB() == rCompare.getColorB()
+ && getScaleA() == rCompare.getScaleA()
+ && getScaleB() == rCompare.getScaleB())
+ {
+ if(isTranslateSet() && rCompare.isTranslateSet())
+ {
+ return (getTranslateA() == rCompare.getTranslateA()
+ && getTranslateB() == rCompare.getTranslateB());
+ }
+ else if(!isTranslateSet() && !rCompare.isTranslateSet())
+ {
+ return true;
+ }
+ }
+ }
+
+ return false;
+ }
+
+ // provide unique ID
+ ImplPrimitrive2DIDBlock(SvgRadialAtomPrimitive2D, PRIMITIVE2D_ID_SVGRADIALATOMPRIMITIVE2D)
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/primitive2d/textbreakuphelper.cxx b/drawinglayer/source/primitive2d/textbreakuphelper.cxx
new file mode 100644
index 000000000000..6a4a40cc1076
--- /dev/null
+++ b/drawinglayer/source/primitive2d/textbreakuphelper.cxx
@@ -0,0 +1,303 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <drawinglayer/primitive2d/textbreakuphelper.hxx>
+#include <drawinglayer/primitive2d/textdecoratedprimitive2d.hxx>
+#include <com/sun/star/i18n/XBreakIterator.hpp>
+#include <comphelper/processfactory.hxx>
+#include <com/sun/star/i18n/CharacterIteratorMode.hdl>
+#include <com/sun/star/i18n/WordType.hpp>
+#include <com/sun/star/i18n/CharType.hpp>
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace primitive2d
+ {
+ TextBreakupHelper::TextBreakupHelper(const TextSimplePortionPrimitive2D& rSource)
+ : mrSource(rSource),
+ mxResult(),
+ maTextLayouter(),
+ maDecTrans(),
+ mbNoDXArray(false)
+ {
+ OSL_ENSURE(dynamic_cast< const TextSimplePortionPrimitive2D* >(&mrSource), "TextBreakupHelper with illegal primitive created (!)");
+ maDecTrans = mrSource.getTextTransform();
+ mbNoDXArray = mrSource.getDXArray().empty();
+
+ if(mbNoDXArray)
+ {
+ // init TextLayouter when no dxarray
+ maTextLayouter.setFontAttribute(
+ mrSource.getFontAttribute(),
+ maDecTrans.getScale().getX(),
+ maDecTrans.getScale().getY(),
+ mrSource.getLocale());
+ }
+ }
+
+ TextBreakupHelper::~TextBreakupHelper()
+ {
+ }
+
+ void TextBreakupHelper::breakupPortion(Primitive2DVector& rTempResult, sal_uInt32 nIndex, sal_uInt32 nLength, bool bWordLineMode)
+ {
+ if(nLength && !(nIndex == mrSource.getTextPosition() && nLength == mrSource.getTextLength()))
+ {
+ // prepare values for new portion
+ basegfx::B2DHomMatrix aNewTransform;
+ ::std::vector< double > aNewDXArray;
+ const bool bNewStartIsNotOldStart(nIndex > mrSource.getTextPosition());
+
+ if(!mbNoDXArray)
+ {
+ // prepare new DXArray for the single word
+ aNewDXArray = ::std::vector< double >(
+ mrSource.getDXArray().begin() + (nIndex - mrSource.getTextPosition()),
+ mrSource.getDXArray().begin() + ((nIndex + nLength) - mrSource.getTextPosition()));
+ }
+
+ if(bNewStartIsNotOldStart)
+ {
+ // needs to be moved to a new start position
+ double fOffset(0.0);
+
+ if(mbNoDXArray)
+ {
+ // evaluate using TextLayouter
+ fOffset = maTextLayouter.getTextWidth(mrSource.getText(), mrSource.getTextPosition(), nIndex);
+ }
+ else
+ {
+ // get from DXArray
+ const sal_uInt32 nIndex2(static_cast< sal_uInt32 >(nIndex - mrSource.getTextPosition()));
+ fOffset = mrSource.getDXArray()[nIndex2 - 1];
+ }
+
+ // need offset without FontScale for building the new transformation. The
+ // new transformation will be multiplied with the current text transformation
+ // so FontScale would be double
+ double fOffsetNoScale(fOffset);
+ const double fFontScaleX(maDecTrans.getScale().getX());
+
+ if(!basegfx::fTools::equal(fFontScaleX, 1.0)
+ && !basegfx::fTools::equalZero(fFontScaleX))
+ {
+ fOffsetNoScale /= fFontScaleX;
+ }
+
+ // apply needed offset to transformation
+ aNewTransform.translate(fOffsetNoScale, 0.0);
+
+ if(!mbNoDXArray)
+ {
+ // DXArray values need to be corrected with the offset, too. Here,
+ // take the scaled offset since the DXArray is scaled
+ const sal_uInt32 nArraySize(aNewDXArray.size());
+
+ for(sal_uInt32 a(0); a < nArraySize; a++)
+ {
+ aNewDXArray[a] -= fOffset;
+ }
+ }
+ }
+
+ // add text transformation to new transformation
+ aNewTransform = maDecTrans.getB2DHomMatrix() * aNewTransform;
+
+ // callback to allow evtl. changes
+ const bool bCreate(allowChange(rTempResult.size(), aNewTransform, nIndex, nLength));
+
+ if(bCreate)
+ {
+ // check if we have a decorated primitive as source
+ const TextDecoratedPortionPrimitive2D* pTextDecoratedPortionPrimitive2D =
+ dynamic_cast< const TextDecoratedPortionPrimitive2D* >(&mrSource);
+
+ if(pTextDecoratedPortionPrimitive2D)
+ {
+ // create a TextDecoratedPortionPrimitive2D
+ rTempResult.push_back(
+ new TextDecoratedPortionPrimitive2D(
+ aNewTransform,
+ mrSource.getText(),
+ nIndex,
+ nLength,
+ aNewDXArray,
+ mrSource.getFontAttribute(),
+ mrSource.getLocale(),
+ mrSource.getFontColor(),
+
+ pTextDecoratedPortionPrimitive2D->getOverlineColor(),
+ pTextDecoratedPortionPrimitive2D->getTextlineColor(),
+ pTextDecoratedPortionPrimitive2D->getFontOverline(),
+ pTextDecoratedPortionPrimitive2D->getFontUnderline(),
+ pTextDecoratedPortionPrimitive2D->getUnderlineAbove(),
+ pTextDecoratedPortionPrimitive2D->getTextStrikeout(),
+
+ // reset WordLineMode when BreakupUnit_word is executed; else copy original
+ bWordLineMode ? false : pTextDecoratedPortionPrimitive2D->getWordLineMode(),
+
+ pTextDecoratedPortionPrimitive2D->getTextEmphasisMark(),
+ pTextDecoratedPortionPrimitive2D->getEmphasisMarkAbove(),
+ pTextDecoratedPortionPrimitive2D->getEmphasisMarkBelow(),
+ pTextDecoratedPortionPrimitive2D->getTextRelief(),
+ pTextDecoratedPortionPrimitive2D->getShadow()));
+ }
+ else
+ {
+ // create a SimpleTextPrimitive
+ rTempResult.push_back(
+ new TextSimplePortionPrimitive2D(
+ aNewTransform,
+ mrSource.getText(),
+ nIndex,
+ nLength,
+ aNewDXArray,
+ mrSource.getFontAttribute(),
+ mrSource.getLocale(),
+ mrSource.getFontColor()));
+ }
+ }
+ }
+ }
+
+ bool TextBreakupHelper::allowChange(sal_uInt32 /*nCount*/, basegfx::B2DHomMatrix& /*rNewTransform*/, sal_uInt32 /*nIndex*/, sal_uInt32 /*nLength*/)
+ {
+ return true;
+ }
+
+ void TextBreakupHelper::breakup(BreakupUnit aBreakupUnit)
+ {
+ if(mrSource.getTextLength())
+ {
+ Primitive2DVector aTempResult;
+ static ::com::sun::star::uno::Reference< ::com::sun::star::i18n::XBreakIterator > xBreakIterator;
+
+ if(!xBreakIterator.is())
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xMSF(::comphelper::getProcessServiceFactory());
+ xBreakIterator.set(xMSF->createInstance(rtl::OUString::createFromAscii("com.sun.star.i18n.BreakIterator")), ::com::sun::star::uno::UNO_QUERY);
+ }
+
+ if(xBreakIterator.is())
+ {
+ const rtl::OUString& rTxt = mrSource.getText();
+ const sal_Int32 nTextLength(mrSource.getTextLength());
+ const ::com::sun::star::lang::Locale& rLocale = mrSource.getLocale();
+ const sal_Int32 nTextPosition(mrSource.getTextPosition());
+ sal_Int32 nCurrent(nTextPosition);
+
+ switch(aBreakupUnit)
+ {
+ case BreakupUnit_character:
+ {
+ sal_Int32 nDone;
+ sal_Int32 nNextCellBreak(xBreakIterator->nextCharacters(rTxt, nTextPosition, rLocale, ::com::sun::star::i18n::CharacterIteratorMode::SKIPCELL, 0, nDone));
+ sal_Int32 a(nTextPosition);
+
+ for(; a < nTextPosition + nTextLength; a++)
+ {
+ if(a == nNextCellBreak)
+ {
+ breakupPortion(aTempResult, nCurrent, a - nCurrent, false);
+ nCurrent = a;
+ nNextCellBreak = xBreakIterator->nextCharacters(rTxt, a, rLocale, ::com::sun::star::i18n::CharacterIteratorMode::SKIPCELL, 1, nDone);
+ }
+ }
+
+ breakupPortion(aTempResult, nCurrent, a - nCurrent, false);
+ break;
+ }
+ case BreakupUnit_word:
+ {
+ ::com::sun::star::i18n::Boundary nNextWordBoundary(xBreakIterator->getWordBoundary(rTxt, nTextPosition, rLocale, ::com::sun::star::i18n::WordType::ANY_WORD, sal_True));
+ sal_Int32 a(nTextPosition);
+
+ for(; a < nTextPosition + nTextLength; a++)
+ {
+ if(a == nNextWordBoundary.endPos)
+ {
+ if(a > nCurrent)
+ {
+ breakupPortion(aTempResult, nCurrent, a - nCurrent, true);
+ }
+
+ nCurrent = a;
+
+ // skip spaces (maybe enhanced with a bool later if needed)
+ {
+ const sal_Int32 nEndOfSpaces(xBreakIterator->endOfCharBlock(rTxt, a, rLocale, ::com::sun::star::i18n::CharType::SPACE_SEPARATOR));
+
+ if(nEndOfSpaces > a)
+ {
+ nCurrent = nEndOfSpaces;
+ }
+ }
+
+ nNextWordBoundary = xBreakIterator->getWordBoundary(rTxt, a + 1, rLocale, ::com::sun::star::i18n::WordType::ANY_WORD, sal_True);
+ }
+ }
+
+ if(a > nCurrent)
+ {
+ breakupPortion(aTempResult, nCurrent, a - nCurrent, true);
+ }
+ break;
+ }
+ case BreakupUnit_sentence:
+ {
+ sal_Int32 nNextSentenceBreak(xBreakIterator->endOfSentence(rTxt, nTextPosition, rLocale));
+ sal_Int32 a(nTextPosition);
+
+ for(; a < nTextPosition + nTextLength; a++)
+ {
+ if(a == nNextSentenceBreak)
+ {
+ breakupPortion(aTempResult, nCurrent, a - nCurrent, false);
+ nCurrent = a;
+ nNextSentenceBreak = xBreakIterator->endOfSentence(rTxt, a + 1, rLocale);
+ }
+ }
+
+ breakupPortion(aTempResult, nCurrent, a - nCurrent, false);
+ break;
+ }
+ }
+ }
+
+ mxResult = Primitive2DVectorToPrimitive2DSequence(aTempResult);
+ }
+ }
+
+ const Primitive2DSequence& TextBreakupHelper::getResult(BreakupUnit aBreakupUnit) const
+ {
+ if(!mxResult.hasElements())
+ {
+ const_cast< TextBreakupHelper* >(this)->breakup(aBreakupUnit);
+ }
+
+ return mxResult;
+ }
+
+ } // end of namespace primitive2d
+} // end of namespace drawinglayer
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx b/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx
index 1c6fca4b8200..ba4fbd4788b1 100644
--- a/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/textdecoratedprimitive2d.cxx
@@ -1,45 +1,33 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/textdecoratedprimitive2d.hxx>
-#include <drawinglayer/primitive2d/textlayoutdevice.hxx>
#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <drawinglayer/attribute/strokeattribute.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
-#include <comphelper/processfactory.hxx>
-#include <com/sun/star/i18n/WordType.hpp>
#include <drawinglayer/primitive2d/texteffectprimitive2d.hxx>
#include <drawinglayer/primitive2d/shadowprimitive2d.hxx>
-#include <com/sun/star/i18n/XBreakIterator.hpp>
#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
#include <drawinglayer/primitive2d/textlineprimitive2d.hxx>
#include <drawinglayer/primitive2d/textstrikeoutprimitive2d.hxx>
+#include <drawinglayer/primitive2d/textbreakuphelper.hxx>
//////////////////////////////////////////////////////////////////////////////
@@ -167,232 +155,47 @@ namespace drawinglayer
// TODO: Handle Font Emphasis Above/Below
}
- void TextDecoratedPortionPrimitive2D::impCorrectTextBoundary(::com::sun::star::i18n::Boundary& rNextWordBoundary) const
- {
- // truncate aNextWordBoundary to min/max possible values. This is necessary since the word start may be
- // before/after getTextPosition() when a long string is the content and getTextPosition()
- // is right inside a word. Same for end.
- const sal_Int32 aMinPos(static_cast< sal_Int32 >(getTextPosition()));
- const sal_Int32 aMaxPos(aMinPos + static_cast< sal_Int32 >(getTextLength()));
-
- if(rNextWordBoundary.startPos < aMinPos)
- {
- rNextWordBoundary.startPos = aMinPos;
- }
- else if(rNextWordBoundary.startPos > aMaxPos)
- {
- rNextWordBoundary.startPos = aMaxPos;
- }
-
- if(rNextWordBoundary.endPos < aMinPos)
- {
- rNextWordBoundary.endPos = aMinPos;
- }
- else if(rNextWordBoundary.endPos > aMaxPos)
- {
- rNextWordBoundary.endPos = aMaxPos;
- }
- }
-
- void TextDecoratedPortionPrimitive2D::impSplitSingleWords(
- std::vector< Primitive2DReference >& rTarget,
- basegfx::tools::B2DHomMatrixBufferedOnDemandDecompose& rDecTrans) const
+ Primitive2DSequence TextDecoratedPortionPrimitive2D::create2DDecomposition(const geometry::ViewInformation2D& /*rViewInformation*/) const
{
- // break iterator support
- // made static so it only needs to be fetched once, even with many single
- // constructed VclMetafileProcessor2D. It's still incarnated on demand,
- // but exists for OOo runtime now by purpose.
- static ::com::sun::star::uno::Reference< ::com::sun::star::i18n::XBreakIterator > xLocalBreakIterator;
-
- if(!xLocalBreakIterator.is())
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xMSF(::comphelper::getProcessServiceFactory());
- xLocalBreakIterator.set(xMSF->createInstance("com.sun.star.i18n.BreakIterator"), ::com::sun::star::uno::UNO_QUERY);
- }
-
- if(xLocalBreakIterator.is() && getTextLength())
+ if(getWordLineMode())
{
- // init word iterator, get first word and truncate to possibilities
- ::com::sun::star::i18n::Boundary aNextWordBoundary(xLocalBreakIterator->getWordBoundary(
- getText(), getTextPosition(), getLocale(), ::com::sun::star::i18n::WordType::ANYWORD_IGNOREWHITESPACES, sal_True));
-
- if(aNextWordBoundary.endPos == getTextPosition())
- {
- // backward hit, force next word
- aNextWordBoundary = xLocalBreakIterator->getWordBoundary(
- getText(), getTextPosition() + 1, getLocale(), ::com::sun::star::i18n::WordType::ANYWORD_IGNOREWHITESPACES, sal_True);
- }
+ // support for single word mode; split to single word primitives
+ // using TextBreakupHelper
+ const TextBreakupHelper aTextBreakupHelper(*this);
+ const Primitive2DSequence aBroken(aTextBreakupHelper.getResult(BreakupUnit_word));
- impCorrectTextBoundary(aNextWordBoundary);
-
- // prepare new font attributes WITHOUT outline
- const attribute::FontAttribute aNewFontAttribute(
- getFontAttribute().getFamilyName(),
- getFontAttribute().getStyleName(),
- getFontAttribute().getWeight(),
- getFontAttribute().getSymbol(),
- getFontAttribute().getVertical(),
- getFontAttribute().getItalic(),
- getFontAttribute().getMonospaced(),
- false, // no outline anymore, handled locally
- getFontAttribute().getRTL(),
- getFontAttribute().getBiDiStrong());
-
- if(aNextWordBoundary.startPos == getTextPosition() && aNextWordBoundary.endPos == getTextLength())
+ if(aBroken.hasElements())
{
- // it IS only a single word, handle as one word
- impCreateGeometryContent(rTarget, rDecTrans, getText(), getTextPosition(), getTextLength(), getDXArray(), aNewFontAttribute);
+ // was indeed split to several words, use as result
+ return aBroken;
}
else
{
- // prepare TextLayouter
- const bool bNoDXArray(getDXArray().empty());
- TextLayouterDevice aTextLayouter;
-
- if(bNoDXArray)
- {
- // ..but only completely when no DXArray
- aTextLayouter.setFontAttribute(
- getFontAttribute(),
- rDecTrans.getScale().getX(),
- rDecTrans.getScale().getY(),
- getLocale());
- }
-
- // do iterate over single words
- while(aNextWordBoundary.startPos != aNextWordBoundary.endPos)
- {
- // prepare values for new portion
- const xub_StrLen nNewTextStart(static_cast< xub_StrLen >(aNextWordBoundary.startPos));
- const xub_StrLen nNewTextEnd(static_cast< xub_StrLen >(aNextWordBoundary.endPos));
-
- // prepare transform for the single word
- basegfx::B2DHomMatrix aNewTransform;
- ::std::vector< double > aNewDXArray;
- const bool bNewStartIsNotOldStart(nNewTextStart > getTextPosition());
-
- if(!bNoDXArray)
- {
- // prepare new DXArray for the single word
- aNewDXArray = ::std::vector< double >(
- getDXArray().begin() + static_cast< sal_uInt32 >(nNewTextStart - getTextPosition()),
- getDXArray().begin() + static_cast< sal_uInt32 >(nNewTextEnd - getTextPosition()));
- }
-
- if(bNewStartIsNotOldStart)
- {
- // needs to be moved to a new start position
- double fOffset(0.0);
-
- if(bNoDXArray)
- {
- // evaluate using TextLayouter
- fOffset = aTextLayouter.getTextWidth(getText(), getTextPosition(), nNewTextStart);
- }
- else
- {
- // get from DXArray
- const sal_uInt32 nIndex(static_cast< sal_uInt32 >(nNewTextStart - getTextPosition()));
- fOffset = getDXArray()[nIndex - 1];
- }
-
- // need offset without FontScale for building the new transformation. The
- // new transformation will be multiplied with the current text transformation
- // so FontScale would be double
- double fOffsetNoScale(fOffset);
- const double fFontScaleX(rDecTrans.getScale().getX());
-
- if(!basegfx::fTools::equal(fFontScaleX, 1.0)
- && !basegfx::fTools::equalZero(fFontScaleX))
- {
- fOffsetNoScale /= fFontScaleX;
- }
-
- // apply needed offset to transformation
- aNewTransform.translate(fOffsetNoScale, 0.0);
-
- if(!bNoDXArray)
- {
- // DXArray values need to be corrected with the offset, too. Here,
- // take the scaled offset since the DXArray is scaled
- const sal_uInt32 nArraySize(aNewDXArray.size());
-
- for(sal_uInt32 a(0); a < nArraySize; a++)
- {
- aNewDXArray[a] -= fOffset;
- }
- }
- }
-
- // add text transformation to new transformation
- aNewTransform *= rDecTrans.getB2DHomMatrix();
-
- // create geometry content for the single word. Do not forget
- // to use the new transformation
- basegfx::tools::B2DHomMatrixBufferedOnDemandDecompose aDecTrans(aNewTransform);
-
- impCreateGeometryContent(rTarget, aDecTrans, getText(), nNewTextStart,
- nNewTextEnd - nNewTextStart, aNewDXArray, aNewFontAttribute);
-
- if(aNextWordBoundary.endPos >= getTextPosition() + getTextLength())
- {
- // end reached
- aNextWordBoundary.startPos = aNextWordBoundary.endPos;
- }
- else
- {
- // get new word portion
- const sal_Int32 nLastEndPos(aNextWordBoundary.endPos);
-
- aNextWordBoundary = xLocalBreakIterator->getWordBoundary(
- getText(), aNextWordBoundary.endPos, getLocale(),
- ::com::sun::star::i18n::WordType::ANYWORD_IGNOREWHITESPACES, sal_True);
-
- if(nLastEndPos == aNextWordBoundary.endPos)
- {
- // backward hit, force next word
- aNextWordBoundary = xLocalBreakIterator->getWordBoundary(
- getText(), nLastEndPos + 1, getLocale(),
- ::com::sun::star::i18n::WordType::ANYWORD_IGNOREWHITESPACES, sal_True);
- }
-
- impCorrectTextBoundary(aNextWordBoundary);
- }
- }
+ // no split, was already a single word. Continue to
+ // decompse local entity
}
}
- }
-
- Primitive2DSequence TextDecoratedPortionPrimitive2D::create2DDecomposition(const geometry::ViewInformation2D& /*rViewInformation*/) const
- {
std::vector< Primitive2DReference > aNewPrimitives;
basegfx::tools::B2DHomMatrixBufferedOnDemandDecompose aDecTrans(getTextTransform());
Primitive2DSequence aRetval;
// create basic geometry such as SimpleTextPrimitive, Overline, Underline,
// Strikeout, etc...
- if(getWordLineMode())
- {
- // support for single word mode
- impSplitSingleWords(aNewPrimitives, aDecTrans);
- }
- else
- {
- // prepare new font attributes WITHOUT outline
- const attribute::FontAttribute aNewFontAttribute(
- getFontAttribute().getFamilyName(),
- getFontAttribute().getStyleName(),
- getFontAttribute().getWeight(),
- getFontAttribute().getSymbol(),
- getFontAttribute().getVertical(),
- getFontAttribute().getItalic(),
- false, // no outline anymore, handled locally
- getFontAttribute().getRTL(),
- getFontAttribute().getBiDiStrong());
-
- // handle as one word
- impCreateGeometryContent(aNewPrimitives, aDecTrans, getText(), getTextPosition(), getTextLength(), getDXArray(), aNewFontAttribute);
- }
+ // prepare new font attributes WITHOUT outline
+ const attribute::FontAttribute aNewFontAttribute(
+ getFontAttribute().getFamilyName(),
+ getFontAttribute().getStyleName(),
+ getFontAttribute().getWeight(),
+ getFontAttribute().getSymbol(),
+ getFontAttribute().getVertical(),
+ getFontAttribute().getItalic(),
+ getFontAttribute().getMonospaced(),
+ false, // no outline anymore, handled locally
+ getFontAttribute().getRTL(),
+ getFontAttribute().getBiDiStrong());
+
+ // handle as one word
+ impCreateGeometryContent(aNewPrimitives, aDecTrans, getText(), getTextPosition(), getTextLength(), getDXArray(), aNewFontAttribute);
// convert to Primitive2DSequence
const sal_uInt32 nMemberCount(aNewPrimitives.size());
@@ -545,6 +348,16 @@ namespace drawinglayer
{
}
+ bool TextDecoratedPortionPrimitive2D::decoratedIsNeeded() const
+ {
+ return (TEXT_LINE_NONE != getFontOverline()
+ || TEXT_LINE_NONE != getFontUnderline()
+ || TEXT_STRIKEOUT_NONE != getTextStrikeout()
+ || TEXT_EMPHASISMARK_NONE != getTextEmphasisMark()
+ || TEXT_RELIEF_NONE != getTextRelief()
+ || getShadow());
+ }
+
bool TextDecoratedPortionPrimitive2D::operator==(const BasePrimitive2D& rPrimitive) const
{
if(TextSimplePortionPrimitive2D::operator==(rPrimitive))
@@ -573,15 +386,7 @@ namespace drawinglayer
// inking area, so add them if needed
basegfx::B2DRange TextDecoratedPortionPrimitive2D::getB2DRange(const geometry::ViewInformation2D& rViewInformation) const
{
- const bool bDecoratedIsNeeded(
- TEXT_LINE_NONE != getFontOverline()
- || TEXT_LINE_NONE != getFontUnderline()
- || TEXT_STRIKEOUT_NONE != getTextStrikeout()
- || TEXT_EMPHASISMARK_NONE != getTextEmphasisMark()
- || TEXT_RELIEF_NONE != getTextRelief()
- || getShadow());
-
- if(bDecoratedIsNeeded)
+ if(decoratedIsNeeded())
{
// decoration is used, fallback to BufferedDecompositionPrimitive2D::getB2DRange which uses
// the own local decomposition for computation and thus creates all necessary
diff --git a/drawinglayer/source/primitive2d/textlayoutdevice.cxx b/drawinglayer/source/primitive2d/textlayoutdevice.cxx
index 01379dd4bca9..4e1e87319931 100644
--- a/drawinglayer/source/primitive2d/textlayoutdevice.cxx
+++ b/drawinglayer/source/primitive2d/textlayoutdevice.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/textlayoutdevice.hxx>
#include <comphelper/processfactory.hxx>
diff --git a/drawinglayer/source/primitive2d/textprimitive2d.cxx b/drawinglayer/source/primitive2d/textprimitive2d.cxx
index 64e3ddd32b02..444df44f44d4 100644
--- a/drawinglayer/source/primitive2d/textprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/textprimitive2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive2d/textprimitive2d.hxx>
#include <drawinglayer/primitive2d/textlayoutdevice.hxx>
diff --git a/drawinglayer/source/primitive3d/polygonprimitive3d.cxx b/drawinglayer/source/primitive3d/polygonprimitive3d.cxx
index d61062a3d3ad..9e5a3e781baa 100644
--- a/drawinglayer/source/primitive3d/polygonprimitive3d.cxx
+++ b/drawinglayer/source/primitive3d/polygonprimitive3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive3d/polygonprimitive3d.hxx>
#include <basegfx/polygon/b3dpolygontools.hxx>
@@ -108,11 +99,18 @@ namespace drawinglayer
// create fat line data
const double fRadius(getLineAttribute().getWidth() / 2.0);
const basegfx::B2DLineJoin aLineJoin(getLineAttribute().getLineJoin());
+ const com::sun::star::drawing::LineCap aLineCap(getLineAttribute().getLineCap());
for(sal_uInt32 a(0L); a < aHairLinePolyPolygon.count(); a++)
{
// create tube primitives
- const Primitive3DReference xRef(new PolygonTubePrimitive3D(aHairLinePolyPolygon.getB3DPolygon(a), getLineAttribute().getColor(), fRadius, aLineJoin));
+ const Primitive3DReference xRef(
+ new PolygonTubePrimitive3D(
+ aHairLinePolyPolygon.getB3DPolygon(a),
+ getLineAttribute().getColor(),
+ fRadius,
+ aLineJoin,
+ aLineCap));
aRetval[a] = xRef;
}
}
diff --git a/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx b/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx
index 1f690c5d30a0..77487db04db8 100644
--- a/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx
+++ b/drawinglayer/source/primitive3d/polygontubeprimitive3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive3d/polygontubeprimitive3d.hxx>
#include <drawinglayer/attribute/materialattribute3d.hxx>
@@ -158,6 +149,76 @@ namespace drawinglayer
return aLineCapList;
}
+ Primitive3DSequence getLineCapRoundSegments(
+ sal_uInt32 nSegments,
+ const attribute::MaterialAttribute3D& rMaterial)
+ {
+ // static data for buffered tube primitives
+ static Primitive3DSequence aLineCapRoundList;
+ static sal_uInt32 nLineCapRoundSegments(0);
+ static attribute::MaterialAttribute3D aLineMaterial;
+
+ // may exclusively change static data, use mutex
+ ::osl::Mutex m_mutex;
+
+ if(nSegments != nLineCapRoundSegments || !(rMaterial == aLineMaterial))
+ {
+ nLineCapRoundSegments = nSegments;
+ aLineMaterial = rMaterial;
+ aLineCapRoundList = Primitive3DSequence();
+ }
+
+ if(!aLineCapRoundList.hasElements() && nLineCapRoundSegments)
+ {
+ // calculate new horizontal segments
+ sal_uInt32 nVerSeg(nSegments / 2);
+
+ if(nVerSeg < 1)
+ {
+ nVerSeg = 1;
+ }
+
+ // create half-sphere; upper half of unit sphere
+ basegfx::B3DPolyPolygon aSphere(
+ basegfx::tools::createUnitSphereFillPolyPolygon(
+ nSegments,
+ nVerSeg,
+ true,
+ F_PI2, 0.0,
+ 0.0, F_2PI));
+ const sal_uInt32 nCount(aSphere.count());
+
+ if(nCount)
+ {
+ // rotate to have sphere cap orientned to negative X-Axis; do not
+ // forget to transform normals, too
+ basegfx::B3DHomMatrix aSphereTrans;
+
+ aSphereTrans.rotate(0.0, 0.0, F_PI2);
+ aSphere.transform(aSphereTrans);
+ aSphere.transformNormals(aSphereTrans);
+
+ // realloc for primitives and create based on polygon snippets
+ aLineCapRoundList.realloc(nCount);
+
+ for(sal_uInt32 a(0); a < nCount; a++)
+ {
+ const basegfx::B3DPolygon aPartPolygon(aSphere.getB3DPolygon(a));
+ const basegfx::B3DPolyPolygon aPartPolyPolygon(aPartPolygon);
+
+ // need to create one primitive per Polygon since the primitive
+ // is for planar PolyPolygons which is definitely not the case here
+ aLineCapRoundList[a] = new PolyPolygonMaterialPrimitive3D(
+ aPartPolyPolygon,
+ rMaterial,
+ false);
+ }
+ }
+ }
+
+ return aLineCapRoundList;
+ }
+
Primitive3DSequence getLineJoinSegments(
sal_uInt32 nSegments,
const attribute::MaterialAttribute3D& rMaterial,
@@ -175,7 +236,7 @@ namespace drawinglayer
if(basegfx::B2DLINEJOIN_ROUND == aLineJoin)
{
// calculate new horizontal segments
- const sal_uInt32 nHorSeg((sal_uInt32)((fAngle / F_2PI) * (double)nSegments));
+ const sal_uInt32 nHorSeg(basegfx::fround((fAngle / F_2PI) * (double)nSegments));
if(nHorSeg)
{
@@ -412,40 +473,88 @@ namespace drawinglayer
const sal_uInt32 nPointCount(getB3DPolygon().count());
std::vector< BasePrimitive3D* > aResultVector;
- if(0L != nPointCount)
+ if(nPointCount)
{
if(basegfx::fTools::more(getRadius(), 0.0))
{
const attribute::MaterialAttribute3D aMaterial(getBColor());
- static sal_uInt32 nSegments(8L); // default for 3d line segments, for more quality just raise this value (in even steps)
+ static sal_uInt32 nSegments(8); // default for 3d line segments, for more quality just raise this value (in even steps)
const bool bClosed(getB3DPolygon().isClosed());
const bool bNoLineJoin(basegfx::B2DLINEJOIN_NONE == getLineJoin());
- const sal_uInt32 nLoopCount(bClosed ? nPointCount : nPointCount - 1L);
- basegfx::B3DPoint aLast(getB3DPolygon().getB3DPoint(nPointCount - 1L));
- basegfx::B3DPoint aCurr(getB3DPolygon().getB3DPoint(0L));
+ const sal_uInt32 nLoopCount(bClosed ? nPointCount : nPointCount - 1);
+ basegfx::B3DPoint aLast(getB3DPolygon().getB3DPoint(nPointCount - 1));
+ basegfx::B3DPoint aCurr(getB3DPolygon().getB3DPoint(0));
- for(sal_uInt32 a(0L); a < nLoopCount; a++)
+ for(sal_uInt32 a(0); a < nLoopCount; a++)
{
// get next data
- const basegfx::B3DPoint aNext(getB3DPolygon().getB3DPoint((a + 1L) % nPointCount));
+ const basegfx::B3DPoint aNext(getB3DPolygon().getB3DPoint((a + 1) % nPointCount));
const basegfx::B3DVector aForw(aNext - aCurr);
const double fForwLen(aForw.getLength());
if(basegfx::fTools::more(fForwLen, 0.0))
{
+ // find out if linecap is active
+ const bool bFirst(!a);
+ const bool bLast(a + 1 == nLoopCount);
+ const bool bLineCapPossible(!bClosed && (bFirst || bLast));
+ const bool bLineCapRound(bLineCapPossible && com::sun::star::drawing::LineCap_ROUND == getLineCap());
+ const bool bLineCapSquare(bLineCapPossible && com::sun::star::drawing::LineCap_SQUARE == getLineCap());
+
// get rotation from vector, this describes rotation from (1, 0, 0) to aForw
basegfx::B3DHomMatrix aRotVector(getRotationFromVector(aForw));
- // create default transformation with scale and rotate
- basegfx::B3DHomMatrix aVectorTrans;
- aVectorTrans.scale(fForwLen, getRadius(), getRadius());
- aVectorTrans *= aRotVector;
- aVectorTrans.translate(aCurr.getX(), aCurr.getY(), aCurr.getZ());
+ // prepare transformations for tube and cap
+ basegfx::B3DHomMatrix aTubeTrans;
+ basegfx::B3DHomMatrix aCapTrans;
- if(bNoLineJoin || (!bClosed && !a))
+ // cap gets radius size
+ aCapTrans.scale(getRadius(), getRadius(), getRadius());
+
+ if(bLineCapSquare)
+ {
+ // when square line cap just prolong line segment in X, maybe 2 x radius when
+ // first and last (simple line segment)
+ const double fExtraLength(bFirst && bLast ? getRadius() * 2.0 : getRadius());
+
+ aTubeTrans.scale(fForwLen + fExtraLength, getRadius(), getRadius());
+
+ if(bFirst)
+ {
+ // correct start positions for tube and cap when first and square prolonged
+ aTubeTrans.translate(-getRadius(), 0.0, 0.0);
+ aCapTrans.translate(-getRadius(), 0.0, 0.0);
+ }
+ }
+ else
+ {
+ // normal tube size
+ aTubeTrans.scale(fForwLen, getRadius(), getRadius());
+ }
+
+ // rotate and translate tube and cap
+ aTubeTrans *= aRotVector;
+ aTubeTrans.translate(aCurr.getX(), aCurr.getY(), aCurr.getZ());
+ aCapTrans *= aRotVector;
+ aCapTrans.translate(aCurr.getX(), aCurr.getY(), aCurr.getZ());
+
+ if(bNoLineJoin || (!bClosed && bFirst))
{
// line start edge, build transformed primitiveVector3D
- TransformPrimitive3D* pNewTransformedA = new TransformPrimitive3D(aVectorTrans, getLineCapSegments(nSegments, aMaterial));
+ Primitive3DSequence aSequence;
+
+ if(bLineCapRound && bFirst)
+ {
+ // LineCapRound used
+ aSequence = getLineCapRoundSegments(nSegments, aMaterial);
+ }
+ else
+ {
+ // simple closing cap
+ aSequence = getLineCapSegments(nSegments, aMaterial);
+ }
+
+ TransformPrimitive3D* pNewTransformedA = new TransformPrimitive3D(aCapTrans, aSequence);
aResultVector.push_back(pNewTransformedA);
}
else
@@ -457,7 +566,14 @@ namespace drawinglayer
{
// line connect non-parallel, aBack, aForw, use getLineJoin()
const double fAngle(acos(aBack.scalar(aForw) / (fForwLen * aBack.getLength()))); // 0.0 .. F_PI2
- Primitive3DSequence aNewList(getLineJoinSegments(nSegments, aMaterial, fAngle, getDegreeStepWidth(), getMiterMinimumAngle(), getLineJoin()));
+ Primitive3DSequence aNewList(
+ getLineJoinSegments(
+ nSegments,
+ aMaterial,
+ fAngle,
+ getDegreeStepWidth(),
+ getMiterMinimumAngle(),
+ getLineJoin()));
// calculate transformation. First, get angle in YZ between nForw projected on (1, 0, 0) and nBack
basegfx::B3DHomMatrix aInvRotVector(aRotVector);
@@ -475,28 +591,61 @@ namespace drawinglayer
aSphereTrans.translate(aCurr.getX(), aCurr.getY(), aCurr.getZ());
// line start edge, build transformed primitiveVector3D
- TransformPrimitive3D* pNewTransformedB = new TransformPrimitive3D(aSphereTrans, aNewList);
- aResultVector.push_back(pNewTransformedB);
+ aResultVector.push_back(
+ new TransformPrimitive3D(
+ aSphereTrans,
+ aNewList));
}
}
// create line segments, build transformed primitiveVector3D
- TransformPrimitive3D* pNewTransformedC = new TransformPrimitive3D(aVectorTrans, getLineTubeSegments(nSegments, aMaterial));
- aResultVector.push_back(pNewTransformedC);
+ aResultVector.push_back(
+ new TransformPrimitive3D(
+ aTubeTrans,
+ getLineTubeSegments(nSegments, aMaterial)));
- if(bNoLineJoin || (!bClosed && ((a + 1L) == nLoopCount)))
+ if(bNoLineJoin || (!bClosed && bLast))
{
- // line end edge, first rotate (mirror) and translate, then use use aRotVector
- basegfx::B3DHomMatrix aBackTrans;
- aBackTrans.rotate(0.0, F_PI, 0.0);
- aBackTrans.translate(1.0, 0.0, 0.0);
- aBackTrans.scale(fForwLen, getRadius(), getRadius());
- aBackTrans *= aRotVector;
- aBackTrans.translate(aCurr.getX(), aCurr.getY(), aCurr.getZ());
-
- // line end edge, build transformed primitiveVector3D
- TransformPrimitive3D* pNewTransformedD = new TransformPrimitive3D(aBackTrans, getLineCapSegments(nSegments, aMaterial));
- aResultVector.push_back(pNewTransformedD);
+ // line end edge
+ basegfx::B3DHomMatrix aBackCapTrans;
+
+ // Mirror (line end) and radius scale
+ aBackCapTrans.rotate(0.0, F_PI, 0.0);
+ aBackCapTrans.scale(getRadius(), getRadius(), getRadius());
+
+ if(bLineCapSquare && bLast)
+ {
+ // correct position when square and prolonged
+ aBackCapTrans.translate(fForwLen + getRadius(), 0.0, 0.0);
+ }
+ else
+ {
+ // standard position
+ aBackCapTrans.translate(fForwLen, 0.0, 0.0);
+ }
+
+ // rotate and translate to destination
+ aBackCapTrans *= aRotVector;
+ aBackCapTrans.translate(aCurr.getX(), aCurr.getY(), aCurr.getZ());
+
+ // get primitiveVector3D
+ Primitive3DSequence aSequence;
+
+ if(bLineCapRound && bLast)
+ {
+ // LineCapRound used
+ aSequence = getLineCapRoundSegments(nSegments, aMaterial);
+ }
+ else
+ {
+ // simple closing cap
+ aSequence = getLineCapSegments(nSegments, aMaterial);
+ }
+
+ aResultVector.push_back(
+ new TransformPrimitive3D(
+ aBackCapTrans,
+ aSequence));
}
}
@@ -528,6 +677,7 @@ namespace drawinglayer
const basegfx::B3DPolygon& rPolygon,
const basegfx::BColor& rBColor,
double fRadius, basegfx::B2DLineJoin aLineJoin,
+ com::sun::star::drawing::LineCap aLineCap,
double fDegreeStepWidth,
double fMiterMinimumAngle)
: PolygonHairlinePrimitive3D(rPolygon, rBColor),
@@ -535,7 +685,8 @@ namespace drawinglayer
mfRadius(fRadius),
mfDegreeStepWidth(fDegreeStepWidth),
mfMiterMinimumAngle(fMiterMinimumAngle),
- maLineJoin(aLineJoin)
+ maLineJoin(aLineJoin),
+ maLineCap(aLineCap)
{
}
@@ -548,7 +699,8 @@ namespace drawinglayer
return (getRadius() == rCompare.getRadius()
&& getDegreeStepWidth() == rCompare.getDegreeStepWidth()
&& getMiterMinimumAngle() == rCompare.getMiterMinimumAngle()
- && getLineJoin() == rCompare.getLineJoin());
+ && getLineJoin() == rCompare.getLineJoin()
+ && getLineCap() == rCompare.getLineCap());
}
return false;
diff --git a/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx b/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx
index 4a59bc9ef873..108445052843 100644
--- a/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx
+++ b/drawinglayer/source/primitive3d/sdrdecompositiontools3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive3d/sdrdecompositiontools3d.hxx>
#include <basegfx/polygon/b3dpolygon.hxx>
@@ -152,7 +143,7 @@ namespace drawinglayer
aScaledPolyPolygon.transform(rObjectTransform);
// create line and stroke attribute
- const attribute::LineAttribute aLineAttribute(rLine.getColor(), rLine.getWidth(), rLine.getJoin());
+ const attribute::LineAttribute aLineAttribute(rLine.getColor(), rLine.getWidth(), rLine.getJoin(), rLine.getCap());
const attribute::StrokeAttribute aStrokeAttribute(rLine.getDotDashArray(), rLine.getFullDotDashLen());
// create primitives
diff --git a/drawinglayer/source/primitive3d/sdrextrudelathetools3d.cxx b/drawinglayer/source/primitive3d/sdrextrudelathetools3d.cxx
index 5c36771cee46..329faf91c9d8 100644
--- a/drawinglayer/source/primitive3d/sdrextrudelathetools3d.cxx
+++ b/drawinglayer/source/primitive3d/sdrextrudelathetools3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive3d/sdrextrudelathetools3d.hxx>
#include <basegfx/polygon/b2dpolypolygon.hxx>
@@ -118,14 +109,14 @@ namespace
bool bCreateTextureCoordinates)
{
OSL_ENSURE(rPolA.count() == rPolB.count(), "impAddInBetweenFill: unequally sized polygons (!)");
- const sal_uInt32 nPolygonCount(rPolA.count());
+ const sal_uInt32 nPolygonCount(::std::min(rPolA.count(), rPolB.count()));
for(sal_uInt32 a(0L); a < nPolygonCount; a++)
{
const basegfx::B3DPolygon aSubA(rPolA.getB3DPolygon(a));
const basegfx::B3DPolygon aSubB(rPolB.getB3DPolygon(a));
OSL_ENSURE(aSubA.count() == aSubB.count(), "impAddInBetweenFill: unequally sized polygons (!)");
- const sal_uInt32 nPointCount(aSubA.count());
+ const sal_uInt32 nPointCount(::std::min(aSubA.count(), aSubB.count()));
if(nPointCount)
{
@@ -215,13 +206,14 @@ namespace
bool bSmoothHorizontalNormals)
{
OSL_ENSURE(rPolA.count() == rPolB.count(), "sdrExtrudePrimitive3D: unequally sized polygons (!)");
+ const sal_uInt32 nPolygonCount(::std::min(rPolA.count(), rPolB.count()));
- for(sal_uInt32 a(0L); a < rPolA.count(); a++)
+ for(sal_uInt32 a(0L); a < nPolygonCount; a++)
{
basegfx::B3DPolygon aSubA(rPolA.getB3DPolygon(a));
basegfx::B3DPolygon aSubB(rPolB.getB3DPolygon(a));
OSL_ENSURE(aSubA.count() == aSubB.count(), "sdrExtrudePrimitive3D: unequally sized polygons (!)");
- const sal_uInt32 nPointCount(aSubA.count());
+ const sal_uInt32 nPointCount(::std::min(aSubA.count(), aSubB.count()));
if(nPointCount)
{
@@ -298,13 +290,14 @@ namespace
{
const double fWeightB(1.0 - fWeightA);
OSL_ENSURE(rPolA.count() == rPolB.count(), "sdrExtrudePrimitive3D: unequally sized polygons (!)");
+ const sal_uInt32 nPolygonCount(::std::min(rPolA.count(), rPolB.count()));
- for(sal_uInt32 a(0L); a < rPolA.count(); a++)
+ for(sal_uInt32 a(0L); a < nPolygonCount; a++)
{
basegfx::B3DPolygon aSubA(rPolA.getB3DPolygon(a));
const basegfx::B3DPolygon aSubB(rPolB.getB3DPolygon(a));
OSL_ENSURE(aSubA.count() == aSubB.count(), "sdrExtrudePrimitive3D: unequally sized polygons (!)");
- const sal_uInt32 nPointCount(aSubA.count());
+ const sal_uInt32 nPointCount(::std::min(aSubA.count(), aSubB.count()));
for(sal_uInt32 b(0L); b < nPointCount; b++)
{
@@ -541,11 +534,18 @@ namespace drawinglayer
for(sal_uInt32 d(0); d < nNumSlices; d++)
{
- OSL_ENSURE(nSlideSubPolygonCount == rSliceVector[d].getB3DPolyPolygon().count(),
- "Slice PolyPolygon with different Polygon count (!)");
- OSL_ENSURE(nSubPolygonPointCount == rSliceVector[d].getB3DPolyPolygon().getB3DPolygon(b).count(),
- "Slice Polygon with different point count (!)");
- aNew.append(rSliceVector[d].getB3DPolyPolygon().getB3DPolygon(b).getB3DPoint(c));
+ const bool bSamePolygonCount(nSlideSubPolygonCount == rSliceVector[d].getB3DPolyPolygon().count());
+ const bool bSamePointCount(nSubPolygonPointCount == rSliceVector[d].getB3DPolyPolygon().getB3DPolygon(b).count());
+
+ if(bSamePolygonCount && bSamePointCount)
+ {
+ aNew.append(rSliceVector[d].getB3DPolyPolygon().getB3DPolygon(b).getB3DPoint(c));
+ }
+ else
+ {
+ OSL_ENSURE(bSamePolygonCount, "Slice PolyPolygon with different Polygon count (!)");
+ OSL_ENSURE(bSamePointCount, "Slice Polygon with different point count (!)");
+ }
}
aNew.setClosed(bCloseHorLines);
diff --git a/drawinglayer/source/primitive3d/sdrextrudeprimitive3d.cxx b/drawinglayer/source/primitive3d/sdrextrudeprimitive3d.cxx
index b315f15228f8..a488ad06dc48 100644
--- a/drawinglayer/source/primitive3d/sdrextrudeprimitive3d.cxx
+++ b/drawinglayer/source/primitive3d/sdrextrudeprimitive3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive3d/sdrextrudeprimitive3d.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
@@ -370,7 +361,8 @@ namespace drawinglayer
{
// prepare the polygon. No double points, correct orientations and a correct
// outmost polygon are needed
- maCorrectedPolyPolygon = getPolyPolygon();
+ // Also important: subdivide here to ensure equal point count for all slices (!)
+ maCorrectedPolyPolygon = basegfx::tools::adaptiveSubdivideByAngle(getPolyPolygon());
maCorrectedPolyPolygon.removeDoublePoints();
maCorrectedPolyPolygon = basegfx::tools::correctOrientations(maCorrectedPolyPolygon);
maCorrectedPolyPolygon = basegfx::tools::correctOutmostPolygon(maCorrectedPolyPolygon);
diff --git a/drawinglayer/source/primitive3d/sdrlatheprimitive3d.cxx b/drawinglayer/source/primitive3d/sdrlatheprimitive3d.cxx
index 7f84ca614239..78825bdf35d7 100644
--- a/drawinglayer/source/primitive3d/sdrlatheprimitive3d.cxx
+++ b/drawinglayer/source/primitive3d/sdrlatheprimitive3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive3d/sdrlatheprimitive3d.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
@@ -215,6 +206,7 @@ namespace drawinglayer
{
// prepare the polygon. No double points, correct orientations and a correct
// outmost polygon are needed
+ // Also important: subdivide here to ensure equal point count for all slices (!)
maCorrectedPolyPolygon = basegfx::tools::adaptiveSubdivideByAngle(getPolyPolygon());
maCorrectedPolyPolygon.removeDoublePoints();
maCorrectedPolyPolygon = basegfx::tools::correctOrientations(maCorrectedPolyPolygon);
diff --git a/drawinglayer/source/primitive3d/sdrprimitive3d.cxx b/drawinglayer/source/primitive3d/sdrprimitive3d.cxx
index fdff02157f63..4bfd5719c6fb 100644
--- a/drawinglayer/source/primitive3d/sdrprimitive3d.cxx
+++ b/drawinglayer/source/primitive3d/sdrprimitive3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/primitive3d/sdrprimitive3d.hxx>
#include <basegfx/polygon/b3dpolypolygontools.hxx>
diff --git a/drawinglayer/source/processor2d/canvasprocessor.cxx b/drawinglayer/source/processor2d/canvasprocessor.cxx
index 9f7e8c15eafc..b8d260aa941e 100644
--- a/drawinglayer/source/processor2d/canvasprocessor.cxx
+++ b/drawinglayer/source/processor2d/canvasprocessor.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor2d/canvasprocessor.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
@@ -57,12 +48,11 @@
#include <com/sun/star/rendering/CompositeOperation.hpp>
#include <com/sun/star/rendering/StrokeAttributes.hpp>
#include <com/sun/star/rendering/PathJoinType.hpp>
+#include <com/sun/star/rendering/PathCapType.hpp>
#include <drawinglayer/primitive2d/fillbitmapprimitive2d.hxx>
#include <com/sun/star/rendering/TexturingMode.hpp>
#include <drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx>
#include <vclhelperbufferdevice.hxx>
-#include <drawinglayer/primitive2d/chartprimitive2d.hxx>
-#include <helperchartrenderer.hxx>
#include <drawinglayer/primitive2d/wrongspellprimitive2d.hxx>
#include <helperwrongspellrenderer.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
@@ -560,6 +550,22 @@ namespace drawinglayer
break;
}
+ switch(rLineAttribute.getLineCap())
+ {
+ case com::sun::star::drawing::LineCap_ROUND:
+ aStrokeAttribute.StartCapType = rendering::PathCapType::ROUND;
+ aStrokeAttribute.EndCapType = rendering::PathCapType::ROUND;
+ break;
+ case com::sun::star::drawing::LineCap_SQUARE:
+ aStrokeAttribute.StartCapType = rendering::PathCapType::SQUARE;
+ aStrokeAttribute.EndCapType = rendering::PathCapType::SQUARE;
+ break;
+ default: // com::sun::star::drawing::LineCap_BUTT
+ aStrokeAttribute.StartCapType = rendering::PathCapType::BUTT;
+ aStrokeAttribute.EndCapType = rendering::PathCapType::BUTT;
+ break;
+ }
+
const basegfx::BColor aHairlineColor(maBColorModifierStack.getModifiedColor(rLineAttribute.getColor()));
maRenderState.DeviceColor = aHairlineColor.colorToDoubleSequence(mxCanvas->getDevice());
canvas::tools::setRenderStateTransform(maRenderState, getViewInformation2D().getObjectTransformation());
@@ -896,26 +902,6 @@ namespace drawinglayer
break;
}
- case PRIMITIVE2D_ID_CHARTPRIMITIVE2D :
- {
- // chart primitive in canvas renderer; restore original DrawMode during call
- // since the evtl. used ChartPrettyPainter will use the MapMode
- const primitive2d::ChartPrimitive2D& rChartPrimitive = static_cast< const primitive2d::ChartPrimitive2D& >(rCandidate);
- mpOutputDevice->Push(PUSH_MAPMODE);
- mpOutputDevice->SetMapMode(maOriginalMapMode);
-
- if(!renderChartPrimitive2D(
- rChartPrimitive,
- *mpOutputDevice,
- getViewInformation2D()))
- {
- // fallback to decomposition (MetaFile)
- process(rChartPrimitive.get2DDecomposition(getViewInformation2D()));
- }
-
- mpOutputDevice->Pop();
- break;
- }
case PRIMITIVE2D_ID_WRONGSPELLPRIMITIVE2D :
{
// wrong spell primitive. Handled directly here using VCL since VCL has a nice and
@@ -961,7 +947,6 @@ namespace drawinglayer
const geometry::ViewInformation2D& rViewInformation,
OutputDevice& rOutDev)
: BaseProcessor2D(rViewInformation),
- maOriginalMapMode(rOutDev.GetMapMode()),
mpOutputDevice(&rOutDev),
mxCanvas(rOutDev.GetCanvas()),
maViewState(),
diff --git a/drawinglayer/source/processor2d/contourextractor2d.cxx b/drawinglayer/source/processor2d/contourextractor2d.cxx
index 21b3bfa92cfe..e97e7e107e39 100644
--- a/drawinglayer/source/processor2d/contourextractor2d.cxx
+++ b/drawinglayer/source/processor2d/contourextractor2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor2d/contourextractor2d.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
@@ -48,9 +39,12 @@ namespace drawinglayer
{
namespace processor2d
{
- ContourExtractor2D::ContourExtractor2D(const geometry::ViewInformation2D& rViewInformation)
+ ContourExtractor2D::ContourExtractor2D(
+ const geometry::ViewInformation2D& rViewInformation,
+ bool bExtractFillOnly)
: BaseProcessor2D(rViewInformation),
- maExtractedContour()
+ maExtractedContour(),
+ mbExtractFillOnly(bExtractFillOnly)
{
}
@@ -64,19 +58,22 @@ namespace drawinglayer
{
case PRIMITIVE2D_ID_POLYGONHAIRLINEPRIMITIVE2D :
{
- // extract hairline in world coordinates
- const primitive2d::PolygonHairlinePrimitive2D& rPolygonCandidate(static_cast< const primitive2d::PolygonHairlinePrimitive2D& >(rCandidate));
- basegfx::B2DPolygon aLocalPolygon(rPolygonCandidate.getB2DPolygon());
- aLocalPolygon.transform(getViewInformation2D().getObjectTransformation());
-
- if(aLocalPolygon.isClosed())
+ if(!mbExtractFillOnly)
{
- // line polygons need to be represented as open polygons to differentiate them
- // from filled polygons
- basegfx::tools::openWithGeometryChange(aLocalPolygon);
+ // extract hairline in world coordinates
+ const primitive2d::PolygonHairlinePrimitive2D& rPolygonCandidate(static_cast< const primitive2d::PolygonHairlinePrimitive2D& >(rCandidate));
+ basegfx::B2DPolygon aLocalPolygon(rPolygonCandidate.getB2DPolygon());
+ aLocalPolygon.transform(getViewInformation2D().getObjectTransformation());
+
+ if(aLocalPolygon.isClosed())
+ {
+ // line polygons need to be represented as open polygons to differentiate them
+ // from filled polygons
+ basegfx::tools::openWithGeometryChange(aLocalPolygon);
+ }
+
+ maExtractedContour.push_back(basegfx::B2DPolyPolygon(aLocalPolygon));
}
-
- maExtractedContour.push_back(basegfx::B2DPolyPolygon(aLocalPolygon));
break;
}
case PRIMITIVE2D_ID_POLYPOLYGONCOLORPRIMITIVE2D :
diff --git a/drawinglayer/source/processor2d/helperchartrenderer.cxx b/drawinglayer/source/processor2d/helperchartrenderer.cxx
deleted file mode 100644
index 4eb66856afd8..000000000000
--- a/drawinglayer/source/processor2d/helperchartrenderer.cxx
+++ /dev/null
@@ -1,151 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include <helperchartrenderer.hxx>
-#include <drawinglayer/primitive2d/chartprimitive2d.hxx>
-#include <svtools/chartprettypainter.hxx>
-#include <com/sun/star/lang/XUnoTunnel.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <drawinglayer/geometry/viewinformation2d.hxx>
-
-//////////////////////////////////////////////////////////////////////////////
-
-using namespace com::sun::star;
-
-//////////////////////////////////////////////////////////////////////////////
-
-namespace drawinglayer
-{
- bool renderChartPrimitive2D(
- const primitive2d::ChartPrimitive2D& rChartCandidate,
- OutputDevice& rOutputDevice,
- const geometry::ViewInformation2D& rViewInformation2D)
- {
- bool bChartRendered(false);
-
- // code from chart PrettyPrinter
- try
- {
- uno::Reference< lang::XMultiServiceFactory > xFact( rChartCandidate.getChartModel(), uno::UNO_QUERY );
- OSL_ENSURE( xFact.is(), "Chart cannot be painted pretty!\n" );
-
- if( xFact.is() )
- {
- uno::Reference< lang::XUnoTunnel > xChartRenderer( xFact->createInstance(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.ChartRenderer" ) ) ), uno::UNO_QUERY );
- OSL_ENSURE( xChartRenderer.is(), "Chart cannot be painted pretty!\n" );
-
- if( xChartRenderer.is() )
- {
- ChartPrettyPainter* pPrettyPainter = reinterpret_cast<ChartPrettyPainter*>(
- xChartRenderer->getSomething( ChartPrettyPainter::getUnoTunnelId() ));
-
- if( pPrettyPainter )
- {
- // create logic object range; do NOT use ObjectTransformation for this
- // (rViewInformation2D.getObjectTransformation()), only the logic object
- // size is wanted
- basegfx::B2DRange aObjectRange(0.0, 0.0, 1.0, 1.0);
- aObjectRange.transform(rChartCandidate.getTransformation());
- const Rectangle aRectangle(
- (sal_Int32)aObjectRange.getMinX(), (sal_Int32)aObjectRange.getMinY(),
- (sal_Int32)aObjectRange.getMaxX(), (sal_Int32)aObjectRange.getMaxY());
-
- // #i101811#
- if(rViewInformation2D.getObjectTransformation().isIdentity())
- {
- // no embedding in another transfromation, just paint with existing
- // MapMode. This is just a shortcut; using the below code will also
- // work; it has just a neutral ObjectTransformation
- bChartRendered = pPrettyPainter->DoPaint(&rOutputDevice, aRectangle);
- }
- else
- {
- // rViewInformation2D.getObjectTransformation() is used and
- // needs to be expressed in the MapMode for the PrettyPainter;
- // else it would call ChartModelHelper::setPageSize(...) with the
- // changed size what really will change the chart model and leads
- // to re-layouts and re-formatting
- const MapMode aOldMapMode(rOutputDevice.GetMapMode());
- basegfx::B2DVector aVTScale, aScale, aTranslate;
- double fRotate, fShearX;
-
- // get basic scaling with current MapMode (aVTScale), containing
- // mapping for set MapUnit (e.g. for 100th mm, the basic scale is
- // not 1.0, 1.0). This is needed since this scale is included in
- // the ObjectToView Transformation and needs to be removed (see
- // correction below) to re-create a MapMode
- rOutputDevice.SetMapMode(aOldMapMode.GetMapUnit());
- rOutputDevice.GetViewTransformation().decompose(aVTScale, aTranslate, fRotate, fShearX);
-
- // get complete ObjectToView Transformation scale and translate from current
- // transformation chain (combined view and object transform)
- rViewInformation2D.getObjectToViewTransformation().decompose(aScale, aTranslate, fRotate, fShearX);
-
- // assert when shear and/or rotation is used
- OSL_ENSURE(basegfx::fTools::equalZero(fRotate), "Chart PrettyPrinting with unsupportable rotation (!)");
- OSL_ENSURE(basegfx::fTools::equalZero(fShearX), "Chart PrettyPrinting with unsupportable shear (!)");
-
- // clean scale and translate from basic scaling (DPI, etc...)
- // since this will implicitely be part of the to-be-created MapMode
- const basegfx::B2DTuple aBasicCleaner(
- basegfx::fTools::equalZero(aVTScale.getX()) ? 1.0 : 1.0 / aVTScale.getX(),
- basegfx::fTools::equalZero(aVTScale.getY()) ? 1.0 : 1.0 / aVTScale.getY());
- aScale *= aBasicCleaner;
- aTranslate *= aBasicCleaner;
-
- // for MapMode, take scale out of translation
- const basegfx::B2DTuple aScaleRemover(
- basegfx::fTools::equalZero(aScale.getX()) ? 1.0 : 1.0 / aScale.getX(),
- basegfx::fTools::equalZero(aScale.getY()) ? 1.0 : 1.0 / aScale.getY());
- aTranslate *= aScaleRemover;
-
- // build new MapMode
- const MapMode aNewMapMode(aOldMapMode.GetMapUnit(),
- Point(basegfx::fround(aTranslate.getX()), basegfx::fround(aTranslate.getY())),
- Fraction(aScale.getX()), Fraction(aScale.getY()));
-
- // use, paint, restore
- rOutputDevice.SetMapMode(aNewMapMode);
- bChartRendered = pPrettyPainter->DoPaint(&rOutputDevice, aRectangle);
- rOutputDevice.SetMapMode(aOldMapMode);
- }
- }
- }
- }
- }
- catch( const uno::Exception& )
- {
- OSL_FAIL( "Chart cannot be painted pretty!" );
- }
-
- return bChartRendered;
- }
-} // end of namespace drawinglayer
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/processor2d/helperchartrenderer.hxx b/drawinglayer/source/processor2d/helperchartrenderer.hxx
deleted file mode 100644
index 93f0b6b6f8ed..000000000000
--- a/drawinglayer/source/processor2d/helperchartrenderer.hxx
+++ /dev/null
@@ -1,61 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_HELPERCHARTRENDER_HXX
-#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_HELPERCHARTRENDER_HXX
-
-#include <sal/types.h>
-
-//////////////////////////////////////////////////////////////////////////////
-// predefines
-
-class OutputDevice;
-
-namespace drawinglayer { namespace primitive2d { class ChartPrimitive2D; }}
-namespace drawinglayer { namespace geometry { class ViewInformation2D; }}
-
-//////////////////////////////////////////////////////////////////////////////
-// support chart PrettyPrinter usage from primitives
-
-namespace drawinglayer
-{
- // #i101811#
- // Added current ViewInformation2D to take evtl. changed
- // ObjectTransformation into account
- bool renderChartPrimitive2D(
- const primitive2d::ChartPrimitive2D& rChartCandidate,
- OutputDevice& rOutputDevice,
- const geometry::ViewInformation2D& rViewInformation2D);
-
-} // end of namespace drawinglayer
-
-//////////////////////////////////////////////////////////////////////////////
-
-#endif // INCLUDED_DRAWINGLAYER_PROCESSOR2D_HELPERCHARTRENDER_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/drawinglayer/source/processor2d/hittestprocessor2d.cxx b/drawinglayer/source/processor2d/hittestprocessor2d.cxx
index 7eedf8c3b96f..2e09ba1bb1df 100644
--- a/drawinglayer/source/processor2d/hittestprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/hittestprocessor2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor2d/hittestprocessor2d.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
@@ -527,7 +518,6 @@ namespace drawinglayer
case PRIMITIVE2D_ID_FILLHATCHPRIMITIVE2D :
case PRIMITIVE2D_ID_PAGEPREVIEWPRIMITIVE2D :
case PRIMITIVE2D_ID_MEDIAPRIMITIVE2D:
- case PRIMITIVE2D_ID_RENDERGRAPHICPRIMITIVE2D:
{
if(!getHitTextOnly())
{
diff --git a/drawinglayer/source/processor2d/linegeometryextractor2d.cxx b/drawinglayer/source/processor2d/linegeometryextractor2d.cxx
index cdb0898ed519..e7e9949c8f58 100644
--- a/drawinglayer/source/processor2d/linegeometryextractor2d.cxx
+++ b/drawinglayer/source/processor2d/linegeometryextractor2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor2d/linegeometryextractor2d.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
@@ -121,7 +112,6 @@ namespace drawinglayer
case PRIMITIVE2D_ID_MARKERARRAYPRIMITIVE2D :
case PRIMITIVE2D_ID_POINTARRAYPRIMITIVE2D :
case PRIMITIVE2D_ID_BITMAPPRIMITIVE2D :
- case PRIMITIVE2D_ID_RENDERGRAPHICPRIMITIVE2D :
case PRIMITIVE2D_ID_METAFILEPRIMITIVE2D :
case PRIMITIVE2D_ID_MASKPRIMITIVE2D :
{
diff --git a/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx b/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx
index 79fe610fd5ff..b620c3c654f8 100644
--- a/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx
+++ b/drawinglayer/source/processor2d/textaspolygonextractor2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor2d/textaspolygonextractor2d.hxx>
#include <drawinglayer/primitive2d/drawinglayer_primitivetypes2d.hxx>
@@ -212,7 +203,6 @@ namespace drawinglayer
case PRIMITIVE2D_ID_MARKERARRAYPRIMITIVE2D :
case PRIMITIVE2D_ID_POINTARRAYPRIMITIVE2D :
case PRIMITIVE2D_ID_BITMAPPRIMITIVE2D :
- case PRIMITIVE2D_ID_RENDERGRAPHICPRIMITIVE2D :
case PRIMITIVE2D_ID_METAFILEPRIMITIVE2D :
case PRIMITIVE2D_ID_MASKPRIMITIVE2D :
{
diff --git a/drawinglayer/source/processor2d/vclhelperbitmaprender.cxx b/drawinglayer/source/processor2d/vclhelperbitmaprender.cxx
index 40eacfa904bb..37ee61df9be3 100644
--- a/drawinglayer/source/processor2d/vclhelperbitmaprender.cxx
+++ b/drawinglayer/source/processor2d/vclhelperbitmaprender.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vclhelperbitmaprender.hxx>
#include <svtools/grfmgr.hxx>
@@ -54,9 +45,9 @@ namespace drawinglayer
rTransform.decompose(aScale, aTranslate, fRotate, fShearX);
// mirror flags
- aAttributes.SetMirrorFlags(
- (basegfx::fTools::less(aScale.getX(), 0.0) ? BMP_MIRROR_HORZ : 0)|
- (basegfx::fTools::less(aScale.getY(), 0.0) ? BMP_MIRROR_VERT : 0));
+ const bool bMirrorX(basegfx::fTools::less(aScale.getX(), 0.0));
+ const bool bMirrorY(basegfx::fTools::less(aScale.getY(), 0.0));
+ aAttributes.SetMirrorFlags((bMirrorX ? BMP_MIRROR_HORZ : 0)|(bMirrorY ? BMP_MIRROR_VERT : 0));
// rotation
if(!basegfx::fTools::equalZero(fRotate))
@@ -75,9 +66,13 @@ namespace drawinglayer
else
{
// if rotated, create the unrotated output rectangle for the GraphicManager paint
- const basegfx::B2DHomMatrix aSimpleObjectMatrix(basegfx::tools::createScaleTranslateB2DHomMatrix(
- fabs(aScale.getX()), fabs(aScale.getY()),
- aTranslate.getX(), aTranslate.getY()));
+ // #118824# Caution! When mirrored, adapt transformation accordingly
+ const basegfx::B2DHomMatrix aSimpleObjectMatrix(
+ basegfx::tools::createScaleTranslateB2DHomMatrix(
+ fabs(aScale.getX()),
+ fabs(aScale.getY()),
+ bMirrorX ? aTranslate.getX() - fabs(aScale.getX()): aTranslate.getX(),
+ bMirrorY ? aTranslate.getY() - fabs(aScale.getY()): aTranslate.getY()));
aOutlineRange.transform(aSimpleObjectMatrix);
}
diff --git a/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx b/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx
index b5d16152cace..0832e4dce2e8 100644
--- a/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx
+++ b/drawinglayer/source/processor2d/vclhelperbufferdevice.cxx
@@ -1,139 +1,354 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vclhelperbufferdevice.hxx>
#include <basegfx/range/b2drange.hxx>
#include <vcl/bitmapex.hxx>
#include <basegfx/matrix/b2dhommatrix.hxx>
#include <tools/stream.hxx>
+#include <vcl/timer.hxx>
+#include <comphelper/broadcasthelper.hxx>
+#include <vcl/lazydelete.hxx>
+
+//////////////////////////////////////////////////////////////////////////////
+// buffered VDev usage
+
+namespace
+{
+ typedef ::std::vector< VirtualDevice* > aBuffers;
+
+ class VDevBuffer : public Timer, protected comphelper::OBaseMutex
+ {
+ private:
+ // available buffers
+ aBuffers maFreeBuffers;
+
+ // allocated/used buffers (remembered to allow deleteing them in destructor)
+ aBuffers maUsedBuffers;
+
+ public:
+ VDevBuffer();
+ virtual ~VDevBuffer();
+
+ VirtualDevice* alloc(OutputDevice& rOutDev, const Size& rSizePixel, bool bClear, bool bMono);
+ void free(VirtualDevice& rDevice);
+
+ // Timer virtuals
+ virtual void Timeout();
+ };
+
+ VDevBuffer::VDevBuffer()
+ : Timer(),
+ maFreeBuffers(),
+ maUsedBuffers()
+ {
+ SetTimeout(10L * 1000L); // ten seconds
+ }
+
+ VDevBuffer::~VDevBuffer()
+ {
+ ::osl::MutexGuard aGuard(m_aMutex);
+ Stop();
+
+ while(!maFreeBuffers.empty())
+ {
+ delete *(maFreeBuffers.end() - 1);
+ maFreeBuffers.pop_back();
+ }
+
+ while(!maUsedBuffers.empty())
+ {
+ delete *(maUsedBuffers.end() - 1);
+ maUsedBuffers.pop_back();
+ }
+ }
+
+ VirtualDevice* VDevBuffer::alloc(OutputDevice& rOutDev, const Size& rSizePixel, bool bClear, bool bMono)
+ {
+ ::osl::MutexGuard aGuard(m_aMutex);
+ VirtualDevice* pRetval = 0;
+
+ if(!maFreeBuffers.empty())
+ {
+ bool bOkay(false);
+ aBuffers::iterator aFound(maFreeBuffers.end());
+
+ for(aBuffers::iterator a(maFreeBuffers.begin()); a != maFreeBuffers.end(); a++)
+ {
+ OSL_ENSURE(*a, "Empty pointer in VDevBuffer (!)");
+
+ if((bMono && 1 == (*a)->GetBitCount()) || (!bMono && (*a)->GetBitCount() > 1))
+ {
+ // candidate is valid due to bit depth
+ if(aFound != maFreeBuffers.end())
+ {
+ // already found
+ if(bOkay)
+ {
+ // found is valid
+ const bool bCandidateOkay((*a)->GetOutputWidthPixel() >= rSizePixel.getWidth() && (*a)->GetOutputHeightPixel() >= rSizePixel.getHeight());
+
+ if(bCandidateOkay)
+ {
+ // found and candidate are valid
+ const sal_uLong aSquare((*aFound)->GetOutputWidthPixel() * (*aFound)->GetOutputHeightPixel());
+ const sal_uLong aCandidateSquare((*a)->GetOutputWidthPixel() * (*a)->GetOutputHeightPixel());
+
+ if(aCandidateSquare < aSquare)
+ {
+ // candidate is valid and smaller, use it
+ aFound = a;
+ }
+ }
+ else
+ {
+ // found is valid, candidate is not. Keep found
+ }
+ }
+ else
+ {
+ // found is invalid, use candidate
+ aFound = a;
+ bOkay = (*aFound)->GetOutputWidthPixel() >= rSizePixel.getWidth() && (*aFound)->GetOutputHeightPixel() >= rSizePixel.getHeight();
+ }
+ }
+ else
+ {
+ // none yet, use candidate
+ aFound = a;
+ bOkay = (*aFound)->GetOutputWidthPixel() >= rSizePixel.getWidth() && (*aFound)->GetOutputHeightPixel() >= rSizePixel.getHeight();
+ }
+ }
+ }
+
+ if(aFound != maFreeBuffers.end())
+ {
+ pRetval = *aFound;
+ maFreeBuffers.erase(aFound);
+
+ if(bOkay)
+ {
+ if(bClear)
+ {
+ pRetval->Erase(Rectangle(0, 0, rSizePixel.getWidth(), rSizePixel.getHeight()));
+ }
+ }
+ else
+ {
+ pRetval->SetOutputSizePixel(rSizePixel, bClear);
+ }
+ }
+ }
+
+ // no success yet, create new buffer
+ if(!pRetval)
+ {
+ pRetval = (bMono) ? new VirtualDevice(rOutDev, 1) : new VirtualDevice(rOutDev);
+ pRetval->SetOutputSizePixel(rSizePixel, bClear);
+ }
+ else
+ {
+ // reused, reset some values
+ pRetval->SetMapMode();
+ }
+
+ // remember allocated buffer
+ maUsedBuffers.push_back(pRetval);
+
+ return pRetval;
+ }
+
+ void VDevBuffer::free(VirtualDevice& rDevice)
+ {
+ ::osl::MutexGuard aGuard(m_aMutex);
+ const aBuffers::iterator aUsedFound(::std::find(maUsedBuffers.begin(), maUsedBuffers.end(), &rDevice));
+ OSL_ENSURE(aUsedFound != maUsedBuffers.end(), "OOps, non-registered buffer freed (!)");
+
+ maUsedBuffers.erase(aUsedFound);
+ maFreeBuffers.push_back(&rDevice);
+ Start();
+ }
+
+ void VDevBuffer::Timeout()
+ {
+ ::osl::MutexGuard aGuard(m_aMutex);
+
+ while(!maFreeBuffers.empty())
+ {
+ delete *(maFreeBuffers.end() - 1);
+ maFreeBuffers.pop_back();
+ }
+ }
+}
//////////////////////////////////////////////////////////////////////////////
// support for rendering Bitmap and BitmapEx contents
namespace drawinglayer
{
+ // static global VDev buffer for the VclProcessor2D's (VclMetafileProcessor2D and VclPixelProcessor2D)
+ VDevBuffer& getVDevBuffer()
+ {
+ // secure global instance with Vcl's safe desroyer of external (seen by
+ // library base) stuff, the remembered VDevs need to be deleted before
+ // Vcl's deinit
+ static vcl::DeleteOnDeinit< VDevBuffer > aVDevBuffer(new VDevBuffer());
+ return *aVDevBuffer.get();
+ }
+
impBufferDevice::impBufferDevice(
OutputDevice& rOutDev,
const basegfx::B2DRange& rRange,
bool bAddOffsetToMapping)
: mrOutDev(rOutDev),
- maContent(rOutDev),
- mpMask(0L),
- mpAlpha(0L)
+ mpContent(0),
+ mpMask(0),
+ mpAlpha(0)
{
basegfx::B2DRange aRangePixel(rRange);
- aRangePixel.transform(rOutDev.GetViewTransformation());
+ aRangePixel.transform(mrOutDev.GetViewTransformation());
const Rectangle aRectPixel(
(sal_Int32)floor(aRangePixel.getMinX()), (sal_Int32)floor(aRangePixel.getMinY()),
(sal_Int32)ceil(aRangePixel.getMaxX()), (sal_Int32)ceil(aRangePixel.getMaxY()));
const Point aEmptyPoint;
- maDestPixel = Rectangle(aEmptyPoint, rOutDev.GetOutputSizePixel());
+ maDestPixel = Rectangle(aEmptyPoint, mrOutDev.GetOutputSizePixel());
maDestPixel.Intersection(aRectPixel);
if(isVisible())
{
- maContent.SetOutputSizePixel(maDestPixel.GetSize(), false);
+ mpContent = getVDevBuffer().alloc(mrOutDev, maDestPixel.GetSize(), false, false);
// #i93485# assert when copying from window to VDev is used
- OSL_ENSURE(rOutDev.GetOutDevType() != OUTDEV_WINDOW,
+ OSL_ENSURE(mrOutDev.GetOutDevType() != OUTDEV_WINDOW,
"impBufferDevice render helper: Copying from Window to VDev, this should be avoided (!)");
- const bool bWasEnabledSrc(rOutDev.IsMapModeEnabled());
- rOutDev.EnableMapMode(false);
- maContent.DrawOutDev(aEmptyPoint, maDestPixel.GetSize(), maDestPixel.TopLeft(), maDestPixel.GetSize(), rOutDev);
- rOutDev.EnableMapMode(bWasEnabledSrc);
+ const bool bWasEnabledSrc(mrOutDev.IsMapModeEnabled());
+ mrOutDev.EnableMapMode(false);
+ mpContent->DrawOutDev(aEmptyPoint, maDestPixel.GetSize(), maDestPixel.TopLeft(), maDestPixel.GetSize(), mrOutDev);
+ mrOutDev.EnableMapMode(bWasEnabledSrc);
- MapMode aNewMapMode(rOutDev.GetMapMode());
+ MapMode aNewMapMode(mrOutDev.GetMapMode());
if(bAddOffsetToMapping)
{
- const Point aLogicTopLeft(rOutDev.PixelToLogic(maDestPixel.TopLeft()));
+ const Point aLogicTopLeft(mrOutDev.PixelToLogic(maDestPixel.TopLeft()));
aNewMapMode.SetOrigin(Point(-aLogicTopLeft.X(), -aLogicTopLeft.Y()));
}
- maContent.SetMapMode(aNewMapMode);
+ mpContent->SetMapMode(aNewMapMode);
// copy AA flag for new target
- maContent.SetAntialiasing(mrOutDev.GetAntialiasing());
+ mpContent->SetAntialiasing(mrOutDev.GetAntialiasing());
}
}
impBufferDevice::~impBufferDevice()
{
- delete mpMask;
- delete mpAlpha;
+ if(mpContent)
+ {
+ getVDevBuffer().free(*mpContent);
+ }
+
+ if(mpMask)
+ {
+ getVDevBuffer().free(*mpMask);
+ }
+
+ if(mpAlpha)
+ {
+ getVDevBuffer().free(*mpAlpha);
+ }
}
void impBufferDevice::paint(double fTrans)
{
- const Point aEmptyPoint;
- const Size aSizePixel(maContent.GetOutputSizePixel());
- const bool bWasEnabledDst(mrOutDev.IsMapModeEnabled());
+ if(isVisible())
+ {
+ const Point aEmptyPoint;
+ const Size aSizePixel(maDestPixel.GetSize());
+ const bool bWasEnabledDst(mrOutDev.IsMapModeEnabled());
+ static bool bDoSaveForVisualControl(false);
- mrOutDev.EnableMapMode(false);
- maContent.EnableMapMode(false);
- Bitmap aContent(maContent.GetBitmap(aEmptyPoint, aSizePixel));
+ mrOutDev.EnableMapMode(false);
+ mpContent->EnableMapMode(false);
+ Bitmap aContent(mpContent->GetBitmap(aEmptyPoint, aSizePixel));
- if(mpAlpha)
- {
- mpAlpha->EnableMapMode(false);
- const AlphaMask aAlphaMask(mpAlpha->GetBitmap(aEmptyPoint, aSizePixel));
+ if(bDoSaveForVisualControl)
+ {
+ SvFileStream aNew((const String&)String( "c:\\content.bmp" ), STREAM_WRITE|STREAM_TRUNC);
+ aNew << aContent;
+ }
- mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aAlphaMask));
- }
- else if(mpMask)
- {
- mpMask->EnableMapMode(false);
- const Bitmap aMask(mpMask->GetBitmap(aEmptyPoint, aSizePixel));
+ if(mpAlpha)
+ {
+ mpAlpha->EnableMapMode(false);
+ const AlphaMask aAlphaMask(mpAlpha->GetBitmap(aEmptyPoint, aSizePixel));
- mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aMask));
- }
- else if(0.0 != fTrans)
- {
- sal_uInt8 nMaskValue((sal_uInt8)basegfx::fround(fTrans * 255.0));
- const AlphaMask aAlphaMask(aSizePixel, &nMaskValue);
- mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aAlphaMask));
- }
- else
- {
- mrOutDev.DrawBitmap(maDestPixel.TopLeft(), aContent);
+ if(bDoSaveForVisualControl)
+ {
+ SvFileStream aNew((const String&)String( "c:\\transparence.bmp" ), STREAM_WRITE|STREAM_TRUNC);
+ aNew << aAlphaMask.GetBitmap();
+ }
+
+ mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aAlphaMask));
+ }
+ else if(mpMask)
+ {
+ mpMask->EnableMapMode(false);
+ const Bitmap aMask(mpMask->GetBitmap(aEmptyPoint, aSizePixel));
+
+ if(bDoSaveForVisualControl)
+ {
+ SvFileStream aNew((const String&)String( "c:\\mask.bmp" ), STREAM_WRITE|STREAM_TRUNC);
+ aNew << aMask;
+ }
+
+ mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aMask));
+ }
+ else if(0.0 != fTrans)
+ {
+ sal_uInt8 nMaskValue((sal_uInt8)basegfx::fround(fTrans * 255.0));
+ const AlphaMask aAlphaMask(aSizePixel, &nMaskValue);
+ mrOutDev.DrawBitmapEx(maDestPixel.TopLeft(), BitmapEx(aContent, aAlphaMask));
+ }
+ else
+ {
+ mrOutDev.DrawBitmap(maDestPixel.TopLeft(), aContent);
+ }
+
+ mrOutDev.EnableMapMode(bWasEnabledDst);
}
+ }
- mrOutDev.EnableMapMode(bWasEnabledDst);
+ VirtualDevice& impBufferDevice::getContent()
+ {
+ OSL_ENSURE(mpContent, "impBufferDevice: No content, check isVisible() before accessing (!)");
+ return *mpContent;
}
VirtualDevice& impBufferDevice::getMask()
{
+ OSL_ENSURE(mpContent, "impBufferDevice: No content, check isVisible() before accessing (!)");
if(!mpMask)
{
- mpMask = new VirtualDevice(mrOutDev, 1);
- mpMask->SetOutputSizePixel(maDestPixel.GetSize(), true);
- mpMask->SetMapMode(maContent.GetMapMode());
+ mpMask = getVDevBuffer().alloc(mrOutDev, maDestPixel.GetSize(), true, true);
+ mpMask->SetMapMode(mpContent->GetMapMode());
// do NOT copy AA flag for mask!
}
@@ -143,14 +358,14 @@ namespace drawinglayer
VirtualDevice& impBufferDevice::getTransparence()
{
+ OSL_ENSURE(mpContent, "impBufferDevice: No content, check isVisible() before accessing (!)");
if(!mpAlpha)
{
- mpAlpha = new VirtualDevice();
- mpAlpha->SetOutputSizePixel(maDestPixel.GetSize(), true);
- mpAlpha->SetMapMode(maContent.GetMapMode());
+ mpAlpha = getVDevBuffer().alloc(mrOutDev, maDestPixel.GetSize(), true, false);
+ mpAlpha->SetMapMode(mpContent->GetMapMode());
// copy AA flag for new target; masking needs to be smooth
- mpAlpha->SetAntialiasing(maContent.GetAntialiasing());
+ mpAlpha->SetAntialiasing(mpContent->GetAntialiasing());
}
return *mpAlpha;
diff --git a/drawinglayer/source/processor2d/vclhelperbufferdevice.hxx b/drawinglayer/source/processor2d/vclhelperbufferdevice.hxx
index 0ce29758bd20..ceef5962c1c5 100644
--- a/drawinglayer/source/processor2d/vclhelperbufferdevice.hxx
+++ b/drawinglayer/source/processor2d/vclhelperbufferdevice.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLHELPERBUFFERDEVICE_HXX
#define INCLUDED_DRAWINGLAYER_PROCESSOR2D_VCLHELPERBUFFERDEVICE_HXX
@@ -44,7 +35,7 @@ namespace drawinglayer
class impBufferDevice
{
OutputDevice& mrOutDev;
- VirtualDevice maContent;
+ VirtualDevice* mpContent;
VirtualDevice* mpMask;
VirtualDevice* mpAlpha;
Rectangle maDestPixel;
@@ -58,7 +49,7 @@ namespace drawinglayer
void paint(double fTrans = 0.0);
bool isVisible() const { return !maDestPixel.IsEmpty(); }
- VirtualDevice& getContent() { return maContent; }
+ VirtualDevice& getContent();
VirtualDevice& getMask();
VirtualDevice& getTransparence();
};
diff --git a/drawinglayer/source/processor2d/vclhelpergradient.cxx b/drawinglayer/source/processor2d/vclhelpergradient.cxx
index 601489550187..71c263d7ef5e 100644
--- a/drawinglayer/source/processor2d/vclhelpergradient.cxx
+++ b/drawinglayer/source/processor2d/vclhelpergradient.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vclhelpergradient.hxx>
#include <basegfx/range/b2drange.hxx>
diff --git a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
index 5f7d8e75c8fb..b78ac5b1e8df 100644
--- a/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclmetafileprocessor2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor2d/vclmetafileprocessor2d.hxx>
#include <tools/gen.hxx>
@@ -36,7 +27,6 @@
#include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/bitmapprimitive2d.hxx>
-#include <drawinglayer/primitive2d/rendergraphicprimitive2d.hxx>
#include <drawinglayer/primitive2d/metafileprimitive2d.hxx>
#include <drawinglayer/primitive2d/maskprimitive2d.hxx>
#include <basegfx/polygon/b2dpolygonclipper.hxx>
@@ -56,13 +46,13 @@
#include <drawinglayer/primitive2d/textdecoratedprimitive2d.hxx>
#include <comphelper/processfactory.hxx>
#include <rtl/ustring.hxx>
+#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
#include <com/sun/star/i18n/WordType.hpp>
#include <drawinglayer/primitive2d/controlprimitive2d.hxx>
#include <drawinglayer/primitive2d/graphicprimitive2d.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
#include <drawinglayer/primitive2d/pagepreviewprimitive2d.hxx>
-#include <helperchartrenderer.hxx>
#include <drawinglayer/primitive2d/epsprimitive2d.hxx>
#include <basegfx/polygon/b2dlinegeometry.hxx>
@@ -79,11 +69,6 @@
#include <com/sun/star/beans/XPropertySet.hpp>
//////////////////////////////////////////////////////////////////////////////
-// for current chart PrettyPrinting support
-
-#include <drawinglayer/primitive2d/chartprimitive2d.hxx>
-
-//////////////////////////////////////////////////////////////////////////////
// for StructureTagPrimitive support in sd's unomodel.cxx
#include <drawinglayer/primitive2d/structuretagprimitive2d.hxx>
@@ -449,6 +434,7 @@ namespace drawinglayer
}
SvtGraphicStroke::JoinType eJoin(SvtGraphicStroke::joinNone);
+ SvtGraphicStroke::CapType eCap(SvtGraphicStroke::capButt);
double fLineWidth(0.0);
double fMiterLength(0.0);
SvtGraphicStroke::DashArray aDashArray;
@@ -488,6 +474,26 @@ namespace drawinglayer
break;
}
}
+
+ // get stroke
+ switch(pLineAttribute->getLineCap())
+ {
+ default: /* com::sun::star::drawing::LineCap_BUTT */
+ {
+ eCap = SvtGraphicStroke::capButt;
+ break;
+ }
+ case com::sun::star::drawing::LineCap_ROUND:
+ {
+ eCap = SvtGraphicStroke::capRound;
+ break;
+ }
+ case com::sun::star::drawing::LineCap_SQUARE:
+ {
+ eCap = SvtGraphicStroke::capSquare;
+ break;
+ }
+ }
}
if(pStrokeAttribute)
@@ -515,7 +521,7 @@ namespace drawinglayer
PolyPolygon(aEndArrow),
mfCurrentUnifiedTransparence,
fLineWidth,
- SvtGraphicStroke::capButt,
+ eCap,
eJoin,
fMiterLength,
aDashArray);
@@ -1097,46 +1103,43 @@ namespace drawinglayer
// support for TEXT_ MetaFile actions only for decorated texts
if(!mxBreakIterator.is())
{
- uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xMSF(::comphelper::getProcessServiceFactory());
- mxBreakIterator.set(xMSF->createInstance("com.sun.star.i18n.BreakIterator"), uno::UNO_QUERY);
+ uno::Reference< uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ mxBreakIterator = i18n::BreakIterator::create(xContext);
}
- if(mxBreakIterator.is())
- {
- const rtl::OUString& rTxt = rTextCandidate.getText();
- const sal_Int32 nTextLength(rTextCandidate.getTextLength()); // rTxt.getLength());
+ const rtl::OUString& rTxt = rTextCandidate.getText();
+ const sal_Int32 nTextLength(rTextCandidate.getTextLength()); // rTxt.getLength());
- if(nTextLength)
+ if(nTextLength)
+ {
+ const ::com::sun::star::lang::Locale& rLocale = rTextCandidate.getLocale();
+ const sal_Int32 nTextPosition(rTextCandidate.getTextPosition());
+
+ sal_Int32 nDone;
+ sal_Int32 nNextCellBreak(mxBreakIterator->nextCharacters(rTxt, nTextPosition, rLocale, ::com::sun::star::i18n::CharacterIteratorMode::SKIPCELL, 0, nDone));
+ ::com::sun::star::i18n::Boundary nNextWordBoundary(mxBreakIterator->getWordBoundary(rTxt, nTextPosition, rLocale, ::com::sun::star::i18n::WordType::ANY_WORD, sal_True));
+ sal_Int32 nNextSentenceBreak(mxBreakIterator->endOfSentence(rTxt, nTextPosition, rLocale));
+ const rtl::OString aCommentStringA(RTL_CONSTASCII_STRINGPARAM("XTEXT_EOC"));
+ const rtl::OString aCommentStringB(RTL_CONSTASCII_STRINGPARAM("XTEXT_EOW"));
+ const rtl::OString aCommentStringC(RTL_CONSTASCII_STRINGPARAM("XTEXT_EOS"));
+
+ for(sal_Int32 i(nTextPosition); i < nTextPosition + nTextLength; i++)
{
- const ::com::sun::star::lang::Locale& rLocale = rTextCandidate.getLocale();
- const sal_Int32 nTextPosition(rTextCandidate.getTextPosition());
-
- sal_Int32 nDone;
- sal_Int32 nNextCellBreak(mxBreakIterator->nextCharacters(rTxt, nTextPosition, rLocale, ::com::sun::star::i18n::CharacterIteratorMode::SKIPCELL, 0, nDone));
- ::com::sun::star::i18n::Boundary nNextWordBoundary(mxBreakIterator->getWordBoundary(rTxt, nTextPosition, rLocale, ::com::sun::star::i18n::WordType::ANY_WORD, sal_True));
- sal_Int32 nNextSentenceBreak(mxBreakIterator->endOfSentence(rTxt, nTextPosition, rLocale));
- const rtl::OString aCommentStringA(RTL_CONSTASCII_STRINGPARAM("XTEXT_EOC"));
- const rtl::OString aCommentStringB(RTL_CONSTASCII_STRINGPARAM("XTEXT_EOW"));
- const rtl::OString aCommentStringC(RTL_CONSTASCII_STRINGPARAM("XTEXT_EOS"));
-
- for(sal_Int32 i(nTextPosition); i < nTextPosition + nTextLength; i++)
+ // create the entries for the respective break positions
+ if(i == nNextCellBreak)
{
- // create the entries for the respective break positions
- if(i == nNextCellBreak)
- {
- mpMetaFile->AddAction(new MetaCommentAction(aCommentStringA, i - nTextPosition));
- nNextCellBreak = mxBreakIterator->nextCharacters(rTxt, i, rLocale, ::com::sun::star::i18n::CharacterIteratorMode::SKIPCELL, 1, nDone);
- }
- if(i == nNextWordBoundary.endPos)
- {
- mpMetaFile->AddAction(new MetaCommentAction(aCommentStringB, i - nTextPosition));
- nNextWordBoundary = mxBreakIterator->getWordBoundary(rTxt, i + 1, rLocale, ::com::sun::star::i18n::WordType::ANY_WORD, sal_True);
- }
- if(i == nNextSentenceBreak)
- {
- mpMetaFile->AddAction(new MetaCommentAction(aCommentStringC, i - nTextPosition));
- nNextSentenceBreak = mxBreakIterator->endOfSentence(rTxt, i + 1, rLocale);
- }
+ mpMetaFile->AddAction(new MetaCommentAction(aCommentStringA, i - nTextPosition));
+ nNextCellBreak = mxBreakIterator->nextCharacters(rTxt, i, rLocale, ::com::sun::star::i18n::CharacterIteratorMode::SKIPCELL, 1, nDone);
+ }
+ if(i == nNextWordBoundary.endPos)
+ {
+ mpMetaFile->AddAction(new MetaCommentAction(aCommentStringB, i - nTextPosition));
+ nNextWordBoundary = mxBreakIterator->getWordBoundary(rTxt, i + 1, rLocale, ::com::sun::star::i18n::WordType::ANY_WORD, sal_True);
+ }
+ if(i == nNextSentenceBreak)
+ {
+ mpMetaFile->AddAction(new MetaCommentAction(aCommentStringC, i - nTextPosition));
+ nNextSentenceBreak = mxBreakIterator->endOfSentence(rTxt, i + 1, rLocale);
}
}
}
@@ -1236,6 +1239,7 @@ namespace drawinglayer
LineInfo aLineInfo(LINE_SOLID, basegfx::fround(fDiscreteLineWidth));
aLineInfo.SetLineJoin(rLine.getLineJoin());
+ aLineInfo.SetLineCap(rLine.getLineCap());
for(sal_uInt32 a(0); a < aHairLinePolyPolygon.count(); a++)
{
@@ -1310,12 +1314,6 @@ namespace drawinglayer
RenderBitmapPrimitive2D(static_cast< const primitive2d::BitmapPrimitive2D& >(rCandidate));
break;
}
- case PRIMITIVE2D_ID_RENDERGRAPHICPRIMITIVE2D :
- {
- // direct draw of transformed RenderGraphic primitive; use default processing
- RenderRenderGraphicPrimitive2D(static_cast< const primitive2d::RenderGraphicPrimitive2D& >(rCandidate));
- break;
- }
case PRIMITIVE2D_ID_POLYPOLYGONBITMAPPRIMITIVE2D :
{
// need to handle PolyPolygonBitmapPrimitive2D here to support XPATHFILL_SEQ_BEGIN/XPATHFILL_SEQ_END
@@ -1632,8 +1630,19 @@ namespace drawinglayer
}
case PRIMITIVE2D_ID_METAFILEPRIMITIVE2D :
{
- // direct draw of MetaFile, use default pocessing
- RenderMetafilePrimitive2D(static_cast< const primitive2d::MetafilePrimitive2D& >(rCandidate));
+ static bool bUseMetaFilePrimitiveDecomposition(true);
+
+ if(bUseMetaFilePrimitiveDecomposition)
+ {
+ // use new Metafile decomposition
+ process(rCandidate.get2DDecomposition(getViewInformation2D()));
+ }
+ else
+ {
+ // direct draw of MetaFile, use default pocessing
+ RenderMetafilePrimitive2D(static_cast< const primitive2d::MetafilePrimitive2D& >(rCandidate));
+ }
+
break;
}
case PRIMITIVE2D_ID_MASKPRIMITIVE2D :
@@ -1674,7 +1683,8 @@ namespace drawinglayer
// the ClipRegion is built from the Polygon. A AdaptiveSubdivide on the source polygon was missing there
mpOutputDevice->Push(PUSH_CLIPREGION);
//mpOutputDevice->SetClipRegion(Region(PolyPolygon(basegfx::tools::adaptiveSubdivideByAngle(maClipPolyPolygon))));
- mpOutputDevice->SetClipRegion(Region(PolyPolygon(maClipPolyPolygon)));
+ //mpOutputDevice->SetClipRegion(Region(PolyPolygon(maClipPolyPolygon)));
+ mpOutputDevice->SetClipRegion(Region(maClipPolyPolygon));
}
// recursively paint content
@@ -1891,9 +1901,20 @@ namespace drawinglayer
(sal_Int32)floor(aViewRange.getMinX()), (sal_Int32)floor(aViewRange.getMinY()),
(sal_Int32)ceil(aViewRange.getMaxX()), (sal_Int32)ceil(aViewRange.getMaxY()));
const Rectangle aRectPixel(mpOutputDevice->LogicToPixel(aRectLogic));
- const Size aSizePixel(aRectPixel.GetSize());
+ Size aSizePixel(aRectPixel.GetSize());
const Point aEmptyPoint;
VirtualDevice aBufferDevice;
+ const sal_uInt32 nMaxQuadratPixels(500000);
+ const sal_uInt32 nViewVisibleArea(aSizePixel.getWidth() * aSizePixel.getHeight());
+ double fReduceFactor(1.0);
+
+ if(nViewVisibleArea > nMaxQuadratPixels)
+ {
+ // reduce render size
+ fReduceFactor = sqrt((double)nMaxQuadratPixels / (double)nViewVisibleArea);
+ aSizePixel = Size(basegfx::fround((double)aSizePixel.getWidth() * fReduceFactor),
+ basegfx::fround((double)aSizePixel.getHeight() * fReduceFactor));
+ }
if(aBufferDevice.SetOutputSizePixel(aSizePixel))
{
@@ -1917,6 +1938,12 @@ namespace drawinglayer
aViewTransform.scale(fDPIXChange, fDPIYChange);
}
+ // also take scaling from Size reduction into acount
+ if(!basegfx::fTools::equal(fReduceFactor, 1.0))
+ {
+ aViewTransform.scale(fReduceFactor, fReduceFactor);
+ }
+
// create view information and pixel renderer. Reuse known ViewInformation
// except new transformation and range
const geometry::ViewInformation2D aViewInfo(
@@ -1973,21 +2000,6 @@ namespace drawinglayer
RenderPointArrayPrimitive2D(static_cast< const primitive2d::PointArrayPrimitive2D& >(rCandidate));
break;
}
- case PRIMITIVE2D_ID_CHARTPRIMITIVE2D :
- {
- // ChartPrimitive2D
- const primitive2d::ChartPrimitive2D& rChartPrimitive = static_cast< const primitive2d::ChartPrimitive2D& >(rCandidate);
-
- if(!renderChartPrimitive2D(
- rChartPrimitive,
- *mpOutputDevice,
- getViewInformation2D()))
- {
- // fallback to decomposition (MetaFile)
- process(rChartPrimitive.get2DDecomposition(getViewInformation2D()));
- }
- break;
- }
case PRIMITIVE2D_ID_STRUCTURETAGPRIMITIVE2D :
{
// structured tag primitive
diff --git a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
index d0e3f83e42eb..87c76e202b8a 100644
--- a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor2d/vclpixelprocessor2d.hxx>
#include <vcl/outdev.hxx>
@@ -33,7 +24,6 @@
#include <drawinglayer/primitive2d/polypolygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/bitmapprimitive2d.hxx>
-#include <drawinglayer/primitive2d/rendergraphicprimitive2d.hxx>
#include <drawinglayer/primitive2d/fillbitmapprimitive2d.hxx>
#include <drawinglayer/primitive2d/metafileprimitive2d.hxx>
#include <drawinglayer/primitive2d/maskprimitive2d.hxx>
@@ -47,8 +37,6 @@
#include <com/sun/star/awt/XWindow2.hpp>
#include <drawinglayer/primitive2d/unifiedtransparenceprimitive2d.hxx>
#include <drawinglayer/primitive2d/pagepreviewprimitive2d.hxx>
-#include <drawinglayer/primitive2d/chartprimitive2d.hxx>
-#include <helperchartrenderer.hxx>
#include <helperwrongspellrenderer.hxx>
#include <drawinglayer/primitive2d/fillhatchprimitive2d.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
@@ -60,7 +48,7 @@
#include <drawinglayer/primitive2d/backgroundcolorprimitive2d.hxx>
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <drawinglayer/primitive2d/epsprimitive2d.hxx>
-
+#include <drawinglayer/primitive2d/svggradientprimitive2d.hxx>
#include <toolkit/helper/vclunohelper.hxx>
#include <vcl/window.hxx>
@@ -75,8 +63,7 @@ namespace drawinglayer
namespace processor2d
{
VclPixelProcessor2D::VclPixelProcessor2D(const geometry::ViewInformation2D& rViewInformation, OutputDevice& rOutDev)
- : VclProcessor2D(rViewInformation, rOutDev),
- maOriginalMapMode(rOutDev.GetMapMode())
+ : VclProcessor2D(rViewInformation, rOutDev)
{
// prepare maCurrentTransformation matrix with viewTransformation to target directly to pixels
maCurrentTransformation = rViewInformation.getObjectToViewTransformation();
@@ -192,12 +179,6 @@ namespace drawinglayer
RenderBitmapPrimitive2D(static_cast< const primitive2d::BitmapPrimitive2D& >(rCandidate));
break;
}
- case PRIMITIVE2D_ID_RENDERGRAPHICPRIMITIVE2D :
- {
- // direct draw of transformed BitmapEx primitive
- RenderRenderGraphicPrimitive2D(static_cast< const primitive2d::RenderGraphicPrimitive2D& >(rCandidate));
- break;
- }
case PRIMITIVE2D_ID_FILLBITMAPPRIMITIVE2D :
{
// direct draw of fillBitmapPrimitive
@@ -458,26 +439,6 @@ namespace drawinglayer
break;
}
- case PRIMITIVE2D_ID_CHARTPRIMITIVE2D :
- {
- // chart primitive in pixel renderer; restore original DrawMode during call
- // since the evtl. used ChartPrettyPainter will use the MapMode
- const primitive2d::ChartPrimitive2D& rChartPrimitive = static_cast< const primitive2d::ChartPrimitive2D& >(rCandidate);
- mpOutputDevice->Push(PUSH_MAPMODE);
- mpOutputDevice->SetMapMode(maOriginalMapMode);
-
- if(!renderChartPrimitive2D(
- rChartPrimitive,
- *mpOutputDevice,
- getViewInformation2D()))
- {
- // fallback to decomposition (MetaFile)
- process(rChartPrimitive.get2DDecomposition(getViewInformation2D()));
- }
-
- mpOutputDevice->Pop();
- break;
- }
case PRIMITIVE2D_ID_FILLHATCHPRIMITIVE2D :
{
static bool bForceIgnoreHatchSmoothing(false);
@@ -607,6 +568,16 @@ namespace drawinglayer
RenderEpsPrimitive2D(static_cast< const primitive2d::EpsPrimitive2D& >(rCandidate));
break;
}
+ case PRIMITIVE2D_ID_SVGLINEARATOMPRIMITIVE2D:
+ {
+ RenderSvgLinearAtomPrimitive2D(static_cast< const primitive2d::SvgLinearAtomPrimitive2D& >(rCandidate));
+ break;
+ }
+ case PRIMITIVE2D_ID_SVGRADIALATOMPRIMITIVE2D:
+ {
+ RenderSvgRadialAtomPrimitive2D(static_cast< const primitive2d::SvgRadialAtomPrimitive2D& >(rCandidate));
+ break;
+ }
default :
{
// process recursively
diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx b/drawinglayer/source/processor2d/vclprocessor2d.cxx
index a04742fe67ed..b583d82193b8 100644
--- a/drawinglayer/source/processor2d/vclprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx
@@ -1,31 +1,23 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <comphelper/string.hxx>
#include <drawinglayer/processor2d/vclprocessor2d.hxx>
#include <drawinglayer/primitive2d/textprimitive2d.hxx>
#include <drawinglayer/primitive2d/textdecoratedprimitive2d.hxx>
@@ -33,7 +25,6 @@
#include <vcl/outdev.hxx>
#include <drawinglayer/primitive2d/polygonprimitive2d.hxx>
#include <drawinglayer/primitive2d/bitmapprimitive2d.hxx>
-#include <drawinglayer/primitive2d/rendergraphicprimitive2d.hxx>
#include <vclhelperbitmaptransform.hxx>
#include <basegfx/polygon/b2dpolygontools.hxx>
#include <vclhelperbitmaprender.hxx>
@@ -54,10 +45,13 @@
#include <drawinglayer/primitive2d/wrongspellprimitive2d.hxx>
#include <drawinglayer/primitive2d/pagepreviewprimitive2d.hxx>
#include <tools/diagnose_ex.h>
+#include <rtl/ustrbuf.hxx>
#include <vcl/metric.hxx>
#include <drawinglayer/primitive2d/textenumsprimitive2d.hxx>
#include <drawinglayer/primitive2d/epsprimitive2d.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
+#include <drawinglayer/primitive2d/svggradientprimitive2d.hxx>
+#include <basegfx/color/bcolor.hxx>
+#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include "getdigitlanguage.hxx"
@@ -82,6 +76,34 @@ using namespace com::sun::star;
//////////////////////////////////////////////////////////////////////////////
+namespace
+{
+ sal_uInt32 calculateStepsForSvgGradient(const basegfx::BColor& rColorA, const basegfx::BColor& rColorB, double fDelta, double fDiscreteUnit)
+ {
+ // use color distance, assume to do every color step
+ sal_uInt32 nSteps(basegfx::fround(rColorA.getDistance(rColorB) * 255.0));
+
+ if(nSteps)
+ {
+ // calc discrete length to change color each disctete unit (pixel)
+ const sal_uInt32 nDistSteps(basegfx::fround(fDelta / fDiscreteUnit));
+
+ nSteps = std::min(nSteps, nDistSteps);
+ }
+
+ // reduce quality to 3 discrete units or every 3rd color step for rendering
+ nSteps /= 2;
+
+ // roughly cut when too big or too small (not full quality, reduce complexity)
+ nSteps = std::min(nSteps, sal_uInt32(255));
+ nSteps = std::max(nSteps, sal_uInt32(1));
+
+ return nSteps;
+ }
+} // end of anonymous namespace
+
+//////////////////////////////////////////////////////////////////////////////
+
namespace drawinglayer
{
namespace processor2d
@@ -270,9 +292,9 @@ namespace drawinglayer
if ( nWidth )
nChars = nWidthToFill / nWidth;
- String aFilled;
- aFilled.Fill( (sal_uInt16)nChars, aText.GetChar( 0 ) );
- aText = aFilled;
+ rtl::OUStringBuffer aFilled;
+ comphelper::string::padToLength(aFilled, (sal_uInt16)nChars, aText.GetChar(0));
+ aText = aFilled.makeStringAndClear();
nPos = 0;
nLen = nChars;
}
@@ -448,75 +470,6 @@ namespace drawinglayer
}
}
- void VclProcessor2D::RenderRenderGraphicPrimitive2D(const primitive2d::RenderGraphicPrimitive2D& rRenderGraphicCandidate)
- {
- // create local transform
- basegfx::B2DHomMatrix aLocalTransform(maCurrentTransformation * rRenderGraphicCandidate.getTransform());
- vcl::RenderGraphic aRenderGraphic(rRenderGraphicCandidate.getRenderGraphic());
- bool bPainted(false);
-
- if(maBColorModifierStack.count())
- {
- // !!! TODO
- // aRenderGraphic = impModifyRenderGraphic(maBColorModifierStack, aRenderGraphic);
-
- if(aRenderGraphic.IsEmpty())
- {
- // color gets completely replaced, get it
- const basegfx::BColor aModifiedColor(maBColorModifierStack.getModifiedColor(basegfx::BColor()));
- basegfx::B2DPolygon aPolygon(basegfx::tools::createUnitPolygon());
- aPolygon.transform(aLocalTransform);
-
- mpOutputDevice->SetFillColor(Color(aModifiedColor));
- mpOutputDevice->SetLineColor();
- mpOutputDevice->DrawPolygon(aPolygon);
-
- bPainted = true;
- }
- }
-
- if(!bPainted)
- {
- // decompose matrix to check for shear, rotate and mirroring
- basegfx::B2DVector aScale, aTranslate;
- double fRotate, fShearX;
- aLocalTransform.decompose(aScale, aTranslate, fRotate, fShearX);
-
- basegfx::B2DRange aOutlineRange(0.0, 0.0, 1.0, 1.0);
-
- if( basegfx::fTools::equalZero( fRotate ) )
- {
- aOutlineRange.transform( aLocalTransform );
- }
- else
- {
- // !!! TODO
- // if rotated, create the unrotated output rectangle for the GraphicManager paint
- /*
- const basegfx::B2DHomMatrix aSimpleObjectMatrix(basegfx::tools::createScaleTranslateB2DHomMatrix(
- fabs(aScale.getX()), fabs(aScale.getY()),
- aTranslate.getX(), aTranslate.getY()));
-
- aOutlineRange.transform(aSimpleObjectMatrix);
- */
- }
-
- // prepare dest coordinates
- const Point aPoint( basegfx::fround(aOutlineRange.getMinX() ),
- basegfx::fround(aOutlineRange.getMinY() ) );
- const Size aSize( basegfx::fround(aOutlineRange.getWidth() ),
- basegfx::fround(aOutlineRange.getHeight() ) );
- const Size aSizePixel( mpOutputDevice->LogicToPixel( aSize ) );
- const vcl::RenderGraphicRasterizer aRasterizer( aRenderGraphic );
- const BitmapEx aBitmapEx( aRasterizer.Rasterize( aSizePixel, fRotate, fShearX ) );
-
- if( !aBitmapEx.IsEmpty() )
- {
- mpOutputDevice->DrawBitmapEx( aPoint, aSize, aBitmapEx );
- }
- }
- }
-
void VclProcessor2D::RenderFillBitmapPrimitive2D(const primitive2d::FillBitmapPrimitive2D& rFillBitmapCandidate)
{
const attribute::FillBitmapAttribute& rFillBitmapAttribute(rFillBitmapCandidate.getFillBitmap());
@@ -1257,26 +1210,30 @@ namespace drawinglayer
const bool bAntiAliased(getOptionsDrawinglayer().IsAntiAliasing());
aHairlinePolyPolygon.transform(maCurrentTransformation);
- for(sal_uInt32 a(0); a < nCount; a++)
+ if(bAntiAliased)
{
- basegfx::B2DPolygon aCandidate(aHairlinePolyPolygon.getB2DPolygon(a));
-
- if(bAntiAliased)
+ if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 1.0))
{
- if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 1.0))
+ // line in range ]0.0 .. 1.0[
+ // paint as simple hairline
+ for(sal_uInt32 a(0); a < nCount; a++)
{
- // line in range ]0.0 .. 1.0[
- // paint as simple hairline
- mpOutputDevice->DrawPolyLine(aCandidate, 0.0);
- bDone = true;
+ mpOutputDevice->DrawPolyLine(aHairlinePolyPolygon.getB2DPolygon(a), 0.0);
}
- else if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 2.0))
+
+ bDone = true;
+ }
+ else if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 2.0))
+ {
+ // line in range [1.0 .. 2.0[
+ // paint as 2x2 with dynamic line distance
+ basegfx::B2DHomMatrix aMat;
+ const double fDistance(fDiscreteLineWidth - 1.0);
+ const double fHalfDistance(fDistance * 0.5);
+
+ for(sal_uInt32 a(0); a < nCount; a++)
{
- // line in range [1.0 .. 2.0[
- // paint as 2x2 with dynamic line distance
- basegfx::B2DHomMatrix aMat;
- const double fDistance(fDiscreteLineWidth - 1.0);
- const double fHalfDistance(fDistance * 0.5);
+ basegfx::B2DPolygon aCandidate(aHairlinePolyPolygon.getB2DPolygon(a));
aMat.set(0, 2, -fHalfDistance);
aMat.set(1, 2, -fHalfDistance);
@@ -1297,14 +1254,20 @@ namespace drawinglayer
aMat.set(1, 2, 0.0);
aCandidate.transform(aMat);
mpOutputDevice->DrawPolyLine(aCandidate, 0.0);
- bDone = true;
}
- else if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 3.0))
+
+ bDone = true;
+ }
+ else if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 3.0))
+ {
+ // line in range [2.0 .. 3.0]
+ // paint as cross in a 3x3 with dynamic line distance
+ basegfx::B2DHomMatrix aMat;
+ const double fDistance((fDiscreteLineWidth - 1.0) * 0.5);
+
+ for(sal_uInt32 a(0); a < nCount; a++)
{
- // line in range [2.0 .. 3.0]
- // paint as cross in a 3x3 with dynamic line distance
- basegfx::B2DHomMatrix aMat;
- const double fDistance((fDiscreteLineWidth - 1.0) * 0.5);
+ basegfx::B2DPolygon aCandidate(aHairlinePolyPolygon.getB2DPolygon(a));
mpOutputDevice->DrawPolyLine(aCandidate, 0.0);
@@ -1327,26 +1290,36 @@ namespace drawinglayer
aMat.set(1, 2, fDistance);
aCandidate.transform(aMat);
mpOutputDevice->DrawPolyLine(aCandidate, 0.0);
- bDone = true;
- }
- else
- {
- // #i101491# line width above 3.0
}
+
+ bDone = true;
}
else
{
- if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 1.5))
+ // #i101491# line width above 3.0
+ }
+ }
+ else
+ {
+ if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 1.5))
+ {
+ // line width below 1.5, draw the basic hairline polygon
+ for(sal_uInt32 a(0); a < nCount; a++)
{
- // line width below 1.5, draw the basic hairline polygon
- mpOutputDevice->DrawPolyLine(aCandidate, 0.0);
- bDone = true;
+ mpOutputDevice->DrawPolyLine(aHairlinePolyPolygon.getB2DPolygon(a), 0.0);
}
- else if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 2.5))
+
+ bDone = true;
+ }
+ else if(basegfx::fTools::lessOrEqual(fDiscreteLineWidth, 2.5))
+ {
+ // line width is in range ]1.5 .. 2.5], use four hairlines
+ // drawn in a square
+ for(sal_uInt32 a(0); a < nCount; a++)
{
- // line width is in range ]1.5 .. 2.5], use four hairlines
- // drawn in a square
+ basegfx::B2DPolygon aCandidate(aHairlinePolyPolygon.getB2DPolygon(a));
basegfx::B2DHomMatrix aMat;
+
mpOutputDevice->DrawPolyLine(aCandidate, 0.0);
aMat.set(0, 2, 1.0);
@@ -1366,23 +1339,32 @@ namespace drawinglayer
aCandidate.transform(aMat);
mpOutputDevice->DrawPolyLine(aCandidate, 0.0);
- bDone = true;
- }
- else
- {
- // #i101491# line width is above 2.5
}
+
+ bDone = true;
}
+ else
+ {
+ // #i101491# line width is above 2.5
+ }
+ }
- if(!bDone && rPolygonStrokeCandidate.getB2DPolygon().count() > 1000)
+ if(!bDone && rPolygonStrokeCandidate.getB2DPolygon().count() > 1000)
+ {
+ // #i101491# If the polygon complexity uses more than a given amount, do
+ // use OuputDevice::DrawPolyLine directly; this will avoid buffering all
+ // decompositions in primtives (memory) and fallback to old line painting
+ // for very complex polygons, too
+ for(sal_uInt32 a(0); a < nCount; a++)
{
- // #i101491# If the polygon complexity uses more than a given amount, do
- // use OuputDevice::DrawPolyLine directly; this will avoid buffering all
- // decompositions in primtives (memory) and fallback to old line painting
- // for very complex polygons, too
- mpOutputDevice->DrawPolyLine(aCandidate, fDiscreteLineWidth, rLineAttribute.getLineJoin());
- bDone = true;
+ mpOutputDevice->DrawPolyLine(
+ aHairlinePolyPolygon.getB2DPolygon(a),
+ fDiscreteLineWidth,
+ rLineAttribute.getLineJoin(),
+ rLineAttribute.getLineCap());
}
+
+ bDone = true;
}
}
}
@@ -1438,6 +1420,100 @@ namespace drawinglayer
}
}
+ void VclProcessor2D::RenderSvgLinearAtomPrimitive2D(const primitive2d::SvgLinearAtomPrimitive2D& rCandidate)
+ {
+ const double fDelta(rCandidate.getOffsetB() - rCandidate.getOffsetA());
+
+ if(basegfx::fTools::more(fDelta, 0.0))
+ {
+ const basegfx::BColor aColorA(maBColorModifierStack.getModifiedColor(rCandidate.getColorA()));
+ const basegfx::BColor aColorB(maBColorModifierStack.getModifiedColor(rCandidate.getColorB()));
+ const double fDiscreteUnit((getViewInformation2D().getInverseObjectToViewTransformation() * basegfx::B2DVector(1.0, 0.0)).getLength());
+
+ // use color distance and discrete lengths to calculate step count
+ const sal_uInt32 nSteps(calculateStepsForSvgGradient(aColorA, aColorB, fDelta, fDiscreteUnit));
+
+ // prepare loop and polygon
+ double fStart(0.0);
+ double fStep(fDelta / nSteps);
+ const basegfx::B2DPolygon aPolygon(
+ basegfx::tools::createPolygonFromRect(
+ basegfx::B2DRange(
+ rCandidate.getOffsetA() - fDiscreteUnit,
+ 0.0,
+ rCandidate.getOffsetA() + fStep + fDiscreteUnit,
+ 1.0)));
+
+ // switch off line painting
+ mpOutputDevice->SetLineColor();
+
+ // loop and paint
+ for(sal_uInt32 a(0); a < nSteps; a++, fStart += fStep)
+ {
+ basegfx::B2DPolygon aNew(aPolygon);
+
+ aNew.transform(maCurrentTransformation * basegfx::tools::createTranslateB2DHomMatrix(fStart, 0.0));
+ mpOutputDevice->SetFillColor(Color(basegfx::interpolate(aColorA, aColorB, fStart/fDelta)));
+ mpOutputDevice->DrawPolyPolygon(basegfx::B2DPolyPolygon(aNew));
+ }
+ }
+ }
+
+ void VclProcessor2D::RenderSvgRadialAtomPrimitive2D(const primitive2d::SvgRadialAtomPrimitive2D& rCandidate)
+ {
+ const double fDeltaScale(rCandidate.getScaleB() - rCandidate.getScaleA());
+
+ if(basegfx::fTools::more(fDeltaScale, 0.0))
+ {
+ const basegfx::BColor aColorA(maBColorModifierStack.getModifiedColor(rCandidate.getColorA()));
+ const basegfx::BColor aColorB(maBColorModifierStack.getModifiedColor(rCandidate.getColorB()));
+ const double fDiscreteUnit((getViewInformation2D().getInverseObjectToViewTransformation() * basegfx::B2DVector(1.0, 0.0)).getLength());
+
+ // use color distance and discrete lengths to calculate step count
+ const sal_uInt32 nSteps(calculateStepsForSvgGradient(aColorA, aColorB, fDeltaScale, fDiscreteUnit));
+
+ // switch off line painting
+ mpOutputDevice->SetLineColor();
+
+ // prepare loop (outside to inside)
+ double fEndScale(rCandidate.getScaleB());
+ double fStepScale(fDeltaScale / nSteps);
+
+ for(sal_uInt32 a(0); a < nSteps; a++, fEndScale -= fStepScale)
+ {
+ const double fUnitScale(fEndScale/fDeltaScale);
+ basegfx::B2DHomMatrix aTransform;
+
+ if(rCandidate.isTranslateSet())
+ {
+ const basegfx::B2DVector aTranslate(
+ basegfx::interpolate(
+ rCandidate.getTranslateA(),
+ rCandidate.getTranslateB(),
+ fUnitScale));
+
+ aTransform = basegfx::tools::createScaleTranslateB2DHomMatrix(
+ fEndScale,
+ fEndScale,
+ aTranslate.getX(),
+ aTranslate.getY());
+ }
+ else
+ {
+ aTransform = basegfx::tools::createScaleB2DHomMatrix(
+ fEndScale,
+ fEndScale);
+ }
+
+ basegfx::B2DPolygon aNew(basegfx::tools::createPolygonFromUnitCircle());
+
+ aNew.transform(maCurrentTransformation * aTransform);
+ mpOutputDevice->SetFillColor(Color(basegfx::interpolate(aColorA, aColorB, fUnitScale)));
+ mpOutputDevice->DrawPolyPolygon(basegfx::B2DPolyPolygon(aNew));
+ }
+ }
+ }
+
void VclProcessor2D::adaptLineToFillDrawMode() const
{
const sal_uInt32 nOriginalDrawMode(mpOutputDevice->GetDrawMode());
diff --git a/drawinglayer/source/processor3d/baseprocessor3d.cxx b/drawinglayer/source/processor3d/baseprocessor3d.cxx
index 3db756099612..01de83ccb289 100644
--- a/drawinglayer/source/processor3d/baseprocessor3d.cxx
+++ b/drawinglayer/source/processor3d/baseprocessor3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor3d/baseprocessor3d.hxx>
diff --git a/drawinglayer/source/processor3d/shadow3dextractor.cxx b/drawinglayer/source/processor3d/shadow3dextractor.cxx
index fef68cdf95a6..69eea7272108 100644
--- a/drawinglayer/source/processor3d/shadow3dextractor.cxx
+++ b/drawinglayer/source/processor3d/shadow3dextractor.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor3d/shadow3dextractor.hxx>
#include <drawinglayer/primitive3d/shadowprimitive3d.hxx>
@@ -49,25 +40,6 @@ namespace drawinglayer
{
namespace processor3d
{
- /// helper to convert from BasePrimitive2DVector to primitive2d::Primitive2DSequence
- const primitive2d::Primitive2DSequence Shadow3DExtractingProcessor::getPrimitive2DSequenceFromBasePrimitive2DVector(
- const BasePrimitive2DVector& rVector) const
- {
- const sal_uInt32 nCount(rVector.size());
- primitive2d::Primitive2DSequence aRetval(nCount);
-
- for(sal_uInt32 a(0); a < nCount; a++)
- {
- aRetval[a] = rVector[a];
- }
-
- // all entries taken over; no need to delete entries, just reset to
- // mark as empty
- const_cast< BasePrimitive2DVector& >(rVector).clear();
-
- return aRetval;
- }
-
// as tooling, the process() implementation takes over API handling and calls this
// virtual render method when the primitive implementation is BasePrimitive3D-based.
void Shadow3DExtractingProcessor::processBasePrimitive3D(const primitive3d::BasePrimitive3D& rCandidate)
@@ -81,8 +53,8 @@ namespace drawinglayer
const primitive3d::ShadowPrimitive3D& rPrimitive = static_cast< const primitive3d::ShadowPrimitive3D& >(rCandidate);
// set new target
- BasePrimitive2DVector aNewSubList;
- BasePrimitive2DVector* pLastTargetSequence = mpPrimitive2DSequence;
+ primitive2d::Primitive2DVector aNewSubList;
+ primitive2d::Primitive2DVector* pLastTargetSequence = mpPrimitive2DSequence;
mpPrimitive2DSequence = &aNewSubList;
// activate convert
@@ -106,7 +78,7 @@ namespace drawinglayer
primitive2d::BasePrimitive2D* pNew = new primitive2d::ShadowPrimitive2D(
rPrimitive.getShadowTransform(),
rPrimitive.getShadowColor(),
- getPrimitive2DSequenceFromBasePrimitive2DVector(aNewSubList));
+ primitive2d::Primitive2DVectorToPrimitive2DSequence(aNewSubList));
if(basegfx::fTools::more(rPrimitive.getShadowTransparence(), 0.0))
{
@@ -330,7 +302,7 @@ namespace drawinglayer
const primitive2d::Primitive2DSequence Shadow3DExtractingProcessor::getPrimitive2DSequence() const
{
- return getPrimitive2DSequenceFromBasePrimitive2DVector(maPrimitive2DSequence);
+ return Primitive2DVectorToPrimitive2DSequence(maPrimitive2DSequence);
}
} // end of namespace processor3d
diff --git a/drawinglayer/source/processor3d/zbufferprocessor3d.cxx b/drawinglayer/source/processor3d/zbufferprocessor3d.cxx
index 1308a8960090..5bdb354ee03c 100644
--- a/drawinglayer/source/processor3d/zbufferprocessor3d.cxx
+++ b/drawinglayer/source/processor3d/zbufferprocessor3d.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <drawinglayer/processor3d/zbufferprocessor3d.hxx>
#include <basegfx/raster/bpixelraster.hxx>
@@ -59,8 +50,9 @@ namespace
if(nWidth && nHeight)
{
const Size aDestSize(nWidth, nHeight);
+ sal_uInt8 nInitAlpha(255);
Bitmap aContent(aDestSize, 24);
- AlphaMask aAlpha(aDestSize);
+ AlphaMask aAlpha(aDestSize, &nInitAlpha);
BitmapWriteAccess* pContent = aContent.AcquireWriteAccess();
BitmapWriteAccess* pAlpha = aAlpha.AcquireWriteAccess();
@@ -95,20 +87,14 @@ namespace
}
nOpacity = nOpacity / nDivisor;
+
if(nOpacity)
{
pContent->SetPixel(y, x, BitmapColor(
(sal_uInt8)(nRed / nDivisor),
(sal_uInt8)(nGreen / nDivisor),
(sal_uInt8)(nBlue / nDivisor)));
- pAlpha->SetPixel(
- y, x,
- BitmapColor(255 - (sal_uInt8)nOpacity));
- }
- else
- {
- pContent->SetPixel(y, x, BitmapColor(0, 0, 0));
- pAlpha->SetPixel(y, x, BitmapColor(255));
+ pAlpha->SetPixel(y, x, BitmapColor(255 - (sal_uInt8)nOpacity));
}
}
}
@@ -122,8 +108,12 @@ namespace
for(sal_uInt32 x(0L); x < nWidth; x++)
{
const basegfx::BPixel& rPixel(rRaster.getBPixel(nIndex++));
- pContent->SetPixel(y, x, BitmapColor(rPixel.getRed(), rPixel.getGreen(), rPixel.getBlue()));
- pAlpha->SetPixel(y, x, BitmapColor(255 - rPixel.getOpacity()));
+
+ if(rPixel.getOpacity())
+ {
+ pContent->SetPixel(y, x, BitmapColor(rPixel.getRed(), rPixel.getGreen(), rPixel.getBlue()));
+ pAlpha->SetPixel(y, x, BitmapColor(255 - rPixel.getOpacity()));
+ }
}
}
}
@@ -135,7 +125,7 @@ namespace
aRetval = BitmapEx(aContent, aAlpha);
// #i101811# set PrefMapMode and PrefSize at newly created Bitmap
- aRetval.SetPrefMapMode(MAP_100TH_MM);
+ aRetval.SetPrefMapMode(MAP_PIXEL);
aRetval.SetPrefSize(Size(nWidth, nHeight));
}
diff --git a/drawinglayer/source/tools/converters.cxx b/drawinglayer/source/tools/converters.cxx
new file mode 100644
index 000000000000..33b1fe4acd7f
--- /dev/null
+++ b/drawinglayer/source/tools/converters.cxx
@@ -0,0 +1,137 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <drawinglayer/tools/converters.hxx>
+#include <drawinglayer/geometry/viewinformation2d.hxx>
+#include <drawinglayer/processor2d/vclpixelprocessor2d.hxx>
+#include <drawinglayer/primitive2d/modifiedcolorprimitive2d.hxx>
+#include <basegfx/matrix/b2dhommatrixtools.hxx>
+#include <drawinglayer/primitive2d/transformprimitive2d.hxx>
+#include <vcl/virdev.hxx>
+
+#ifdef DBG_UTIL
+#include <tools/stream.hxx>
+#endif
+
+//////////////////////////////////////////////////////////////////////////////
+
+namespace drawinglayer
+{
+ namespace tools
+ {
+ BitmapEx DRAWINGLAYER_DLLPUBLIC convertToBitmapEx(
+ const drawinglayer::primitive2d::Primitive2DSequence& rSeq,
+ const geometry::ViewInformation2D& rViewInformation2D,
+ sal_uInt32 nDiscreteWidth,
+ sal_uInt32 nDiscreteHeight,
+ sal_uInt32 nMaxQuadratPixels)
+ {
+ BitmapEx aRetval;
+
+ if(rSeq.hasElements() && nDiscreteWidth && nDiscreteHeight)
+ {
+ // get destination size in pixels
+ const MapMode aMapModePixel(MAP_PIXEL);
+ const sal_uInt32 nViewVisibleArea(nDiscreteWidth * nDiscreteHeight);
+ double fReduceFactor(1.0);
+ drawinglayer::primitive2d::Primitive2DSequence aSequence(rSeq);
+
+ if(nViewVisibleArea > nMaxQuadratPixels)
+ {
+ // reduce render size
+ fReduceFactor = sqrt((double)nMaxQuadratPixels / (double)nViewVisibleArea);
+ nDiscreteWidth = basegfx::fround((double)nDiscreteWidth * fReduceFactor);
+ nDiscreteHeight = basegfx::fround((double)nDiscreteHeight * fReduceFactor);
+
+ const drawinglayer::primitive2d::Primitive2DReference aEmbed(
+ new drawinglayer::primitive2d::TransformPrimitive2D(
+ basegfx::tools::createScaleB2DHomMatrix(fReduceFactor, fReduceFactor),
+ rSeq));
+
+ aSequence = drawinglayer::primitive2d::Primitive2DSequence(&aEmbed, 1);
+ }
+
+ const Point aEmptyPoint;
+ const Size aSizePixel(nDiscreteWidth, nDiscreteHeight);
+ geometry::ViewInformation2D aViewInformation2D(rViewInformation2D);
+ VirtualDevice maContent;
+
+ // prepare vdev
+ maContent.SetOutputSizePixel(aSizePixel, false);
+ maContent.SetMapMode(aMapModePixel);
+ maContent.SetAntialiasing(true);
+
+ // set to all white
+ maContent.SetBackground(Wallpaper(Color(COL_WHITE)));
+ maContent.Erase();
+
+ // create processor
+ processor2d::VclPixelProcessor2D aContentProcessor(aViewInformation2D, maContent);
+
+ // render content
+ aContentProcessor.process(aSequence);
+
+ // get content
+ maContent.EnableMapMode(false);
+ const Bitmap aContent(maContent.GetBitmap(aEmptyPoint, aSizePixel));
+
+ // prepare for mask creation
+ maContent.SetMapMode(aMapModePixel);
+ maContent.SetAntialiasing(true);
+
+ // set alpha to all white (fully transparent)
+ maContent.Erase();
+
+ // embed primitives to paint them black
+ const primitive2d::Primitive2DReference xRef(
+ new primitive2d::ModifiedColorPrimitive2D(
+ aSequence,
+ basegfx::BColorModifier(
+ basegfx::BColor(0.0, 0.0, 0.0),
+ 0.5,
+ basegfx::BCOLORMODIFYMODE_REPLACE)));
+ const primitive2d::Primitive2DSequence xSeq(&xRef, 1);
+
+ // render
+ aContentProcessor.process(xSeq);
+
+ // get alpha cahannel from vdev
+ maContent.EnableMapMode(false);
+ const AlphaMask aAlphaMask(maContent.GetBitmap(aEmptyPoint, aSizePixel));
+
+ // create BitmapEx result
+ aRetval = BitmapEx(aContent, aAlphaMask);
+ }
+
+#ifdef DBG_UTIL
+ static bool bDoSaveForVisualControl(false);
+ if(bDoSaveForVisualControl)
+ {
+ SvFileStream aNew(rtl::OUString("c:\\test.png"), STREAM_WRITE|STREAM_TRUNC);
+ aNew << aRetval;
+ }
+#endif
+
+ return aRetval;
+ }
+
+ } // end of namespace tools
+} // end of namespace drawinglayer
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dtrans/prj/build.lst b/dtrans/prj/build.lst
index 61443afa2a19..65d50189537a 100644
--- a/dtrans/prj/build.lst
+++ b/dtrans/prj/build.lst
@@ -1,2 +1,2 @@
-dr dtrans : unotools offapi DESKTOP:rdbmaker stoc LIBXSLT:libxslt NULL
+dr dtrans : unotools offapi stoc LIBXSLT:libxslt NULL
dr dtrans\prj nmake - all dr_prj NULL
diff --git a/dtrans/source/win32/dtobj/FmtFilter.cxx b/dtrans/source/win32/dtobj/FmtFilter.cxx
index 516870bd7b7e..66a43db870a5 100644
--- a/dtrans/source/win32/dtobj/FmtFilter.cxx
+++ b/dtrans/source/win32/dtobj/FmtFilter.cxx
@@ -272,7 +272,7 @@ Sequence< sal_Int8 > SAL_CALL TextHtmlToHTMLFormat( Sequence< sal_Int8 >& aTextH
// the HTML Format header
char aHTMLFmtHdr[120];
- rtl_zeroMemory( aHTMLFmtHdr, sizeof( aHTMLFmtHdr ) );
+ memset( aHTMLFmtHdr, 0, sizeof( aHTMLFmtHdr ) );
// fill the buffer with dummy values to calc the
// exact length
@@ -318,7 +318,7 @@ Sequence< sal_Int8 > SAL_CALL TextHtmlToHTMLFormat( Sequence< sal_Int8 >& aTextH
nEndFrgmt = nEndFrgmt + lHTMLFmtHdr;
// fill the html header
- rtl_zeroMemory( aHTMLFmtHdr, sizeof( aHTMLFmtHdr ) );
+ memset( aHTMLFmtHdr, 0, sizeof( aHTMLFmtHdr ) );
wsprintf(
aHTMLFmtHdr,
@@ -327,7 +327,7 @@ Sequence< sal_Int8 > SAL_CALL TextHtmlToHTMLFormat( Sequence< sal_Int8 >& aTextH
// we add space for a trailing \0
aHTMLFmtSequence.realloc( lHTMLFmtHdr + aTextHtml.getLength( ) + 1 );
- rtl_zeroMemory( aHTMLFmtSequence.getArray( ), aHTMLFmtSequence.getLength( ) );
+ memset( aHTMLFmtSequence.getArray( ), 0, aHTMLFmtSequence.getLength( ) );
// copy the HTML Format header
memcpy(
diff --git a/editeng/AllLangResTarget_editeng.mk b/editeng/AllLangResTarget_editeng.mk
index c2a401081360..896415846e12 100644
--- a/editeng/AllLangResTarget_editeng.mk
+++ b/editeng/AllLangResTarget_editeng.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_AllLangResTarget_AllLangResTarget,editeng))
diff --git a/editeng/CppunitTest_editeng_borderline.mk b/editeng/CppunitTest_editeng_borderline.mk
index 106892a7f526..096bda99552b 100644
--- a/editeng/CppunitTest_editeng_borderline.mk
+++ b/editeng/CppunitTest_editeng_borderline.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_CppunitTest_CppunitTest,editeng_borderline))
diff --git a/editeng/CppunitTest_editeng_lookuptree.mk b/editeng/CppunitTest_editeng_lookuptree.mk
index 499b6ed35e30..1650db995682 100644
--- a/editeng/CppunitTest_editeng_lookuptree.mk
+++ b/editeng/CppunitTest_editeng_lookuptree.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# This file is part of the LibreOffice project.
#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This file incorporates work covered by the following license notice:
#
-# This file is part of OpenOffice.org.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_CppunitTest_CppunitTest,editeng_lookuptree))
diff --git a/editeng/Library_editeng.mk b/editeng/Library_editeng.mk
index 178d0168dd15..8fee71e73666 100644
--- a/editeng/Library_editeng.mk
+++ b/editeng/Library_editeng.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# This file is part of the LibreOffice project.
#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This file incorporates work covered by the following license notice:
#
-# This file is part of OpenOffice.org.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_Library_Library,editeng))
diff --git a/editeng/Makefile b/editeng/Makefile
index ccb1c85a04da..8b7c035af2b0 100644
--- a/editeng/Makefile
+++ b/editeng/Makefile
@@ -1,7 +1,12 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
include $(module_directory)/../solenv/gbuild/partial_build.mk
-
# vim: set noet sw=4 ts=4:
diff --git a/editeng/Module_editeng.mk b/editeng/Module_editeng.mk
index eff4df4ce916..d507c6ecc5d9 100644
--- a/editeng/Module_editeng.mk
+++ b/editeng/Module_editeng.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# This file is part of the LibreOffice project.
#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This file incorporates work covered by the following license notice:
#
-# This file is part of OpenOffice.org.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_Module_Module,editeng))
diff --git a/editeng/Package_inc.mk b/editeng/Package_inc.mk
index 653effb30333..5b107caec225 100644
--- a/editeng/Package_inc.mk
+++ b/editeng/Package_inc.mk
@@ -1,30 +1,21 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# This file is part of the LibreOffice project.
#
-# Copyright 2000, 2011 Oracle and/or its affiliates.
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This file incorporates work covered by the following license notice:
#
-# This file is part of OpenOffice.org.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
$(eval $(call gb_Package_Package,editeng_inc,$(SRCDIR)/editeng/inc))
$(eval $(call gb_Package_add_file,editeng_inc,inc/editeng/AccessibleComponentBase.hxx,editeng/AccessibleComponentBase.hxx))
diff --git a/editeng/inc/editeng/AccessibleContextBase.hxx b/editeng/inc/editeng/AccessibleContextBase.hxx
index b289463d0e75..b54a59c0c74b 100644
--- a/editeng/inc/editeng/AccessibleContextBase.hxx
+++ b/editeng/inc/editeng/AccessibleContextBase.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ACCESSIBILITY_ACCESSIBLE_CONTEXT_BASE_HXX
#define _SVX_ACCESSIBILITY_ACCESSIBLE_CONTEXT_BASE_HXX
diff --git a/editeng/inc/editeng/AccessibleEditableTextPara.hxx b/editeng/inc/editeng/AccessibleEditableTextPara.hxx
index e87fb1ac9e84..d44f9afdf60e 100644
--- a/editeng/inc/editeng/AccessibleEditableTextPara.hxx
+++ b/editeng/inc/editeng/AccessibleEditableTextPara.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ACCESSIBLE_EDITABLE_TEXT_PARA_HXX
#define _SVX_ACCESSIBLE_EDITABLE_TEXT_PARA_HXX
diff --git a/editeng/inc/editeng/AccessibleImageBullet.hxx b/editeng/inc/editeng/AccessibleImageBullet.hxx
index 50ee57e65251..1ceeda395f57 100644
--- a/editeng/inc/editeng/AccessibleImageBullet.hxx
+++ b/editeng/inc/editeng/AccessibleImageBullet.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ACCESSIBLE_IMAGE_BULLET_HXX
#define _SVX_ACCESSIBLE_IMAGE_BULLET_HXX
diff --git a/editeng/inc/editeng/AccessibleParaManager.hxx b/editeng/inc/editeng/AccessibleParaManager.hxx
index e1a5873ad083..90bc3d8a111d 100644
--- a/editeng/inc/editeng/AccessibleParaManager.hxx
+++ b/editeng/inc/editeng/AccessibleParaManager.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ACCESSIBLE_PARA_MANAGER_HXX
#define _SVX_ACCESSIBLE_PARA_MANAGER_HXX
diff --git a/editeng/inc/editeng/AccessibleStaticTextBase.hxx b/editeng/inc/editeng/AccessibleStaticTextBase.hxx
index c9faeff8cd22..e159af3713f1 100644
--- a/editeng/inc/editeng/AccessibleStaticTextBase.hxx
+++ b/editeng/inc/editeng/AccessibleStaticTextBase.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ACCESSILE_STATIC_TEXT_BASE_HXX_
#define _SVX_ACCESSILE_STATIC_TEXT_BASE_HXX_
diff --git a/editeng/inc/editeng/UnoForbiddenCharsTable.hxx b/editeng/inc/editeng/UnoForbiddenCharsTable.hxx
index fd63297ac953..9fea61b9084c 100644
--- a/editeng/inc/editeng/UnoForbiddenCharsTable.hxx
+++ b/editeng/inc/editeng/UnoForbiddenCharsTable.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOFORBIDDENCHARSTABLE_HXX_
#define _SVX_UNOFORBIDDENCHARSTABLE_HXX_
diff --git a/editeng/inc/editeng/acorrcfg.hxx b/editeng/inc/editeng/acorrcfg.hxx
index 646d8b3b11cc..0a49235410dd 100644
--- a/editeng/inc/editeng/acorrcfg.hxx
+++ b/editeng/inc/editeng/acorrcfg.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVXACCFG_HXX
#define _SVXACCFG_HXX
diff --git a/editeng/inc/editeng/adjitem.hxx b/editeng/inc/editeng/adjitem.hxx
index 6e899dcafa8d..b4c874238c0e 100644
--- a/editeng/inc/editeng/adjitem.hxx
+++ b/editeng/inc/editeng/adjitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ADJITEM_HXX
#define _SVX_ADJITEM_HXX
diff --git a/editeng/inc/editeng/akrnitem.hxx b/editeng/inc/editeng/akrnitem.hxx
index 4abdf82d0892..0447cf4fd3f8 100644
--- a/editeng/inc/editeng/akrnitem.hxx
+++ b/editeng/inc/editeng/akrnitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_AKRNITEM_HXX
#define _SVX_AKRNITEM_HXX
diff --git a/editeng/inc/editeng/blnkitem.hxx b/editeng/inc/editeng/blnkitem.hxx
index 45926427acb9..8573ace8d8e4 100644
--- a/editeng/inc/editeng/blnkitem.hxx
+++ b/editeng/inc/editeng/blnkitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_BLNKITEM_HXX
#define _SVX_BLNKITEM_HXX
diff --git a/editeng/inc/editeng/bolnitem.hxx b/editeng/inc/editeng/bolnitem.hxx
index 44d6c14558da..760b6a0cb61b 100644
--- a/editeng/inc/editeng/bolnitem.hxx
+++ b/editeng/inc/editeng/bolnitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_BOLNITEM_HXX
#define _SVX_BOLNITEM_HXX
diff --git a/editeng/inc/editeng/borderline.hxx b/editeng/inc/editeng/borderline.hxx
index 4bb4388243ea..067e216aaa9a 100644
--- a/editeng/inc/editeng/borderline.hxx
+++ b/editeng/inc/editeng/borderline.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef SVX_BORDERLINE_HXX
#define SVX_BORDERLINE_HXX
diff --git a/editeng/inc/editeng/boxitem.hxx b/editeng/inc/editeng/boxitem.hxx
index 1d9062f9cf6f..1056ec93e037 100644
--- a/editeng/inc/editeng/boxitem.hxx
+++ b/editeng/inc/editeng/boxitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_BOXITEM_HXX
#define _SVX_BOXITEM_HXX
diff --git a/editeng/inc/editeng/brkitem.hxx b/editeng/inc/editeng/brkitem.hxx
index 05dac1c5ed9e..42a423aa838d 100644
--- a/editeng/inc/editeng/brkitem.hxx
+++ b/editeng/inc/editeng/brkitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_BRKITEM_HXX
#define _SVX_BRKITEM_HXX
diff --git a/editeng/inc/editeng/brshitem.hxx b/editeng/inc/editeng/brshitem.hxx
index 44c7b03a319d..5772733e2c8d 100644
--- a/editeng/inc/editeng/brshitem.hxx
+++ b/editeng/inc/editeng/brshitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_BRSHITEM_HXX
#define _SVX_BRSHITEM_HXX
diff --git a/editeng/inc/editeng/bulitem.hxx b/editeng/inc/editeng/bulitem.hxx
index 178b16d8f3bd..c1af8a033623 100644
--- a/editeng/inc/editeng/bulitem.hxx
+++ b/editeng/inc/editeng/bulitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_BULITEM_HXX
#define _SVX_BULITEM_HXX
diff --git a/editeng/inc/editeng/charhiddenitem.hxx b/editeng/inc/editeng/charhiddenitem.hxx
index 5719780ef45e..ee4c16e99335 100644
--- a/editeng/inc/editeng/charhiddenitem.hxx
+++ b/editeng/inc/editeng/charhiddenitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_CHARHIDDENITEM_HXX
#define _SVX_CHARHIDDENITEM_HXX
diff --git a/editeng/inc/editeng/charreliefitem.hxx b/editeng/inc/editeng/charreliefitem.hxx
index 36b57105a1e3..a472688874e0 100644
--- a/editeng/inc/editeng/charreliefitem.hxx
+++ b/editeng/inc/editeng/charreliefitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_CHARRELIEFITEM_HXX
#define _SVX_CHARRELIEFITEM_HXX
diff --git a/editeng/inc/editeng/charrotateitem.hxx b/editeng/inc/editeng/charrotateitem.hxx
index b55cfccfe46d..135d964d604b 100644
--- a/editeng/inc/editeng/charrotateitem.hxx
+++ b/editeng/inc/editeng/charrotateitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_CHARROTATEITEM_HXX
#define _SVX_CHARROTATEITEM_HXX
diff --git a/editeng/inc/editeng/charscaleitem.hxx b/editeng/inc/editeng/charscaleitem.hxx
index 40304a8544f6..d8d364a61353 100644
--- a/editeng/inc/editeng/charscaleitem.hxx
+++ b/editeng/inc/editeng/charscaleitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_CHARSCALEITEM_HXX
#define _SVX_CHARSCALEITEM_HXX
diff --git a/editeng/inc/editeng/cmapitem.hxx b/editeng/inc/editeng/cmapitem.hxx
index 60740a6827b1..fc911a618d59 100644
--- a/editeng/inc/editeng/cmapitem.hxx
+++ b/editeng/inc/editeng/cmapitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_CMAPITEM_HXX
#define _SVX_CMAPITEM_HXX
diff --git a/editeng/inc/editeng/cntritem.hxx b/editeng/inc/editeng/cntritem.hxx
index 0e5dd7221ac6..98f05f6097c6 100644
--- a/editeng/inc/editeng/cntritem.hxx
+++ b/editeng/inc/editeng/cntritem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ITEM_HXX
#define _SVX_ITEM_HXX
diff --git a/editeng/inc/editeng/colritem.hxx b/editeng/inc/editeng/colritem.hxx
index 8b40263dfc7c..23efdccdc398 100644
--- a/editeng/inc/editeng/colritem.hxx
+++ b/editeng/inc/editeng/colritem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_COLRITEM_HXX
#define _SVX_COLRITEM_HXX
diff --git a/editeng/inc/editeng/crsditem.hxx b/editeng/inc/editeng/crsditem.hxx
index ba613d63560b..4aed4708ad64 100644
--- a/editeng/inc/editeng/crsditem.hxx
+++ b/editeng/inc/editeng/crsditem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_CRSDITEM_HXX
#define _SVX_CRSDITEM_HXX
diff --git a/editeng/inc/editeng/cscoitem.hxx b/editeng/inc/editeng/cscoitem.hxx
index 019edad8968f..64a88546a668 100644
--- a/editeng/inc/editeng/cscoitem.hxx
+++ b/editeng/inc/editeng/cscoitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_CSCOITEM_HXX
#define _SVX_CSCOITEM_HXX
diff --git a/editeng/inc/editeng/editdata.hxx b/editeng/inc/editeng/editdata.hxx
index bcaa59ee2a90..ca2c1b74b497 100644
--- a/editeng/inc/editeng/editdata.hxx
+++ b/editeng/inc/editeng/editdata.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
// MyEDITDATA, wegen exportiertem EditData
#ifndef _MyEDITDATA_HXX
diff --git a/editeng/inc/editeng/editeng.hxx b/editeng/inc/editeng/editeng.hxx
index f77244d17e76..0eb4b128c01b 100644
--- a/editeng/inc/editeng/editeng.hxx
+++ b/editeng/inc/editeng/editeng.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
// MyEDITENG, due to exported EditEng
#ifndef _MyEDITENG_HXX
#define _MyEDITENG_HXX
diff --git a/editeng/inc/editeng/editobj.hxx b/editeng/inc/editeng/editobj.hxx
index d9a87e0442f4..2730b46b166f 100644
--- a/editeng/inc/editeng/editobj.hxx
+++ b/editeng/inc/editeng/editobj.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITOBJ_HXX
#define _EDITOBJ_HXX
diff --git a/editeng/inc/editeng/editstat.hxx b/editeng/inc/editeng/editstat.hxx
index 1b1acf09db19..ac45a7fe5d0f 100644
--- a/editeng/inc/editeng/editstat.hxx
+++ b/editeng/inc/editeng/editstat.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITSTAT_HXX
#define _EDITSTAT_HXX
diff --git a/editeng/inc/editeng/editund2.hxx b/editeng/inc/editeng/editund2.hxx
index 3ce3cc2f07ff..b52d19930270 100644
--- a/editeng/inc/editeng/editund2.hxx
+++ b/editeng/inc/editeng/editund2.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITUND2_HXX
#define _EDITUND2_HXX
diff --git a/editeng/inc/editeng/editview.hxx b/editeng/inc/editeng/editview.hxx
index 92b6d3006d26..aea70fd87fba 100644
--- a/editeng/inc/editeng/editview.hxx
+++ b/editeng/inc/editeng/editview.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
// MyEDITVIEW, due to exported EditView
#ifndef _MyEDITVIEW_HXX
#define _MyEDITVIEW_HXX
diff --git a/editeng/inc/editeng/eerdll.hxx b/editeng/inc/editeng/eerdll.hxx
index d4a0eb659e6d..2d6ba34976fa 100644
--- a/editeng/inc/editeng/eerdll.hxx
+++ b/editeng/inc/editeng/eerdll.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EERDLL_HXX
#define _EERDLL_HXX
diff --git a/editeng/inc/editeng/emphitem.hxx b/editeng/inc/editeng/emphitem.hxx
index 3100b6236c66..2cecc34a481f 100644
--- a/editeng/inc/editeng/emphitem.hxx
+++ b/editeng/inc/editeng/emphitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_EMPHITEM_HXX
#define _SVX_EMPHITEM_HXX
diff --git a/editeng/inc/editeng/escpitem.hxx b/editeng/inc/editeng/escpitem.hxx
index a19595522afc..ac1b04888688 100644
--- a/editeng/inc/editeng/escpitem.hxx
+++ b/editeng/inc/editeng/escpitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ESCPITEM_HXX
#define _SVX_ESCPITEM_HXX
diff --git a/editeng/inc/editeng/fhgtitem.hxx b/editeng/inc/editeng/fhgtitem.hxx
index fa11bd8d17ee..5c5c2af762df 100644
--- a/editeng/inc/editeng/fhgtitem.hxx
+++ b/editeng/inc/editeng/fhgtitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_FHGTITEM_HXX
#define _SVX_FHGTITEM_HXX
diff --git a/editeng/inc/editeng/flditem.hxx b/editeng/inc/editeng/flditem.hxx
index 4414b6a585c3..792057b0d114 100644
--- a/editeng/inc/editeng/flditem.hxx
+++ b/editeng/inc/editeng/flditem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_FLDITEM_HXX
#define _SVX_FLDITEM_HXX
diff --git a/editeng/inc/editeng/flstitem.hxx b/editeng/inc/editeng/flstitem.hxx
index f25a8d2688a6..053fdf9f8852 100644
--- a/editeng/inc/editeng/flstitem.hxx
+++ b/editeng/inc/editeng/flstitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_FLSTITEM_HXX
#define _SVX_FLSTITEM_HXX
diff --git a/editeng/inc/editeng/fontitem.hxx b/editeng/inc/editeng/fontitem.hxx
index 24fdbf18fa60..9c33b634dfd3 100644
--- a/editeng/inc/editeng/fontitem.hxx
+++ b/editeng/inc/editeng/fontitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_FONTITEM_HXX
#define _SVX_FONTITEM_HXX
diff --git a/editeng/inc/editeng/forbiddencharacterstable.hxx b/editeng/inc/editeng/forbiddencharacterstable.hxx
index 55db6db077c9..a66b2f71f8c0 100644
--- a/editeng/inc/editeng/forbiddencharacterstable.hxx
+++ b/editeng/inc/editeng/forbiddencharacterstable.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _FORBIDDENCHARACTERSTABLE_HXX
#define _FORBIDDENCHARACTERSTABLE_HXX
diff --git a/editeng/inc/editeng/frmdiritem.hxx b/editeng/inc/editeng/frmdiritem.hxx
index d88875e15eba..4f62b7ab92ce 100644
--- a/editeng/inc/editeng/frmdiritem.hxx
+++ b/editeng/inc/editeng/frmdiritem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_FRMDIRITEM_HXX
#define _SVX_FRMDIRITEM_HXX
diff --git a/editeng/inc/editeng/fwdtitem.hxx b/editeng/inc/editeng/fwdtitem.hxx
index fcd4a6c12c78..981570c263d8 100644
--- a/editeng/inc/editeng/fwdtitem.hxx
+++ b/editeng/inc/editeng/fwdtitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_FWDTITEM_HXX
#define _SVX_FWDTITEM_HXX
diff --git a/editeng/inc/editeng/hangulhanja.hxx b/editeng/inc/editeng/hangulhanja.hxx
index 0b10bd52ae16..614ad6c326d6 100644
--- a/editeng/inc/editeng/hangulhanja.hxx
+++ b/editeng/inc/editeng/hangulhanja.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef SVX_HANGUL_HANJA_CONVERSION_HXX
#define SVX_HANGUL_HANJA_CONVERSION_HXX
@@ -167,7 +158,7 @@ namespace editeng
virtual void GetNextPortion(
::rtl::OUString& /* [out] */ _rNextPortion,
LanguageType& /* [out] */ _rLangOfPortion,
- sal_Bool /* [in] */ _bAllowImplicitChangesForNotConvertibleText );
+ sal_Bool /* [in] */ _bAllowImplicitChangesForNotConvertibleText ) = 0;
/** announces a new "current unit"
@@ -197,7 +188,7 @@ namespace editeng
@see GetNextPortion
*/
- virtual void HandleNewUnit( const sal_Int32 _nUnitStart, const sal_Int32 _nUnitEnd );
+ virtual void HandleNewUnit( const sal_Int32 _nUnitStart, const sal_Int32 _nUnitEnd ) = 0;
/** replaces a text unit within a text portion with a new text
@@ -263,7 +254,7 @@ namespace editeng
const ::com::sun::star::uno::Sequence< sal_Int32 > &_rOffsets,
ReplacementAction _eAction,
LanguageType *pNewUnitLanguage
- );
+ ) = 0;
/** specifies if rubies are supported by the document implementing
this class.
@@ -271,7 +262,7 @@ namespace editeng
@return
<TRUE/> if rubies are supported.
*/
- virtual sal_Bool HasRubySupport() const;
+ virtual sal_Bool HasRubySupport() const = 0;
};
sal_Bool HangulHanjaConversion::IsSimplified( LanguageType nLang )
diff --git a/editeng/inc/editeng/hyznitem.hxx b/editeng/inc/editeng/hyznitem.hxx
index d04341395962..8d9a6b0ba4e9 100644
--- a/editeng/inc/editeng/hyznitem.hxx
+++ b/editeng/inc/editeng/hyznitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_HYZNITEM_HXX
#define _SVX_HYZNITEM_HXX
diff --git a/editeng/inc/editeng/itemtype.hxx b/editeng/inc/editeng/itemtype.hxx
index a48f762cd226..66e052bcf719 100644
--- a/editeng/inc/editeng/itemtype.hxx
+++ b/editeng/inc/editeng/itemtype.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ITEMTYPE_HXX
#define _SVX_ITEMTYPE_HXX
diff --git a/editeng/inc/editeng/justifyitem.hxx b/editeng/inc/editeng/justifyitem.hxx
index c577845cc243..d57356ee8e96 100644
--- a/editeng/inc/editeng/justifyitem.hxx
+++ b/editeng/inc/editeng/justifyitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef __EDITENG_JUSTIFYITEM_HXX__
#define __EDITENG_JUSTIFYITEM_HXX__
diff --git a/editeng/inc/editeng/keepitem.hxx b/editeng/inc/editeng/keepitem.hxx
index acaa5de2a8d8..c950e5b865bb 100644
--- a/editeng/inc/editeng/keepitem.hxx
+++ b/editeng/inc/editeng/keepitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_KEEPITEM_HXX
#define _SVX_KEEPITEM_HXX
diff --git a/editeng/inc/editeng/kernitem.hxx b/editeng/inc/editeng/kernitem.hxx
index b10e1c5c28fb..7305b465d401 100644
--- a/editeng/inc/editeng/kernitem.hxx
+++ b/editeng/inc/editeng/kernitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_KERNITEM_HXX
#define _SVX_KERNITEM_HXX
diff --git a/editeng/inc/editeng/langitem.hxx b/editeng/inc/editeng/langitem.hxx
index 885877a767d1..d77dfbab235f 100644
--- a/editeng/inc/editeng/langitem.hxx
+++ b/editeng/inc/editeng/langitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_LANGITEM_HXX
#define _SVX_LANGITEM_HXX
diff --git a/editeng/inc/editeng/lcolitem.hxx b/editeng/inc/editeng/lcolitem.hxx
index 6af0f3bc3c35..a6d309b8a90f 100644
--- a/editeng/inc/editeng/lcolitem.hxx
+++ b/editeng/inc/editeng/lcolitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_LCOLITEM_HXX
#define _SVX_LCOLITEM_HXX
diff --git a/editeng/inc/editeng/lrspitem.hxx b/editeng/inc/editeng/lrspitem.hxx
index d6bae8000e96..ef9968c74a7e 100644
--- a/editeng/inc/editeng/lrspitem.hxx
+++ b/editeng/inc/editeng/lrspitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_LRSPITEM_HXX
#define _SVX_LRSPITEM_HXX
diff --git a/editeng/inc/editeng/lspcitem.hxx b/editeng/inc/editeng/lspcitem.hxx
index 22d64cb532fa..6d30bb2d554e 100644
--- a/editeng/inc/editeng/lspcitem.hxx
+++ b/editeng/inc/editeng/lspcitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_LSPCITEM_HXX
#define _SVX_LSPCITEM_HXX
diff --git a/editeng/inc/editeng/measfld.hxx b/editeng/inc/editeng/measfld.hxx
index 96060e1c56af..040560397dd0 100644
--- a/editeng/inc/editeng/measfld.hxx
+++ b/editeng/inc/editeng/measfld.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDIT_MEASFIELD_HXX
#define _EDIT_MEASFIELD_HXX
diff --git a/editeng/inc/editeng/nhypitem.hxx b/editeng/inc/editeng/nhypitem.hxx
index 8b20d8989888..f26c1a076188 100644
--- a/editeng/inc/editeng/nhypitem.hxx
+++ b/editeng/inc/editeng/nhypitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_NHYPITEM_HXX
#define _SVX_NHYPITEM_HXX
diff --git a/editeng/inc/editeng/nlbkitem.hxx b/editeng/inc/editeng/nlbkitem.hxx
index e46eaefb7437..9a0fa3241ac0 100644
--- a/editeng/inc/editeng/nlbkitem.hxx
+++ b/editeng/inc/editeng/nlbkitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_NLBKITEM_HXX
#define _SVX_NLBKITEM_HXX
diff --git a/editeng/inc/editeng/numitem.hxx b/editeng/inc/editeng/numitem.hxx
index 60dd5ab3fa79..5be3d9e5226a 100644
--- a/editeng/inc/editeng/numitem.hxx
+++ b/editeng/inc/editeng/numitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_NUMITEM_HXX
#define _SVX_NUMITEM_HXX
diff --git a/editeng/inc/editeng/opaqitem.hxx b/editeng/inc/editeng/opaqitem.hxx
index c0c7b082cb96..1084933b6428 100644
--- a/editeng/inc/editeng/opaqitem.hxx
+++ b/editeng/inc/editeng/opaqitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_OPAQITEM_HXX
#define _SVX_OPAQITEM_HXX
diff --git a/editeng/inc/editeng/orphitem.hxx b/editeng/inc/editeng/orphitem.hxx
index 59feac103bc3..686823a49e70 100644
--- a/editeng/inc/editeng/orphitem.hxx
+++ b/editeng/inc/editeng/orphitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ORPHITEM_HXX
#define _SVX_ORPHITEM_HXX
diff --git a/editeng/inc/editeng/outliner.hxx b/editeng/inc/editeng/outliner.hxx
index 9b61a811f296..fcc90bb5007b 100644
--- a/editeng/inc/editeng/outliner.hxx
+++ b/editeng/inc/editeng/outliner.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _OUTLINER_HXX
#define _OUTLINER_HXX
diff --git a/editeng/inc/editeng/paravertalignitem.hxx b/editeng/inc/editeng/paravertalignitem.hxx
index ce2b3c6d7a9e..04803674b68a 100644
--- a/editeng/inc/editeng/paravertalignitem.hxx
+++ b/editeng/inc/editeng/paravertalignitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_PARAVERTALIGNITEM_HXX
#define _SVX_PARAVERTALIGNITEM_HXX
diff --git a/editeng/inc/editeng/pbinitem.hxx b/editeng/inc/editeng/pbinitem.hxx
index 6377ab0fb24e..b7c4109206af 100644
--- a/editeng/inc/editeng/pbinitem.hxx
+++ b/editeng/inc/editeng/pbinitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_PBINITEM_HXX
#define _SVX_PBINITEM_HXX
diff --git a/editeng/inc/editeng/pgrditem.hxx b/editeng/inc/editeng/pgrditem.hxx
index fcfc1ef70d04..4f40b8be213c 100644
--- a/editeng/inc/editeng/pgrditem.hxx
+++ b/editeng/inc/editeng/pgrditem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_PGRDITEM_HXX
#define _SVX_PGRDITEM_HXX
diff --git a/editeng/inc/editeng/pmdlitem.hxx b/editeng/inc/editeng/pmdlitem.hxx
index 9dcce5c6b599..4b16da0d2ded 100644
--- a/editeng/inc/editeng/pmdlitem.hxx
+++ b/editeng/inc/editeng/pmdlitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_PMDLITEM_HXX
#define _SVX_PMDLITEM_HXX
diff --git a/editeng/inc/editeng/postitem.hxx b/editeng/inc/editeng/postitem.hxx
index 350b09928f0a..be5cd9f344ec 100644
--- a/editeng/inc/editeng/postitem.hxx
+++ b/editeng/inc/editeng/postitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_POSTITEM_HXX
#define _SVX_POSTITEM_HXX
diff --git a/editeng/inc/editeng/prntitem.hxx b/editeng/inc/editeng/prntitem.hxx
index 3a47eecc296e..48deb239807e 100644
--- a/editeng/inc/editeng/prntitem.hxx
+++ b/editeng/inc/editeng/prntitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_PRNTITEM_HXX
#define _SVX_PRNTITEM_HXX
diff --git a/editeng/inc/editeng/protitem.hxx b/editeng/inc/editeng/protitem.hxx
index 780f04ac563a..93d25e8c1007 100644
--- a/editeng/inc/editeng/protitem.hxx
+++ b/editeng/inc/editeng/protitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_PROTITEM_HXX
#define _SVX_PROTITEM_HXX
diff --git a/editeng/inc/editeng/prszitem.hxx b/editeng/inc/editeng/prszitem.hxx
index bfcc38be2dde..76a6ed5222cb 100644
--- a/editeng/inc/editeng/prszitem.hxx
+++ b/editeng/inc/editeng/prszitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_PRSZITEM_HXX
#define _SVX_PRSZITEM_HXX
diff --git a/editeng/inc/editeng/scriptspaceitem.hxx b/editeng/inc/editeng/scriptspaceitem.hxx
index 9359355d17c7..581d9e97c6f0 100644
--- a/editeng/inc/editeng/scriptspaceitem.hxx
+++ b/editeng/inc/editeng/scriptspaceitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SRIPTSPACEITEM_HXX
#define _SVX_SRIPTSPACEITEM_HXX
diff --git a/editeng/inc/editeng/scripttypeitem.hxx b/editeng/inc/editeng/scripttypeitem.hxx
index e90899fcaa5c..976e4651ac9f 100644
--- a/editeng/inc/editeng/scripttypeitem.hxx
+++ b/editeng/inc/editeng/scripttypeitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SCRIPTTYPEITEM_HXX
#define _SVX_SCRIPTTYPEITEM_HXX
diff --git a/editeng/inc/editeng/shaditem.hxx b/editeng/inc/editeng/shaditem.hxx
index 8f3c7011f680..16ff4bb94f12 100644
--- a/editeng/inc/editeng/shaditem.hxx
+++ b/editeng/inc/editeng/shaditem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SHADITEM_HXX
#define _SVX_SHADITEM_HXX
diff --git a/editeng/inc/editeng/shdditem.hxx b/editeng/inc/editeng/shdditem.hxx
index d504fdca13e3..c69d8fffaf0f 100644
--- a/editeng/inc/editeng/shdditem.hxx
+++ b/editeng/inc/editeng/shdditem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SHDDITEM_HXX
#define _SVX_SHDDITEM_HXX
diff --git a/editeng/inc/editeng/sizeitem.hxx b/editeng/inc/editeng/sizeitem.hxx
index 679ae50f5573..1f692c257081 100644
--- a/editeng/inc/editeng/sizeitem.hxx
+++ b/editeng/inc/editeng/sizeitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SIZEITEM_HXX
#define _SVX_SIZEITEM_HXX
diff --git a/editeng/inc/editeng/spltitem.hxx b/editeng/inc/editeng/spltitem.hxx
index 5f03ef576bf0..c203ad23f883 100644
--- a/editeng/inc/editeng/spltitem.hxx
+++ b/editeng/inc/editeng/spltitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SPLTITEM_HXX
#define _SVX_SPLTITEM_HXX
diff --git a/editeng/inc/editeng/splwrap.hxx b/editeng/inc/editeng/splwrap.hxx
index 2a6d5bdf0306..9126cae8e6b1 100644
--- a/editeng/inc/editeng/splwrap.hxx
+++ b/editeng/inc/editeng/splwrap.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SPLWRAP_HXX
#define _SVX_SPLWRAP_HXX
diff --git a/editeng/inc/editeng/svxacorr.hxx b/editeng/inc/editeng/svxacorr.hxx
index cb5ec5d881bd..d8920c130201 100644
--- a/editeng/inc/editeng/svxacorr.hxx
+++ b/editeng/inc/editeng/svxacorr.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EE_SVXACORR_HXX
#define EE_SVXACORR_HXX
@@ -342,9 +333,6 @@ public:
LanguageType eLang = LANGUAGE_SYSTEM )
{ return _GetLanguageList( eLang ).PutText(rShort, rShell ); }
- // - Delete a entry
- sal_Bool DeleteText( const String& rShort, LanguageType eLang = LANGUAGE_SYSTEM);
-
sal_Bool MakeCombinedChanges( std::vector<SvxAutocorrWord>& aNewEntries,
std::vector<SvxAutocorrWord>& aDeleteEntries,
LanguageType eLang = LANGUAGE_SYSTEM );
diff --git a/editeng/inc/editeng/svxenum.hxx b/editeng/inc/editeng/svxenum.hxx
index 2d07e9fe7a77..ff751b0a82f9 100644
--- a/editeng/inc/editeng/svxenum.hxx
+++ b/editeng/inc/editeng/svxenum.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SVXENUM_HXX
#define _SVX_SVXENUM_HXX
diff --git a/editeng/inc/editeng/svxfont.hxx b/editeng/inc/editeng/svxfont.hxx
index 96729e9488d0..c4a5c2dd132b 100644
--- a/editeng/inc/editeng/svxfont.hxx
+++ b/editeng/inc/editeng/svxfont.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_SVXFONT_HXX
#define _SVX_SVXFONT_HXX
@@ -84,8 +75,6 @@ public:
// Consider Upper case, Lower case letters etc.
OUString CalcCaseMap(const OUString &rTxt) const;
-// The following section is not needed by anyone, so it can be excluded.
-#ifndef REDUCEDSVXFONT
// Handle upper case letters
void DoOnCapitals( SvxDoCapitals &rDo,
const sal_uInt16 nPartLen = USHRT_MAX ) const;
@@ -116,7 +105,6 @@ public:
const Point &rPos, const String &rTxt,
const sal_uInt16 nIdx = 0, const sal_uInt16 nLen = STRING_LEN ) const;
-#endif // !REDUCEDSVXFONT
static void DrawArrow( OutputDevice &rOut, const Rectangle& rRect,
const Size& rSize, const Color& rCol, sal_Bool bLeft );
SvxFont& operator=( const SvxFont& rFont );
diff --git a/editeng/inc/editeng/svxrtf.hxx b/editeng/inc/editeng/svxrtf.hxx
index 926846fb4d86..59336d46fb0f 100644
--- a/editeng/inc/editeng/svxrtf.hxx
+++ b/editeng/inc/editeng/svxrtf.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVXRTF_HXX
#define _SVXRTF_HXX
@@ -245,16 +236,16 @@ class EDITENG_DLLPUBLIC SvxRTFParser : public SvRTFParser
long nVersionNo;
int nDfltFont;
- sal_Bool bNewDoc : 1; // FALSE - Reading in an existing
- sal_Bool bNewGroup : 1; // TRUE - there was an opening parenthesis
- sal_Bool bIsSetDfltTab : 1; // TRUE - DefTab was loaded
- sal_Bool bChkStyleAttr : 1; // TRUE - StyleSheets are evaluated
- sal_Bool bCalcValue : 1; // TRUE - Twip values adapt to App
- sal_Bool bPardTokenRead : 1; // TRUE - Token \pard was detected
- sal_Bool bReadDocInfo : 1; // TRUE - DocInfo to read
- sal_Bool bIsLeftToRightDef : 1; // TRUE - in LeftToRight char run def.
- // FALSE - in RightToLeft char run def.
- sal_Bool bIsInReadStyleTab : 1; // TRUE - in ReadStyleTable
+ sal_Bool bNewDoc : 1; // sal_False - Reading in an existing
+ sal_Bool bNewGroup : 1; // sal_True - there was an opening parenthesis
+ sal_Bool bIsSetDfltTab : 1; // sal_True - DefTab was loaded
+ sal_Bool bChkStyleAttr : 1; // sal_True - StyleSheets are evaluated
+ sal_Bool bCalcValue : 1; // sal_True - Twip values adapt to App
+ sal_Bool bPardTokenRead : 1; // sal_True - Token \pard was detected
+ sal_Bool bReadDocInfo : 1; // sal_True - DocInfo to read
+ sal_Bool bIsLeftToRightDef : 1; // sal_True - in LeftToRight char run def.
+ // sal_False - in RightToLeft char run def.
+ sal_Bool bIsInReadStyleTab : 1; // sal_True - in ReadStyleTable
void ClearColorTbl();
void ClearFontTbl();
@@ -370,7 +361,7 @@ protected:
// Read the graphics data and make up for the graphics and the picture
// meta data.
- // Return - TRUE: the graphic is valid
+ // Return - sal_True: the graphic is valid
sal_Bool ReadBmpData( Graphic& rGrf, SvxRTFPictureType& rPicType );
// Change the ASCII-HexCodes into binary characters. If invalid data is
// found (strings not 0-9 | a-f | A-F, then USHRT_MAX is returned,
diff --git a/editeng/inc/editeng/tstpitem.hxx b/editeng/inc/editeng/tstpitem.hxx
index aeed3d488d2d..82c01afe2c6d 100644
--- a/editeng/inc/editeng/tstpitem.hxx
+++ b/editeng/inc/editeng/tstpitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_TSPTITEM_HXX
#define _SVX_TSPTITEM_HXX
diff --git a/editeng/inc/editeng/twolinesitem.hxx b/editeng/inc/editeng/twolinesitem.hxx
index 100ac6fe4a42..0d5babfee83b 100644
--- a/editeng/inc/editeng/twolinesitem.hxx
+++ b/editeng/inc/editeng/twolinesitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_TWOLINESITEM_HXX
#define _SVX_TWOLINESITEM_HXX
diff --git a/editeng/inc/editeng/txtrange.hxx b/editeng/inc/editeng/txtrange.hxx
index 54e80ff3997f..700db5760ad1 100644
--- a/editeng/inc/editeng/txtrange.hxx
+++ b/editeng/inc/editeng/txtrange.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _MyTXTRANGE_HXX
#define _MyTXTRANGE_HXX
diff --git a/editeng/inc/editeng/udlnitem.hxx b/editeng/inc/editeng/udlnitem.hxx
index 65b599c94125..985da198faf0 100644
--- a/editeng/inc/editeng/udlnitem.hxx
+++ b/editeng/inc/editeng/udlnitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UDLNITEM_HXX
#define _SVX_UDLNITEM_HXX
diff --git a/editeng/inc/editeng/ulspitem.hxx b/editeng/inc/editeng/ulspitem.hxx
index 43eb2d9a2576..bb00f5af8d88 100644
--- a/editeng/inc/editeng/ulspitem.hxx
+++ b/editeng/inc/editeng/ulspitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ULSPITEM_HXX
#define _SVX_ULSPITEM_HXX
diff --git a/editeng/inc/editeng/unoedhlp.hxx b/editeng/inc/editeng/unoedhlp.hxx
index 5848338ef0ba..25cf36f17356 100644
--- a/editeng/inc/editeng/unoedhlp.hxx
+++ b/editeng/inc/editeng/unoedhlp.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOEDHLP_HXX
#define _SVX_UNOEDHLP_HXX
diff --git a/editeng/inc/editeng/unoedprx.hxx b/editeng/inc/editeng/unoedprx.hxx
index 7fa85deddbab..83ed5090c5fd 100644
--- a/editeng/inc/editeng/unoedprx.hxx
+++ b/editeng/inc/editeng/unoedprx.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOEDPRX_HXX
#define _SVX_UNOEDPRX_HXX
diff --git a/editeng/inc/editeng/unoedsrc.hxx b/editeng/inc/editeng/unoedsrc.hxx
index bd699e194ad3..bb5044cc3e70 100644
--- a/editeng/inc/editeng/unoedsrc.hxx
+++ b/editeng/inc/editeng/unoedsrc.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOEDSRC_HXX
#define _SVX_UNOEDSRC_HXX
diff --git a/editeng/inc/editeng/unofdesc.hxx b/editeng/inc/editeng/unofdesc.hxx
index fb98d7f24844..711affaf2c1e 100644
--- a/editeng/inc/editeng/unofdesc.hxx
+++ b/editeng/inc/editeng/unofdesc.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef SVX_UNOFDESC_HXX
#define SVX_UNOFDESC_HXX
diff --git a/editeng/inc/editeng/unofield.hxx b/editeng/inc/editeng/unofield.hxx
index bbd2a1e02eb1..f4d4517bde31 100644
--- a/editeng/inc/editeng/unofield.hxx
+++ b/editeng/inc/editeng/unofield.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOFIELD_HXX
#define _SVX_UNOFIELD_HXX
diff --git a/editeng/inc/editeng/unofored.hxx b/editeng/inc/editeng/unofored.hxx
index 964fe6557090..5c88119f3a8f 100644
--- a/editeng/inc/editeng/unofored.hxx
+++ b/editeng/inc/editeng/unofored.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOFORED_HXX
#define _SVX_UNOFORED_HXX
diff --git a/editeng/inc/editeng/unoforou.hxx b/editeng/inc/editeng/unoforou.hxx
index d1c5325c92a3..68ee89160944 100644
--- a/editeng/inc/editeng/unoforou.hxx
+++ b/editeng/inc/editeng/unoforou.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOFOROU_HXX
#define _SVX_UNOFOROU_HXX
diff --git a/editeng/inc/editeng/unoipset.hxx b/editeng/inc/editeng/unoipset.hxx
index 685d0aa39810..f36027f00d4b 100644
--- a/editeng/inc/editeng/unoipset.hxx
+++ b/editeng/inc/editeng/unoipset.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOIPSET_HXX_
#define _SVX_UNOIPSET_HXX_
diff --git a/editeng/inc/editeng/unolingu.hxx b/editeng/inc/editeng/unolingu.hxx
index d35737a24178..658d0f021a3e 100644
--- a/editeng/inc/editeng/unolingu.hxx
+++ b/editeng/inc/editeng/unolingu.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _UNO_LINGU_HXX
#define _UNO_LINGU_HXX
@@ -33,7 +24,7 @@
#include <tools/string.hxx>
#include <com/sun/star/util/Language.hpp>
#include <com/sun/star/lang/Locale.hpp>
-#include <com/sun/star/linguistic2/XLinguServiceManager.hpp>
+#include <com/sun/star/linguistic2/XLinguServiceManager2.hpp>
#include <com/sun/star/linguistic2/XSpellChecker1.hpp>
#include <com/sun/star/linguistic2/XHyphenator.hpp>
#include <com/sun/star/linguistic2/XThesaurus.hpp>
@@ -52,7 +43,7 @@ class EDITENG_DLLPUBLIC LinguMgr
friend class LinguMgrExitLstnr;
static ::com::sun::star::uno::Reference<
- ::com::sun::star::linguistic2::XLinguServiceManager > xLngSvcMgr;
+ ::com::sun::star::linguistic2::XLinguServiceManager2 > xLngSvcMgr;
static ::com::sun::star::uno::Reference<
::com::sun::star::linguistic2::XSpellChecker1 > xSpell;
static ::com::sun::star::uno::Reference<
@@ -107,7 +98,7 @@ public:
::com::sun::star::beans::XPropertySet > GetLinguPropertySet();
static ::com::sun::star::uno::Reference<
- ::com::sun::star::linguistic2::XLinguServiceManager > GetLngSvcMgr();
+ ::com::sun::star::linguistic2::XLinguServiceManager2 > GetLngSvcMgr();
static ::com::sun::star::uno::Reference<
::com::sun::star::linguistic2::XDictionary > GetStandardDic();
diff --git a/editeng/inc/editeng/unonrule.hxx b/editeng/inc/editeng/unonrule.hxx
index 5a60957698bd..bed8874bc550 100644
--- a/editeng/inc/editeng/unonrule.hxx
+++ b/editeng/inc/editeng/unonrule.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNONRULE_HXX
#define _SVX_UNONRULE_HXX
diff --git a/editeng/inc/editeng/unoprnms.hxx b/editeng/inc/editeng/unoprnms.hxx
index 0cb2c09cb9c2..38ba3bdb4961 100644
--- a/editeng/inc/editeng/unoprnms.hxx
+++ b/editeng/inc/editeng/unoprnms.hxx
@@ -1,30 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
#ifndef _SVX_UNOPRNMS_HXX
#define _SVX_UNOPRNMS_HXX
@@ -97,6 +89,7 @@
#define UNO_NAME_LINESTARTCENTER "LineStartCenter"
#define UNO_NAME_LINEENDCENTER "LineEndCenter"
#define UNO_NAME_LINETRANSPARENCE "LineTransparence"
+#define UNO_NAME_LINECAP "LineCap"
#define UNO_NAME_SHADOW "Shadow"
#define UNO_NAME_SHADOWCOLOR "ShadowColor"
@@ -181,6 +174,7 @@
#define UNO_NAME_GRAPHOBJ_FILLBITMAP "GraphicObjectFillBitmap"
#define UNO_NAME_GRAPHOBJ_GRAFURL "GraphicURL"
+#define UNO_NAME_GRAPHOBJ_REPLACEMENTGRAFURL "ReplacementGraphicURL"
#define UNO_NAME_GRAPHOBJ_GRAFSTREAMURL "GraphicStreamURL"
#define UNO_NAME_GRAPHOBJ_URLPREFIX "vnd.sun.star.GraphicObject:"
#define UNO_NAME_GRAPHOBJ_URLPKGPREFIX "vnd.sun.star.Package:"
diff --git a/editeng/inc/editeng/unoviwou.hxx b/editeng/inc/editeng/unoviwou.hxx
index 61a4094bd582..24031f93c847 100644
--- a/editeng/inc/editeng/unoviwou.hxx
+++ b/editeng/inc/editeng/unoviwou.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_UNOVIWOU_HXX
#define _SVX_UNOVIWOU_HXX
diff --git a/editeng/inc/editeng/wghtitem.hxx b/editeng/inc/editeng/wghtitem.hxx
index d7e481348e9e..4168d0de01f8 100644
--- a/editeng/inc/editeng/wghtitem.hxx
+++ b/editeng/inc/editeng/wghtitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_WGHTITEM_HXX
#define _SVX_WGHTITEM_HXX
diff --git a/editeng/inc/editeng/widwitem.hxx b/editeng/inc/editeng/widwitem.hxx
index 822559a681c9..3bf165a45c87 100644
--- a/editeng/inc/editeng/widwitem.hxx
+++ b/editeng/inc/editeng/widwitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_WIDWITEM_HXX
#define _SVX_WIDWITEM_HXX
diff --git a/editeng/inc/editeng/writingmodeitem.hxx b/editeng/inc/editeng/writingmodeitem.hxx
index f92052b6b345..9474a16acf17 100644
--- a/editeng/inc/editeng/writingmodeitem.hxx
+++ b/editeng/inc/editeng/writingmodeitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_WRITINGMODEITEM_HXX
#define _SVX_WRITINGMODEITEM_HXX
diff --git a/editeng/inc/editeng/wrlmitem.hxx b/editeng/inc/editeng/wrlmitem.hxx
index 80925627cfbf..b2ddc8bf9c0e 100644
--- a/editeng/inc/editeng/wrlmitem.hxx
+++ b/editeng/inc/editeng/wrlmitem.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_WRLMITEM_HXX
#define _SVX_WRLMITEM_HXX
diff --git a/editeng/inc/editeng/xmlcnitm.hxx b/editeng/inc/editeng/xmlcnitm.hxx
index 805f6de1ac47..0ca640289125 100644
--- a/editeng/inc/editeng/xmlcnitm.hxx
+++ b/editeng/inc/editeng/xmlcnitm.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_XMLCNITM_HXX
#define _SVX_XMLCNITM_HXX
diff --git a/editeng/source/accessibility/AccessibleComponentBase.cxx b/editeng/source/accessibility/AccessibleComponentBase.cxx
index 37ba93f42559..79ef598a3ba9 100644
--- a/editeng/source/accessibility/AccessibleComponentBase.cxx
+++ b/editeng/source/accessibility/AccessibleComponentBase.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/AccessibleComponentBase.hxx>
diff --git a/editeng/source/accessibility/AccessibleContextBase.cxx b/editeng/source/accessibility/AccessibleContextBase.cxx
index 6164789d231f..6e2e3f32d813 100644
--- a/editeng/source/accessibility/AccessibleContextBase.cxx
+++ b/editeng/source/accessibility/AccessibleContextBase.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/AccessibleContextBase.hxx>
diff --git a/editeng/source/accessibility/AccessibleEditableTextPara.cxx b/editeng/source/accessibility/AccessibleEditableTextPara.cxx
index 8586dbe28837..397777d4bdab 100644
--- a/editeng/source/accessibility/AccessibleEditableTextPara.cxx
+++ b/editeng/source/accessibility/AccessibleEditableTextPara.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
//------------------------------------------------------------------------
diff --git a/editeng/source/accessibility/AccessibleImageBullet.cxx b/editeng/source/accessibility/AccessibleImageBullet.cxx
index 08072a628d9a..2514f0ea3e45 100644
--- a/editeng/source/accessibility/AccessibleImageBullet.cxx
+++ b/editeng/source/accessibility/AccessibleImageBullet.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <tools/gen.hxx>
#include <osl/mutex.hxx>
diff --git a/editeng/source/accessibility/AccessibleParaManager.cxx b/editeng/source/accessibility/AccessibleParaManager.cxx
index 1dbcbf03e540..f2150623ba68 100644
--- a/editeng/source/accessibility/AccessibleParaManager.cxx
+++ b/editeng/source/accessibility/AccessibleParaManager.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
//------------------------------------------------------------------------
diff --git a/editeng/source/accessibility/AccessibleStaticTextBase.cxx b/editeng/source/accessibility/AccessibleStaticTextBase.cxx
index 45c20de438c7..6843dfe7d5c7 100644
--- a/editeng/source/accessibility/AccessibleStaticTextBase.cxx
+++ b/editeng/source/accessibility/AccessibleStaticTextBase.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
//------------------------------------------------------------------------
diff --git a/editeng/source/editeng/editattr.cxx b/editeng/source/editeng/editattr.cxx
index d5b640faa26f..9876b9eefdd3 100644
--- a/editeng/source/editeng/editattr.cxx
+++ b/editeng/source/editeng/editattr.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
diff --git a/editeng/source/editeng/editattr.hxx b/editeng/source/editeng/editattr.hxx
index cf331fa254a4..4ac316d223ad 100644
--- a/editeng/source/editeng/editattr.hxx
+++ b/editeng/source/editeng/editattr.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITATTR_HXX
#define _EDITATTR_HXX
diff --git a/editeng/source/editeng/editdbg.cxx b/editeng/source/editeng/editdbg.cxx
index 79c2c149c3ac..88aa0e3e8573 100644
--- a/editeng/source/editeng/editdbg.cxx
+++ b/editeng/source/editeng/editdbg.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
diff --git a/editeng/source/editeng/editdbg.hxx b/editeng/source/editeng/editdbg.hxx
index 38d40f1b6f3f..8b87a432bced 100644
--- a/editeng/source/editeng/editdbg.hxx
+++ b/editeng/source/editeng/editdbg.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITDBG_HXX
#define _EDITDBG_HXX
diff --git a/editeng/source/editeng/editdoc.cxx b/editeng/source/editeng/editdoc.cxx
index 560d7cac5a09..80556b98c562 100644
--- a/editeng/source/editeng/editdoc.cxx
+++ b/editeng/source/editeng/editdoc.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/string.hxx>
#include <vcl/wrkwin.hxx>
@@ -2062,7 +2053,7 @@ XubString EditDoc::GetText( LineEnd eEnd ) const
nLen += (nNodes - 1) * nSepSize;
rtl_uString* newStr = comphelper::string::rtl_uString_alloc(nLen);
- xub_Unicode* pCur = newStr->buffer;
+ sal_Unicode* pCur = newStr->buffer;
size_t nLastNode = nNodes-1;
for ( sal_uInt16 nNode = 0; nNode < nNodes; nNode++ )
{
diff --git a/editeng/source/editeng/editdoc.hxx b/editeng/source/editeng/editdoc.hxx
index 2c303eed2093..bdaeb9d4587d 100644
--- a/editeng/source/editeng/editdoc.hxx
+++ b/editeng/source/editeng/editdoc.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITDOC_HXX
#define _EDITDOC_HXX
diff --git a/editeng/source/editeng/editeng.cxx b/editeng/source/editeng/editeng.cxx
index 258e8a5bc445..849205acc2db 100644
--- a/editeng/source/editeng/editeng.cxx
+++ b/editeng/source/editeng/editeng.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
@@ -1341,7 +1332,7 @@ sal_Bool EditEngine::PostKeyEvent( const KeyEvent& rKeyEvent, EditView* pEditVie
#endif
if ( !bReadOnly && IsSimpleCharInput( rKeyEvent ) )
{
- xub_Unicode nCharCode = rKeyEvent.GetCharCode();
+ sal_Unicode nCharCode = rKeyEvent.GetCharCode();
pEditView->pImpEditView->DrawSelection();
// Autocorrection?
SvxAutoCorrect* pAutoCorrect = SvxAutoCorrCfg::Get().GetAutoCorrect();
diff --git a/editeng/source/editeng/editeng.src b/editeng/source/editeng/editeng.src
index 896f66fa2f52..2bea4aa7b400 100644
--- a/editeng/source/editeng/editeng.src
+++ b/editeng/source/editeng/editeng.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng.hrc>
#include <helpid.hrc>
diff --git a/editeng/source/editeng/editobj.cxx b/editeng/source/editeng/editobj.cxx
index 605bf68c95a0..669f003fa607 100644
--- a/editeng/source/editeng/editobj.cxx
+++ b/editeng/source/editeng/editobj.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/string.hxx>
#include <rtl/strbuf.hxx>
diff --git a/editeng/source/editeng/editobj2.hxx b/editeng/source/editeng/editobj2.hxx
index f502b1d8cdfb..4b89ade1a510 100644
--- a/editeng/source/editeng/editobj2.hxx
+++ b/editeng/source/editeng/editobj2.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITOBJ2_HXX
#define _EDITOBJ2_HXX
diff --git a/editeng/source/editeng/editsel.cxx b/editeng/source/editeng/editsel.cxx
index 4b444b9c85db..23d13ba30032 100644
--- a/editeng/source/editeng/editsel.cxx
+++ b/editeng/source/editeng/editsel.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
#include <vcl/dialog.hxx>
diff --git a/editeng/source/editeng/editsel.hxx b/editeng/source/editeng/editsel.hxx
index 2c3bdc919d23..2b5113138ceb 100644
--- a/editeng/source/editeng/editsel.hxx
+++ b/editeng/source/editeng/editsel.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITSEL_HXX
#define _EDITSEL_HXX
diff --git a/editeng/source/editeng/editundo.cxx b/editeng/source/editeng/editundo.cxx
index 3448e0290913..22e00661d625 100644
--- a/editeng/source/editeng/editundo.cxx
+++ b/editeng/source/editeng/editundo.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
#include <vcl/dialog.hxx>
diff --git a/editeng/source/editeng/editundo.hxx b/editeng/source/editeng/editundo.hxx
index bd3362123d67..dbd0e4e3e671 100644
--- a/editeng/source/editeng/editundo.hxx
+++ b/editeng/source/editeng/editundo.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDITUNDO_HXX
#define _EDITUNDO_HXX
diff --git a/editeng/source/editeng/editview.cxx b/editeng/source/editeng/editview.cxx
index 9cb8900d28e8..1ed54fc3d252 100644
--- a/editeng/source/editeng/editview.cxx
+++ b/editeng/source/editeng/editview.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/macros.h>
diff --git a/editeng/source/editeng/edtspell.cxx b/editeng/source/editeng/edtspell.cxx
index 738516c6b6bf..4e44fe7772eb 100644
--- a/editeng/source/editeng/edtspell.cxx
+++ b/editeng/source/editeng/edtspell.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
diff --git a/editeng/source/editeng/edtspell.hxx b/editeng/source/editeng/edtspell.hxx
index 81e91a6fc2f7..63ffb8085dda 100644
--- a/editeng/source/editeng/edtspell.hxx
+++ b/editeng/source/editeng/edtspell.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EDTSPELL_HXX
#define _EDTSPELL_HXX
diff --git a/editeng/source/editeng/eehtml.cxx b/editeng/source/editeng/eehtml.cxx
index c7dc67f0b100..cae0a756d057 100644
--- a/editeng/source/editeng/eehtml.cxx
+++ b/editeng/source/editeng/eehtml.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
diff --git a/editeng/source/editeng/eehtml.hxx b/editeng/source/editeng/eehtml.hxx
index a618c12414ec..d90ee4b21be3 100644
--- a/editeng/source/editeng/eehtml.hxx
+++ b/editeng/source/editeng/eehtml.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EEHTML_HXX
#define _EEHTML_HXX
diff --git a/editeng/source/editeng/eeobj.cxx b/editeng/source/editeng/eeobj.cxx
index 294fd2015e30..863be4bd29f1 100644
--- a/editeng/source/editeng/eeobj.cxx
+++ b/editeng/source/editeng/eeobj.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
#include <vcl/dialog.hxx>
diff --git a/editeng/source/editeng/eerdll.cxx b/editeng/source/editeng/eerdll.cxx
index 2d369b87cb61..7aba28686116 100644
--- a/editeng/source/editeng/eerdll.cxx
+++ b/editeng/source/editeng/eerdll.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
diff --git a/editeng/source/editeng/eerdll2.hxx b/editeng/source/editeng/eerdll2.hxx
index 33a2a1584c27..ae592c347cc0 100644
--- a/editeng/source/editeng/eerdll2.hxx
+++ b/editeng/source/editeng/eerdll2.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EERDLL2_HXX
#define _EERDLL2_HXX
diff --git a/editeng/source/editeng/eertfpar.cxx b/editeng/source/editeng/eertfpar.cxx
index d3627eabf613..479b2f638fba 100644
--- a/editeng/source/editeng/eertfpar.cxx
+++ b/editeng/source/editeng/eertfpar.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/string.hxx>
#include <vcl/wrkwin.hxx>
diff --git a/editeng/source/editeng/eertfpar.hxx b/editeng/source/editeng/eertfpar.hxx
index df27f204b64e..d868b25514bb 100644
--- a/editeng/source/editeng/eertfpar.hxx
+++ b/editeng/source/editeng/eertfpar.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EERTFPAR_HXX
#define _EERTFPAR_HXX
diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx
index 9da932320f15..4caa60222e06 100644
--- a/editeng/source/editeng/impedit.cxx
+++ b/editeng/source/editeng/impedit.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
#include <vcl/dialog.hxx>
diff --git a/editeng/source/editeng/impedit.hxx b/editeng/source/editeng/impedit.hxx
index 750b470af4c4..0f1ee4359e73 100644
--- a/editeng/source/editeng/impedit.hxx
+++ b/editeng/source/editeng/impedit.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _IMPEDIT_HXX
#define _IMPEDIT_HXX
@@ -1179,7 +1170,7 @@ inline Cursor* ImpEditView::GetCursor()
void ConvertItem( SfxPoolItem& rPoolItem, MapUnit eSourceUnit, MapUnit eDestUnit );
void ConvertAndPutItems( SfxItemSet& rDest, const SfxItemSet& rSource, const MapUnit* pSourceUnit = NULL, const MapUnit* pDestUnit = NULL );
-sal_uInt8 GetCharTypeForCompression( xub_Unicode cChar );
+sal_uInt8 GetCharTypeForCompression( sal_Unicode cChar );
Point Rotate( const Point& rPoint, short nOrientation, const Point& rOrigin );
#endif // _IMPEDIT_HXX
diff --git a/editeng/source/editeng/impedit2.cxx b/editeng/source/editeng/impedit2.cxx
index 0249020c0374..1c3e6584266f 100644
--- a/editeng/source/editeng/impedit2.cxx
+++ b/editeng/source/editeng/impedit2.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
@@ -2527,7 +2518,7 @@ void ImpEditEngine::ImpRemoveParagraph( sal_uInt16 nPara )
}
}
-EditPaM ImpEditEngine::AutoCorrect( const EditSelection& rCurSel, xub_Unicode c,
+EditPaM ImpEditEngine::AutoCorrect( const EditSelection& rCurSel, sal_Unicode c,
sal_Bool bOverwrite, Window* pFrameWin )
{
EditSelection aSel( rCurSel );
@@ -2590,7 +2581,7 @@ EditPaM ImpEditEngine::AutoCorrect( const EditSelection& rCurSel, xub_Unicode c,
EditPaM ImpEditEngine::InsertText( const EditSelection& rCurSel,
- xub_Unicode c, sal_Bool bOverwrite, sal_Bool bIsUserInput )
+ sal_Unicode c, sal_Bool bOverwrite, sal_Bool bIsUserInput )
{
OSL_ENSURE( c != '\t', "Tab for InsertText ?" );
OSL_ENSURE( c != '\n', "Word wrapping for InsertText ?");
diff --git a/editeng/source/editeng/impedit3.cxx b/editeng/source/editeng/impedit3.cxx
index 2e0017907e00..b3217e70514c 100644
--- a/editeng/source/editeng/impedit3.cxx
+++ b/editeng/source/editeng/impedit3.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
@@ -70,6 +61,7 @@
#include <set>
#include <math.h>
#include <vcl/metric.hxx>
+#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <com/sun/star/text/CharacterCompressionType.hpp>
#include <vcl/pdfextoutdevdata.hxx>
@@ -128,7 +120,7 @@ Point Rotate( const Point& rPoint, short nOrientation, const Point& rOrigin )
return aTranslatedPos;
}
-sal_uInt8 GetCharTypeForCompression( xub_Unicode cChar )
+sal_uInt8 GetCharTypeForCompression( sal_Unicode cChar )
{
switch ( cChar )
{
@@ -254,7 +246,7 @@ static Point lcl_ImplCalcRotatedPos( Point rPos, Point rOrigin, double nSin, dou
return aTranslatedPos;
}
-static sal_Bool lcl_IsLigature( xub_Unicode cCh, xub_Unicode cNextCh ) // For Kashidas from sw/source/core/text/porlay.txt
+static sal_Bool lcl_IsLigature( sal_Unicode cCh, sal_Unicode cNextCh ) // For Kashidas from sw/source/core/text/porlay.txt
{
// Lam + Alef
return ( 0x644 == cCh && 0x627 == cNextCh ) ||
@@ -262,7 +254,7 @@ static sal_Bool lcl_IsLigature( xub_Unicode cCh, xub_Unicode cNextCh ) // For Ka
( 0x628 == cCh && 0x631 == cNextCh );
}
-static sal_Bool lcl_ConnectToPrev( xub_Unicode cCh, xub_Unicode cPrevCh ) // For Kashidas from sw/source/core/text/porlay.txt
+static sal_Bool lcl_ConnectToPrev( sal_Unicode cCh, sal_Unicode cPrevCh ) // For Kashidas from sw/source/core/text/porlay.txt
{
// Alef, Dal, Thal, Reh, Zain, and Waw do not connect to the left
sal_Bool bRet = 0x627 != cPrevCh && 0x62F != cPrevCh && 0x630 != cPrevCh &&
@@ -2128,8 +2120,8 @@ void ImpEditEngine::ImpFindKashidas( ContentNode* pNode, sal_uInt16 nStart, sal_
xub_StrLen nIdx = 0;
xub_StrLen nKashidaPos = STRING_LEN;
- xub_Unicode cCh;
- xub_Unicode cPrevCh = 0;
+ sal_Unicode cCh;
+ sal_Unicode cPrevCh = 0;
while ( nIdx < aWord.Len() )
{
@@ -2177,7 +2169,7 @@ void ImpEditEngine::ImpFindKashidas( ContentNode* pNode, sal_uInt16 nStart, sal_
DBG_ASSERT( 0 != cPrevCh, "No previous character" );
// check if next character is Reh, Yeh or Alef Maksura
- xub_Unicode cNextCh = aWord.GetChar( nIdx + 1 );
+ sal_Unicode cNextCh = aWord.GetChar( nIdx + 1 );
if ( 0x631 == cNextCh || 0x64A == cNextCh ||
0x649 == cNextCh )
@@ -2928,6 +2920,8 @@ void ImpEditEngine::Paint( OutputDevice* pOutDev, Rectangle aClipRec, Point aSta
if ( ( !IsVertical() && ( aStartPos.Y() > aClipRec.Top() ) )
|| ( IsVertical() && aStartPos.X() < aClipRec.Right() ) )
{
+ bool bPaintBullet (false);
+
// Why not just also call when stripping portions? This will give the correct values
// and needs no position corrections in OutlinerEditEng::DrawingText which tries to call
// PaintBullet correctly; exactly what GetEditEnginePtr()->PaintingFirstLine
@@ -2935,6 +2929,11 @@ void ImpEditEngine::Paint( OutputDevice* pOutDev, Rectangle aClipRec, Point aSta
if(0 == nLine) // && !bStripOnly)
{
GetEditEnginePtr()->PaintingFirstLine( n, aParaStart, aTmpPos.Y(), aOrigin, nOrientation, pOutDev );
+
+ // Remember whether a bullet was painted.
+ const SfxBoolItem& rBulletState = static_cast<const SfxBoolItem&>(
+ pEditEngine->GetParaAttrib(n, EE_PARA_BULLETSTATE));
+ bPaintBullet = rBulletState.GetValue() ? true : false;
}
// --------------------------------------------------
@@ -2943,6 +2942,34 @@ void ImpEditEngine::Paint( OutputDevice* pOutDev, Rectangle aClipRec, Point aSta
sal_uInt16 nIndex = pLine->GetStart();
bool bParsingFields = false;
::std::vector< sal_Int32 >::iterator itSubLines;
+
+ // #i108052# When stripping a callback for empty paragraphs is needed. This
+ // was somehow lost/removed/killed by making the TextPortions with empty
+ // paragraph to type PORTIONKIND_TAB instead of PORTIONKIND_TEXT. Adding here
+
+ // since I could not find out who and why this has
+ // changed.
+ // #i118881#: Do not include the empty paragraph
+ // after a bullet. Otherwise the wrong paragraph
+ // indices will eventually find their way into
+ // metafiles and break the association between
+ // paragraphs and Impress animations.
+ if(!bPaintBullet && bStripOnly && pLine->GetStartPortion() == pLine->GetEndPortion())
+ {
+ const Color aOverlineColor(pOutDev->GetOverlineColor());
+ const Color aTextLineColor(pOutDev->GetTextLineColor());
+
+ GetEditEnginePtr()->DrawingText(
+ aTmpPos, String(), 0, 0, 0,
+ aTmpFont, n, nIndex, 0,
+ 0,
+ 0,
+ false, true, false, // support for EOL/EOP TEXT comments
+ 0,
+ aOverlineColor,
+ aTextLineColor);
+ }
+
for ( sal_uInt16 y = pLine->GetStartPortion(); y <= pLine->GetEndPortion(); y++ )
{
DBG_ASSERT( pPortion->GetTextPortions().Count(), "Line without Textportion in Paint!" );
@@ -3486,7 +3513,7 @@ void ImpEditEngine::Paint( OutputDevice* pOutDev, Rectangle aClipRec, Point aSta
aTmpFont.SetPhysFont( pOutDev );
long nCharWidth = aTmpFont.QuickGetTextSize( pOutDev,
rtl::OUString(pTextPortion->GetExtraValue()), 0, 1, NULL ).Width();
- long nChars = 2;
+ sal_Int32 nChars = 2;
if( nCharWidth )
nChars = pTextPortion->GetSize().Width() / nCharWidth;
if ( nChars < 2 )
@@ -3494,8 +3521,9 @@ void ImpEditEngine::Paint( OutputDevice* pOutDev, Rectangle aClipRec, Point aSta
else if ( nChars == 2 )
nChars = 3; // looks better
- String aText;
- aText.Fill( (sal_uInt16)nChars, pTextPortion->GetExtraValue() );
+ rtl::OUStringBuffer aBuf;
+ comphelper::string::padToLength(aBuf, nChars, pTextPortion->GetExtraValue());
+ String aText(aBuf.makeStringAndClear());
aTmpFont.QuickDrawText( pOutDev, aTmpPos, aText, 0, aText.Len(), NULL );
pOutDev->DrawStretchText( aTmpPos, pTextPortion->GetSize().Width(), aText );
@@ -4318,8 +4346,8 @@ Reference < i18n::XBreakIterator > ImpEditEngine::ImplGetBreakIterator() const
{
if ( !xBI.is() )
{
- Reference< lang::XMultiServiceFactory > xMSF( ::comphelper::getProcessServiceFactory() );
- xBI.set( xMSF->createInstance( OUString( "com.sun.star.i18n.BreakIterator" ) ), UNO_QUERY );
+ Reference< uno::XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ xBI = i18n::BreakIterator::create( xContext );
}
return xBI;
}
diff --git a/editeng/source/editeng/impedit4.cxx b/editeng/source/editeng/impedit4.cxx
index d6ff77ff698c..23d9f90b5fd0 100644
--- a/editeng/source/editeng/impedit4.cxx
+++ b/editeng/source/editeng/impedit4.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
@@ -2704,7 +2695,7 @@ EditSelection ImpEditEngine::TransliterateText( const EditSelection& rSelection,
sal_Bool bLenChanged = sal_False;
EditUndoTransliteration* pUndo = NULL;
- utl::TransliterationWrapper aTranslitarationWrapper( ::comphelper::getProcessServiceFactory(), nTransliterationMode );
+ utl::TransliterationWrapper aTranslitarationWrapper( ::comphelper::getProcessComponentContext(), nTransliterationMode );
sal_Bool bConsiderLanguage = aTranslitarationWrapper.needLanguageForTheMode();
for ( sal_uInt16 nNode = nStartNode; nNode <= nEndNode; nNode++ )
diff --git a/editeng/source/editeng/impedit5.cxx b/editeng/source/editeng/impedit5.cxx
index 194c3dceed7f..0918594ee59d 100644
--- a/editeng/source/editeng/impedit5.cxx
+++ b/editeng/source/editeng/impedit5.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
#include <vcl/dialog.hxx>
diff --git a/editeng/source/editeng/makefile.mk b/editeng/source/editeng/makefile.mk
deleted file mode 100644
index 838ad50246da..000000000000
--- a/editeng/source/editeng/makefile.mk
+++ /dev/null
@@ -1,71 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-PRJ=..$/..
-
-PRJNAME=editeng
-TARGET=editeng
-AUTOSEG=true
-
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------------
-
-.INCLUDE : settings.mk
-.INCLUDE : $(PRJ)$/util$/makefile.pmk
-
-# --- General ----------------------------------------------------------
-
-SLOFILES = \
- $(SLO)$/textconv.obj \
- $(SLO)$/editattr.obj \
- $(SLO)$/editdbg.obj \
- $(SLO)$/editdoc.obj \
- $(SLO)$/editdoc2.obj \
- $(SLO)$/editeng.obj \
- $(SLO)$/editobj.obj \
- $(SLO)$/editsel.obj \
- $(SLO)$/editundo.obj \
- $(SLO)$/editview.obj \
- $(SLO)$/edtspell.obj \
- $(SLO)$/eehtml.obj \
- $(SLO)$/eerdll.obj \
- $(SLO)$/eeobj.obj \
- $(SLO)$/eertfpar.obj \
- $(SLO)$/impedit.obj \
- $(SLO)$/impedit2.obj \
- $(SLO)$/impedit3.obj \
- $(SLO)$/impedit4.obj \
- $(SLO)$/impedit5.obj
-
-SRS1NAME=$(TARGET)
-SRC1FILES= editeng.src
-
-EXCEPTIONSFILES= \
- $(SLO)$/unolingu.obj
-
-.INCLUDE : target.mk
-
diff --git a/editeng/source/editeng/textconv.cxx b/editeng/source/editeng/textconv.cxx
index 425bb44ab5ca..d3ef8410a528 100644
--- a/editeng/source/editeng/textconv.cxx
+++ b/editeng/source/editeng/textconv.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
diff --git a/editeng/source/items/borderline.cxx b/editeng/source/items/borderline.cxx
index 610bafe68d1a..1904916f832d 100644
--- a/editeng/source/items/borderline.cxx
+++ b/editeng/source/items/borderline.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <basegfx/color/bcolor.hxx>
#include <basegfx/color/bcolortools.hxx>
diff --git a/editeng/source/items/bulitem.cxx b/editeng/source/items/bulitem.cxx
index e883aa8dcf2e..0a433ecfa49e 100644
--- a/editeng/source/items/bulitem.cxx
+++ b/editeng/source/items/bulitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <tools/stream.hxx>
#include <vcl/outdev.hxx>
diff --git a/editeng/source/items/charhiddenitem.cxx b/editeng/source/items/charhiddenitem.cxx
index 9218166b6ff5..5fa79fae4abc 100644
--- a/editeng/source/items/charhiddenitem.cxx
+++ b/editeng/source/items/charhiddenitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/charhiddenitem.hxx>
#include <editeng/editrids.hrc>
diff --git a/editeng/source/items/flditem.cxx b/editeng/source/items/flditem.cxx
index 632e00eb95b8..a26f53304cd1 100644
--- a/editeng/source/items/flditem.cxx
+++ b/editeng/source/items/flditem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/string.hxx>
#include <vcl/metaact.hxx>
diff --git a/editeng/source/items/frmitems.cxx b/editeng/source/items/frmitems.cxx
index cd903fec09f5..6f410c64a08f 100644
--- a/editeng/source/items/frmitems.cxx
+++ b/editeng/source/items/frmitems.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/drawing/LineStyle.hpp>
diff --git a/editeng/source/items/itemtype.cxx b/editeng/source/items/itemtype.cxx
index 080aab175e8e..2e2b55c5d828 100644
--- a/editeng/source/items/itemtype.cxx
+++ b/editeng/source/items/itemtype.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/outdev.hxx>
#include <editeng/editrids.hrc>
diff --git a/editeng/source/items/justifyitem.cxx b/editeng/source/items/justifyitem.cxx
index 72baac2215cd..c92220346e33 100644
--- a/editeng/source/items/justifyitem.cxx
+++ b/editeng/source/items/justifyitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "editeng/justifyitem.hxx"
#include "editeng/memberids.hrc"
diff --git a/editeng/source/items/makefile.mk b/editeng/source/items/makefile.mk
deleted file mode 100644
index 9ebb12c66f08..000000000000
--- a/editeng/source/items/makefile.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2008 by Sun Microsystems, Inc.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=editeng
-TARGET=items
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-.INCLUDE : $(PRJ)$/util$/makefile.pmk
-
-# --- Files --------------------------------------------------------
-
-SRS1NAME=items
-SRC1FILES = \
- page.src \
- svxitems.src
-
-SLOFILES= \
- $(EXCEPTIONSFILES) \
- $(SLO)$/charhiddenitem.obj \
- $(SLO)$/justifyitem.obj \
- $(SLO)$/optitems.obj \
- $(SLO)$/writingmodeitem.obj
-
-EXCEPTIONSFILES= \
- $(SLO)$/bulitem.obj \
- $(SLO)$/flditem.obj \
- $(SLO)$/frmitems.obj \
- $(SLO)$/borderline.obj \
- $(SLO)$/itemtype.obj \
- $(SLO)$/numitem.obj \
- $(SLO)$/paperinf.obj \
- $(SLO)$/paraitem.obj \
- $(SLO)$/svdfield.obj \
- $(SLO)$/svxfont.obj \
- $(SLO)$/textitem.obj \
- $(SLO)$/xmlcnitm.obj
-
-.INCLUDE : target.mk
-
diff --git a/editeng/source/items/numitem.cxx b/editeng/source/items/numitem.cxx
index e01981528b26..6cf0953c5ed6 100644
--- a/editeng/source/items/numitem.cxx
+++ b/editeng/source/items/numitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/numitem.hxx>
diff --git a/editeng/source/items/optitems.cxx b/editeng/source/items/optitems.cxx
index 4ea6a97a1583..f5b58883d385 100644
--- a/editeng/source/items/optitems.cxx
+++ b/editeng/source/items/optitems.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <tools/shl.hxx>
#include <tools/resid.hxx>
diff --git a/editeng/source/items/paperinf.cxx b/editeng/source/items/paperinf.cxx
index d19bf0a8d218..4eb285f5d138 100644
--- a/editeng/source/items/paperinf.cxx
+++ b/editeng/source/items/paperinf.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <limits.h>
#include <tools/shl.hxx>
diff --git a/editeng/source/items/paraitem.cxx b/editeng/source/items/paraitem.cxx
index 84a3f28b05a3..b3c13e31b8ab 100644
--- a/editeng/source/items/paraitem.cxx
+++ b/editeng/source/items/paraitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/style/TabStop.hpp>
#include <com/sun/star/style/LineSpacing.hpp>
diff --git a/editeng/source/items/svdfield.cxx b/editeng/source/items/svdfield.cxx
index a56d4e46727a..07742bc1a1a4 100644
--- a/editeng/source/items/svdfield.cxx
+++ b/editeng/source/items/svdfield.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/measfld.hxx>
diff --git a/editeng/source/items/svxfont.cxx b/editeng/source/items/svxfont.cxx
index 5f8745d43ebb..7077905f2aa0 100644
--- a/editeng/source/items/svxfont.cxx
+++ b/editeng/source/items/svxfont.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/string.hxx>
#include <vcl/outdev.hxx>
@@ -168,12 +159,6 @@ OUString SvxFont::CalcCaseMap(const OUString &rTxt) const
}
/*************************************************************************
-* Starting form here are the methods that can not be used in Writer,
-* so we put this section to be excluded by REDUCEDSVXFONT.
- *************************************************************************/
-#ifndef REDUCEDSVXFONT
-
-/*************************************************************************
* class SvxDoCapitals
* The virtual Method Do si called by SvxFont::DoOnCapitals alternately
* the uppercase and lowercase parts. The derivate of SvxDoCapitals fills
@@ -767,7 +752,4 @@ void SvxFont::DrawCapital( OutputDevice *pOut,
DoOnCapitals( aDo );
}
-#endif // !REDUCEDSVXFONT
-
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/editeng/source/items/svxitems.src b/editeng/source/items/svxitems.src
index 6049ad682478..8bd371b4214a 100644
--- a/editeng/source/items/svxitems.src
+++ b/editeng/source/items/svxitems.src
@@ -1,29 +1,21 @@
-/*************************************************************************
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/editrids.hrc>
@@ -1062,5 +1054,6 @@ String RID_SVXITEMS_JUSTMETHOD_DISTRIBUTE
{
Text [ en-US ] = "Distributed" ;
};
-// ********************************************************************** EOF
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/editeng/source/items/textitem.cxx b/editeng/source/items/textitem.cxx
index 70ae5fe5eac9..401ca6f8a0d2 100644
--- a/editeng/source/items/textitem.cxx
+++ b/editeng/source/items/textitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/style/CaseMap.hpp>
#include <com/sun/star/awt/FontDescriptor.hpp>
@@ -3282,7 +3273,7 @@ SfxPoolItem* SvxCharScaleWidthItem::Create( SvStream& rStrm, sal_uInt16 ) const
if ( Which() == EE_CHAR_FONTWIDTH )
{
// Was a SvxFontWidthItem in 5.2
- // USHORT nFixWidth, USHORT nPropWidth.
+ // sal_uInt16 nFixWidth, sal_uInt16 nPropWidth.
// nFixWidth has never been used...
rStrm >> nVal;
sal_uInt16 nTest;
diff --git a/editeng/source/items/writingmodeitem.cxx b/editeng/source/items/writingmodeitem.cxx
index bcf389922383..a1cc20295939 100644
--- a/editeng/source/items/writingmodeitem.cxx
+++ b/editeng/source/items/writingmodeitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/writingmodeitem.hxx>
#include <editeng/eerdll.hxx>
diff --git a/editeng/source/items/xmlcnitm.cxx b/editeng/source/items/xmlcnitm.cxx
index 15b4dffd1e52..99566fee6704 100644
--- a/editeng/source/items/xmlcnitm.cxx
+++ b/editeng/source/items/xmlcnitm.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/xml/AttributeData.hpp>
#include <com/sun/star/lang/XUnoTunnel.hpp>
diff --git a/editeng/source/misc/SvXMLAutoCorrectExport.cxx b/editeng/source/misc/SvXMLAutoCorrectExport.cxx
index f80a2262d2a1..681865e9e796 100644
--- a/editeng/source/misc/SvXMLAutoCorrectExport.cxx
+++ b/editeng/source/misc/SvXMLAutoCorrectExport.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <SvXMLAutoCorrectExport.hxx>
diff --git a/editeng/source/misc/SvXMLAutoCorrectExport.hxx b/editeng/source/misc/SvXMLAutoCorrectExport.hxx
index 937ef9543f29..294122dc7eeb 100644
--- a/editeng/source/misc/SvXMLAutoCorrectExport.hxx
+++ b/editeng/source/misc/SvXMLAutoCorrectExport.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SV_XMLAUTOCORRECTEXPORT_HXX
#define _SV_XMLAUTOCORRECTEXPORT_HXX
diff --git a/editeng/source/misc/SvXMLAutoCorrectImport.cxx b/editeng/source/misc/SvXMLAutoCorrectImport.cxx
index 50afcb306038..f6341df706b4 100644
--- a/editeng/source/misc/SvXMLAutoCorrectImport.cxx
+++ b/editeng/source/misc/SvXMLAutoCorrectImport.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <SvXMLAutoCorrectImport.hxx>
#include <vcl/svapp.hxx>
diff --git a/editeng/source/misc/SvXMLAutoCorrectImport.hxx b/editeng/source/misc/SvXMLAutoCorrectImport.hxx
index fa7a28d0d9dc..2c423fd7d548 100644
--- a/editeng/source/misc/SvXMLAutoCorrectImport.hxx
+++ b/editeng/source/misc/SvXMLAutoCorrectImport.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SV_XMLAUTOCORRECTIMPORT_HXX
#define _SV_XMLAUTOCORRECTIMPORT_HXX
diff --git a/editeng/source/misc/acorrcfg.cxx b/editeng/source/misc/acorrcfg.cxx
index 3c170479c64d..f7cba0448461 100644
--- a/editeng/source/misc/acorrcfg.cxx
+++ b/editeng/source/misc/acorrcfg.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/acorrcfg.hxx>
diff --git a/editeng/source/misc/forbiddencharacterstable.cxx b/editeng/source/misc/forbiddencharacterstable.cxx
index 9760b0f3d076..0bc4a22885cd 100644
--- a/editeng/source/misc/forbiddencharacterstable.cxx
+++ b/editeng/source/misc/forbiddencharacterstable.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/forbiddencharacterstable.hxx>
diff --git a/editeng/source/misc/hangulhanja.cxx b/editeng/source/misc/hangulhanja.cxx
index 86bf60a38ffd..e42ba1f9d420 100644
--- a/editeng/source/misc/hangulhanja.cxx
+++ b/editeng/source/misc/hangulhanja.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/hangulhanja.hxx>
#include <vcl/msgbox.hxx>
@@ -34,8 +25,9 @@
#include <set>
#include <map>
+#include <comphelper/processfactory.hxx>
#include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/i18n/XBreakIterator.hpp>
+#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <com/sun/star/i18n/UnicodeScript.hpp>
#include <com/sun/star/i18n/XTextConversion.hpp>
@@ -614,38 +606,29 @@ namespace editeng
try
{
// get the break iterator service
- ::rtl::OUString sBreakIteratorService( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.i18n.BreakIterator" ) );
- Reference< XInterface > xBI( m_xORB->createInstance( ::rtl::OUString( sBreakIteratorService ) ) );
- Reference< XBreakIterator > xBreakIter( xBI, UNO_QUERY );
- if ( !xBreakIter.is() )
- {
- ShowServiceNotAvailableError( m_pUIParent, sBreakIteratorService, sal_True );
- }
- else
- {
- sal_Int32 nNextAsianScript = xBreakIter->beginOfScript( m_sCurrentPortion, m_nCurrentStartIndex, com::sun::star::i18n::ScriptType::ASIAN );
- if ( -1 == nNextAsianScript )
- nNextAsianScript = xBreakIter->nextScript( m_sCurrentPortion, m_nCurrentStartIndex, com::sun::star::i18n::ScriptType::ASIAN );
- if ( ( nNextAsianScript >= m_nCurrentStartIndex ) && ( nNextAsianScript < m_sCurrentPortion.getLength() ) )
- { // found asian text
-
- // determine if it's Hangul
- CharClass aCharClassificaton( m_xORB, m_aSourceLocale );
- sal_Int16 nScript = aCharClassificaton.getScript( m_sCurrentPortion, sal::static_int_cast< sal_uInt16 >(nNextAsianScript) );
- if ( ( UnicodeScript_kHangulJamo == nScript )
- || ( UnicodeScript_kHangulCompatibilityJamo == nScript )
- || ( UnicodeScript_kHangulSyllable == nScript )
- )
- {
- rDirection = HHC::eHangulToHanja;
- }
- else
- {
- rDirection = HHC::eHanjaToHangul;
- }
-
- bSuccess = true;
+ Reference< XBreakIterator > xBreakIter = BreakIterator::create( comphelper::getComponentContext(m_xORB) );
+ sal_Int32 nNextAsianScript = xBreakIter->beginOfScript( m_sCurrentPortion, m_nCurrentStartIndex, com::sun::star::i18n::ScriptType::ASIAN );
+ if ( -1 == nNextAsianScript )
+ nNextAsianScript = xBreakIter->nextScript( m_sCurrentPortion, m_nCurrentStartIndex, com::sun::star::i18n::ScriptType::ASIAN );
+ if ( ( nNextAsianScript >= m_nCurrentStartIndex ) && ( nNextAsianScript < m_sCurrentPortion.getLength() ) )
+ { // found asian text
+
+ // determine if it's Hangul
+ CharClass aCharClassificaton( comphelper::getComponentContext(m_xORB), m_aSourceLocale );
+ sal_Int16 nScript = aCharClassificaton.getScript( m_sCurrentPortion, sal::static_int_cast< sal_uInt16 >(nNextAsianScript) );
+ if ( ( UnicodeScript_kHangulJamo == nScript )
+ || ( UnicodeScript_kHangulCompatibilityJamo == nScript )
+ || ( UnicodeScript_kHangulSyllable == nScript )
+ )
+ {
+ rDirection = HHC::eHangulToHanja;
+ }
+ else
+ {
+ rDirection = HHC::eHanjaToHangul;
}
+
+ bSuccess = true;
}
}
catch( const Exception& )
@@ -1044,33 +1027,6 @@ namespace editeng
return m_pImpl->IsInteractive();
}
- void HangulHanjaConversion::HandleNewUnit( const sal_Int32, const sal_Int32 )
- {
- // nothing to do, only derived classes need this.
- }
-
- void HangulHanjaConversion::GetNextPortion( ::rtl::OUString&, LanguageType&, sal_Bool )
- {
- OSL_FAIL( "HangulHanjaConversion::GetNextPortion: to be overridden!" );
- }
-
- void HangulHanjaConversion::ReplaceUnit(
- const sal_Int32, const sal_Int32,
- const ::rtl::OUString&,
- const ::rtl::OUString&,
- const ::com::sun::star::uno::Sequence< sal_Int32 > &,
- ReplacementAction,
- LanguageType * )
- {
- OSL_FAIL( "HangulHanjaConversion::ReplaceUnit: to be overridden!" );
- }
-
- sal_Bool HangulHanjaConversion::HasRubySupport() const
- {
- OSL_FAIL( "HangulHanjaConversion::HasRubySupport: to be overridden!" );
- return sal_False;
- }
-
void HangulHanjaConversion::ConvertDocument()
{
if ( m_pImpl->IsValid() )
diff --git a/editeng/source/misc/lingu.src b/editeng/source/misc/lingu.src
index 834db1ed8e7a..1e59e2b22954 100644
--- a/editeng/source/misc/lingu.src
+++ b/editeng/source/misc/lingu.src
@@ -1,29 +1,20 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/editrids.hrc>
diff --git a/editeng/source/misc/splwrap.cxx b/editeng/source/misc/splwrap.cxx
index 8c1c34ccd521..d4ae02a43857 100644
--- a/editeng/source/misc/splwrap.cxx
+++ b/editeng/source/misc/splwrap.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include<rtl/ustring.hxx>
#include <tools/shl.hxx>
diff --git a/editeng/source/misc/svxacorr.cxx b/editeng/source/misc/svxacorr.cxx
index a970e8aba8f9..e436cdcc4c33 100644
--- a/editeng/source/misc/svxacorr.cxx
+++ b/editeng/source/misc/svxacorr.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/io/XStream.hpp>
#include <com/sun/star/lang/Locale.hpp>
@@ -60,6 +51,7 @@
#include <helpid.hrc>
#include <com/sun/star/xml/sax/InputSource.hpp>
#include <com/sun/star/xml/sax/Parser.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <unotools/streamwrap.hxx>
#include <SvXMLAutoCorrectImport.hxx>
#include <SvXMLAutoCorrectExport.hxx>
@@ -125,6 +117,34 @@ static inline int IsUpperLetter( sal_Int32 nCharType )
0 == ( ::com::sun::star::i18n::KCharacterType::LOWER & nCharType);
}
+bool lcl_IsUnsupportedUnicodeChar( CharClass& rCC, const String& rTxt,
+ xub_StrLen nStt, xub_StrLen nEnd )
+{
+ for( ; nStt < nEnd; ++nStt )
+ {
+ short nScript = rCC.getScript( rTxt, nStt );
+ switch( nScript )
+ {
+ case ::com::sun::star::i18n::UnicodeScript_kCJKRadicalsSupplement:
+ case ::com::sun::star::i18n::UnicodeScript_kHangulJamo:
+ case ::com::sun::star::i18n::UnicodeScript_kCJKSymbolPunctuation:
+ case ::com::sun::star::i18n::UnicodeScript_kHiragana:
+ case ::com::sun::star::i18n::UnicodeScript_kKatakana:
+ case ::com::sun::star::i18n::UnicodeScript_kHangulCompatibilityJamo:
+ case ::com::sun::star::i18n::UnicodeScript_kEnclosedCJKLetterMonth:
+ case ::com::sun::star::i18n::UnicodeScript_kCJKCompatibility:
+ case ::com::sun::star::i18n::UnicodeScript_k_CJKUnifiedIdeographsExtensionA:
+ case ::com::sun::star::i18n::UnicodeScript_kCJKUnifiedIdeograph:
+ case ::com::sun::star::i18n::UnicodeScript_kHangulSyllable:
+ case ::com::sun::star::i18n::UnicodeScript_kCJKCompatibilityIdeograph:
+ case ::com::sun::star::i18n::UnicodeScript_kHalfwidthFullwidthForm:
+ return true;
+ default: ; //do nothing
+ }
+ }
+ return false;
+}
+
static sal_Bool lcl_IsSymbolChar( CharClass& rCC, const String& rTxt,
xub_StrLen nStt, xub_StrLen nEnd )
{
@@ -195,7 +215,7 @@ static LocaleDataWrapper& GetLocaleDataWrapper( sal_uInt16 nLang )
static TransliterationWrapper& GetIgnoreTranslWrapper()
{
static int bIsInit = 0;
- static TransliterationWrapper aWrp( GetProcessFact(),
+ static TransliterationWrapper aWrp( ::comphelper::getProcessComponentContext(),
::com::sun::star::i18n::TransliterationModules_IGNORE_KANA |
::com::sun::star::i18n::TransliterationModules_IGNORE_WIDTH );
if( !bIsInit )
@@ -1336,6 +1356,7 @@ sal_uLong SvxAutoCorrect::AutoCorrect( SvxAutoCorrDoc& rDoc, const String& rTxt,
else
{
bool bLockKeyOn = pFrameWin && (pFrameWin->GetIndicatorState() & INDICATOR_CAPSLOCK);
+ bool bUnsupported = lcl_IsUnsupportedUnicodeChar( rCC, rTxt, nCapLttrPos, nInsPos );
nRet = 0;
if ( bLockKeyOn && IsAutoCorrFlag( CorrectCapsLock ) &&
@@ -1349,12 +1370,14 @@ sal_uLong SvxAutoCorrect::AutoCorrect( SvxAutoCorrDoc& rDoc, const String& rTxt,
}
// Capital letter at beginning of paragraph ?
- if( IsAutoCorrFlag( CptlSttSntnc ) &&
+ if( !bUnsupported &&
+ IsAutoCorrFlag( CptlSttSntnc ) &&
FnCptlSttSntnc( rDoc, rTxt, sal_True, nCapLttrPos, nInsPos, eLang ) )
nRet |= CptlSttSntnc;
// Two capital letters at beginning of word ??
- if( IsAutoCorrFlag( CptlSttWrd ) &&
+ if( !bUnsupported &&
+ IsAutoCorrFlag( CptlSttWrd ) &&
FnCptlSttWrd( rDoc, rTxt, nCapLttrPos, nInsPos, eLang ) )
nRet |= CptlSttWrd;
@@ -1603,14 +1626,6 @@ sal_Bool SvxAutoCorrect::PutText( const String& rShort, const String& rLong,
return sal_False;
}
- // - Delete an entry
-sal_Bool SvxAutoCorrect::DeleteText( const String& rShort, LanguageType eLang )
-{
- boost::ptr_map<LanguageType, SvxAutoCorrectLanguageLists>::iterator nTmpVal = pLangTable->find(eLang);
- if(nTmpVal != pLangTable->end())
- return nTmpVal->second->DeleteText(rShort);
- return sal_False;
-}
sal_Bool SvxAutoCorrect::MakeCombinedChanges( std::vector<SvxAutocorrWord>& aNewEntries,
std::vector<SvxAutocorrWord>& aDeleteEntries,
LanguageType eLang )
@@ -2069,23 +2084,15 @@ void SvxAutoCorrectLanguageLists::SaveExceptList_Imp(
uno::Reference< lang::XMultiServiceFactory > xServiceFactory =
comphelper::getProcessServiceFactory();
- OSL_ENSURE( xServiceFactory.is(),
- "XMLReader::Read: got no service manager" );
- if( !xServiceFactory.is() )
- {
- // Throw an exception ?
- }
+ uno::Reference< uno::XComponentContext > xContext =
+ comphelper::getProcessComponentContext();
- uno::Reference < XInterface > xWriter (xServiceFactory->createInstance(
- OUString("com.sun.star.xml.sax.Writer")));
- OSL_ENSURE(xWriter.is(),"com.sun.star.xml.sax.Writer service missing");
+ uno::Reference < xml::sax::XWriter > xWriter = xml::sax::Writer::create(xContext);
uno::Reference < io::XOutputStream> xOut = new utl::OOutputStreamWrapper( *xStrm );
- uno::Reference<io::XActiveDataSource> xSrc(xWriter, uno::UNO_QUERY);
- xSrc->setOutputStream(xOut);
-
- uno::Reference<xml::sax::XDocumentHandler> xHandler(xWriter, uno::UNO_QUERY);
+ xWriter->setOutputStream(xOut);
- SvXMLExceptionListExport aExp( xServiceFactory, rLst, sStrmName, xHandler );
+ uno::Reference < xml::sax::XDocumentHandler > xHandler(xWriter, UNO_QUERY_THROW);
+ SvXMLExceptionListExport aExp( xServiceFactory, rLst, sStrmName, xHandler );
aExp.exportDoc( XML_BLOCK_LIST );
@@ -2440,23 +2447,15 @@ sal_Bool SvxAutoCorrectLanguageLists::MakeBlocklist_Imp( SvStorage& rStg )
uno::Reference< lang::XMultiServiceFactory > xServiceFactory =
comphelper::getProcessServiceFactory();
- OSL_ENSURE( xServiceFactory.is(),
- "XMLReader::Read: got no service manager" );
- if( !xServiceFactory.is() )
- {
- // Throw an exception ?
- }
+ uno::Reference< uno::XComponentContext > xContext =
+ comphelper::getProcessComponentContext();
- uno::Reference < XInterface > xWriter (xServiceFactory->createInstance(
- OUString("com.sun.star.xml.sax.Writer")));
- OSL_ENSURE(xWriter.is(),"com.sun.star.xml.sax.Writer service missing");
+ uno::Reference < xml::sax::XWriter > xWriter = xml::sax::Writer::create(xContext);
uno::Reference < io::XOutputStream> xOut = new utl::OOutputStreamWrapper( *refList );
- uno::Reference<io::XActiveDataSource> xSrc(xWriter, uno::UNO_QUERY);
- xSrc->setOutputStream(xOut);
-
- uno::Reference<xml::sax::XDocumentHandler> xHandler(xWriter, uno::UNO_QUERY);
+ xWriter->setOutputStream(xOut);
- SvXMLAutoCorrectExport aExp( xServiceFactory, pAutocorr_List, sStrmName, xHandler );
+ uno::Reference<xml::sax::XDocumentHandler> xHandler(xWriter, uno::UNO_QUERY);
+ SvXMLAutoCorrectExport aExp( xServiceFactory, pAutocorr_List, sStrmName, xHandler );
aExp.exportDoc( XML_BLOCK_LIST );
diff --git a/editeng/source/misc/swafopt.cxx b/editeng/source/misc/swafopt.cxx
index 00f1a832c674..33bc56f4aae2 100644
--- a/editeng/source/misc/swafopt.cxx
+++ b/editeng/source/misc/swafopt.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/keycodes.hxx>
#include <tools/string.hxx>
diff --git a/editeng/source/misc/txtrange.cxx b/editeng/source/misc/txtrange.cxx
index f2c828819286..29fb0cd0958a 100644
--- a/editeng/source/misc/txtrange.cxx
+++ b/editeng/source/misc/txtrange.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/txtrange.hxx>
diff --git a/editeng/source/misc/unolingu.cxx b/editeng/source/misc/unolingu.cxx
index 16f2eba5e02e..022ab11158a5 100644
--- a/editeng/source/misc/unolingu.cxx
+++ b/editeng/source/misc/unolingu.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <map>
@@ -38,6 +29,7 @@
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/lang/XEventListener.hpp>
#include <com/sun/star/linguistic2/XAvailableLocales.hpp>
+#include <com/sun/star/linguistic2/LinguServiceManager.hpp>
#include <com/sun/star/ucb/XAnyCompareFactory.hpp>
#include <com/sun/star/ucb/XContentAccess.hpp>
#include <com/sun/star/ucb/XSortedDynamicResultSetFactory.hpp>
@@ -73,16 +65,10 @@ using namespace ::com::sun::star::linguistic2;
#define CSS com::sun::star
-static uno::Reference< XLinguServiceManager > GetLngSvcMgr_Impl()
+static uno::Reference< XLinguServiceManager2 > GetLngSvcMgr_Impl()
{
- uno::Reference< XLinguServiceManager > xRes;
- uno::Reference< XMultiServiceFactory > xMgr = getProcessServiceFactory();
- if (xMgr.is())
- {
- xRes = uno::Reference< XLinguServiceManager > ( xMgr->createInstance(
- OUString( RTL_CONSTASCII_USTRINGPARAM(
- "com.sun.star.linguistic2.LinguServiceManager" ) ) ), UNO_QUERY ) ;
- }
+ uno::Reference< XComponentContext > xContext = comphelper::getProcessComponentContext();
+ uno::Reference< XLinguServiceManager2 > xRes = LinguServiceManager::create(xContext);
return xRes;
}
@@ -155,9 +141,8 @@ void ThesDummy_Impl::GetThes_Impl()
{
if (!xThes.is())
{
- uno::Reference< XLinguServiceManager > xLngSvcMgr( GetLngSvcMgr_Impl() );
- if (xLngSvcMgr.is())
- xThes = xLngSvcMgr->getThesaurus();
+ uno::Reference< XLinguServiceManager2 > xLngSvcMgr( GetLngSvcMgr_Impl() );
+ xThes = xLngSvcMgr->getThesaurus();
if (xThes.is())
{
@@ -261,9 +246,8 @@ void SpellDummy_Impl::GetSpell_Impl()
{
if (!xSpell.is())
{
- uno::Reference< XLinguServiceManager > xLngSvcMgr( GetLngSvcMgr_Impl() );
- if (xLngSvcMgr.is())
- xSpell = uno::Reference< XSpellChecker1 >( xLngSvcMgr->getSpellChecker(), UNO_QUERY );
+ uno::Reference< XLinguServiceManager2 > xLngSvcMgr( GetLngSvcMgr_Impl() );
+ xSpell = uno::Reference< XSpellChecker1 >( xLngSvcMgr->getSpellChecker(), UNO_QUERY );
}
}
@@ -373,9 +357,8 @@ void HyphDummy_Impl::GetHyph_Impl()
{
if (!xHyph.is())
{
- uno::Reference< XLinguServiceManager > xLngSvcMgr( GetLngSvcMgr_Impl() );
- if (xLngSvcMgr.is())
- xHyph = xLngSvcMgr->getHyphenator();
+ uno::Reference< XLinguServiceManager2 > xLngSvcMgr( GetLngSvcMgr_Impl() );
+ xHyph = xLngSvcMgr->getHyphenator();
}
}
@@ -536,7 +519,7 @@ void LinguMgrExitLstnr::AtExit()
LinguMgrExitLstnr * LinguMgr::pExitLstnr = 0;
sal_Bool LinguMgr::bExiting = sal_False;
-uno::Reference< XLinguServiceManager > LinguMgr::xLngSvcMgr = 0;
+uno::Reference< XLinguServiceManager2 > LinguMgr::xLngSvcMgr = 0;
uno::Reference< XSpellChecker1 > LinguMgr::xSpell = 0;
uno::Reference< XHyphenator > LinguMgr::xHyph = 0;
uno::Reference< XThesaurus > LinguMgr::xThes = 0;
@@ -546,7 +529,7 @@ uno::Reference< XDictionary > LinguMgr::xIgnoreAll = 0;
uno::Reference< XDictionary > LinguMgr::xChangeAll = 0;
-uno::Reference< XLinguServiceManager > LinguMgr::GetLngSvcMgr()
+uno::Reference< XLinguServiceManager2 > LinguMgr::GetLngSvcMgr()
{
if (bExiting)
return 0;
diff --git a/editeng/source/outliner/outleeng.cxx b/editeng/source/outliner/outleeng.cxx
index 5d2f5f616b13..3fcaab1d209a 100644
--- a/editeng/source/outliner/outleeng.cxx
+++ b/editeng/source/outliner/outleeng.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <svl/intitem.hxx>
#include <editeng/editeng.hxx>
@@ -209,7 +200,7 @@ void OutlinerEditEng::SetParaAttribs( sal_uInt16 nPara, const SfxItemSet& rSet )
pOwner->ImplCheckNumBulletItem( (sal_uInt16)nPara );
// #i100014#
// It is not a good idea to substract 1 from a count and cast the result
- // to USHORT without check, if the count is 0.
+ // to sal_uInt16 without check, if the count is 0.
pOwner->ImplCheckParagraphs( (sal_uInt16)nPara, (sal_uInt16) (pOwner->pParaList->GetParagraphCount()) );
if ( !IsInUndo() && IsUndoEnabled() )
diff --git a/editeng/source/outliner/outleeng.hxx b/editeng/source/outliner/outleeng.hxx
index 14051c3e5e10..ee075d347158 100644
--- a/editeng/source/outliner/outleeng.hxx
+++ b/editeng/source/outliner/outleeng.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _OUTLEENG_HXX
#define _OUTLEENG_HXX
diff --git a/editeng/source/outliner/outlin2.cxx b/editeng/source/outliner/outlin2.cxx
index ab073f623775..0d3a2daeb3b6 100644
--- a/editeng/source/outliner/outlin2.cxx
+++ b/editeng/source/outliner/outlin2.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <svl/intitem.hxx>
diff --git a/editeng/source/outliner/outliner.cxx b/editeng/source/outliner/outliner.cxx
index b45373cf9bb5..4fa52bded5fe 100644
--- a/editeng/source/outliner/outliner.cxx
+++ b/editeng/source/outliner/outliner.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/string.hxx>
#include <svl/intitem.hxx>
@@ -317,7 +308,7 @@ void Outliner::SetNumberingStartValue( sal_uInt16 nPara, sal_Int16 nNumberingSta
pPara->SetNumberingStartValue( nNumberingStartValue );
// #i100014#
// It is not a good idea to substract 1 from a count and cast the result
- // to USHORT without check, if the count is 0.
+ // to sal_uInt16 without check, if the count is 0.
ImplCheckParagraphs( nPara, (sal_uInt16) (pParaList->GetParagraphCount()) );
pEditEngine->SetModified();
}
@@ -344,7 +335,7 @@ void Outliner::SetParaIsNumberingRestart( sal_uInt16 nPara, sal_Bool bParaIsNumb
pPara->SetParaIsNumberingRestart( bParaIsNumberingRestart );
// #i100014#
// It is not a good idea to substract 1 from a count and cast the result
- // to USHORT without check, if the count is 0.
+ // to sal_uInt16 without check, if the count is 0.
ImplCheckParagraphs( nPara, (sal_uInt16) (pParaList->GetParagraphCount()) );
pEditEngine->SetModified();
}
@@ -486,7 +477,7 @@ bool Outliner::ImpConvertEdtToOut( sal_uInt32 nPara,EditView* pView)
XubString aNumber_US( RTL_CONSTASCII_USTRINGPARAM( "Numbering" ) );
XubString aStr( pEditEngine->GetText( (sal_uInt16)nPara ) );
- xub_Unicode* pPtr = (xub_Unicode*)aStr.GetBuffer();
+ sal_Unicode* pPtr = (sal_Unicode*)aStr.GetBuffer();
sal_uInt16 nHeadingNumberStart = 0;
sal_uInt16 nNumberingNumberStart = 0;
@@ -584,7 +575,7 @@ void Outliner::SetText( const OutlinerParaObject& rPObj )
// #i100014#
// It is not a good idea to substract 1 from a count and cast the result
- // to USHORT without check, if the count is 0.
+ // to sal_uInt16 without check, if the count is 0.
ImplCheckParagraphs( 0, (sal_uInt16) (pParaList->GetParagraphCount()) );
EnableUndo( bUndo );
@@ -630,7 +621,7 @@ void Outliner::AddText( const OutlinerParaObject& rPObj )
// #i100014#
// It is not a good idea to substract 1 from a count and cast the result
- // to USHORT without check, if the count is 0.
+ // to sal_uInt16 without check, if the count is 0.
ImplCheckParagraphs( (sal_uInt16)nPara, (sal_uInt16) (pParaList->GetParagraphCount()) );
ImplBlockInsertionCallbacks( sal_False );
diff --git a/editeng/source/outliner/outlobj.cxx b/editeng/source/outliner/outlobj.cxx
index 447f7a5ac607..dc39bd608738 100644
--- a/editeng/source/outliner/outlobj.cxx
+++ b/editeng/source/outliner/outlobj.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <svl/intitem.hxx>
#include <editeng/editeng.hxx>
diff --git a/editeng/source/outliner/outlundo.cxx b/editeng/source/outliner/outlundo.cxx
index c5a3f9e3d4d5..0bf8cfb3e5d1 100644
--- a/editeng/source/outliner/outlundo.cxx
+++ b/editeng/source/outliner/outlundo.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <svl/intitem.hxx>
diff --git a/editeng/source/outliner/outlundo.hxx b/editeng/source/outliner/outlundo.hxx
index 5b49b0f64bde..7a901509c78e 100644
--- a/editeng/source/outliner/outlundo.hxx
+++ b/editeng/source/outliner/outlundo.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _OUTLUNDO_HXX
#define _OUTLUNDO_HXX
diff --git a/editeng/source/outliner/outlvw.cxx b/editeng/source/outliner/outlvw.cxx
index 68922aa38743..d96d7556afed 100644
--- a/editeng/source/outliner/outlvw.cxx
+++ b/editeng/source/outliner/outlvw.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/i18n/WordType.hpp>
@@ -1258,10 +1249,9 @@ sal_uLong OutlinerView::Read( SvStream& rInput, const String& rBaseURL, EETextF
{
if ( eFormat == EE_FORMAT_BIN )
{
- sal_uInt16 nDepth = 0;
const SfxItemSet& rAttrs = pOwner->GetParaAttribs( n );
const SfxInt16Item& rLevel = (const SfxInt16Item&) rAttrs.Get( EE_PARA_OUTLLEVEL );
- nDepth = rLevel.GetValue();
+ sal_uInt16 nDepth = rLevel.GetValue();
pOwner->ImplInitDepth( n, nDepth, sal_False );
}
diff --git a/editeng/source/outliner/paralist.cxx b/editeng/source/outliner/paralist.cxx
index a946adb3efca..1bad842dc95f 100644
--- a/editeng/source/outliner/paralist.cxx
+++ b/editeng/source/outliner/paralist.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <paralist.hxx>
diff --git a/editeng/source/outliner/paralist.hxx b/editeng/source/outliner/paralist.hxx
index c038e601c11b..5e51aea1bf96 100644
--- a/editeng/source/outliner/paralist.hxx
+++ b/editeng/source/outliner/paralist.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _PARALIST_HXX
#define _PARALIST_HXX
diff --git a/editeng/source/rtf/rtfgrf.cxx b/editeng/source/rtf/rtfgrf.cxx
index d6572be69cab..6d7bbcf31baa 100644
--- a/editeng/source/rtf/rtfgrf.cxx
+++ b/editeng/source/rtf/rtfgrf.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <boost/scoped_ptr.hpp>
diff --git a/editeng/source/rtf/rtfitem.cxx b/editeng/source/rtf/rtfitem.cxx
index f99bfb59f447..b1ff8ec2053b 100644
--- a/editeng/source/rtf/rtfitem.cxx
+++ b/editeng/source/rtf/rtfitem.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/flstitem.hxx>
diff --git a/editeng/source/rtf/svxrtf.cxx b/editeng/source/rtf/svxrtf.cxx
index 986a65473c2d..9d2a3172259f 100644
--- a/editeng/source/rtf/svxrtf.cxx
+++ b/editeng/source/rtf/svxrtf.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <ctype.h>
diff --git a/editeng/source/uno/UnoForbiddenCharsTable.cxx b/editeng/source/uno/UnoForbiddenCharsTable.cxx
index 5957520ff0bb..cee34d950507 100644
--- a/editeng/source/uno/UnoForbiddenCharsTable.cxx
+++ b/editeng/source/uno/UnoForbiddenCharsTable.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/UnoForbiddenCharsTable.hxx>
#include <editeng/forbiddencharacterstable.hxx>
diff --git a/editeng/source/uno/unoedhlp.cxx b/editeng/source/uno/unoedhlp.cxx
index a06baa39eb46..4e371bc9fac0 100644
--- a/editeng/source/uno/unoedhlp.cxx
+++ b/editeng/source/uno/unoedhlp.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/unoedhlp.hxx>
#include <editeng/editdata.hxx>
diff --git a/editeng/source/uno/unoedprx.cxx b/editeng/source/uno/unoedprx.cxx
index dcce120e4fbc..1eb478837072 100644
--- a/editeng/source/uno/unoedprx.cxx
+++ b/editeng/source/uno/unoedprx.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
//------------------------------------------------------------------------
diff --git a/editeng/source/uno/unoedsrc.cxx b/editeng/source/uno/unoedsrc.cxx
index 6900b8e413af..3af4ecaa478f 100644
--- a/editeng/source/uno/unoedsrc.cxx
+++ b/editeng/source/uno/unoedsrc.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <svl/brdcst.hxx>
diff --git a/editeng/source/uno/unofdesc.cxx b/editeng/source/uno/unofdesc.cxx
index ae9981dfd348..4bd6028f235c 100644
--- a/editeng/source/uno/unofdesc.cxx
+++ b/editeng/source/uno/unofdesc.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <editeng/eeitem.hxx>
diff --git a/editeng/source/uno/unofield.cxx b/editeng/source/uno/unofield.cxx
index 90ef8741d82b..b33da6beaa22 100644
--- a/editeng/source/uno/unofield.cxx
+++ b/editeng/source/uno/unofield.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/util/DateTime.hpp>
#include <com/sun/star/text/FilenameDisplayFormat.hpp>
diff --git a/editeng/source/uno/unofored.cxx b/editeng/source/uno/unofored.cxx
index fbc93db4e0d5..39d2012be8aa 100644
--- a/editeng/source/uno/unofored.cxx
+++ b/editeng/source/uno/unofored.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <algorithm>
diff --git a/editeng/source/uno/unoforou.cxx b/editeng/source/uno/unoforou.cxx
index 7a39e7e19f2b..f320851da662 100644
--- a/editeng/source/uno/unoforou.cxx
+++ b/editeng/source/uno/unoforou.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <algorithm>
diff --git a/editeng/source/uno/unoipset.cxx b/editeng/source/uno/unoipset.cxx
index a99ee1afd2f5..ed16db9b4148 100644
--- a/editeng/source/uno/unoipset.cxx
+++ b/editeng/source/uno/unoipset.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/beans/XPropertySet.hpp>
#include <svl/eitem.hxx>
@@ -167,7 +158,6 @@ void SvxItemPropertySet::setPropertyValue( const SfxItemPropertySimpleEntry* pMa
// Get item
const SfxPoolItem* pItem = 0;
- SfxPoolItem *pNewItem = 0;
SfxItemState eState = rSet.GetItemState( pMap->nWID, sal_True, &pItem );
SfxItemPool* pPool = rSet.GetPool();
@@ -197,7 +187,7 @@ void SvxItemPropertySet::setPropertyValue( const SfxItemPropertySimpleEntry* pMa
SvxUnoConvertFromMM( eMapUnit, aValue );
}
- pNewItem = pItem->Clone();
+ SfxPoolItem *pNewItem = pItem->Clone();
sal_uInt8 nMemberId = pMap->nMemberId & (~SFX_METRIC_ITEM);
if( eMapUnit == SFX_MAPUNIT_100TH_MM )
diff --git a/editeng/source/uno/unonrule.cxx b/editeng/source/uno/unonrule.cxx
index bd171da234ee..749dad5c75d2 100644
--- a/editeng/source/uno/unonrule.cxx
+++ b/editeng/source/uno/unonrule.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/text/HoriOrientation.hpp>
#include <com/sun/star/awt/XBitmap.hpp>
diff --git a/editeng/source/uno/unopracc.cxx b/editeng/source/uno/unopracc.cxx
index ba8077a737c0..0ca802052da2 100644
--- a/editeng/source/uno/unopracc.cxx
+++ b/editeng/source/uno/unopracc.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
//------------------------------------------------------------------------
diff --git a/editeng/source/uno/unoviwou.cxx b/editeng/source/uno/unoviwou.cxx
index c4a38b0af7e7..6753fbb95093 100644
--- a/editeng/source/uno/unoviwou.cxx
+++ b/editeng/source/uno/unoviwou.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/outdev.hxx>
#include <vcl/window.hxx>
diff --git a/editeng/source/xml/xmltxtexp.cxx b/editeng/source/xml/xmltxtexp.cxx
index 382965de3b43..beec85ed2a29 100644
--- a/editeng/source/xml/xmltxtexp.cxx
+++ b/editeng/source/xml/xmltxtexp.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
/** this file implements an export of a selected EditEngine content into
@@ -33,6 +24,7 @@
#include <com/sun/star/style/XStyleFamiliesSupplier.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <svl/itemprop.hxx>
#include <svl/brdcst.hxx>
#include <com/sun/star/uno/Sequence.hxx>
@@ -420,6 +412,7 @@ void SvxWriteXML( EditEngine& rEditEngine, SvStream& rStream, const ESelection&
// create service factory
uno::Reference< lang::XMultiServiceFactory> xServiceFactory( ::comphelper::getProcessServiceFactory() );
+ uno::Reference<uno::XComponentContext> xContext( ::comphelper::getProcessComponentContext() );
if( !xServiceFactory.is() )
{
@@ -428,16 +421,7 @@ void SvxWriteXML( EditEngine& rEditEngine, SvStream& rStream, const ESelection&
}
// create document handler
-
- uno::Reference< uno::XInterface > xWriter( xServiceFactory->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.xml.sax.Writer" ) ) ) );
-
- if( !xWriter.is() )
- {
- OSL_FAIL( "com.sun.star.xml.sax.Writer service missing" );
- break;
- }
-
- uno::Reference<xml::sax::XDocumentHandler> xHandler( xWriter, uno::UNO_QUERY );
+ uno::Reference< xml::sax::XWriter > xWriter = xml::sax::Writer::create( xContext );
// create output stream and active data source
uno::Reference<io::XOutputStream> xOut( new utl::OOutputStreamWrapper( rStream ) );
@@ -450,13 +434,13 @@ void SvxWriteXML( EditEngine& rEditEngine, SvStream& rStream, const ESelection&
*/
- uno::Reference<io::XActiveDataSource> xMetaSrc( xWriter, uno::UNO_QUERY );
- xMetaSrc->setOutputStream( xOut );
+ xWriter->setOutputStream( xOut );
// export text
const OUString aName;
// SvxXMLTextExportComponent aExporter( &rEditEngine, rSel, aName, xHandler );
+ uno::Reference< xml::sax::XDocumentHandler > xHandler(xWriter, UNO_QUERY_THROW);
SvxXMLTextExportComponent aExporter( xServiceFactory, &rEditEngine, rSel, aName, xHandler );
aExporter.exportDoc();
diff --git a/editeng/source/xml/xmltxtimp.cxx b/editeng/source/xml/xmltxtimp.cxx
index 27e6b3613a7f..c70d389370a4 100644
--- a/editeng/source/xml/xmltxtimp.cxx
+++ b/editeng/source/xml/xmltxtimp.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/io/Pipe.hpp>
#include <com/sun/star/io/XActiveDataControl.hpp>
diff --git a/embeddedobj/Library_embobj.mk b/embeddedobj/Library_embobj.mk
index 99456ed3b183..1fa1c5a4482d 100644
--- a/embeddedobj/Library_embobj.mk
+++ b/embeddedobj/Library_embobj.mk
@@ -45,6 +45,7 @@ $(eval $(call gb_Library_use_libraries,embobj,\
cppu \
cppuhelper \
sal \
+ vcl \
$(gb_UWINAPI) \
))
diff --git a/embeddedobj/README b/embeddedobj/README
new file mode 100644
index 000000000000..3fe564abd6b3
--- /dev/null
+++ b/embeddedobj/README
@@ -0,0 +1 @@
+Code for embedding objects into LibreOffice (reverse of embedserv module).
diff --git a/embeddedobj/prj/build.lst b/embeddedobj/prj/build.lst
index eed683e832fa..fea2c33cdb91 100644
--- a/embeddedobj/prj/build.lst
+++ b/embeddedobj/prj/build.lst
@@ -1,2 +1,2 @@
-eo embeddedobj : offapi sal cppu cppuhelper comphelper tools unotools LIBXSLT:libxslt NULL
+eo embeddedobj : offapi sal cppu cppuhelper comphelper tools unotools vcl LIBXSLT:libxslt NULL
eo embeddedobj\prj nmake - all eo_prj NULL
diff --git a/embeddedobj/source/commonembedding/embedobj.cxx b/embeddedobj/source/commonembedding/embedobj.cxx
index df75afe66b9b..941186d50370 100644
--- a/embeddedobj/source/commonembedding/embedobj.cxx
+++ b/embeddedobj/source/commonembedding/embedobj.cxx
@@ -40,6 +40,7 @@
#include <comphelper/processfactory.hxx>
#include <rtl/logfile.hxx>
+#include <vcl/svapp.hxx>
#include <targetstatecontrol.hxx>
@@ -529,6 +530,16 @@ void SAL_CALL OCommonEmbeddedObject::doVerb( sal_Int32 nVerbID )
{
RTL_LOGFILE_CONTEXT( aLog, "embeddedobj (mv76033) OCommonEmbeddedObject::doVerb" );
+ SolarMutexGuard aSolarGuard;
+ //TODO: a gross hack to avoid deadlocks when this is called from the
+ // outside and OCommonEmbeddedObject::changeState, with m_aMutex locked,
+ // calls into framework code that tries to lock the solar mutex, while
+ // another thread (through Window::ImplCallPaint, say) calls
+ // OCommonEmbeddedObject::getComponent with the solar mutex locked and
+ // then tries to lock m_aMutex (see fdo#56818); the alternative would be
+ // to get locking done right in this class, but that looks like a
+ // daunting task
+
::osl::ResettableMutexGuard aGuard( m_aMutex );
if ( m_bDisposed )
throw lang::DisposedException(); // TODO
diff --git a/embeddedobj/source/general/docholder.cxx b/embeddedobj/source/general/docholder.cxx
index 75643c901bda..c7e63d86ee03 100644
--- a/embeddedobj/source/general/docholder.cxx
+++ b/embeddedobj/source/general/docholder.cxx
@@ -38,6 +38,7 @@
#include <com/sun/star/frame/XControllerBorder.hpp>
#include <com/sun/star/util/XModifyBroadcaster.hpp>
#include <com/sun/star/frame/XDispatchProviderInterception.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XTopWindow.hpp>
#include <com/sun/star/awt/PosSize.hpp>
#include <com/sun/star/awt/XView.hpp>
@@ -454,11 +455,8 @@ sal_Bool DocumentHolder::ShowInplace( const uno::Reference< awt::XWindowPeer >&
awt::Rectangle(),//aOwnRectangle,
awt::WindowAttribute::SHOW | awt::VclWindowPeerAttribute::CLIPCHILDREN );
- uno::Reference< awt::XToolkit > xToolkit(
- m_xFactory->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.Toolkit" )) ),
- uno::UNO_QUERY );
- if ( !xToolkit.is() )
- throw uno::RuntimeException();
+ uno::Reference< awt::XToolkit2 > xToolkit =
+ awt::Toolkit::create(comphelper::getComponentContext(m_xFactory));
uno::Reference< awt::XWindowPeer > xNewWinPeer = xToolkit->createWindow( aOwnWinDescriptor );
uno::Reference< awt::XWindow > xOwnWindow( xNewWinPeer, uno::UNO_QUERY );
diff --git a/embedserv/source/embed/docholder.cxx b/embedserv/source/embed/docholder.cxx
index a2a91a524202..cf2b71c4c9d9 100644
--- a/embedserv/source/embed/docholder.cxx
+++ b/embedserv/source/embed/docholder.cxx
@@ -31,6 +31,7 @@
#include "common.h"
#include <Windows.h>
#include <com/sun/star/lang/SystemDependent.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XSystemChildFactory.hpp>
#include <com/sun/star/awt/XSystemDependentWindowPeer.hpp>
#include <com/sun/star/awt/XSystemDependentMenuPeer.hpp>
@@ -283,36 +284,32 @@ HRESULT DocumentHolder::InPlaceActivate(
HWND hWndxWinParent(0);
uno::Reference<awt::XWindow> xWin;
- static const ::rtl::OUString aToolkitServiceName(
- RTL_CONSTASCII_USTRINGPARAM ( "com.sun.star.awt.Toolkit" ) );
- uno::Reference<awt::XSystemChildFactory> xToolkit(
- m_xFactory->createInstance(aToolkitServiceName ),uno::UNO_QUERY);
-
- if(xToolkit.is()) {
- // create system window wrapper for hwnd
- if( !m_pCHatchWin )
- m_pCHatchWin = new winwrap::CHatchWin(
- m_hInstance,this);
-
- if(m_pCHatchWin->Init(hWndSite,/*ID_HATCHWINDOW*/2000, NULL)) {
- m_pCHatchWin->RectsSet(&rcPos,&rcClip); //set visible area
- hWndxWinParent = m_pCHatchWin->Window();
- ShowWindow(hWndxWinParent,SW_SHOW); //Make visible.
- }
- else {
- // no success initializing hatch window
- delete m_pCHatchWin, m_pCHatchWin = 0;
- hWndxWinParent = hWndSite;
- }
+ uno::Reference<awt::XToolkit2> xToolkit =
+ awt::Toolkit::create(comphelper::getComponentContext(m_xFactory));
- aAny <<= sal_Int32(hWndxWinParent);
- xWin = uno::Reference<awt::XWindow>(
- xToolkit->createSystemChild(
- aAny,
- aProcessIdent,
- lang::SystemDependent::SYSTEM_WIN32),
- uno::UNO_QUERY);
+ // create system window wrapper for hwnd
+ if( !m_pCHatchWin )
+ m_pCHatchWin = new winwrap::CHatchWin(
+ m_hInstance,this);
+
+ if(m_pCHatchWin->Init(hWndSite,/*ID_HATCHWINDOW*/2000, NULL)) {
+ m_pCHatchWin->RectsSet(&rcPos,&rcClip); //set visible area
+ hWndxWinParent = m_pCHatchWin->Window();
+ ShowWindow(hWndxWinParent,SW_SHOW); //Make visible.
}
+ else {
+ // no success initializing hatch window
+ delete m_pCHatchWin, m_pCHatchWin = 0;
+ hWndxWinParent = hWndSite;
+ }
+
+ aAny <<= sal_Int32(hWndxWinParent);
+ xWin = uno::Reference<awt::XWindow>(
+ xToolkit->createSystemChild(
+ aAny,
+ aProcessIdent,
+ lang::SystemDependent::SYSTEM_WIN32),
+ uno::UNO_QUERY);
if(xWin.is()) {
xWin->setPosSize(
@@ -1301,12 +1298,9 @@ DocumentHolder::getContainerWindow(
uno::Reference<awt::XWindow> xWin(0);
- static const ::rtl::OUString aToolkitServiceName(
- RTL_CONSTASCII_USTRINGPARAM ( "com.sun.star.awt.Toolkit" ) );
- uno::Reference<awt::XSystemChildFactory> xToolkit(
- m_xFactory->createInstance(aToolkitServiceName ),uno::UNO_QUERY);
+ uno::Reference<awt::XToolkit2> xToolkit = awt::Toolkit::create( comphelper::getComponentContext(m_xFactory) );
- if(xToolkit.is() && m_pIOleIPFrame) {
+ if(m_pIOleIPFrame) {
HWND hWnd;
m_pIOleIPFrame->GetWindow(&hWnd);
diff --git a/saxon/Package_saxon.mk b/epm/ExternalPackage_epm.mk
index ba19d97a8324..793f4192b787 100644
--- a/saxon/Package_saxon.mk
+++ b/epm/ExternalPackage_epm.mk
@@ -7,10 +7,14 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_Package_Package,saxon_inc,$(call gb_UnpackedTarball_get_dir,saxon)))
+$(eval $(call gb_ExternalPackage_ExternalPackage,epm,epm))
-$(eval $(call gb_Package_use_external_project,saxon_inc,saxon))
+$(eval $(call gb_ExternalPackage_use_external_project,epm,epm))
-$(eval $(call gb_Package_add_file,saxon_inc,bin/saxon9.jar,saxon-build/9.0.0.7/bj/saxon9.jar))
+$(eval $(call gb_ExternalPackage_add_files,epm,bin,\
+ epm \
+ epminstall \
+ mkepmlist \
+))
# vim: set noet sw=4 ts=4:
diff --git a/epm/ExternalProject_epm.mk b/epm/ExternalProject_epm.mk
new file mode 100644
index 000000000000..ca81384653db
--- /dev/null
+++ b/epm/ExternalProject_epm.mk
@@ -0,0 +1,25 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,epm))
+
+$(eval $(call gb_ExternalProject_use_unpacked,epm,epm))
+
+$(eval $(call gb_ExternalProject_register_targets,epm,\
+ build \
+))
+
+$(call gb_ExternalProject_get_state_target,epm,build) :
+ cd $(EXTERNAL_WORKDIR) \
+ && ./configure --disable-fltk \
+ $(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________NONE) \
+ && $(MAKE) \
+ && touch $@
+
+# vim: set noet sw=4 ts=4:
diff --git a/epm/Makefile b/epm/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/epm/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/epm/Module_epm.mk b/epm/Module_epm.mk
new file mode 100644
index 000000000000..773342cb2819
--- /dev/null
+++ b/epm/Module_epm.mk
@@ -0,0 +1,26 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,epm))
+
+ifeq (EPM,$(filter EPM,$(BUILD_TYPE)))
+
+ifneq ($(CROSS_COMPILING),YES)
+
+$(eval $(call gb_Module_add_targets,epm,\
+ ExternalPackage_epm \
+ ExternalProject_epm \
+ UnpackedTarball_epm \
+))
+
+endif
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/saxon/UnpackedTarball_saxon.mk b/epm/UnpackedTarball_epm.mk
index 206257b851f1..b9e7e3bcce1a 100644
--- a/saxon/UnpackedTarball_saxon.mk
+++ b/epm/UnpackedTarball_epm.mk
@@ -7,10 +7,12 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_UnpackedTarball_UnpackedTarball,saxon))
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,epm))
-$(eval $(call gb_UnpackedTarball_set_tarball,saxon,$(SAXON_TARBALL)))
+$(eval $(call gb_UnpackedTarball_set_tarball,epm,$(EPM_TARBALL)))
-$(eval $(call gb_UnpackedTarball_add_file,saxon,build.xml,saxon/build.xml))
+$(eval $(call gb_UnpackedTarball_add_patches,epm,\
+ epm/epm-3.7.patch \
+))
# vim: set noet sw=4 ts=4:
diff --git a/epm/makefile.mk b/epm/makefile.mk
deleted file mode 100644
index 795c0d093acb..000000000000
--- a/epm/makefile.mk
+++ /dev/null
@@ -1,66 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=epm
-TARGET=epm
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-TARFILE_NAME=epm-3.7
-TARFILE_MD5=3ade8cfe7e59ca8e65052644fed9fca4
-PATCH_FILES=epm-3.7.patch
-
-.IF "$(GUI)"=="UNX" && "$(BUILD_EPM)" != "NO"
-
-EXTRPATH = NONE
-
-CONFIGURE_ACTION=.$/configure
-CONFIGURE_FLAGS=--disable-fltk
-.IF "$(OS)"=="MACOSX"
-CONFIGURE_FLAGS += \
- --prefix=/@.__________________________________________________$(EXTRPATH)
-.IF "$(EXTRA_CFLAGS)"!=""
-CONFIGURE_FLAGS+=CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS="$(EXTRA_LINKFLAGS)" CPP="gcc -E $(EXTRA_CFLAGS)"
-.ENDIF # "$(EXTRA_CFLAGS)"!=""
-.ENDIF
-BUILD_ACTION=make
-OUT2BIN=epm epminstall mkepmlist
-
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
-
diff --git a/epm/prj/d.lst b/epm/prj/d.lst
index 315d3d175552..e69de29bb2d1 100644
--- a/epm/prj/d.lst
+++ b/epm/prj/d.lst
@@ -1,3 +0,0 @@
-..\%__SRC%\bin\epm %_DEST%\bin\epm
-..\%__SRC%\bin\epminstall %_DEST%\bin\epminstall
-..\%__SRC%\bin\mkepmlist %_DEST%\bin\mkepmlist
diff --git a/eventattacher/source/eventattacher.cxx b/eventattacher/source/eventattacher.cxx
index 3b22b496386f..e6c97bd21aeb 100644
--- a/eventattacher/source/eventattacher.cxx
+++ b/eventattacher/source/eventattacher.cxx
@@ -22,7 +22,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/lang/XSingleServiceFactory.hpp>
#include <com/sun/star/registry/XRegistryKey.hpp>
-#include <com/sun/star/beans/XIntrospection.hpp>
+#include <com/sun/star/beans/Introspection.hpp>
#include <com/sun/star/beans/MethodConcept.hpp>
#include <com/sun/star/script/XEventAttacher2.hpp>
#include <com/sun/star/script/Converter.hpp>
@@ -395,8 +395,7 @@ Reference< XIntrospection > EventAttacherImpl::getIntrospection() throw( Excepti
Guard< Mutex > aGuard( m_aMutex );
if( !m_xIntrospection.is() )
{
- Reference< XInterface > xIFace( m_xSMgr->createInstance( rtl::OUString("com.sun.star.beans.Introspection") ) );
- m_xIntrospection = Reference< XIntrospection >( xIFace, UNO_QUERY );
+ m_xIntrospection = Introspection::create( comphelper::getComponentContext(m_xSMgr) );
}
return m_xIntrospection;
}
diff --git a/expat/ExternalPackage_expat.mk b/expat/ExternalPackage_expat.mk
new file mode 100644
index 000000000000..d969cb4c5d3e
--- /dev/null
+++ b/expat/ExternalPackage_expat.mk
@@ -0,0 +1,17 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,expat_inc,expat))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,expat_inc,inc/external/expat,\
+ lib/expat.h \
+ lib/expat_external.h \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/ExternalProject_expat.mk b/expat/ExternalProject_expat.mk
new file mode 100644
index 000000000000..d02e2013d673
--- /dev/null
+++ b/expat/ExternalProject_expat.mk
@@ -0,0 +1,24 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,expat))
+
+$(eval $(call gb_ExternalProject_use_unpacked,expat,expat))
+
+$(eval $(call gb_ExternalProject_register_targets,expat,\
+ configure \
+))
+
+$(call gb_ExternalProject_get_state_target,expat,configure) :
+ cd $(EXTERNAL_WORKDIR) \
+ && ./configure \
+ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \
+ && touch $@
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/Makefile b/expat/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/expat/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/Module_expat.mk b/expat/Module_expat.mk
new file mode 100644
index 000000000000..377047433568
--- /dev/null
+++ b/expat/Module_expat.mk
@@ -0,0 +1,47 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,expat))
+
+ifeq ($(SYSTEM_EXPAT),NO)
+
+$(eval $(call gb_Module_add_targets,expat,\
+ ExternalPackage_expat \
+ UnpackedTarball_expat \
+ StaticLibrary_ascii_expat_xmlparse \
+ StaticLibrary_expat_xmlparse \
+ StaticLibrary_expat_xmltok \
+))
+
+# Actually it wasn't that clear if we should
+# run configure step on mingw or not:
+# CONFIGURATION_ACTION wasn't set, but
+# CROSS_COMPILE case was handled in original makefile
+
+# tested it on mingw and it doesn't hurt ;-)
+#ifneq ($(OS),WNT)
+ifneq ($(OS)$(COM),WNTMSC)
+$(eval $(call gb_Module_add_targets,expat,\
+ ExternalProject_expat \
+))
+endif
+
+# ---------------- X64 stuff special ---------------------
+# use UNICODE only because shell/shlxthandler
+# doesn't link against ascii_expat_xmlparse
+#---------------------------------------------------------
+ifeq ($(BUILD_X64),TRUE)
+$(eval $(call gb_Module_add_targets,expat,\
+ StaticLibrary_expat_x64 \
+))
+endif
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/StaticLibrary_ascii_expat_xmlparse.mk b/expat/StaticLibrary_ascii_expat_xmlparse.mk
new file mode 100644
index 000000000000..c0eb92410059
--- /dev/null
+++ b/expat/StaticLibrary_ascii_expat_xmlparse.mk
@@ -0,0 +1,49 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,ascii_expat_xmlparse))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,ascii_expat_xmlparse))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,ascii_expat_xmlparse,expat))
+
+# no configure step on windows, no dependency
+ifneq ($(OS)$(COM),WNTMSC)
+$(eval $(call gb_StaticLibrary_use_external_project,ascii_expat_xmlparse,expat))
+endif
+
+$(eval $(call gb_StaticLibrary_set_include,ascii_expat_xmlparse,\
+ -I$(call gb_UnpackedTarball_get_dir,expat) \
+ $$(INCLUDE) \
+))
+
+ifeq ($(OS),MACOSX)
+ifneq ($(strip $(SYSBASE)),)
+$(eval $(call gb_StaticLibrary_add_defs,ascii_expat_xmlparse,\
+ -DHAVE_MEMMOVE \
+ -DHAVE_BCOPY \
+))
+endif
+endif
+
+ifeq ($(OS),WNT)
+$(eval $(call gb_StaticLibrary_add_defs,ascii_expat_xmlparse,\
+ -DCOMPILED_FROM_DSP \
+))
+else
+$(eval $(call gb_StaticLibrary_add_defs,ascii_expat_xmlparse,\
+ -DHAVE_EXPAT_CONFIG_H \
+))
+endif
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,ascii_expat_xmlparse,\
+ UnpackedTarball/expat/lib/xmlparse \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/StaticLibrary_expat_x64.mk b/expat/StaticLibrary_expat_x64.mk
new file mode 100644
index 000000000000..bc5b641e18fb
--- /dev/null
+++ b/expat/StaticLibrary_expat_x64.mk
@@ -0,0 +1,34 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,expat_x64))
+
+$(eval $(call gb_StaticLibrary_set_x64,expat_x64,YES))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,expat_x64))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,expat_x64,expat))
+
+$(eval $(call gb_StaticLibrary_set_include,expat_x64,\
+ -I$(call gb_UnpackedTarball_get_dir,expat) \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_StaticLibrary_add_defs,expat_x64,\
+ -DXML_UNICODE \
+ -DCOMPILED_FROM_DSP \
+))
+
+$(eval $(call gb_StaticLibrary_add_x64_generated_cobjects,expat_x64,\
+ UnpackedTarball/expat/lib/xmlparse_x64 \
+ UnpackedTarball/expat/lib/xmltok_x64 \
+ UnpackedTarball/expat/lib/xmlrole_x64 \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/StaticLibrary_expat_xmlparse.mk b/expat/StaticLibrary_expat_xmlparse.mk
new file mode 100644
index 000000000000..39f79d0378d7
--- /dev/null
+++ b/expat/StaticLibrary_expat_xmlparse.mk
@@ -0,0 +1,53 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,expat_xmlparse))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,expat_xmlparse))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,expat_xmlparse,expat))
+
+# no configure step on windows, no dependency
+ifneq ($(OS)$(COM),WNTMSC)
+$(eval $(call gb_StaticLibrary_use_external_project,expat_xmlparse,expat))
+endif
+
+$(eval $(call gb_StaticLibrary_add_defs,expat_xmlparse,\
+ -DXML_UNICODE \
+))
+
+$(eval $(call gb_StaticLibrary_set_include,expat_xmlparse,\
+ -I$(call gb_UnpackedTarball_get_dir,expat) \
+ $$(INCLUDE) \
+))
+
+ifeq ($(OS),MACOSX)
+ifneq ($(strip $(SYSBASE)),)
+$(eval $(call gb_StaticLibrary_add_defs,expat_xmlparse,\
+ -DHAVE_MEMMOVE \
+ -DHAVE_BCOPY \
+))
+endif
+endif
+
+ifeq ($(OS),WNT)
+$(eval $(call gb_StaticLibrary_add_defs,expat_xmlparse,\
+ -DCOMPILED_FROM_DSP \
+))
+else
+$(eval $(call gb_StaticLibrary_add_defs,expat_xmlparse,\
+ -DHAVE_EXPAT_CONFIG_H \
+))
+endif
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,expat_xmlparse,\
+ UnpackedTarball/expat/lib/unicode_xmlparse \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/StaticLibrary_expat_xmltok.mk b/expat/StaticLibrary_expat_xmltok.mk
new file mode 100644
index 000000000000..616884474e1c
--- /dev/null
+++ b/expat/StaticLibrary_expat_xmltok.mk
@@ -0,0 +1,50 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,expat_xmltok))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,expat_xmltok))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,expat_xmltok,expat))
+
+# no configure step on windows, no dependency
+ifneq ($(OS)$(COM),WNTMSC)
+$(eval $(call gb_StaticLibrary_use_external_project,expat_xmltok,expat))
+endif
+
+$(eval $(call gb_StaticLibrary_set_include,expat_xmltok,\
+ -I$(call gb_UnpackedTarball_get_dir,expat) \
+ $$(INCLUDE) \
+))
+
+ifeq ($(OS),MACOSX)
+ifneq ($(strip $(SYSBASE)),)
+$(eval $(call gb_StaticLibrary_add_defs,expat_xmltok,\
+ -DHAVE_MEMMOVE \
+ -DHAVE_BCOPY \
+))
+endif
+endif
+
+ifeq ($(OS),WNT)
+$(eval $(call gb_StaticLibrary_add_defs,expat_xmltok,\
+ -DCOMPILED_FROM_DSP \
+))
+else
+$(eval $(call gb_StaticLibrary_add_defs,expat_xmltok,\
+ -DHAVE_EXPAT_CONFIG_H \
+))
+endif
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,expat_xmltok,\
+ UnpackedTarball/expat/lib/xmltok \
+ UnpackedTarball/expat/lib/xmlrole \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/UnpackedTarball_expat.mk b/expat/UnpackedTarball_expat.mk
new file mode 100644
index 000000000000..d9fb82cefb54
--- /dev/null
+++ b/expat/UnpackedTarball_expat.mk
@@ -0,0 +1,33 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,expat))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,expat,$(EXPAT_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_add_patches,expat,\
+ expat/expat-2.1.0.patch \
+))
+
+# This is a bit hackish
+# we need to compile it twice:
+# with -DXML_UNICODE and without.
+
+# This is a bit hackish too ;-)
+# on windows 64 bit platform we need to link it twice:
+# with $(LINK_X64_BINARY) and with $(gb_LINK).
+$(eval $(call gb_UnpackedTarball_set_post_action,expat,\
+ cp lib/xmlparse.c lib/unicode_xmlparse.c \
+ $(if $(filter $(BUILD_X64),TRUE), && \
+ cp lib/xmlparse.c lib/xmlparse_x64.c && \
+ cp lib/xmltok.c lib/xmltok_x64.c && \
+ cp lib/xmlrole.c lib/xmlrole_x64.c) \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/expat/expat-2.1.0.patch b/expat/expat-2.1.0.patch
index 28d6322d3299..cb85ec5cbe2a 100644
--- a/expat/expat-2.1.0.patch
+++ b/expat/expat-2.1.0.patch
@@ -1,97 +1,3 @@
---- misc/expat-2.1.0/lib/makefile.mk Wed Aug 20 14:33:55 2008
-+++ misc/build/expat-2.1.0/lib/makefile.mk Wed Aug 20 14:26:42 2008
-@@ -1 +1,90 @@
--dummy
-+#*************************************************************************
-+#
-+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+#
-+# Copyright 2000, 2010 Oracle and/or its affiliates.
-+#
-+# OpenOffice.org - a multi-platform office productivity suite
-+#
-+# This file is part of OpenOffice.org.
-+#
-+# OpenOffice.org is free software: you can redistribute it and/or modify
-+# it under the terms of the GNU Lesser General Public License version 3
-+# only, as published by the Free Software Foundation.
-+#
-+# OpenOffice.org is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU Lesser General Public License version 3 for more details
-+# (a copy is included in the LICENSE file that accompanied this code).
-+#
-+# You should have received a copy of the GNU Lesser General Public License
-+# version 3 along with OpenOffice.org. If not, see
-+# <http://www.openoffice.org/license.html>
-+# for a copy of the LGPLv3 License.
-+#
-+#*************************************************************************
-+PRJ=../../../../..
-+
-+PRJNAME=expat
-+TARGET=expat
-+LIBTARGET=NO
-+EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
-+VISIBILITY_HIDDEN=TRUE
-+
-+# --- Settings -----------------------------------------------------
-+.INCLUDE : settings.mk
-+# --- Files --------------------------------------------------------
-+
-+CFLAGS+=-I..
-+
-+.IF "$(OS)"=="WNT"
-+CDEFS+=-DCOMPILED_FROM_DSP
-+.ELSE
-+CDEFS+=-DHAVE_EXPAT_CONFIG_H
-+.ENDIF
-+
-+.IF "$(OS)"=="MACOSX" && "$(SYSBASE)"!=""
-+CDEFS+=-DHAVE_MEMMOVE -DHAVE_BCOPY
-+.ENDIF # "$(OS)"=="MACOSX"
-+
-+SLOFILES=$(SLO)/xmlparse.obj \
-+ $(SLO)/xmlrole.obj \
-+ $(SLO)/xmltok.obj
-+
-+SECOND_BUILD=UNICODE
-+UNICODE_SLOFILES=$(SLO)/xmlparse.obj
-+UNICODECDEFS+=-DXML_UNICODE
-+
-+LIB1ARCHIV=$(LB)/libascii_$(TARGET)_xmlparse.a
-+LIB1TARGET=$(SLB)/ascii_$(TARGET)_xmlparse.lib
-+LIB1OBJFILES=$(SLO)/xmlparse.obj
-+
-+LIB2ARCHIV=$(LB)/lib$(TARGET)_xmlparse.a
-+LIB2TARGET=$(SLB)/$(TARGET)_xmlparse.lib
-+LIB2OBJFILES =$(REAL_UNICODE_SLOFILES)
-+
-+LIB3ARCHIV=$(LB)/lib$(TARGET)_xmltok.a
-+LIB3TARGET=$(SLB)/$(TARGET)_xmltok.lib
-+LIB3OBJFILES=$(SLO)/xmlrole.obj $(SLO)/xmltok.obj
-+
-+.IF "$(BUILD_X64)"!=""
-+# ---------------- X64 stuff special ---------------------
-+# use UNICODE only because shell/shlxthandler
-+# doesn't link against ascii_expat_xmlparse
-+#---------------------------------------------------------
-+SLOFILES_X64=$(SLO_X64)/xmlparse.obj \
-+ $(SLO_X64)/xmlrole.obj \
-+ $(SLO_X64)/xmltok.obj
-+CDEFS_X64+=-DXML_UNICODE -DCOMPILED_FROM_DSP
-+CFLAGS_X64+=-I..
-+LIB1TARGET_X64=$(SLB_X64)/$(TARGET)_xmlparse.lib
-+LIB1OBJFILES_X64=$(SLO_X64)/xmlparse.obj
-+LIB2TARGET_X64=$(SLB_X64)/$(TARGET)_xmltok.lib
-+LIB2OBJFILES_X64=$(SLO_X64)/xmlrole.obj $(SLO_X64)/xmltok.obj
-+.ENDIF # "$(BUILD_X64)"!=""
-+
-+# --- Targets ------------------------------------------------------
-+.INCLUDE : set_wntx64.mk
-+.INCLUDE : target.mk
-+.INCLUDE : tg_wntx64.mk
--- misc/expat-2.1.0/lib/expat_external.h
+++ misc/build/expat-2.1.0/lib/expat_external.h
@@ -86,9 +86,11 @@
@@ -182,3 +88,16 @@
#ifdef __cplusplus
extern "C" {
#endif
+--- misc/expat-2.1.0/lib/expat_external.h 2009-11-16 08:53:17.375000000 +0000
++++ misc/build/expat-2.1.0/lib/expat_external.h 2009-11-16 08:53:34.703125000 +0000
+@@ -7,10 +7,6 @@
+
+ /* External API definitions */
+
+-#if defined(_MSC_EXTENSIONS) && !defined(__BEOS__) && !defined(__CYGWIN__)
+-#define XML_USE_MSC_EXTENSIONS 1
+-#endif
+-
+ /* Expat tries very hard to make the API boundary very specifically
+ defined. There are two macros defined to control this boundary;
+ each of these can be defined before including this header to
diff --git a/expat/makefile.mk b/expat/makefile.mk
deleted file mode 100644
index 7deffd66eeab..000000000000
--- a/expat/makefile.mk
+++ /dev/null
@@ -1,69 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=so_expat
-TARGET=so_expat
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(SYSTEM_EXPAT)" == "YES"
-all:
- @echo "An already available installation of expat should exist on your system."
- @echo "Therefore the version provided here does not need to be built in addition."
-.ENDIF
-
-# --- Files --------------------------------------------------------
-
-TARFILE_NAME=expat-2.1.0
-TARFILE_MD5=dd7dab7a5fea97d2a6a43f511449b7cd
-ADDITIONAL_FILES=lib/makefile.mk
-PATCH_FILES=expat-2.1.0.patch \
- expat-winapi.patch
-
-CONFIGURE_DIR=
-.IF "$(OS)"=="WNT"
-CONFIGURE_ACTION=
-.ELSE
-CONFIGURE_ACTION=./configure
-.ENDIF
-
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-.ENDIF
-
-BUILD_DIR=lib
-BUILD_ACTION=dmake $(MFLAGS) $(CALLMACROS)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
diff --git a/expat/prj/build.lst b/expat/prj/build.lst
index 9ae28720b763..af79e63e5b65 100644
--- a/expat/prj/build.lst
+++ b/expat/prj/build.lst
@@ -1,3 +1,2 @@
ep expat : soltools NULL
-ep expat usr1 - all ep_mkout NULL
-ep expat nmake - all ep_expat NULL
+ep expat\prj nmake - all ep_expat NULL
diff --git a/expat/prj/d.lst b/expat/prj/d.lst
index 9b6aa344cf1d..e69de29bb2d1 100644
--- a/expat/prj/d.lst
+++ b/expat/prj/d.lst
@@ -1,15 +0,0 @@
-mkdir: %_DEST%\inc\external\expat
-mkdir: %_DEST%\lib\x64
-..\%__SRC%\misc\build\expat-2.1.0\lib\expat.h %_DEST%\inc\external\expat.h
-..\%__SRC%\misc\build\expat-2.1.0\lib\expat_external.h %_DEST%\inc\external\expat_external.h
-..\%__SRC%\slb\expat_xmltok.lib %_DEST%\lib\expat_xmltok.lib
-..\%__SRC%\slb\expat_xmlparse.lib %_DEST%\lib\expat_xmlparse.lib
-..\%__SRC%\slb\ascii_expat_xmlparse.lib %_DEST%\lib\ascii_expat_xmlparse.lib
-..\%__SRC%\lib\libexpat_xmltok.a %_DEST%\lib\libexpat_xmltok.a
-..\%__SRC%\lib\libexpat_xmlparse.a %_DEST%\lib\libexpat_xmlparse.a
-..\%__SRC%\lib\libascii_expat_xmlparse.a %_DEST%\lib\libascii_expat_xmlparse.a
-..\%__SRC%\misc\_ooo_st_expat_xmltok.pdb %_DEST%\lib\_ooo_st_expat_xmltok.pdb
-..\%__SRC%\misc\_ooo_st_expat_xmlparse.pdb %_DEST%\lib\_ooo_st_expat_xmlparse.pdb
-..\%__SRC%\slb\x64\expat_xmltok.lib %_DEST%\lib\x64\expat_xmltok.lib
-..\%__SRC%\slb\x64\expat_xmlparse.lib %_DEST%\lib\x64\expat_xmlparse.lib
-
diff --git a/extensions/Makefile b/extensions/Makefile
index ccb1c85a04da..0997e628485b 100644
--- a/extensions/Makefile
+++ b/extensions/Makefile
@@ -1,4 +1,11 @@
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
diff --git a/extensions/StaticLibrary_npsoenv.mk b/extensions/StaticLibrary_npsoenv.mk
index 3a1abe6dda39..e0383dab51de 100644
--- a/extensions/StaticLibrary_npsoenv.mk
+++ b/extensions/StaticLibrary_npsoenv.mk
@@ -27,6 +27,10 @@
$(eval $(call gb_StaticLibrary_StaticLibrary,npsoenv))
+$(eval $(call gb_StaticLibrary_use_packages,npsoenv,\
+ sal_inc \
+))
+
$(eval $(call gb_StaticLibrary_add_exception_objects,npsoenv,\
extensions/source/nsplugin/source/so_env \
))
diff --git a/extensions/prj/build.lst b/extensions/prj/build.lst
index 0f2cae7aa1cb..7e400e4ae81d 100644
--- a/extensions/prj/build.lst
+++ b/extensions/prj/build.lst
@@ -1,4 +1,4 @@
-ex extensions : officecfg salhelper OPENLDAP:openldap DESKTOP:rdbmaker svx SANE:sane TWAIN:twain np_sdk offapi stoc ZLIB:zlib CURL:curl LIBXSLT:libxslt CPPUNIT:cppunit NULL
+ex extensions : officecfg salhelper OPENLDAP:openldap svx SANE:sane TWAIN:twain np_sdk offapi stoc ZLIB:zlib CURL:curl LIBXSLT:libxslt CPPUNIT:cppunit NULL
ex extensions\prj nmake - all ex_prj NULL
# Fails at the moment
diff --git a/extensions/qa/update/simple.xml b/extensions/qa/update/simple.xml
index 79003972317b..f2694700ad31 100644
--- a/extensions/qa/update/simple.xml
+++ b/extensions/qa/update/simple.xml
@@ -1,4 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+-->
<inst:description xmlns:inst="http://update.libreoffice.org/description">
<inst:id>LibreOffice 3.5.0 Beta2</inst:id>
<inst:version>3.5.0 Beta2</inst:version>
diff --git a/extensions/source/abpilot/abp.component b/extensions/source/abpilot/abp.component
index 83c42e58a383..c9feb3d1ce31 100644
--- a/extensions/source/abpilot/abp.component
+++ b/extensions/source/abpilot/abp.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="abp"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/abpilot/abpfinalpage.cxx b/extensions/source/abpilot/abpfinalpage.cxx
index 1fbc68c29eac..bc34737151e5 100644
--- a/extensions/source/abpilot/abpfinalpage.cxx
+++ b/extensions/source/abpilot/abpfinalpage.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "abpfinalpage.hxx"
#include "addresssettings.hxx"
diff --git a/extensions/source/abpilot/abpfinalpage.hxx b/extensions/source/abpilot/abpfinalpage.hxx
index f6ab3ce357c2..49e8a5ae7d05 100644
--- a/extensions/source/abpilot/abpfinalpage.hxx
+++ b/extensions/source/abpilot/abpfinalpage.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_ABP_ABPFINALPAGE_HXX
#define EXTENSIONS_ABP_ABPFINALPAGE_HXX
diff --git a/extensions/source/abpilot/abpservices.cxx b/extensions/source/abpilot/abpservices.cxx
index a7955d6d0d6f..4459712b4741 100644
--- a/extensions/source/abpilot/abpservices.cxx
+++ b/extensions/source/abpilot/abpservices.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "componentmodule.hxx"
diff --git a/extensions/source/abpilot/abspilot.cxx b/extensions/source/abpilot/abspilot.cxx
index 0024596ef809..236a05cace52 100644
--- a/extensions/source/abpilot/abspilot.cxx
+++ b/extensions/source/abpilot/abspilot.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "abspilot.hxx"
#include "abpilot.hrc"
diff --git a/extensions/source/abpilot/abspilot.hxx b/extensions/source/abpilot/abspilot.hxx
index 9c751c5eafd3..8a50a763bb75 100644
--- a/extensions/source/abpilot/abspilot.hxx
+++ b/extensions/source/abpilot/abspilot.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_ABSPILOT_HXX
#define EXTENSIONS_ABSPILOT_HXX
diff --git a/extensions/source/abpilot/abspilot.src b/extensions/source/abpilot/abspilot.src
index e0e8c3950361..f9bd8ef11932 100644
--- a/extensions/source/abpilot/abspilot.src
+++ b/extensions/source/abpilot/abspilot.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "abpresid.hrc"
diff --git a/extensions/source/abpilot/admininvokationimpl.cxx b/extensions/source/abpilot/admininvokationimpl.cxx
index e3e221dba779..a6720abeaf5b 100644
--- a/extensions/source/abpilot/admininvokationimpl.cxx
+++ b/extensions/source/abpilot/admininvokationimpl.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "admininvokationimpl.hxx"
#include <tools/debug.hxx>
diff --git a/extensions/source/abpilot/datasourcehandling.cxx b/extensions/source/abpilot/datasourcehandling.cxx
index 0577224521d7..16bb8e3e8316 100644
--- a/extensions/source/abpilot/datasourcehandling.cxx
+++ b/extensions/source/abpilot/datasourcehandling.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "abpresid.hrc"
diff --git a/extensions/source/abpilot/fieldmappingimpl.cxx b/extensions/source/abpilot/fieldmappingimpl.cxx
index ca0c19ca69db..dbea7040b9dd 100644
--- a/extensions/source/abpilot/fieldmappingimpl.cxx
+++ b/extensions/source/abpilot/fieldmappingimpl.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "fieldmappingimpl.hxx"
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
diff --git a/extensions/source/abpilot/fieldmappingpage.cxx b/extensions/source/abpilot/fieldmappingpage.cxx
index 2a80cf13da6c..60716a7e1d05 100644
--- a/extensions/source/abpilot/fieldmappingpage.cxx
+++ b/extensions/source/abpilot/fieldmappingpage.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "fieldmappingpage.hxx"
#include "fieldmappingimpl.hxx"
diff --git a/extensions/source/abpilot/typeselectionpage.cxx b/extensions/source/abpilot/typeselectionpage.cxx
index 065c11bc88e5..655fd0d76e7b 100644
--- a/extensions/source/abpilot/typeselectionpage.cxx
+++ b/extensions/source/abpilot/typeselectionpage.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "typeselectionpage.hxx"
#include "addresssettings.hxx"
diff --git a/extensions/source/abpilot/unodialogabp.cxx b/extensions/source/abpilot/unodialogabp.cxx
index c79dd53d7311..1626d396574d 100644
--- a/extensions/source/abpilot/unodialogabp.cxx
+++ b/extensions/source/abpilot/unodialogabp.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "unodialogabp.hxx"
#include <cppuhelper/typeprovider.hxx>
diff --git a/extensions/source/abpilot/unodialogabp.hxx b/extensions/source/abpilot/unodialogabp.hxx
index 3674d9549acc..189e9862b32d 100644
--- a/extensions/source/abpilot/unodialogabp.hxx
+++ b/extensions/source/abpilot/unodialogabp.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_ABP_UNODIALOG_HXX
#define EXTENSIONS_ABP_UNODIALOG_HXX
diff --git a/extensions/source/activex/README.txt b/extensions/source/activex/README.txt
index 9d647987aaa7..26cc661c97d3 100644
--- a/extensions/source/activex/README.txt
+++ b/extensions/source/activex/README.txt
@@ -1,14 +1,14 @@
- Description.
+Description.
The StarOffice ActiveX control shows an example of access to UNO through COM technology.
It requires a properly installed StarOffice version 6.0/6.1 or OpenOffice 1.0.
This is a Lite ActiveX control so it can be used only in containers that
-allows to use such controls.
+allows to use such controls.
Pressing to any link to staroffice document should activate the control.
So the document will be opened in ReadOnly mode.
-Also it can be activated with an <OBJECT> tag from a html-page.
+Also it can be activated with an <OBJECT> tag from a html-page.
Without any parameters for an object tag a new writer document will be
opened for editing. Possible parameters are
src - full URL to the file that should be edited/viewed;
@@ -16,10 +16,10 @@ opened for editing. Possible parameters are
for edit, for example "private:factory/swriter"
readonly - the default value is "true", in case it is set to any other
value the document is opened for editing
-
+
As any ActiveX control this one should be registered.
To let MSIE register it itself the "CODEBASE" parameter
-for the "OBJECT" tag should be specified
+for the "OBJECT" tag should be specified
with an URL to the library "so_activex.dll".
The example of registration with "OBJECT" tag is in example.html.
diff --git a/extensions/source/activex/SOActionsApproval.cxx b/extensions/source/activex/SOActionsApproval.cxx
index e0ce5c5da58e..cb18c84dae28 100644
--- a/extensions/source/activex/SOActionsApproval.cxx
+++ b/extensions/source/activex/SOActionsApproval.cxx
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SOActionsApproval.cpp : Implementation of CHelpApp and DLL registration.
#include "stdafx2.h"
diff --git a/extensions/source/activex/SOActionsApproval.h b/extensions/source/activex/SOActionsApproval.h
index ab756e58c8c9..1790c782448d 100644
--- a/extensions/source/activex/SOActionsApproval.h
+++ b/extensions/source/activex/SOActionsApproval.h
@@ -1,7 +1,23 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SOActionsApproval.h: Definition of the SOActionsApproval class
-//
-//////////////////////////////////////////////////////////////////////
#ifndef __SODOCUMENTEVENTLISTENER_H_
#define __SODOCUMENTEVENTLISTENER_H_
diff --git a/extensions/source/activex/SOActiveX.cxx b/extensions/source/activex/SOActiveX.cxx
index f95e42772185..2a7794311fbf 100644
--- a/extensions/source/activex/SOActiveX.cxx
+++ b/extensions/source/activex/SOActiveX.cxx
@@ -1,8 +1,26 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SOActiveX.cpp : Implementation of CSOActiveX
#pragma warning (disable:4505)
- // permanently suppress "unreferenced local function has been removed" warning
+// permanently suppress "unreferenced local function has been removed" warning
#pragma warning (push,1)
#pragma warning (disable:4265)
diff --git a/extensions/source/activex/SOActiveX.h b/extensions/source/activex/SOActiveX.h
index fea95d09c9b9..e2e5b68de617 100644
--- a/extensions/source/activex/SOActiveX.h
+++ b/extensions/source/activex/SOActiveX.h
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SOActiveX.h : Declaration of the CSOActiveX
#ifndef __SOACTIVEX_H_
diff --git a/extensions/source/activex/SOComWindowPeer.cxx b/extensions/source/activex/SOComWindowPeer.cxx
index 7fb56dbdfd32..a9d6379ce4cf 100644
--- a/extensions/source/activex/SOComWindowPeer.cxx
+++ b/extensions/source/activex/SOComWindowPeer.cxx
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SOComWindowPeer.cpp : Implementation of CHelpApp and DLL registration.
#include "stdafx2.h"
diff --git a/extensions/source/activex/SOComWindowPeer.h b/extensions/source/activex/SOComWindowPeer.h
index c67e2811a0e4..d8c4d2d83a5d 100644
--- a/extensions/source/activex/SOComWindowPeer.h
+++ b/extensions/source/activex/SOComWindowPeer.h
@@ -1,7 +1,23 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SOComWindowPeer.h: Definition of the SOComWindowPeer class
-//
-//////////////////////////////////////////////////////////////////////
#ifndef __SOCOMWINDOWPEER_H_
#define __SOCOMWINDOWPEER_H_
diff --git a/extensions/source/activex/SODispatchInterceptor.cxx b/extensions/source/activex/SODispatchInterceptor.cxx
index dcddf0d86b0c..6ac0e8a61a82 100644
--- a/extensions/source/activex/SODispatchInterceptor.cxx
+++ b/extensions/source/activex/SODispatchInterceptor.cxx
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SODispatchInterceptor.cpp : Implementation of CHelpApp and DLL registration.
#include "stdio.h"
diff --git a/extensions/source/activex/SODispatchInterceptor.h b/extensions/source/activex/SODispatchInterceptor.h
index 0a6cbd78353f..e90bbefec4e9 100644
--- a/extensions/source/activex/SODispatchInterceptor.h
+++ b/extensions/source/activex/SODispatchInterceptor.h
@@ -1,7 +1,23 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// SODispatchInterceptor.h: Definition of the SODispatchInterceptor class
-//
-//////////////////////////////////////////////////////////////////////
#ifndef __SODISPATCHINTERCEPTOR_H_
#define __SODISPATCHINTERCEPTOR_H_
diff --git a/extensions/source/activex/StdAfx2.cxx b/extensions/source/activex/StdAfx2.cxx
index d06eb872c7ed..a2bfea986072 100644
--- a/extensions/source/activex/StdAfx2.cxx
+++ b/extensions/source/activex/StdAfx2.cxx
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// stdafx1.cpp : source file that includes just the standard includes
// stdafx1.pch will be the pre-compiled header
// stdafx1.obj will contain the pre-compiled type information
diff --git a/extensions/source/activex/StdAfx2.h b/extensions/source/activex/StdAfx2.h
index ab267e42352c..18503222546c 100644
--- a/extensions/source/activex/StdAfx2.h
+++ b/extensions/source/activex/StdAfx2.h
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// stdafx1.h : include file for standard system include files,
// or project specific include files that are used frequently,
// but are changed infrequently
diff --git a/extensions/source/activex/com_uno_helper.h b/extensions/source/activex/com_uno_helper.h
index 230fc63a6e77..d0caa0ac0911 100644
--- a/extensions/source/activex/com_uno_helper.h
+++ b/extensions/source/activex/com_uno_helper.h
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
#include "stdafx2.h"
HRESULT ExecuteFunc( IDispatch* idispUnoObject,
diff --git a/extensions/source/activex/example.html b/extensions/source/activex/example.html
index 3efee1f75a03..96e764c8f0dd 100644
--- a/extensions/source/activex/example.html
+++ b/extensions/source/activex/example.html
@@ -1,3 +1,20 @@
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<HTML>
<HEAD>
<TITLE>Document Title</TITLE>
diff --git a/extensions/source/activex/resource.h b/extensions/source/activex/resource.h
index fe74853c6d15..1e898c6194c6 100644
--- a/extensions/source/activex/resource.h
+++ b/extensions/source/activex/resource.h
@@ -1,4 +1,22 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by so_activex.rc
diff --git a/extensions/source/activex/so_activex.cxx b/extensions/source/activex/so_activex.cxx
index a9b134c66ff8..4fbf3580bceb 100644
--- a/extensions/source/activex/so_activex.cxx
+++ b/extensions/source/activex/so_activex.cxx
@@ -1,6 +1,23 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-// so_activex.cpp : Implementation of DLL Exports.
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+// so_activex.cpp : Implementation of DLL Exports.
// Note: Proxy/Stub Information
// To build a separate proxy/stub DLL,
diff --git a/extensions/source/activex/so_activex.idl b/extensions/source/activex/so_activex.idl
index 91606854c2a2..926a3ff1fdaa 100644
--- a/extensions/source/activex/so_activex.idl
+++ b/extensions/source/activex/so_activex.idl
@@ -1,3 +1,21 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
// so_activex.idl : IDL source for so_activex.dll
//
diff --git a/extensions/source/activex/so_activex.rc b/extensions/source/activex/so_activex.rc
index d2a211eb972d..1bc77e36b7d8 100644
--- a/extensions/source/activex/so_activex.rc
+++ b/extensions/source/activex/so_activex.rc
@@ -1,3 +1,21 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
//Microsoft Developer Studio generated resource script.
//
#include "resource.h"
diff --git a/extensions/source/bibliography/bib.component b/extensions/source/bibliography/bib.component
index b59add76b404..844b6ecec891 100644
--- a/extensions/source/bibliography/bib.component
+++ b/extensions/source/bibliography/bib.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="bib"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/bibliography/bibbeam.cxx b/extensions/source/bibliography/bibbeam.cxx
index 9458497e2c92..bfde70bf5fa6 100644
--- a/extensions/source/bibliography/bibbeam.cxx
+++ b/extensions/source/bibliography/bibbeam.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/mutex.hxx>
#include <toolkit/helper/vclunohelper.hxx>
diff --git a/extensions/source/bibliography/bibconfig.cxx b/extensions/source/bibliography/bibconfig.cxx
index c1696060e1f8..0d77ffbc4434 100644
--- a/extensions/source/bibliography/bibconfig.cxx
+++ b/extensions/source/bibliography/bibconfig.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <bibconfig.hxx>
diff --git a/extensions/source/bibliography/bibconfig.hxx b/extensions/source/bibliography/bibconfig.hxx
index 28d0de68b8fa..fea6b7ed72de 100644
--- a/extensions/source/bibliography/bibconfig.hxx
+++ b/extensions/source/bibliography/bibconfig.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BIBCONFIG_HXX
#define _BIBCONFIG_HXX
diff --git a/extensions/source/bibliography/bibload.cxx b/extensions/source/bibliography/bibload.cxx
index 8dce89ac480f..94e35cfa6d1f 100644
--- a/extensions/source/bibliography/bibload.cxx
+++ b/extensions/source/bibliography/bibload.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/mutex.hxx>
#include <tools/diagnose_ex.h>
diff --git a/extensions/source/bibliography/bibview.cxx b/extensions/source/bibliography/bibview.cxx
index b22169e9177d..e219d91d2b91 100644
--- a/extensions/source/bibliography/bibview.cxx
+++ b/extensions/source/bibliography/bibview.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "bib.hrc"
diff --git a/extensions/source/bibliography/datman.cxx b/extensions/source/bibliography/datman.cxx
index 3aed96675c01..02a29463b4f6 100644
--- a/extensions/source/bibliography/datman.cxx
+++ b/extensions/source/bibliography/datman.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/mutex.hxx>
#include <tools/diagnose_ex.h>
@@ -596,7 +587,7 @@ DBChangeDialog_Impl::DBChangeDialog_Impl(Window* pParent, BibDataManager* pMan )
const ::rtl::OUString* pSourceNames = rSources.getConstArray();
for(int i = 0; i < rSources.getLength(); i++)
{
- SvLBoxEntry* pEntry = aSelectionLB.InsertEntry(pSourceNames[i]);
+ SvTreeListEntry* pEntry = aSelectionLB.InsertEntry(pSourceNames[i]);
if(pSourceNames[i] == sActiveSource)
{
aSelectionLB.Select(pEntry);
@@ -623,7 +614,7 @@ DBChangeDialog_Impl::~DBChangeDialog_Impl()
String DBChangeDialog_Impl::GetCurrentURL()const
{
String sRet;
- SvLBoxEntry* pEntry = aSelectionLB.FirstSelected();
+ SvTreeListEntry* pEntry = aSelectionLB.FirstSelected();
if(pEntry)
{
sRet = aSelectionLB.GetEntryText(pEntry, 0);
diff --git a/extensions/source/bibliography/formcontrolcontainer.cxx b/extensions/source/bibliography/formcontrolcontainer.cxx
index ffa78befb291..13a792303c43 100644
--- a/extensions/source/bibliography/formcontrolcontainer.cxx
+++ b/extensions/source/bibliography/formcontrolcontainer.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "formcontrolcontainer.hxx"
#include <tools/debug.hxx>
diff --git a/extensions/source/bibliography/framectr.cxx b/extensions/source/bibliography/framectr.cxx
index 0ca51d192bf5..eb0998e581fc 100644
--- a/extensions/source/bibliography/framectr.cxx
+++ b/extensions/source/bibliography/framectr.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/waitobj.hxx>
#include <cppuhelper/interfacecontainer.hxx>
diff --git a/extensions/source/bibliography/framectr.hxx b/extensions/source/bibliography/framectr.hxx
index e7fa82650fb8..18203cd8703c 100644
--- a/extensions/source/bibliography/framectr.hxx
+++ b/extensions/source/bibliography/framectr.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BIB_FRAMECTR_HXX
#define _BIB_FRAMECTR_HXX
diff --git a/extensions/source/bibliography/general.cxx b/extensions/source/bibliography/general.cxx
index eccb955e1f0f..fd6cca912df7 100644
--- a/extensions/source/bibliography/general.cxx
+++ b/extensions/source/bibliography/general.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/processfactory.hxx>
#include <com/sun/star/awt/PosSize.hpp>
@@ -810,7 +801,7 @@ sal_Bool BibGeneralPage::HandleShortCutKey( const KeyEvent& rKeyEvent )
DBG_ASSERT( KEY_MOD2 == rKeyEvent.GetKeyCode().GetModifier(), "+BibGeneralPage::HandleShortCutKey(): this is not for me!" );
const vcl::I18nHelper& rI18nHelper = Application::GetSettings().GetUILocaleI18nHelper();
- const xub_Unicode c = rKeyEvent.GetCharCode();
+ const sal_Unicode c = rKeyEvent.GetCharCode();
sal_Bool bHandled = sal_False;
sal_Int16 i;
diff --git a/extensions/source/bibliography/loadlisteneradapter.cxx b/extensions/source/bibliography/loadlisteneradapter.cxx
index 3d9ed1ac731b..825b8b4a2d5c 100644
--- a/extensions/source/bibliography/loadlisteneradapter.cxx
+++ b/extensions/source/bibliography/loadlisteneradapter.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "loadlisteneradapter.hxx"
#include <osl/diagnose.h>
diff --git a/extensions/source/bibliography/toolbar.cxx b/extensions/source/bibliography/toolbar.cxx
index 2db8f807108c..98931799c97d 100644
--- a/extensions/source/bibliography/toolbar.cxx
+++ b/extensions/source/bibliography/toolbar.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <comphelper/processfactory.hxx>
#include <com/sun/star/frame/XDispatch.hpp>
diff --git a/extensions/source/bibliography/toolbar.hxx b/extensions/source/bibliography/toolbar.hxx
index 80cabc8f6e15..956ec905fa8e 100644
--- a/extensions/source/bibliography/toolbar.hxx
+++ b/extensions/source/bibliography/toolbar.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _BIB_TOOLBAR_HXX
#define _BIB_TOOLBAR_HXX
diff --git a/extensions/source/bibliography/toolbar.src b/extensions/source/bibliography/toolbar.src
index 94ff7687a6bb..76f69b3248b0 100644
--- a/extensions/source/bibliography/toolbar.src
+++ b/extensions/source/bibliography/toolbar.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <svx/svxids.hrc>
#include "bibliography.hrc"
#include "toolbar.hrc"
diff --git a/extensions/source/bibliography/uiconfig/sbibliography/menubar/menubar.xml b/extensions/source/bibliography/uiconfig/sbibliography/menubar/menubar.xml
index f66c2851d3aa..32419a7de2e6 100644
--- a/extensions/source/bibliography/uiconfig/sbibliography/menubar/menubar.xml
+++ b/extensions/source/bibliography/uiconfig/sbibliography/menubar/menubar.xml
@@ -10,6 +10,9 @@
<menu:menuitem menu:id=".uno:Save"/>
<menu:menuitem menu:id=".uno:SaveAs"/>
<menu:menuitem menu:id=".uno:SaveAll"/>
+ <menu:menuitem menu:id=".uno:CheckOut"/>
+ <menu:menuitem menu:id=".uno:CancelCheckOut"/>
+ <menu:menuitem menu:id=".uno:CheckIn"/>
<menu:menuitem menu:id=".uno:Reload"/>
<menu:menuitem menu:id=".uno:VersionDialog"/>
<menu:menuseparator/>
diff --git a/extensions/source/config/ldap/componentdef.cxx b/extensions/source/config/ldap/componentdef.cxx
index b3ea47b9e9f2..32dcbd05ead3 100644
--- a/extensions/source/config/ldap/componentdef.cxx
+++ b/extensions/source/config/ldap/componentdef.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "ldapuserprofilebe.hxx"
diff --git a/extensions/source/config/ldap/ldapaccess.cxx b/extensions/source/config/ldap/ldapaccess.cxx
index 9bedfe1e59cb..4ca43379e4e7 100644
--- a/extensions/source/config/ldap/ldapaccess.cxx
+++ b/extensions/source/config/ldap/ldapaccess.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "ldapaccess.hxx"
diff --git a/extensions/source/config/ldap/ldapbe2.component b/extensions/source/config/ldap/ldapbe2.component
index 390da1147c4d..4d7c5708079f 100644
--- a/extensions/source/config/ldap/ldapbe2.component
+++ b/extensions/source/config/ldap/ldapbe2.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="ldapbe2"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/config/ldap/ldapuserprofilebe.cxx b/extensions/source/config/ldap/ldapuserprofilebe.cxx
index 41de4b30dafe..88cb1b316172 100644
--- a/extensions/source/config/ldap/ldapuserprofilebe.cxx
+++ b/extensions/source/config/ldap/ldapuserprofilebe.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "ldapaccess.hxx"
diff --git a/extensions/source/config/ldap/ldapuserprofilebe.hxx b/extensions/source/config/ldap/ldapuserprofilebe.hxx
index 196435979d32..cc9dde63ad46 100644
--- a/extensions/source/config/ldap/ldapuserprofilebe.hxx
+++ b/extensions/source/config/ldap/ldapuserprofilebe.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_CONFIG_LDAP_LDAPUSERPROFILEBE_HXX_
#define EXTENSIONS_CONFIG_LDAP_LDAPUSERPROFILEBE_HXX_
diff --git a/extensions/source/dbpilots/commonpagesdbp.cxx b/extensions/source/dbpilots/commonpagesdbp.cxx
index 4c3cc2b66b97..344f314770ec 100644
--- a/extensions/source/dbpilots/commonpagesdbp.cxx
+++ b/extensions/source/dbpilots/commonpagesdbp.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "commonpagesdbp.hxx"
#include "dbpresid.hrc"
diff --git a/extensions/source/dbpilots/commonpagesdbp.src b/extensions/source/dbpilots/commonpagesdbp.src
index 16bf88a330fb..20c711abcb86 100644
--- a/extensions/source/dbpilots/commonpagesdbp.src
+++ b/extensions/source/dbpilots/commonpagesdbp.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "dbpresid.hrc"
diff --git a/extensions/source/dbpilots/controlwizard.cxx b/extensions/source/dbpilots/controlwizard.cxx
index 767088ea8fcb..fa0eb717f569 100644
--- a/extensions/source/dbpilots/controlwizard.cxx
+++ b/extensions/source/dbpilots/controlwizard.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "controlwizard.hxx"
#include <tools/debug.hxx>
diff --git a/extensions/source/dbpilots/dbp.component b/extensions/source/dbpilots/dbp.component
index a0657efe8945..9b2c8379c47b 100644
--- a/extensions/source/dbpilots/dbp.component
+++ b/extensions/source/dbpilots/dbp.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="dbp"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/dbpilots/dbpservices.cxx b/extensions/source/dbpilots/dbpservices.cxx
index e8b42cacb2f8..7dbc4faa4d94 100644
--- a/extensions/source/dbpilots/dbpservices.cxx
+++ b/extensions/source/dbpilots/dbpservices.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "componentmodule.hxx"
diff --git a/extensions/source/dbpilots/dbptools.cxx b/extensions/source/dbpilots/dbptools.cxx
index 8df666e8ec9b..c71815b081c0 100644
--- a/extensions/source/dbpilots/dbptools.cxx
+++ b/extensions/source/dbpilots/dbptools.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "dbptools.hxx"
#include <tools/debug.hxx>
diff --git a/extensions/source/dbpilots/gridwizard.cxx b/extensions/source/dbpilots/gridwizard.cxx
index 25b6cdab1afa..ece4e1d03865 100644
--- a/extensions/source/dbpilots/gridwizard.cxx
+++ b/extensions/source/dbpilots/gridwizard.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "gridwizard.hxx"
#include <com/sun/star/sdbcx/XColumnsSupplier.hpp>
diff --git a/extensions/source/dbpilots/groupboxwiz.cxx b/extensions/source/dbpilots/groupboxwiz.cxx
index b5552e8bace0..a814272050d4 100644
--- a/extensions/source/dbpilots/groupboxwiz.cxx
+++ b/extensions/source/dbpilots/groupboxwiz.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "groupboxwiz.hxx"
#include "commonpagesdbp.hxx"
diff --git a/extensions/source/dbpilots/listcombowizard.cxx b/extensions/source/dbpilots/listcombowizard.cxx
index 0a95ee201ba1..f25c3653a45d 100644
--- a/extensions/source/dbpilots/listcombowizard.cxx
+++ b/extensions/source/dbpilots/listcombowizard.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "listcombowizard.hxx"
#include "commonpagesdbp.hxx"
diff --git a/extensions/source/dbpilots/optiongrouplayouter.cxx b/extensions/source/dbpilots/optiongrouplayouter.cxx
index 3ddc3b5f6ae8..10f7fac5e267 100644
--- a/extensions/source/dbpilots/optiongrouplayouter.cxx
+++ b/extensions/source/dbpilots/optiongrouplayouter.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "optiongrouplayouter.hxx"
#include <com/sun/star/awt/Size.hpp>
diff --git a/extensions/source/dbpilots/unoautopilot.inl b/extensions/source/dbpilots/unoautopilot.inl
index cb1c5e13aa06..035982ea9d2a 100644
--- a/extensions/source/dbpilots/unoautopilot.inl
+++ b/extensions/source/dbpilots/unoautopilot.inl
@@ -1,31 +1,22 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// no include protecttion
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+// no include protection
// this file is included from unoautopilot.hxx directly
//=====================================================================
diff --git a/extensions/source/dbpilots/wizardservices.cxx b/extensions/source/dbpilots/wizardservices.cxx
index 9bf2b4ea0ae4..fae42c1fe260 100644
--- a/extensions/source/dbpilots/wizardservices.cxx
+++ b/extensions/source/dbpilots/wizardservices.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "wizardservices.hxx"
diff --git a/extensions/source/inc/componentmodule.cxx b/extensions/source/inc/componentmodule.cxx
index e60acbf283f2..a8ef1f858d6f 100644
--- a/extensions/source/inc/componentmodule.cxx
+++ b/extensions/source/inc/componentmodule.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "componentmodule.hxx"
#include <tools/resmgr.hxx>
diff --git a/extensions/source/logging/consolehandler.cxx b/extensions/source/logging/consolehandler.cxx
index 5145f3ab1131..bb4716e33abb 100644
--- a/extensions/source/logging/consolehandler.cxx
+++ b/extensions/source/logging/consolehandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "log_module.hxx"
diff --git a/extensions/source/logging/filehandler.cxx b/extensions/source/logging/filehandler.cxx
index be841ffe5c0c..845bb1e1b3bd 100644
--- a/extensions/source/logging/filehandler.cxx
+++ b/extensions/source/logging/filehandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "log_module.hxx"
diff --git a/extensions/source/logging/log.component b/extensions/source/logging/log.component
index 0f7093a65ca5..7491e64b86ac 100644
--- a/extensions/source/logging/log.component
+++ b/extensions/source/logging/log.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="log"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/logging/log_module.cxx b/extensions/source/logging/log_module.cxx
index 8e396717fc69..a63076e7b12e 100644
--- a/extensions/source/logging/log_module.cxx
+++ b/extensions/source/logging/log_module.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "log_module.hxx"
#include <rtl/instance.hxx>
diff --git a/extensions/source/logging/log_module.hxx b/extensions/source/logging/log_module.hxx
index 9728b49db85c..9ddcfaf63f89 100644
--- a/extensions/source/logging/log_module.hxx
+++ b/extensions/source/logging/log_module.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_LOG_MODULE_HXX
#define EXTENSIONS_LOG_MODULE_HXX
diff --git a/extensions/source/logging/log_services.cxx b/extensions/source/logging/log_services.cxx
index b08410373fe6..da0376b6e667 100644
--- a/extensions/source/logging/log_services.cxx
+++ b/extensions/source/logging/log_services.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "log_module.hxx"
diff --git a/extensions/source/logging/loggerconfig.cxx b/extensions/source/logging/loggerconfig.cxx
index 86a1f007f0c9..8c4e08a33fa0 100644
--- a/extensions/source/logging/loggerconfig.cxx
+++ b/extensions/source/logging/loggerconfig.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "loggerconfig.hxx"
diff --git a/extensions/source/logging/loghandler.hxx b/extensions/source/logging/loghandler.hxx
index 2852c9fe53f2..fa3d0edeedcf 100644
--- a/extensions/source/logging/loghandler.hxx
+++ b/extensions/source/logging/loghandler.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef LOGHANDLER_HXX
#define LOGHANDLER_HXX
diff --git a/extensions/source/logging/plaintextformatter.cxx b/extensions/source/logging/plaintextformatter.cxx
index fd84d20fece2..b23aed57b816 100644
--- a/extensions/source/logging/plaintextformatter.cxx
+++ b/extensions/source/logging/plaintextformatter.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "log_module.hxx"
diff --git a/extensions/source/macosx/spotlight/GetMetadataForFile.m b/extensions/source/macosx/spotlight/GetMetadataForFile.m
index 0702ef035151..9026e085f6b9 100644
--- a/extensions/source/macosx/spotlight/GetMetadataForFile.m
+++ b/extensions/source/macosx/spotlight/GetMetadataForFile.m
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
-*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * This file is part of OpenOffice.org.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
-*************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#import <Foundation/NSObjCRuntime.h>
#if defined (NSFoundationVersionNumber10_5) && MAC_OS_X_VERSION_MAX_ALLOWED < 1050
@@ -34,7 +25,7 @@ typedef int NSColorRenderingIntent;
#endif
#include <CoreFoundation/CoreFoundation.h>
-#include <CoreServices/CoreServices.h>
+#include <CoreServices/CoreServices.h>
#include <Foundation/Foundation.h>
@@ -43,13 +34,13 @@ typedef int NSColorRenderingIntent;
/* -----------------------------------------------------------------------------
Get metadata attributes from file
-
+
This function's job is to extract useful information your file format supports
and return it as a dictionary
----------------------------------------------------------------------------- */
Boolean GetMetadataForFile(void* thisInterface,
- CFMutableDictionaryRef attributes,
+ CFMutableDictionaryRef attributes,
CFStringRef contentTypeUTI,
CFStringRef pathToFile)
{
@@ -58,23 +49,23 @@ Boolean GetMetadataForFile(void* thisInterface,
/* Return the attribute keys and attribute values in the dict */
/* Return TRUE if successful, FALSE if there was no data provided */
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
-
+
OOoSpotlightImporter *importer = [OOoSpotlightImporter new];
-
+
Boolean importOK = NO;
@try {
- importOK = [importer importDocument:(NSString*)pathToFile
- contentType:(NSString*)contentTypeUTI
+ importOK = [importer importDocument:(NSString*)pathToFile
+ contentType:(NSString*)contentTypeUTI
attributes:(NSMutableDictionary*)attributes];
}
@catch (NSException *exception) {
NSLog(@"main: Caught %@: %@", [exception name], [exception reason]);
}
-
+
[importer release];
-
+
[pool release];
-
+
return importOK;
}
diff --git a/extensions/source/macosx/spotlight/OOoContentDataParser.m b/extensions/source/macosx/spotlight/OOoContentDataParser.m
index 558653f86011..b711e422cd38 100644
--- a/extensions/source/macosx/spotlight/OOoContentDataParser.m
+++ b/extensions/source/macosx/spotlight/OOoContentDataParser.m
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
-*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * This file is part of OpenOffice.org.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
-*************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <objc/objc-runtime.h>
#import <Foundation/NSObjCRuntime.h>
diff --git a/extensions/source/macosx/spotlight/OOoMetaDataParser.m b/extensions/source/macosx/spotlight/OOoMetaDataParser.m
index ae4f166b2f46..bc9529dfeb3a 100644
--- a/extensions/source/macosx/spotlight/OOoMetaDataParser.m
+++ b/extensions/source/macosx/spotlight/OOoMetaDataParser.m
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
-*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * This file is part of OpenOffice.org.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
-*************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <objc/objc-runtime.h>
#import <Foundation/NSObjCRuntime.h>
diff --git a/extensions/source/macosx/spotlight/OOoSpotlightImporter.m b/extensions/source/macosx/spotlight/OOoSpotlightImporter.m
index 4049d716450a..964b627d5ca2 100644
--- a/extensions/source/macosx/spotlight/OOoSpotlightImporter.m
+++ b/extensions/source/macosx/spotlight/OOoSpotlightImporter.m
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
-*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * This file is part of OpenOffice.org.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
-*************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#import <Foundation/NSObjCRuntime.h>
#if defined (NSFoundationVersionNumber10_5) && MAC_OS_X_VERSION_MAX_ALLOWED < 1050
diff --git a/extensions/source/macosx/spotlight/main.m b/extensions/source/macosx/spotlight/main.m
index cf0172c3aeb1..491adc121697 100644
--- a/extensions/source/macosx/spotlight/main.m
+++ b/extensions/source/macosx/spotlight/main.m
@@ -1,36 +1,42 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-//
-// main.c
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+//
+// main.m
// SpotlightTester
//
// Created by Florian Heckl on 10.07.07.
-// Copyright (c) 2007 __MyCompanyName__. All rights reserved.
//
-
-
-
-
-
//==============================================================================
//
-// DO NO MODIFY THE CONTENT OF THIS FILE
+// DO NOT MODIFY THE CONTENTS OF THIS FILE
//
-// This file contains the generic CFPlug-in code necessary for your importer
-// To complete your importer implement the function in GetMetadataForFile.c
+// This file contains the generic CFPlug-in code necessary for your importer
+// To complete your importer implement the function in GetMetadataForFile.c
//
//==============================================================================
-
-
-
-
-
#include <CoreFoundation/CoreFoundation.h>
#include <CoreFoundation/CFPlugInCOM.h>
#include <CoreServices/CoreServices.h>
// -----------------------------------------------------------------------------
-// constants
+// constants
// -----------------------------------------------------------------------------
@@ -45,16 +51,16 @@
// -----------------------------------------------------------------------------
-// typedefs
+// typedefs
// -----------------------------------------------------------------------------
// The import function to be implemented in GetMetadataForFile.c
-Boolean GetMetadataForFile(void *thisInterface,
- CFMutableDictionaryRef attributes,
- CFStringRef contentTypeUTI,
- CFStringRef pathToFile);
-
-// The layout for an instance of MetaDataImporterPlugIn
+Boolean GetMetadataForFile(void *thisInterface,
+ CFMutableDictionaryRef attributes,
+ CFStringRef contentTypeUTI,
+ CFStringRef pathToFile);
+
+// The layout for an instance of MetaDataImporterPlugIn
typedef struct __MetadataImporterPluginType
{
MDImporterInterfaceStruct *conduitInterface;
@@ -63,9 +69,9 @@ typedef struct __MetadataImporterPluginType
} MetadataImporterPluginType;
// -----------------------------------------------------------------------------
-// prototypes
+// prototypes
// -----------------------------------------------------------------------------
-// Forward declaration for the IUnknown implementation.
+// Forward declaration for the IUnknown implementation.
//
MetadataImporterPluginType *AllocMetadataImporterPluginType(CFUUIDRef inFactoryID);
@@ -75,9 +81,9 @@ void *MetadataImporterPluginFactory(CFAllocatorRef allocator
ULONG MetadataImporterPluginAddRef(void *thisInstance);
ULONG MetadataImporterPluginRelease(void *thisInstance);
// -----------------------------------------------------------------------------
-// testInterfaceFtbl definition
+// testInterfaceFtbl definition
// -----------------------------------------------------------------------------
-// The TestInterface function table.
+// The TestInterface function table.
//
static MDImporterInterfaceStruct testInterfaceFtbl = {
@@ -90,9 +96,9 @@ static MDImporterInterfaceStruct testInterfaceFtbl = {
// -----------------------------------------------------------------------------
-// AllocMetadataImporterPluginType
+// AllocMetadataImporterPluginType
// -----------------------------------------------------------------------------
-// Utility function that allocates a new instance.
+// Utility function that allocates a new instance.
// You can do some initial setup for the importer here if you wish
// like allocating globals etc...
//
@@ -116,10 +122,10 @@ MetadataImporterPluginType *AllocMetadataImporterPluginType(CFUUIDRef inFactoryI
}
// -----------------------------------------------------------------------------
-// DeallocSpotlightTesterMDImporterPluginType
+// DeallocSpotlightTesterMDImporterPluginType
// -----------------------------------------------------------------------------
-// Utility function that deallocates the instance when
-// the refCount goes to zero.
+// Utility function that deallocates the instance when
+// the refCount goes to zero.
// In the current implementation importer interfaces are never deallocated
// but implement this as this might change in the future
//
@@ -136,9 +142,9 @@ void DeallocMetadataImporterPluginType(MetadataImporterPluginType *thisInstance)
}
// -----------------------------------------------------------------------------
-// MetadataImporterQueryInterface
+// MetadataImporterQueryInterface
// -----------------------------------------------------------------------------
-// Implementation of the IUnknown QueryInterface function.
+// Implementation of the IUnknown QueryInterface function.
//
HRESULT MetadataImporterQueryInterface(void *thisInstance,REFIID iid,LPVOID *ppv)
{
@@ -172,11 +178,11 @@ HRESULT MetadataImporterQueryInterface(void *thisInstance,REFIID iid,LPVOID *ppv
}
// -----------------------------------------------------------------------------
-// MetadataImporterPluginAddRef
+// MetadataImporterPluginAddRef
// -----------------------------------------------------------------------------
-// Implementation of reference counting for this type. Whenever an interface
-// is requested, bump the refCount for the instance. NOTE: returning the
-// refcount is a convention but is not required so don't rely on it.
+// Implementation of reference counting for this type. Whenever an interface
+// is requested, bump the refCount for the instance. NOTE: returning the
+// refcount is a convention but is not required so don't rely on it.
//
ULONG MetadataImporterPluginAddRef(void *thisInstance)
{
@@ -187,8 +193,8 @@ ULONG MetadataImporterPluginAddRef(void *thisInstance)
// -----------------------------------------------------------------------------
// SampleCMPluginRelease
// -----------------------------------------------------------------------------
-// When an interface is released, decrement the refCount.
-// If the refCount goes to zero, deallocate the instance.
+// When an interface is released, decrement the refCount.
+// If the refCount goes to zero, deallocate the instance.
//
ULONG MetadataImporterPluginRelease(void *thisInstance)
{
@@ -202,9 +208,9 @@ ULONG MetadataImporterPluginRelease(void *thisInstance)
}
// -----------------------------------------------------------------------------
-// SpotlightTesterMDImporterPluginFactory
+// SpotlightTesterMDImporterPluginFactory
// -----------------------------------------------------------------------------
-// Implementation of the factory function for this type.
+// Implementation of the factory function for this type.
//
void *
MetadataImporterPluginFactory(CFAllocatorRef allocator, CFUUIDRef typeID)
diff --git a/extensions/source/macosx/spotlight/mdimporter/Info.plist b/extensions/source/macosx/spotlight/mdimporter/Info.plist
index f2de1fb0ecd0..bc48f7008864 100644
--- a/extensions/source/macosx/spotlight/mdimporter/Info.plist
+++ b/extensions/source/macosx/spotlight/mdimporter/Info.plist
@@ -1,5 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
diff --git a/extensions/source/macosx/spotlight/mdimporter/schema.xml b/extensions/source/macosx/spotlight/mdimporter/schema.xml
index f0b634475a81..f17aa8c6c5e3 100644
--- a/extensions/source/macosx/spotlight/mdimporter/schema.xml
+++ b/extensions/source/macosx/spotlight/mdimporter/schema.xml
@@ -1,5 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<schema version="1.0" xmlns="http://www.apple.com/metadata"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.apple.com/metadata file:///System/Library/Frameworks/CoreServices.framework/Frameworks/Metadata.framework/Resources/MetadataSchema.xsd">
diff --git a/extensions/source/macosx/spotlight/version.plist b/extensions/source/macosx/spotlight/version.plist
index 79fc99b2c2ad..d913428417d1 100644
--- a/extensions/source/macosx/spotlight/version.plist
+++ b/extensions/source/macosx/spotlight/version.plist
@@ -1,5 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<plist version="1.0">
<dict>
<key>BuildVersion</key>
diff --git a/extensions/source/nsplugin/source/so_instance.cxx b/extensions/source/nsplugin/source/so_instance.cxx
index 4aeb45a645f7..030fd93ae537 100644
--- a/extensions/source/nsplugin/source/so_instance.cxx
+++ b/extensions/source/nsplugin/source/so_instance.cxx
@@ -31,7 +31,7 @@
#include <com/sun/star/frame/DispatchHelper.hpp>
#include <com/sun/star/frame/XDispatchProviderInterception.hpp>
#include <com/sun/star/lang/SystemDependent.hpp>
-#include <com/sun/star/awt/XSystemChildFactory.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XVclWindowPeer.hpp>
#include <com/sun/star/util/XCloseable.hpp>
#include <com/sun/star/lang/DisposedException.hpp>
@@ -132,15 +132,11 @@ sal_Bool SoPluginInstance::LoadDocument(NSP_HWND hParent)
try
{
+ Reference< beans::XPropertySet > xFactoryProperties( mxRemoteMSF, uno::UNO_QUERY );
+ Reference< uno::XComponentContext > xContext( xFactoryProperties->getPropertyValue( "DefaultContext" ), UNO_QUERY );
+
// try to create netscape plugin window
- Reference< awt::XToolkit > xToolkit(
- mxRemoteMSF->createInstance( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.Toolkit")) ),
- uno::UNO_QUERY );
- if( !xToolkit.is() )
- {
- debug_fprintf(NSP_LOG_APPEND, "Can not create Toolkit!\n");
- return sal_False;
- }
+ Reference< awt::XToolkit2 > xToolkit( awt::Toolkit::create(xContext) );
// prepare parameters for plugin window
css::uno::Any hwndParent = css::uno::makeAny((sal_Int32)hParent);
@@ -151,18 +147,11 @@ sal_Bool SoPluginInstance::LoadDocument(NSP_HWND hParent)
sal_Int16 nWindowType = css::lang::SystemDependent::SYSTEM_WIN32;
#endif //end of WNT
- Reference< awt::XSystemChildFactory > xToolkitSystemChildFactory(xToolkit, uno::UNO_QUERY);
- if (!xToolkitSystemChildFactory.is())
- {
- debug_fprintf(NSP_LOG_APPEND, "print by Nsplugin, get xToolkitSystemChildFactory failure.\n");
- return sal_False;
- }
-
debug_fprintf(NSP_LOG_APPEND, "print by Nsplugin, try to create plugin container window HWIN:%ld.\n", hParent);
// create the plugin window
Reference< awt::XWindowPeer > xNewWinPeer =
- xToolkitSystemChildFactory->createSystemChild( hwndParent,
+ xToolkit->createSystemChild( hwndParent,
css::uno::Sequence<sal_Int8>(), nWindowType );
if ( !xNewWinPeer.is() )
{
@@ -240,8 +229,6 @@ sal_Bool SoPluginInstance::LoadDocument(NSP_HWND hParent)
}
//create stream for the document
- Reference< uno::XComponentContext > xContext(
- comphelper::getComponentContext( mxRemoteMSF ) );
Reference< ucb::XSimpleFileAccess2 > xSimpleFileAccess( ucb::SimpleFileAccess::create(xContext) );
Reference<io::XInputStream> xInputStream = xSimpleFileAccess->openFileRead( m_sURL );
diff --git a/extensions/source/ole/ole2uno.hxx b/extensions/source/ole/ole2uno.hxx
index 2ea46d859de9..342d28bb5e8d 100644
--- a/extensions/source/ole/ole2uno.hxx
+++ b/extensions/source/ole/ole2uno.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _OLE2UNO_HXX
#define _OLE2UNO_HXX
diff --git a/extensions/source/ole/oleautobridge.component b/extensions/source/ole/oleautobridge.component
index ea7d0214d026..16c4d2d8b262 100644
--- a/extensions/source/ole/oleautobridge.component
+++ b/extensions/source/ole/oleautobridge.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="oleautobridge"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/ole/oleobjw.cxx b/extensions/source/ole/oleobjw.cxx
index f77cfcca28ed..67135accd290 100644
--- a/extensions/source/ole/oleobjw.cxx
+++ b/extensions/source/ole/oleobjw.cxx
@@ -1,30 +1,24 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+// http://stackoverflow.com/questions/5839292/error-c1189-after-installing-visual-studio-2010
+#define _WIN32_WINNT 0x0403
#include "ole2uno.hxx"
#include "rtl/ustrbuf.hxx"
diff --git a/extensions/source/ole/oleobjw.hxx b/extensions/source/ole/oleobjw.hxx
index bbbf08d3f047..b84f20c5d649 100644
--- a/extensions/source/ole/oleobjw.hxx
+++ b/extensions/source/ole/oleobjw.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef __OLEOBJW_HXX
#define __OLEOBJW_HXX
diff --git a/extensions/source/ole/olethread.cxx b/extensions/source/ole/olethread.cxx
index 77ca27e5f124..eda5aee6ffe9 100644
--- a/extensions/source/ole/olethread.cxx
+++ b/extensions/source/ole/olethread.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#if defined _MSC_VER && ( _MSC_VER >= 1200 )
#define _WIN32_WINNT 0x0400
diff --git a/extensions/source/ole/servprov.cxx b/extensions/source/ole/servprov.cxx
index c133405a0348..e8f71955cf98 100644
--- a/extensions/source/ole/servprov.cxx
+++ b/extensions/source/ole/servprov.cxx
@@ -1,30 +1,24 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+// http://stackoverflow.com/questions/5839292/error-c1189-after-installing-visual-studio-2010
+#define _WIN32_WINNT 0x0403
#include <vector>
diff --git a/extensions/source/ole/servreg.cxx b/extensions/source/ole/servreg.cxx
index 9cd793f5ec8a..4aa61c85a551 100644
--- a/extensions/source/ole/servreg.cxx
+++ b/extensions/source/ole/servreg.cxx
@@ -1,30 +1,25 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+// http://stackoverflow.com/questions/5839292/error-c1189-after-installing-visual-studio-2010
+#define _WIN32_WINNT 0x0403
+
#include <rtl/unload.h>
#include <osl/time.h>
diff --git a/extensions/source/ole/unoconversionutilities.hxx b/extensions/source/ole/unoconversionutilities.hxx
index 27245af578fc..5e3fcf0b5455 100644
--- a/extensions/source/ole/unoconversionutilities.hxx
+++ b/extensions/source/ole/unoconversionutilities.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _UNO_CONVERSION_UTILITIES
#define _UNO_CONVERSION_UTILITIES
diff --git a/extensions/source/ole/unoobjw.cxx b/extensions/source/ole/unoobjw.cxx
index df9675c8cd75..95d9cd6a3b5f 100644
--- a/extensions/source/ole/unoobjw.cxx
+++ b/extensions/source/ole/unoobjw.cxx
@@ -1,30 +1,25 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This file incorporates work covered by the following license notice:
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+
+// http://stackoverflow.com/questions/5839292/error-c1189-after-installing-visual-studio-2010
+#define _WIN32_WINNT 0x403
#include "ole2uno.hxx"
diff --git a/extensions/source/ole/unoobjw.hxx b/extensions/source/ole/unoobjw.hxx
index f47079ef1bcb..4d3193698085 100644
--- a/extensions/source/ole/unoobjw.hxx
+++ b/extensions/source/ole/unoobjw.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _UNOOBJW_HXX
#define _UNOOBJW_HXX
diff --git a/extensions/source/propctrlr/MasterDetailLinkDialog.cxx b/extensions/source/propctrlr/MasterDetailLinkDialog.cxx
index 8841c108f9be..a8ae66f4bfd1 100644
--- a/extensions/source/propctrlr/MasterDetailLinkDialog.cxx
+++ b/extensions/source/propctrlr/MasterDetailLinkDialog.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "MasterDetailLinkDialog.hxx"
#include "formlinkdialog.hxx"
diff --git a/extensions/source/propctrlr/browserline.cxx b/extensions/source/propctrlr/browserline.cxx
index 4d119ccccbb7..023cd4e0716c 100644
--- a/extensions/source/propctrlr/browserline.cxx
+++ b/extensions/source/propctrlr/browserline.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "browserline.hxx"
diff --git a/extensions/source/propctrlr/browserline.hxx b/extensions/source/propctrlr/browserline.hxx
index f08d10d0e521..ddfdcd3c9d2c 100644
--- a/extensions/source/propctrlr/browserline.hxx
+++ b/extensions/source/propctrlr/browserline.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_BROWSERLINE_HXX_
#define _EXTENSIONS_PROPCTRLR_BROWSERLINE_HXX_
diff --git a/extensions/source/propctrlr/browserlistbox.cxx b/extensions/source/propctrlr/browserlistbox.cxx
index 5ecccec0738e..0fcf385b5b3f 100644
--- a/extensions/source/propctrlr/browserlistbox.cxx
+++ b/extensions/source/propctrlr/browserlistbox.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "browserlistbox.hxx"
#include "propresid.hrc"
diff --git a/extensions/source/propctrlr/browserlistbox.hxx b/extensions/source/propctrlr/browserlistbox.hxx
index 7fcdb6c3014e..4766cc4f6b6c 100644
--- a/extensions/source/propctrlr/browserlistbox.hxx
+++ b/extensions/source/propctrlr/browserlistbox.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_BROWSERLISTBOX_HXX_
#define _EXTENSIONS_PROPCTRLR_BROWSERLISTBOX_HXX_
diff --git a/extensions/source/propctrlr/browserview.cxx b/extensions/source/propctrlr/browserview.cxx
index 31a98fe12748..f9ae3cf101bf 100644
--- a/extensions/source/propctrlr/browserview.cxx
+++ b/extensions/source/propctrlr/browserview.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "browserview.hxx"
#include "propertyeditor.hxx"
diff --git a/extensions/source/propctrlr/browserview.hxx b/extensions/source/propctrlr/browserview.hxx
index c08fba0e5fb9..8b7358d43afd 100644
--- a/extensions/source/propctrlr/browserview.hxx
+++ b/extensions/source/propctrlr/browserview.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_BROWSERVIEW_HXX_
#define _EXTENSIONS_PROPCTRLR_BROWSERVIEW_HXX_
diff --git a/extensions/source/propctrlr/buttonnavigationhandler.cxx b/extensions/source/propctrlr/buttonnavigationhandler.cxx
index 8a91da2b5b8e..a0a910612df7 100644
--- a/extensions/source/propctrlr/buttonnavigationhandler.cxx
+++ b/extensions/source/propctrlr/buttonnavigationhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "buttonnavigationhandler.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/cellbindinghandler.cxx b/extensions/source/propctrlr/cellbindinghandler.cxx
index a149a7a605f2..aeaf6b47d2db 100644
--- a/extensions/source/propctrlr/cellbindinghandler.cxx
+++ b/extensions/source/propctrlr/cellbindinghandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "cellbindinghandler.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/cellbindinghelper.cxx b/extensions/source/propctrlr/cellbindinghelper.cxx
index 97471c3ca292..2f7f8933c33b 100644
--- a/extensions/source/propctrlr/cellbindinghelper.cxx
+++ b/extensions/source/propctrlr/cellbindinghelper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "cellbindinghelper.hxx"
#include <com/sun/star/form/binding/XBindableValue.hpp>
diff --git a/extensions/source/propctrlr/cellbindinghelper.hxx b/extensions/source/propctrlr/cellbindinghelper.hxx
index c5257ddf72d1..12b9c65b42ee 100644
--- a/extensions/source/propctrlr/cellbindinghelper.hxx
+++ b/extensions/source/propctrlr/cellbindinghelper.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_PROPCTRLR_CELLBINDINGHELPER_HXX
#define EXTENSIONS_PROPCTRLR_CELLBINDINGHELPER_HXX
diff --git a/extensions/source/propctrlr/commoncontrol.hxx b/extensions/source/propctrlr/commoncontrol.hxx
index cd2e23280613..f7708a20c6ea 100644
--- a/extensions/source/propctrlr/commoncontrol.hxx
+++ b/extensions/source/propctrlr/commoncontrol.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_COMMONCONTROL_HXX_
#define _EXTENSIONS_PROPCTRLR_COMMONCONTROL_HXX_
diff --git a/extensions/source/propctrlr/composeduiupdate.cxx b/extensions/source/propctrlr/composeduiupdate.cxx
index 5104f15fbf65..456505e47323 100644
--- a/extensions/source/propctrlr/composeduiupdate.cxx
+++ b/extensions/source/propctrlr/composeduiupdate.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "composeduiupdate.hxx"
diff --git a/extensions/source/propctrlr/composeduiupdate.hxx b/extensions/source/propctrlr/composeduiupdate.hxx
index 12e90abc6cf0..4ae7769a10c5 100644
--- a/extensions/source/propctrlr/composeduiupdate.hxx
+++ b/extensions/source/propctrlr/composeduiupdate.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_SOURCE_PROPCTRLR_COMPOSEDUIUPDATE_HXX
#define EXTENSIONS_SOURCE_PROPCTRLR_COMPOSEDUIUPDATE_HXX
diff --git a/extensions/source/propctrlr/controlfontdialog.cxx b/extensions/source/propctrlr/controlfontdialog.cxx
index 3919a0eace41..d7b17559a744 100644
--- a/extensions/source/propctrlr/controlfontdialog.cxx
+++ b/extensions/source/propctrlr/controlfontdialog.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "controlfontdialog.hxx"
diff --git a/extensions/source/propctrlr/defaultforminspection.cxx b/extensions/source/propctrlr/defaultforminspection.cxx
index ceb203d01419..d25824ee6685 100644
--- a/extensions/source/propctrlr/defaultforminspection.cxx
+++ b/extensions/source/propctrlr/defaultforminspection.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "defaultforminspection.hxx"
#include "pcrcommon.hxx"
diff --git a/extensions/source/propctrlr/defaultforminspection.hxx b/extensions/source/propctrlr/defaultforminspection.hxx
index d8b6ebec3d6b..a4075dc2aea6 100644
--- a/extensions/source/propctrlr/defaultforminspection.hxx
+++ b/extensions/source/propctrlr/defaultforminspection.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_SOURCE_PROPCTRLR_DEFAULTFORMINSPECTION_HXX
#define EXTENSIONS_SOURCE_PROPCTRLR_DEFAULTFORMINSPECTION_HXX
diff --git a/extensions/source/propctrlr/defaulthelpprovider.cxx b/extensions/source/propctrlr/defaulthelpprovider.cxx
index 3401fb405267..528316d5e2f5 100644
--- a/extensions/source/propctrlr/defaulthelpprovider.cxx
+++ b/extensions/source/propctrlr/defaulthelpprovider.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "defaulthelpprovider.hxx"
diff --git a/extensions/source/propctrlr/editpropertyhandler.cxx b/extensions/source/propctrlr/editpropertyhandler.cxx
index 9da028e8a5d3..6eb58e3a35b3 100644
--- a/extensions/source/propctrlr/editpropertyhandler.cxx
+++ b/extensions/source/propctrlr/editpropertyhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "editpropertyhandler.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/eformshelper.cxx b/extensions/source/propctrlr/eformshelper.cxx
index 46fadd4bce4e..0306c7fdb87c 100644
--- a/extensions/source/propctrlr/eformshelper.cxx
+++ b/extensions/source/propctrlr/eformshelper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "eformshelper.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/eformspropertyhandler.cxx b/extensions/source/propctrlr/eformspropertyhandler.cxx
index c3219954acfa..fd26dde08c83 100644
--- a/extensions/source/propctrlr/eformspropertyhandler.cxx
+++ b/extensions/source/propctrlr/eformspropertyhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "eformspropertyhandler.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/eventhandler.cxx b/extensions/source/propctrlr/eventhandler.cxx
index f7a6862598fd..73a6016d1407 100644
--- a/extensions/source/propctrlr/eventhandler.cxx
+++ b/extensions/source/propctrlr/eventhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "eventhandler.hxx"
@@ -41,7 +32,7 @@
#include <com/sun/star/awt/XTabControllerModel.hpp>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/beans/UnknownPropertyException.hpp>
-#include <com/sun/star/beans/XIntrospection.hpp>
+#include <com/sun/star/beans/Introspection.hpp>
#include <com/sun/star/beans/XIntrospectionAccess.hpp>
#include <com/sun/star/container/NoSuchElementException.hpp>
#include <com/sun/star/container/XChild.hpp>
@@ -95,6 +86,7 @@ namespace pcr
using ::com::sun::star::uno::Any;
using ::com::sun::star::uno::TypeClass_STRING;
using ::com::sun::star::uno::Type;
+ using ::com::sun::star::beans::Introspection;
using ::com::sun::star::beans::XPropertyChangeListener;
using ::com::sun::star::beans::Property;
using ::com::sun::star::beans::PropertyState;
@@ -1060,7 +1052,7 @@ namespace pcr
// we use a set to avoid duplicates
TypeBag aListeners;
- Reference< XIntrospection > xIntrospection( m_aContext.createComponent( "com.sun.star.beans.Introspection" ), UNO_QUERY_THROW );
+ Reference< XIntrospection > xIntrospection = Introspection::create( m_aContext.getUNOContext() );
// --- model listeners
lcl_addListenerTypesFor_throw(
diff --git a/extensions/source/propctrlr/eventhandler.hxx b/extensions/source/propctrlr/eventhandler.hxx
index 4ce21617071c..c87d4e4c4c33 100644
--- a/extensions/source/propctrlr/eventhandler.hxx
+++ b/extensions/source/propctrlr/eventhandler.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_SOURCE_PROPCTRLR_EVENTHANDLER_HXX
#define EXTENSIONS_SOURCE_PROPCTRLR_EVENTHANDLER_HXX
diff --git a/extensions/source/propctrlr/fontdialog.cxx b/extensions/source/propctrlr/fontdialog.cxx
index 66cd10d231b9..2df5157ed67c 100644
--- a/extensions/source/propctrlr/fontdialog.cxx
+++ b/extensions/source/propctrlr/fontdialog.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sfx2/sfxsids.hrc>
#include "fontdialog.hxx"
diff --git a/extensions/source/propctrlr/formcomponenthandler.cxx b/extensions/source/propctrlr/formcomponenthandler.cxx
index acf8a9ab7ebf..42fd503daa25 100644
--- a/extensions/source/propctrlr/formcomponenthandler.cxx
+++ b/extensions/source/propctrlr/formcomponenthandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "controltype.hxx"
diff --git a/extensions/source/propctrlr/formcontroller.cxx b/extensions/source/propctrlr/formcontroller.cxx
index 0c7e71063ab5..cfe20082e63a 100644
--- a/extensions/source/propctrlr/formcontroller.cxx
+++ b/extensions/source/propctrlr/formcontroller.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "formcontroller.hxx"
#include "pcrcommon.hxx"
diff --git a/extensions/source/propctrlr/formgeometryhandler.cxx b/extensions/source/propctrlr/formgeometryhandler.cxx
index af89b028d16c..85b4502a418e 100644
--- a/extensions/source/propctrlr/formgeometryhandler.cxx
+++ b/extensions/source/propctrlr/formgeometryhandler.cxx
@@ -1,29 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+/*
+ * This file is part of the LibreOffice project.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This file incorporates work covered by the following license notice:
*
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
-************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "propertyhandler.hxx"
diff --git a/extensions/source/propctrlr/formlinkdialog.cxx b/extensions/source/propctrlr/formlinkdialog.cxx
index 5fefcf4a871d..ecc2c7059c4c 100644
--- a/extensions/source/propctrlr/formlinkdialog.cxx
+++ b/extensions/source/propctrlr/formlinkdialog.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "formlinkdialog.hxx"
diff --git a/extensions/source/propctrlr/formlinkdialog.hxx b/extensions/source/propctrlr/formlinkdialog.hxx
index 1ed5330769c8..08093ad60a11 100644
--- a/extensions/source/propctrlr/formlinkdialog.hxx
+++ b/extensions/source/propctrlr/formlinkdialog.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_SOURCE_PROPCTRLR_FORMLINKDIALOG_HXX
#define EXTENSIONS_SOURCE_PROPCTRLR_FORMLINKDIALOG_HXX
diff --git a/extensions/source/propctrlr/formmetadata.cxx b/extensions/source/propctrlr/formmetadata.cxx
index 7b96b8d73676..e342e31014a3 100644
--- a/extensions/source/propctrlr/formmetadata.cxx
+++ b/extensions/source/propctrlr/formmetadata.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "formmetadata.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/formmetadata.hxx b/extensions/source/propctrlr/formmetadata.hxx
index ef8c440a1e9e..fdb5819b4f76 100644
--- a/extensions/source/propctrlr/formmetadata.hxx
+++ b/extensions/source/propctrlr/formmetadata.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_FORMMETADATA_HXX_
#define _EXTENSIONS_PROPCTRLR_FORMMETADATA_HXX_
diff --git a/extensions/source/propctrlr/formres.src b/extensions/source/propctrlr/formres.src
index ed5aa31d438b..1512f780a5d1 100644
--- a/extensions/source/propctrlr/formres.src
+++ b/extensions/source/propctrlr/formres.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "formresid.hrc"
#include "formlocalid.hrc"
diff --git a/extensions/source/propctrlr/formstrings.hxx b/extensions/source/propctrlr/formstrings.hxx
index 4c4c8cb496e4..39a05d80125a 100644
--- a/extensions/source/propctrlr/formstrings.hxx
+++ b/extensions/source/propctrlr/formstrings.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_FORMSCTRLR_FORMSTRINGS_HXX_
#define _EXTENSIONS_FORMSCTRLR_FORMSTRINGS_HXX_
diff --git a/extensions/source/propctrlr/genericpropertyhandler.cxx b/extensions/source/propctrlr/genericpropertyhandler.cxx
index 3a06449f0151..56f2d0fc63c3 100644
--- a/extensions/source/propctrlr/genericpropertyhandler.cxx
+++ b/extensions/source/propctrlr/genericpropertyhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "genericpropertyhandler.hxx"
#include "formmetadata.hxx"
@@ -32,7 +23,7 @@
#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
#include <com/sun/star/reflection/XEnumTypeDescription.hpp>
-#include <com/sun/star/beans/XIntrospection.hpp>
+#include <com/sun/star/beans/Introspection.hpp>
#include <com/sun/star/inspection/PropertyControlType.hpp>
#include <com/sun/star/inspection/XHyperlinkControl.hpp>
#include <com/sun/star/awt/XActionListener.hpp>
@@ -384,9 +375,7 @@ namespace pcr
m_xPropertyState.clear();
// create an introspection adapter for the component
- Reference< XIntrospection > xIntrospection;
- if ( !m_aContext.createComponent( "com.sun.star.beans.Introspection", xIntrospection ) )
- throw RuntimeException( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Could not create an instance of the service com.sun.star.beans.Introspection." ) ), *this );
+ Reference< XIntrospection > xIntrospection = Introspection::create( m_aContext.getUNOContext() );
Reference< XIntrospectionAccess > xIntrospectionAccess( xIntrospection->inspect( makeAny( _rxIntrospectee ) ) );
if ( !xIntrospectionAccess.is() )
diff --git a/extensions/source/propctrlr/handlerhelper.cxx b/extensions/source/propctrlr/handlerhelper.cxx
index d20e9064cf65..83568ad2286a 100644
--- a/extensions/source/propctrlr/handlerhelper.cxx
+++ b/extensions/source/propctrlr/handlerhelper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "handlerhelper.hxx"
#include "propresid.hrc"
diff --git a/extensions/source/propctrlr/listselectiondlg.cxx b/extensions/source/propctrlr/listselectiondlg.cxx
index b46ece0f41e3..b5b88415cb22 100644
--- a/extensions/source/propctrlr/listselectiondlg.cxx
+++ b/extensions/source/propctrlr/listselectiondlg.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "listselectiondlg.hxx"
#include "listselectiondlg.hrc"
diff --git a/extensions/source/propctrlr/newdatatype.cxx b/extensions/source/propctrlr/newdatatype.cxx
index 7c88b1b34de7..c0bc996d5bce 100644
--- a/extensions/source/propctrlr/newdatatype.cxx
+++ b/extensions/source/propctrlr/newdatatype.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "newdatatype.hxx"
#include "newdatatype.hrc"
diff --git a/extensions/source/propctrlr/pcr.component b/extensions/source/propctrlr/pcr.component
index 6fc809412cb0..c0e466b6e603 100644
--- a/extensions/source/propctrlr/pcr.component
+++ b/extensions/source/propctrlr/pcr.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="pcr"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/propctrlr/pcrcommon.cxx b/extensions/source/propctrlr/pcrcommon.cxx
index e3d718de07f2..aee7ce160773 100644
--- a/extensions/source/propctrlr/pcrcommon.cxx
+++ b/extensions/source/propctrlr/pcrcommon.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "pcrcommon.hxx"
#include "modulepcr.hxx"
diff --git a/extensions/source/propctrlr/pcrcommontypes.hxx b/extensions/source/propctrlr/pcrcommontypes.hxx
index cb7f6f0deac4..52b476e12f9f 100644
--- a/extensions/source/propctrlr/pcrcommontypes.hxx
+++ b/extensions/source/propctrlr/pcrcommontypes.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_SOURCE_PROPCTRLR_PCRCOMMONTYPES_HXX
#define EXTENSIONS_SOURCE_PROPCTRLR_PCRCOMMONTYPES_HXX
diff --git a/extensions/source/propctrlr/pcrcomponentcontext.cxx b/extensions/source/propctrlr/pcrcomponentcontext.cxx
index 4b972c91d965..bda6f40be456 100644
--- a/extensions/source/propctrlr/pcrcomponentcontext.cxx
+++ b/extensions/source/propctrlr/pcrcomponentcontext.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "pcrcomponentcontext.hxx"
diff --git a/extensions/source/propctrlr/pcrcomponentcontext.hxx b/extensions/source/propctrlr/pcrcomponentcontext.hxx
index dba5c34415ef..51476febdfa2 100644
--- a/extensions/source/propctrlr/pcrcomponentcontext.hxx
+++ b/extensions/source/propctrlr/pcrcomponentcontext.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_SOURCE_PROPCTRLR_PCROMPONENTCONTEXT_HXX
#define EXTENSIONS_SOURCE_PROPCTRLR_PCROMPONENTCONTEXT_HXX
diff --git a/extensions/source/propctrlr/pcrmiscres.src b/extensions/source/propctrlr/pcrmiscres.src
index f1a0392a4c2a..0377f572060a 100644
--- a/extensions/source/propctrlr/pcrmiscres.src
+++ b/extensions/source/propctrlr/pcrmiscres.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "formresid.hrc"
#include "formlocalid.hrc"
diff --git a/extensions/source/propctrlr/pcrservices.cxx b/extensions/source/propctrlr/pcrservices.cxx
index ab1da1d92cb3..1ba39549fc01 100644
--- a/extensions/source/propctrlr/pcrservices.cxx
+++ b/extensions/source/propctrlr/pcrservices.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "modulepcr.hxx"
diff --git a/extensions/source/propctrlr/pcrunodialogs.cxx b/extensions/source/propctrlr/pcrunodialogs.cxx
index 0f15f84b6d60..fb6e27d47e75 100644
--- a/extensions/source/propctrlr/pcrunodialogs.cxx
+++ b/extensions/source/propctrlr/pcrunodialogs.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "pcrunodialogs.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/propcontroller.cxx b/extensions/source/propctrlr/propcontroller.cxx
index aaa95754be90..73dbf49753d8 100644
--- a/extensions/source/propctrlr/propcontroller.cxx
+++ b/extensions/source/propctrlr/propcontroller.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "propcontroller.hxx"
#include "pcrstrings.hxx"
diff --git a/extensions/source/propctrlr/propcontroller.hxx b/extensions/source/propctrlr/propcontroller.hxx
index c03ba71da0be..db77bb0c410a 100644
--- a/extensions/source/propctrlr/propcontroller.hxx
+++ b/extensions/source/propctrlr/propcontroller.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_PROPCONTROLLER_HXX_
#define _EXTENSIONS_PROPCTRLR_PROPCONTROLLER_HXX_
diff --git a/extensions/source/propctrlr/propcontrolobserver.hxx b/extensions/source/propctrlr/propcontrolobserver.hxx
index 831ae94a6a28..59fca585ab62 100644
--- a/extensions/source/propctrlr/propcontrolobserver.hxx
+++ b/extensions/source/propctrlr/propcontrolobserver.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef PROPCONTROLOBSERVER_HXX
#define PROPCONTROLOBSERVER_HXX
diff --git a/extensions/source/propctrlr/propertycomposer.cxx b/extensions/source/propctrlr/propertycomposer.cxx
index 3869dbd2a9aa..c80bdf7ba104 100644
--- a/extensions/source/propctrlr/propertycomposer.cxx
+++ b/extensions/source/propctrlr/propertycomposer.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "propertycomposer.hxx"
diff --git a/extensions/source/propctrlr/propertycomposer.hxx b/extensions/source/propctrlr/propertycomposer.hxx
index 75e4e1af07e0..68e4cee46b14 100644
--- a/extensions/source/propctrlr/propertycomposer.hxx
+++ b/extensions/source/propctrlr/propertycomposer.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_SOURCE_PROPCTRLR_PROPERTYCOMPOSER_HXX
#define EXTENSIONS_SOURCE_PROPCTRLR_PROPERTYCOMPOSER_HXX
diff --git a/extensions/source/propctrlr/propertyeditor.cxx b/extensions/source/propctrlr/propertyeditor.cxx
index 9679bfba4cad..203e79080b72 100644
--- a/extensions/source/propctrlr/propertyeditor.cxx
+++ b/extensions/source/propctrlr/propertyeditor.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "propertyeditor.hxx"
#include "browserpage.hxx"
diff --git a/extensions/source/propctrlr/propertyeditor.hxx b/extensions/source/propctrlr/propertyeditor.hxx
index 8cb20f56005e..d31ca7912d2c 100644
--- a/extensions/source/propctrlr/propertyeditor.hxx
+++ b/extensions/source/propctrlr/propertyeditor.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_PROPERTYEDITOR_HXX_
#define _EXTENSIONS_PROPCTRLR_PROPERTYEDITOR_HXX_
diff --git a/extensions/source/propctrlr/propertyhandler.cxx b/extensions/source/propctrlr/propertyhandler.cxx
index d19ebf358e4f..1bedb7c889c6 100644
--- a/extensions/source/propctrlr/propertyhandler.cxx
+++ b/extensions/source/propctrlr/propertyhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "propertyhandler.hxx"
#include "formmetadata.hxx"
diff --git a/extensions/source/propctrlr/proplinelistener.hxx b/extensions/source/propctrlr/proplinelistener.hxx
index 6f116b195ab4..6f2a58c8c454 100644
--- a/extensions/source/propctrlr/proplinelistener.hxx
+++ b/extensions/source/propctrlr/proplinelistener.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_PROPCTRLR_PROPLINELISTENER_HXX_
#define _EXTENSIONS_PROPCTRLR_PROPLINELISTENER_HXX_
diff --git a/extensions/source/propctrlr/pushbuttonnavigation.cxx b/extensions/source/propctrlr/pushbuttonnavigation.cxx
index 36270fc8adbf..20a085d9922a 100644
--- a/extensions/source/propctrlr/pushbuttonnavigation.cxx
+++ b/extensions/source/propctrlr/pushbuttonnavigation.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "pushbuttonnavigation.hxx"
#include <com/sun/star/form/FormButtonType.hpp>
diff --git a/extensions/source/propctrlr/selectlabeldialog.cxx b/extensions/source/propctrlr/selectlabeldialog.cxx
index e559ca678b56..d0ea48735be1 100644
--- a/extensions/source/propctrlr/selectlabeldialog.cxx
+++ b/extensions/source/propctrlr/selectlabeldialog.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "selectlabeldialog.hxx"
#include "formresid.hrc"
@@ -124,7 +115,7 @@ namespace pcr
// insert the root
Image aRootImage = m_aModelImages.GetImage(RID_SVXIMG_FORMS);
- SvLBoxEntry* pRoot = m_aControlTree.InsertEntry(PcrRes(RID_STR_FORMS), aRootImage, aRootImage);
+ SvTreeListEntry* pRoot = m_aControlTree.InsertEntry(PcrRes(RID_STR_FORMS), aRootImage, aRootImage);
// build the tree
m_pInitialSelection = NULL;
@@ -162,7 +153,7 @@ namespace pcr
OSelectLabelDialog::~OSelectLabelDialog()
{
// delete the entry datas of the listbox entries
- SvLBoxEntry* pLoop = m_aControlTree.First();
+ SvTreeListEntry* pLoop = m_aControlTree.First();
while (pLoop)
{
void* pData = pLoop->GetUserData();
@@ -175,7 +166,7 @@ namespace pcr
}
//------------------------------------------------------------------------
- sal_Int32 OSelectLabelDialog::InsertEntries(const Reference< XInterface > & _xContainer, SvLBoxEntry* pContainerEntry)
+ sal_Int32 OSelectLabelDialog::InsertEntries(const Reference< XInterface > & _xContainer, SvTreeListEntry* pContainerEntry)
{
Reference< XIndexAccess > xContainer(_xContainer, UNO_QUERY);
if (!xContainer.is())
@@ -209,7 +200,7 @@ namespace pcr
if (xCont.is() && xCont->getCount())
{ // yes -> step down
Image aFormImage = m_aModelImages.GetImage( RID_SVXIMG_FORM );
- SvLBoxEntry* pCont = m_aControlTree.InsertEntry(sName, aFormImage, aFormImage, pContainerEntry);
+ SvTreeListEntry* pCont = m_aControlTree.InsertEntry(sName, aFormImage, aFormImage, pContainerEntry);
sal_Int32 nContChildren = InsertEntries(xCont, pCont);
if (nContChildren)
{
@@ -236,7 +227,7 @@ namespace pcr
makeStringAndClear();
// all requirements met -> insert
- SvLBoxEntry* pCurrent = m_aControlTree.InsertEntry(sDisplayName, m_aRequiredControlImage, m_aRequiredControlImage, pContainerEntry);
+ SvTreeListEntry* pCurrent = m_aControlTree.InsertEntry(sDisplayName, m_aRequiredControlImage, m_aRequiredControlImage, pContainerEntry);
pCurrent->SetUserData(new Reference< XPropertySet > (xAsSet));
++nChildren;
@@ -254,7 +245,7 @@ namespace pcr
{
DBG_ASSERT(pLB == &m_aControlTree, "OSelectLabelDialog::OnEntrySelected : where did this come from ?");
(void)pLB;
- SvLBoxEntry* pSelected = m_aControlTree.FirstSelected();
+ SvTreeListEntry* pSelected = m_aControlTree.FirstSelected();
void* pData = pSelected ? pSelected->GetUserData() : NULL;
if (pData)
@@ -279,7 +270,7 @@ namespace pcr
{
DBG_ASSERT(m_bHaveAssignableControl, "OSelectLabelDialog::OnNoAssignmentClicked");
// search the first assignable entry
- SvLBoxEntry* pSearch = m_aControlTree.First();
+ SvTreeListEntry* pSearch = m_aControlTree.First();
while (pSearch)
{
if (pSearch->GetUserData())
diff --git a/extensions/source/propctrlr/selectlabeldialog.hxx b/extensions/source/propctrlr/selectlabeldialog.hxx
index 314b7c43daed..9b193d645178 100644
--- a/extensions/source/propctrlr/selectlabeldialog.hxx
+++ b/extensions/source/propctrlr/selectlabeldialog.hxx
@@ -51,11 +51,11 @@ namespace pcr
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > m_xControlModel;
::rtl::OUString m_sRequiredService;
Image m_aRequiredControlImage;
- SvLBoxEntry* m_pInitialSelection;
+ SvTreeListEntry* m_pInitialSelection;
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > m_xInitialLabelControl;
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > m_xSelectedControl;
- SvLBoxEntry* m_pLastSelected;
+ SvTreeListEntry* m_pLastSelected;
sal_Bool m_bHaveAssignableControl;
public:
@@ -65,7 +65,7 @@ namespace pcr
::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > GetSelected() const { return m_aNoAssignment.IsChecked() ? ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > () : m_xSelectedControl; }
protected:
- sal_Int32 InsertEntries(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xContainer, SvLBoxEntry* pContainerEntry);
+ sal_Int32 InsertEntries(const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _xContainer, SvTreeListEntry* pContainerEntry);
DECL_LINK(OnEntrySelected, SvTreeListBox*);
DECL_LINK(OnNoAssignmentClicked, Button*);
diff --git a/extensions/source/propctrlr/standardcontrol.cxx b/extensions/source/propctrlr/standardcontrol.cxx
index 687a49939752..29271297174e 100644
--- a/extensions/source/propctrlr/standardcontrol.cxx
+++ b/extensions/source/propctrlr/standardcontrol.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "standardcontrol.hxx"
#include "pcrcommon.hxx"
diff --git a/extensions/source/propctrlr/stringdefine.hxx b/extensions/source/propctrlr/stringdefine.hxx
index 9af1574d049b..6297661208f8 100644
--- a/extensions/source/propctrlr/stringdefine.hxx
+++ b/extensions/source/propctrlr/stringdefine.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXTENSIONS_FORMSCTRLR_STRINGDEFINE_HXX_
#define _EXTENSIONS_FORMSCTRLR_STRINGDEFINE_HXX_
diff --git a/extensions/source/propctrlr/stringrepresentation.cxx b/extensions/source/propctrlr/stringrepresentation.cxx
index b44230ac07cf..6802d3ed634a 100644
--- a/extensions/source/propctrlr/stringrepresentation.cxx
+++ b/extensions/source/propctrlr/stringrepresentation.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "sal/config.h"
#include "cppuhelper/factory.hxx"
diff --git a/extensions/source/propctrlr/submissionhandler.cxx b/extensions/source/propctrlr/submissionhandler.cxx
index 71f1ec2ee69c..5612e18bf07c 100644
--- a/extensions/source/propctrlr/submissionhandler.cxx
+++ b/extensions/source/propctrlr/submissionhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "submissionhandler.hxx"
#include "formmetadata.hxx"
diff --git a/extensions/source/propctrlr/taborder.cxx b/extensions/source/propctrlr/taborder.cxx
index 8049ec877411..bc5c5a10d1de 100644
--- a/extensions/source/propctrlr/taborder.cxx
+++ b/extensions/source/propctrlr/taborder.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "taborder.hxx"
#include "taborder.hrc"
@@ -225,7 +216,7 @@ namespace pcr
}
// select first entry
- SvLBoxEntry* pFirstEntry = aLB_Controls.GetEntry( 0 );
+ SvTreeListEntry* pFirstEntry = aLB_Controls.GetEntry( 0 );
if ( pFirstEntry )
aLB_Controls.Select( pFirstEntry );
}
@@ -284,7 +275,7 @@ namespace pcr
for (sal_uLong i=0; i < nEntryCount; i++)
{
- SvLBoxEntry* pEntry = aLB_Controls.GetEntry(i);
+ SvTreeListEntry* pEntry = aLB_Controls.GetEntry(i);
for( sal_Int32 j=0; j<aControlModels.getLength(); j++ )
{
@@ -326,7 +317,7 @@ namespace pcr
}
//------------------------------------------------------------------------
- void TabOrderListBox::ModelHasMoved( SvListEntry* _pSource )
+ void TabOrderListBox::ModelHasMoved( SvTreeListEntry* _pSource )
{
SvTreeListBox::ModelHasMoved( _pSource );
@@ -346,16 +337,16 @@ namespace pcr
// move entries
if( nRelPos < 0 )
{
- SvLBoxEntry* pFirstSelected = FirstSelected();
+ SvTreeListEntry* pFirstSelected = FirstSelected();
if( !pFirstSelected ) return;
sal_uLong nFirstSelPos = GetModel()->GetAbsPos( pFirstSelected );
if( nFirstSelPos == 0 ) return;
- SvLBoxEntry* pSelEntry = pFirstSelected;
+ SvTreeListEntry* pSelEntry = pFirstSelected;
while( pSelEntry )
{
sal_uLong nSelEntryPos = GetModel()->GetAbsPos( pSelEntry );
- SvLBoxEntry* pSelEntryPrev = GetEntry( nSelEntryPos-1 );
+ SvTreeListEntry* pSelEntryPrev = GetEntry( nSelEntryPos-1 );
aSelEntryPrevText = GetEntryText( pSelEntryPrev );
aImage = GetExpandedEntryBmp(pSelEntryPrev);
void* pData = pSelEntryPrev->GetUserData();
@@ -369,7 +360,7 @@ namespace pcr
else if( nRelPos > 0 )
{
- SvLBoxEntry* pLastSelected = LastSelected();
+ SvTreeListEntry* pLastSelected = LastSelected();
if( !pLastSelected ) return;
sal_uLong nLastSelPos = GetModel()->GetAbsPos( pLastSelected );
@@ -381,11 +372,11 @@ namespace pcr
#endif
- SvLBoxEntry* pSelEntry = pLastSelected;
+ SvTreeListEntry* pSelEntry = pLastSelected;
while( pSelEntry )
{
sal_uLong nSelEntryPos = GetModel()->GetAbsPos( pSelEntry );
- SvLBoxEntry* pSelEntryNext = GetEntry( nSelEntryPos+1 );
+ SvTreeListEntry* pSelEntryNext = GetEntry( nSelEntryPos+1 );
void* pData = pSelEntryNext->GetUserData();
aSelEntryNextText = GetEntryText( pSelEntryNext );
diff --git a/extensions/source/propctrlr/taborder.hxx b/extensions/source/propctrlr/taborder.hxx
index 6e3d96925757..58e9b34db0ba 100644
--- a/extensions/source/propctrlr/taborder.hxx
+++ b/extensions/source/propctrlr/taborder.hxx
@@ -51,7 +51,7 @@ namespace pcr
void MoveSelection( long nRelPos );
protected:
- virtual void ModelHasMoved(SvListEntry* pSource );
+ virtual void ModelHasMoved(SvTreeListEntry* pSource );
private:
using SvTreeListBox::MoveSelection;
diff --git a/extensions/source/propctrlr/unourl.cxx b/extensions/source/propctrlr/unourl.cxx
index 0ab9711d5924..1b4df6e0b344 100644
--- a/extensions/source/propctrlr/unourl.cxx
+++ b/extensions/source/propctrlr/unourl.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "unourl.hxx"
#include <com/sun/star/util/URLTransformer.hpp>
diff --git a/extensions/source/propctrlr/usercontrol.cxx b/extensions/source/propctrlr/usercontrol.cxx
index a2684a2b6f5b..6f82fd2cc6bd 100644
--- a/extensions/source/propctrlr/usercontrol.cxx
+++ b/extensions/source/propctrlr/usercontrol.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "usercontrol.hxx"
diff --git a/extensions/source/propctrlr/xsddatatypes.cxx b/extensions/source/propctrlr/xsddatatypes.cxx
index e7e82310c9cd..7ee0c46c7c2e 100644
--- a/extensions/source/propctrlr/xsddatatypes.cxx
+++ b/extensions/source/propctrlr/xsddatatypes.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "xsddatatypes.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/propctrlr/xsdvalidationhelper.cxx b/extensions/source/propctrlr/xsdvalidationhelper.cxx
index 327b1a87346b..26137db4b935 100644
--- a/extensions/source/propctrlr/xsdvalidationhelper.cxx
+++ b/extensions/source/propctrlr/xsdvalidationhelper.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "xsdvalidationhelper.hxx"
#include "xsddatatypes.hxx"
diff --git a/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx b/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx
index 64eefc03f456..ab89e6d290a6 100644
--- a/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx
+++ b/extensions/source/propctrlr/xsdvalidationpropertyhandler.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "xsdvalidationpropertyhandler.hxx"
#include "formstrings.hxx"
diff --git a/extensions/source/resource/oooresourceloader.cxx b/extensions/source/resource/oooresourceloader.cxx
index a0320daa2487..a1ee7f91c69f 100644
--- a/extensions/source/resource/oooresourceloader.cxx
+++ b/extensions/source/resource/oooresourceloader.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <oooresourceloader.hxx>
diff --git a/extensions/source/resource/oooresourceloader.hxx b/extensions/source/resource/oooresourceloader.hxx
index fd7f526ce30b..e431d384a034 100644
--- a/extensions/source/resource/oooresourceloader.hxx
+++ b/extensions/source/resource/oooresourceloader.hxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef EXTENSIONS_RESOURCE_OOORESOURCELOADER_HXX
#define EXTENSIONS_RESOURCE_OOORESOURCELOADER_HXX
diff --git a/extensions/source/resource/res.component b/extensions/source/resource/res.component
index 6ad58b45c7df..c432cb18e1f9 100644
--- a/extensions/source/resource/res.component
+++ b/extensions/source/resource/res.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="res"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/scanner/grid.cxx b/extensions/source/scanner/grid.cxx
index 32b229cb3288..2b4c18254f57 100644
--- a/extensions/source/scanner/grid.cxx
+++ b/extensions/source/scanner/grid.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <grid.hrc>
#include <cstdio>
diff --git a/extensions/source/scanner/sane.cxx b/extensions/source/scanner/sane.cxx
index 8c97ae0e040d..d9f64a30b17b 100644
--- a/extensions/source/scanner/sane.cxx
+++ b/extensions/source/scanner/sane.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <cstdarg>
#include <math.h>
diff --git a/extensions/source/scanner/sane.hxx b/extensions/source/scanner/sane.hxx
index 680a66727c17..d1bf131948e1 100644
--- a/extensions/source/scanner/sane.hxx
+++ b/extensions/source/scanner/sane.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SANE_HXX
#define _SANE_HXX
diff --git a/extensions/source/scanner/sanedlg.cxx b/extensions/source/scanner/sanedlg.cxx
index ba446451ae11..144daca233d9 100644
--- a/extensions/source/scanner/sanedlg.cxx
+++ b/extensions/source/scanner/sanedlg.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <stdio.h>
@@ -370,7 +361,7 @@ void SaneDlg::InitFields()
);
// fill OptionBox
maOptionBox.Clear();
- SvLBoxEntry* pParentEntry = 0;
+ SvTreeListEntry* pParentEntry = 0;
sal_Bool bGroupRejected = sal_False;
for( i = 1; i < mrSane.CountOptions(); i++ )
{
diff --git a/extensions/source/scanner/sanedlg.hxx b/extensions/source/scanner/sanedlg.hxx
index 8b8f93fca198..22c1074b2ed3 100644
--- a/extensions/source/scanner/sanedlg.hxx
+++ b/extensions/source/scanner/sanedlg.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVT_SANEDLG_HXX
#define _SVT_SANEDLG_HXX
diff --git a/extensions/source/scanner/sanedlg.src b/extensions/source/scanner/sanedlg.src
index 53d909ccc27b..6b78e0c315e0 100644
--- a/extensions/source/scanner/sanedlg.src
+++ b/extensions/source/scanner/sanedlg.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sanedlg.hrc>
ModalDialog RID_SANE_DIALOG
{
diff --git a/extensions/source/scanner/scanner.cxx b/extensions/source/scanner/scanner.cxx
index 903f6d15aa32..5d3e437cab64 100644
--- a/extensions/source/scanner/scanner.cxx
+++ b/extensions/source/scanner/scanner.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <scanner.hxx>
diff --git a/extensions/source/scanner/scanner.hxx b/extensions/source/scanner/scanner.hxx
index f1b5ab509332..68cedca5de9b 100644
--- a/extensions/source/scanner/scanner.hxx
+++ b/extensions/source/scanner/scanner.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _EXT_SCANNER_HXX
#define _EXT_SCANNER_HXX
diff --git a/extensions/source/scanner/scanunx.cxx b/extensions/source/scanner/scanunx.cxx
index cb2d8ec7a0af..6a467bdb7d0c 100644
--- a/extensions/source/scanner/scanunx.cxx
+++ b/extensions/source/scanner/scanunx.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <scanner.hxx>
#include <sanedlg.hxx>
diff --git a/extensions/source/scanner/scanwin.cxx b/extensions/source/scanner/scanwin.cxx
index 1b5a595ae54a..002e69104152 100644
--- a/extensions/source/scanner/scanwin.cxx
+++ b/extensions/source/scanner/scanwin.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/uno/Reference.hxx>
diff --git a/extensions/source/scanner/scn.component b/extensions/source/scanner/scn.component
index 80ca072eb5a3..35c38703fea5 100644
--- a/extensions/source/scanner/scn.component
+++ b/extensions/source/scanner/scn.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="scn"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/scanner/scnserv.cxx b/extensions/source/scanner/scnserv.cxx
index 56cde1e6979a..dadaf3279269 100644
--- a/extensions/source/scanner/scnserv.cxx
+++ b/extensions/source/scanner/scnserv.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <osl/diagnose.h>
#include <cppuhelper/factory.hxx>
diff --git a/extensions/source/update/check/actionlistener.hxx b/extensions/source/update/check/actionlistener.hxx
index c4f16c695115..d2b8f898e82f 100644
--- a/extensions/source/update/check/actionlistener.hxx
+++ b/extensions/source/update/check/actionlistener.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef INCLUDED_ACTION_LISTENER_HXX
#define INCLUDED_ACTION_LISTENER_HXX
diff --git a/extensions/source/update/check/download.cxx b/extensions/source/update/check/download.cxx
index e56c16cd0eb1..ad2b3acb3e75 100644
--- a/extensions/source/update/check/download.cxx
+++ b/extensions/source/update/check/download.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#if defined WNT
diff --git a/extensions/source/update/check/download.hxx b/extensions/source/update/check/download.hxx
index afa7c1468624..1f01c8c4c230 100644
--- a/extensions/source/update/check/download.hxx
+++ b/extensions/source/update/check/download.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/uno/XComponentContext.hpp>
diff --git a/extensions/source/update/check/onlinecheck.cxx b/extensions/source/update/check/onlinecheck.cxx
index 0a765399cce3..9324ff7699b5 100644
--- a/extensions/source/update/check/onlinecheck.cxx
+++ b/extensions/source/update/check/onlinecheck.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifdef _MSC_VER
#pragma warning( disable: 4668 )
diff --git a/extensions/source/update/check/org/openoffice/Office/Addons.xcu b/extensions/source/update/check/org/openoffice/Office/Addons.xcu
index 60043ec62c05..a9e3990393ae 100644
--- a/extensions/source/update/check/org/openoffice/Office/Addons.xcu
+++ b/extensions/source/update/check/org/openoffice/Office/Addons.xcu
@@ -1,5 +1,21 @@
-<?xml version='1.0' encoding='UTF-8'?>
-
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<oor:component-data oor:name="Addons" oor:package="org.openoffice.Office" xmlns:install="http://openoffice.org/2004/installation" xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<node oor:name="AddonUI" install:module="onlineupdate">
<node oor:name="OfficeHelp">
diff --git a/extensions/source/update/check/org/openoffice/Office/Jobs.xcu b/extensions/source/update/check/org/openoffice/Office/Jobs.xcu
index 722e8be5dce6..b1f9c91f5ff9 100644
--- a/extensions/source/update/check/org/openoffice/Office/Jobs.xcu
+++ b/extensions/source/update/check/org/openoffice/Office/Jobs.xcu
@@ -1,5 +1,21 @@
-<?xml version='1.0' encoding='UTF-8'?>
-
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<oor:component-data oor:name="Jobs" oor:package="org.openoffice.Office" xmlns:install="http://openoffice.org/2004/installation" xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<node oor:name="Jobs" install:module="onlineupdate">
<node oor:name="UpdateCheck" oor:op="replace">
diff --git a/extensions/source/update/check/updatecheck.cxx b/extensions/source/update/check/updatecheck.cxx
index c6fb071fd1ed..c8d25735bead 100644
--- a/extensions/source/update/check/updatecheck.cxx
+++ b/extensions/source/update/check/updatecheck.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "updatecheck.hxx"
@@ -913,9 +904,7 @@ UpdateCheck::install()
{
osl::MutexGuard aGuard(m_aMutex);
- const uno::Reference< c3s::XSystemShellExecute > xShellExecute(
- createService( UNISTRING( "com.sun.star.system.SystemShellExecute" ), m_xContext ),
- uno::UNO_QUERY );
+ const uno::Reference< c3s::XSystemShellExecute > xShellExecute = c3s::SystemShellExecute::create( m_xContext );
try {
// Construct install command ??
@@ -927,29 +916,26 @@ UpdateCheck::install()
aURL = getReleaseNote(m_aUpdateInfo, 4);
storeReleaseNote(2, aURL);
- if( xShellExecute.is() )
- {
- rtl::OUString aInstallImage(m_aImageName);
- osl::FileBase::getSystemPathFromFileURL(aInstallImage, aInstallImage);
+ rtl::OUString aInstallImage(m_aImageName);
+ osl::FileBase::getSystemPathFromFileURL(aInstallImage, aInstallImage);
- rtl::OUString aParameter;
- sal_Int32 nFlags = c3s::SystemShellExecuteFlags::DEFAULTS;
+ rtl::OUString aParameter;
+ sal_Int32 nFlags = c3s::SystemShellExecuteFlags::DEFAULTS;
#if ( defined LINUX || defined SOLARIS )
- nFlags = 42;
- aParameter = getBaseInstallation();
- if( !aParameter.isEmpty() )
- osl::FileBase::getSystemPathFromFileURL(aParameter, aParameter);
+ nFlags = 42;
+ aParameter = getBaseInstallation();
+ if( !aParameter.isEmpty() )
+ osl::FileBase::getSystemPathFromFileURL(aParameter, aParameter);
- aParameter += UNISTRING(" &");
+ aParameter += UNISTRING(" &");
#endif
- rtl::Reference< UpdateCheckConfig > rModel = UpdateCheckConfig::get( m_xContext );
- rModel->clearLocalFileName();
+ rtl::Reference< UpdateCheckConfig > rModel = UpdateCheckConfig::get( m_xContext );
+ rModel->clearLocalFileName();
- xShellExecute->execute(aInstallImage, aParameter, nFlags);
- ShutdownThread *pShutdownThread = new ShutdownThread( m_xContext );
- (void) pShutdownThread;
- }
+ xShellExecute->execute(aInstallImage, aParameter, nFlags);
+ ShutdownThread *pShutdownThread = new ShutdownThread( m_xContext );
+ (void) pShutdownThread;
} catch(const uno::Exception&) {
m_aUpdateHandler->setErrorMessage( m_aUpdateHandler->getDefaultInstErrMsg() );
}
diff --git a/extensions/source/update/check/updatecheck.hxx b/extensions/source/update/check/updatecheck.hxx
index 5982e2a2f52a..55d2b24c158b 100644
--- a/extensions/source/update/check/updatecheck.hxx
+++ b/extensions/source/update/check/updatecheck.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/beans/NamedValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
diff --git a/extensions/source/update/check/updatecheckconfig.cxx b/extensions/source/update/check/updatecheckconfig.cxx
index d7c0b29bb37c..c569c711c4fb 100644
--- a/extensions/source/update/check/updatecheckconfig.cxx
+++ b/extensions/source/update/check/updatecheckconfig.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "updatecheckconfig.hxx"
#include <com/sun/star/beans/PropertyValue.hpp>
diff --git a/extensions/source/update/check/updatecheckconfig.hxx b/extensions/source/update/check/updatecheckconfig.hxx
index 743130d011fd..641c376f299c 100644
--- a/extensions/source/update/check/updatecheckconfig.hxx
+++ b/extensions/source/update/check/updatecheckconfig.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <cppuhelper/implbase3.hxx>
#include <com/sun/star/beans/NamedValue.hpp>
diff --git a/extensions/source/update/check/updatecheckconfiglistener.hxx b/extensions/source/update/check/updatecheckconfiglistener.hxx
index 849919f35267..1e7021218337 100644
--- a/extensions/source/update/check/updatecheckconfiglistener.hxx
+++ b/extensions/source/update/check/updatecheckconfiglistener.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <rtl/ref.hxx>
diff --git a/extensions/source/update/check/updatecheckjob.cxx b/extensions/source/update/check/updatecheckjob.cxx
index 230d1f16f5de..2360daf7c722 100644
--- a/extensions/source/update/check/updatecheckjob.cxx
+++ b/extensions/source/update/check/updatecheckjob.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <memory>
diff --git a/extensions/source/update/check/updatehdl.cxx b/extensions/source/update/check/updatehdl.cxx
index e4d125f8e20d..67e15892e6af 100644
--- a/extensions/source/update/check/updatehdl.cxx
+++ b/extensions/source/update/check/updatehdl.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "updatehdl.hxx"
diff --git a/extensions/source/update/check/updatehdl.src b/extensions/source/update/check/updatehdl.src
index 2036a3f0534e..3fc0a918e2fd 100644
--- a/extensions/source/update/check/updatehdl.src
+++ b/extensions/source/update/check/updatehdl.src
@@ -1,29 +1,20 @@
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "updatehdl.hrc"
diff --git a/extensions/source/update/check/updateprotocol.cxx b/extensions/source/update/check/updateprotocol.cxx
index 161c0965f8d3..bdbeb1ad8cac 100644
--- a/extensions/source/update/check/updateprotocol.cxx
+++ b/extensions/source/update/check/updateprotocol.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/xml/xpath/XXPathAPI.hpp>
diff --git a/extensions/source/update/check/updateprotocol.hxx b/extensions/source/update/check/updateprotocol.hxx
index 605ab84c130a..915379d9e4b1 100644
--- a/extensions/source/update/check/updateprotocol.hxx
+++ b/extensions/source/update/check/updateprotocol.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/task/XInteractionHandler.hpp>
diff --git a/extensions/source/update/check/updchk.uno.component b/extensions/source/update/check/updchk.uno.component
index c19ae2f94085..ca4edb6daba5 100644
--- a/extensions/source/update/check/updchk.uno.component
+++ b/extensions/source/update/check/updchk.uno.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="updchk"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/update/feed/updatefeed.component b/extensions/source/update/feed/updatefeed.component
index f43afc11cb29..7ef7db553781 100644
--- a/extensions/source/update/feed/updatefeed.component
+++ b/extensions/source/update/feed/updatefeed.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="updatefeed"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/source/update/feed/updatefeed.cxx b/extensions/source/update/feed/updatefeed.cxx
index 310bbe86d864..c2dfa99e6a86 100644
--- a/extensions/source/update/feed/updatefeed.cxx
+++ b/extensions/source/update/feed/updatefeed.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <cppuhelper/implbase1.hxx>
@@ -633,8 +624,12 @@ UpdateInformationProvider::getUpdateInformationEnumeration(
if( m_bCancelled.check() )
break;
}
- // rethrow runtime exceptions
- catch( uno::RuntimeException const & ) { throw; }
+ catch( uno::RuntimeException const& /*e*/)
+ {
+ // #i118675# ignore runtime exceptions for now
+ // especially the "unsatisfied query for interface of
+ // type com.sun.star.ucb.XCommandProcessor!" exception
+ }
// rethrow only if last url in the list
catch( uno::Exception const & )
diff --git a/extensions/source/update/tools/ztool.cxx b/extensions/source/update/tools/ztool.cxx
index 63930e1f9da2..b1c4fad1cac9 100644
--- a/extensions/source/update/tools/ztool.cxx
+++ b/extensions/source/update/tools/ztool.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <stdio.h>
diff --git a/extensions/source/update/ui/updatecheckui.cxx b/extensions/source/update/ui/updatecheckui.cxx
index fab97f574f7d..441a57eca717 100644
--- a/extensions/source/update/ui/updatecheckui.cxx
+++ b/extensions/source/update/ui/updatecheckui.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <list>
diff --git a/extensions/source/update/ui/updatecheckui.hrc b/extensions/source/update/ui/updatecheckui.hrc
index a837ed344c61..754b1c880b12 100644
--- a/extensions/source/update/ui/updatecheckui.hrc
+++ b/extensions/source/update/ui/updatecheckui.hrc
@@ -1,29 +1,20 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#define RID_UPDATECHECKUI_START 1100
diff --git a/extensions/source/update/ui/updatecheckui.src b/extensions/source/update/ui/updatecheckui.src
index 084b2f82149d..e9db3bcc21ea 100644
--- a/extensions/source/update/ui/updatecheckui.src
+++ b/extensions/source/update/ui/updatecheckui.src
@@ -1,29 +1,20 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "updatecheckui.hrc"
diff --git a/extensions/source/update/ui/updchk.component b/extensions/source/update/ui/updchk.component
index 855936c81822..206306285bc2 100644
--- a/extensions/source/update/ui/updchk.component
+++ b/extensions/source/update/ui/updchk.component
@@ -1,30 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
<component loader="com.sun.star.loader.SharedLibrary" prefix="updchkui"
xmlns="http://openoffice.org/2010/uno-components">
diff --git a/extensions/test/ole/AxTestComponents/AxTestComponents.rc b/extensions/test/ole/AxTestComponents/AxTestComponents.rc
index b2b3c96ba6c2..e9e4171c8e2a 100644
--- a/extensions/test/ole/AxTestComponents/AxTestComponents.rc
+++ b/extensions/test/ole/AxTestComponents/AxTestComponents.rc
@@ -1,29 +1,20 @@
-/*************************************************************************
-*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * This file is part of OpenOffice.org.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
-**************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
//Microsoft Developer Studio generated resource script.
//
diff --git a/extensions/test/ole/AxTestComponents/Basic.cpp b/extensions/test/ole/AxTestComponents/Basic.cpp
index e6e4c97b0ea9..35986d27086f 100644
--- a/extensions/test/ole/AxTestComponents/Basic.cpp
+++ b/extensions/test/ole/AxTestComponents/Basic.cpp
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "stdafx.h"
#include "Basic.h"
diff --git a/extensions/test/ole/AxTestComponents/readme.txt b/extensions/test/ole/AxTestComponents/readme.txt
index 363a0ed33bb6..6f19ea6102b2 100644
--- a/extensions/test/ole/AxTestComponents/readme.txt
+++ b/extensions/test/ole/AxTestComponents/readme.txt
@@ -1,4 +1,3 @@
-
-The component does not use the AxTestComponent.h created by the midl
-compiler. Instead #import is used. This is because of a bug when
-using attribute "defaultvalue" in idl. \ No newline at end of file
+The component does not use the AxTestComponent.h created by the midl
+compiler. Instead #import is used. This is because of a bug when
+using attribute "defaultvalue" in idl.
diff --git a/extensions/test/ole/DCOM/Clients/WriterDemo/Module1.bas b/extensions/test/ole/DCOM/Clients/WriterDemo/Module1.bas
index e9bb197ed692..88153b174fce 100644
--- a/extensions/test/ole/DCOM/Clients/WriterDemo/Module1.bas
+++ b/extensions/test/ole/DCOM/Clients/WriterDemo/Module1.bas
@@ -1,3 +1,20 @@
+rem
+rem This file is part of the LibreOffice project.
+rem
+rem This Source Code Form is subject to the terms of the Mozilla Public
+rem License, v. 2.0. If a copy of the MPL was not distributed with this
+rem file, You can obtain one at http://mozilla.org/MPL/2.0/.
+rem
+rem This file incorporates work covered by the following license notice:
+rem
+rem Licensed to the Apache Software Foundation (ASF) under one or more
+rem contributor license agreements. See the NOTICE file distributed
+rem with this work for additional information regarding copyright
+rem ownership. The ASF licenses this file to you under the Apache
+rem License, Version 2.0 (the "License"); you may not use this file
+rem except in compliance with the License. You may obtain a copy of
+rem the License at http://www.apache.org/licenses/LICENSE-2.0 .
+rem
Attribute VB_Name = "Module1"
Option Explicit
diff --git a/extensions/test/ole/DCOM/dcom_test/Module1.bas b/extensions/test/ole/DCOM/dcom_test/Module1.bas
index c41c3a073967..27908068c280 100644
--- a/extensions/test/ole/DCOM/dcom_test/Module1.bas
+++ b/extensions/test/ole/DCOM/dcom_test/Module1.bas
@@ -1,3 +1,20 @@
+rem
+rem This file is part of the LibreOffice project.
+rem
+rem This Source Code Form is subject to the terms of the Mozilla Public
+rem License, v. 2.0. If a copy of the MPL was not distributed with this
+rem file, You can obtain one at http://mozilla.org/MPL/2.0/.
+rem
+rem This file incorporates work covered by the following license notice:
+rem
+rem Licensed to the Apache Software Foundation (ASF) under one or more
+rem contributor license agreements. See the NOTICE file distributed
+rem with this work for additional information regarding copyright
+rem ownership. The ASF licenses this file to you under the Apache
+rem License, Version 2.0 (the "License"); you may not use this file
+rem except in compliance with the License. You may obtain a copy of
+rem the License at http://www.apache.org/licenses/LICENSE-2.0 .
+rem
Attribute VB_Name = "Module1"
Option Explicit
diff --git a/extensions/test/ole/DCOM/scriptComponents/readme.txt b/extensions/test/ole/DCOM/scriptComponents/readme.txt
index 81dff56b47f4..5fa3a8bb72cc 100644
--- a/extensions/test/ole/DCOM/scriptComponents/readme.txt
+++ b/extensions/test/ole/DCOM/scriptComponents/readme.txt
@@ -10,4 +10,3 @@ needs the proper right within the client.
The component implements a run function, which runs the demo example that is written
in JScript.
-
diff --git a/extensions/test/ole/EventListenerSample/EventListener/EventListener.rc b/extensions/test/ole/EventListenerSample/EventListener/EventListener.rc
index 90f0c7bd2ce5..7c97bb33835b 100644
--- a/extensions/test/ole/EventListenerSample/EventListener/EventListener.rc
+++ b/extensions/test/ole/EventListenerSample/EventListener/EventListener.rc
@@ -1,4 +1,22 @@
-//Microsoft Developer Studio generated resource script.
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+// Microsoft Developer Studio generated resource script.
//
#include "resource.h"
diff --git a/extensions/test/ole/EventListenerSample/VBEventListener/VBEventListener.cls b/extensions/test/ole/EventListenerSample/VBEventListener/VBEventListener.cls
index 4c36785b56dc..f3c09aa4d381 100644
--- a/extensions/test/ole/EventListenerSample/VBEventListener/VBEventListener.cls
+++ b/extensions/test/ole/EventListenerSample/VBEventListener/VBEventListener.cls
@@ -1,29 +1,20 @@
-'*************************************************************************
'
-' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-'
-' Copyright 2000, 2010 Oracle and/or its affiliates.
+' This file is part of the LibreOffice project.
'
-' OpenOffice.org - a multi-platform office productivity suite
+' This Source Code Form is subject to the terms of the Mozilla Public
+' License, v. 2.0. If a copy of the MPL was not distributed with this
+' file, You can obtain one at http://mozilla.org/MPL/2.0/.
'
-' This file is part of OpenOffice.org.
+' This file incorporates work covered by the following license notice:
'
-' OpenOffice.org is free software: you can redistribute it and/or modify
-' it under the terms of the GNU Lesser General Public License version 3
-' only, as published by the Free Software Foundation.
+' Licensed to the Apache Software Foundation (ASF) under one or more
+' contributor license agreements. See the NOTICE file distributed
+' with this work for additional information regarding copyright
+' ownership. The ASF licenses this file to you under the Apache
+' License, Version 2.0 (the "License"); you may not use this file
+' except in compliance with the License. You may obtain a copy of
+' the License at http://www.apache.org/licenses/LICENSE-2.0 .
'
-' OpenOffice.org is distributed in the hope that it will be useful,
-' but WITHOUT ANY WARRANTY; without even the implied warranty of
-' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-' GNU Lesser General Public License version 3 for more details
-' (a copy is included in the LICENSE file that accompanied this code).
-'
-' You should have received a copy of the GNU Lesser General Public License
-' version 3 along with OpenOffice.org. If not, see
-' <http://www.openoffice.org/license.html>
-' for a copy of the LGPLv3 License.
-'
-'*************************************************************************
VERSION 1.0 CLASS
BEGIN
diff --git a/extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.dll b/extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.dll
deleted file mode 100644
index 5ac90de3950a..000000000000
--- a/extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.dll
+++ /dev/null
Binary files differ
diff --git a/extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.vbw b/extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.vbw
index cf737ac409bc..76699ee8136f 100644
--- a/extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.vbw
+++ b/extensions/test/ole/EventListenerSample/VBEventListener/VBasicEventListener.vbw
@@ -1,2 +1,2 @@
-VBEventListener = 132, 132, 732, 748,
-Module1 = 64, 33, 849, 530,
+VBEventListener = 132, 132, 732, 748,
+Module1 = 64, 33, 849, 530,
diff --git a/extensions/test/ole/EventListenerSample/VBEventListener/readme.txt b/extensions/test/ole/EventListenerSample/VBEventListener/readme.txt
index 1daace2673f3..417c102b05ce 100644
--- a/extensions/test/ole/EventListenerSample/VBEventListener/readme.txt
+++ b/extensions/test/ole/EventListenerSample/VBEventListener/readme.txt
@@ -1,7 +1,7 @@
VBasicEventListener.dll is an ActiveX component written with VisualBasic. The
-component registers on the system with a particular ID. When the library is build
-this ID is generated, unless a previously build library exists. Then the ID of that
+component registers on the system with a particular ID. When the library is build
+this ID is generated, unless a previously build library exists. Then the ID of that
library is used. In order to use always the same ID, the library must be as binary in
the cvs.
-The library can be used under the licences noted in VBEventListener.cls. \ No newline at end of file
+The library can be used under the licences noted in VBEventListener.cls.
diff --git a/extensions/test/ole/EventListenerSample/events.htm b/extensions/test/ole/EventListenerSample/events.htm
index 973a21528643..75f7bc1d9b07 100644
--- a/extensions/test/ole/EventListenerSample/events.htm
+++ b/extensions/test/ole/EventListenerSample/events.htm
@@ -1,3 +1,20 @@
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Developer Studio">
diff --git a/extensions/test/ole/JScriptNewStyle.htm b/extensions/test/ole/JScriptNewStyle.htm
index 016119d1908b..8568df37bf29 100644
--- a/extensions/test/ole/JScriptNewStyle.htm
+++ b/extensions/test/ole/JScriptNewStyle.htm
@@ -1,3 +1,20 @@
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Developer Studio">
diff --git a/extensions/test/ole/MfcControl/MfcControl.rc b/extensions/test/ole/MfcControl/MfcControl.rc
index e052b9f261a6..dadf101f12c3 100644
--- a/extensions/test/ole/MfcControl/MfcControl.rc
+++ b/extensions/test/ole/MfcControl/MfcControl.rc
@@ -1,3 +1,21 @@
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
//Microsoft Visual C++ generated resource script.
//
#include "resource.h"
diff --git a/extensions/test/ole/OleClient/clientTest.cxx b/extensions/test/ole/OleClient/clientTest.cxx
index 2949cc59b613..05b47d1b951f 100644
--- a/extensions/test/ole/OleClient/clientTest.cxx
+++ b/extensions/test/ole/OleClient/clientTest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <atlbase.h>
diff --git a/extensions/test/ole/OleClient/funcs.cxx b/extensions/test/ole/OleClient/funcs.cxx
index 2a25838921b3..674089637652 100644
--- a/extensions/test/ole/OleClient/funcs.cxx
+++ b/extensions/test/ole/OleClient/funcs.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <atlbase.h>
diff --git a/extensions/test/ole/OleClient/readme.txt b/extensions/test/ole/OleClient/readme.txt
index 96181e44db9b..bcee8eddec27 100644
--- a/extensions/test/ole/OleClient/readme.txt
+++ b/extensions/test/ole/OleClient/readme.txt
@@ -3,7 +3,7 @@ through XInvocation.
Requirements:
-types.rdb and services.rdb and OleClient.ini have to be next to the executable.
+types.rdb and services.rdb and OleClient.ini have to be next to the executable.
COM component: XCallback_Impl.Simple ( extensions/test/ole/unotocomcalls/XCallback_Impl )
ActiveX controls: AxTestComponent.Basic ( extensions/test/ole/AxTestComponents)
MFCCONTROL.MfcControlCtrl.1 (extensions/test/ole/MfcControl)
diff --git a/extensions/test/ole/OleConverterVar1/convTest.cxx b/extensions/test/ole/OleConverterVar1/convTest.cxx
index 6f9ada0b079d..70a34a32b40b 100644
--- a/extensions/test/ole/OleConverterVar1/convTest.cxx
+++ b/extensions/test/ole/OleConverterVar1/convTest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#pragma warning (disable: 4917)
diff --git a/extensions/test/ole/OleConverterVar1/readme.txt b/extensions/test/ole/OleConverterVar1/readme.txt
index 148bab04c147..67bc8d920415 100644
--- a/extensions/test/ole/OleConverterVar1/readme.txt
+++ b/extensions/test/ole/OleConverterVar1/readme.txt
@@ -4,7 +4,7 @@ The program test the Service com.sun.star.bridge.OleBridgeSupplierVar1.
While running in debug mode it writes infos to the debug - output.
The executable needs a services.rdb present with the registered services
-com.sun.star.bridge.OleBridgeSupplierVar1, oletest.OleTest. The OleTest
-component resides in extensions/test/ole/cpnt. The build creates an
+com.sun.star.bridge.OleBridgeSupplierVar1, oletest.OleTest. The OleTest
+component resides in extensions/test/ole/cpnt. The build creates an
oletest.rdb file that must be merged with the types.rdb and OleTest
must be registered to the services.rdb.
diff --git a/extensions/test/ole/OleTest.htm b/extensions/test/ole/OleTest.htm
index 93d0fdc4ee52..a4a42fed2845 100644
--- a/extensions/test/ole/OleTest.htm
+++ b/extensions/test/ole/OleTest.htm
@@ -1,3 +1,20 @@
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Developer Studio">
diff --git a/extensions/test/ole/StarBasic_OleClient/oleclient.bas b/extensions/test/ole/StarBasic_OleClient/oleclient.bas
index 7ba324660dfe..23a8929c81a4 100644
--- a/extensions/test/ole/StarBasic_OleClient/oleclient.bas
+++ b/extensions/test/ole/StarBasic_OleClient/oleclient.bas
@@ -1,26 +1,41 @@
-REM ***** BASIC *****
-
+rem
+rem This file is part of the LibreOffice project.
+rem
+rem This Source Code Form is subject to the terms of the Mozilla Public
+rem License, v. 2.0. If a copy of the MPL was not distributed with this
+rem file, You can obtain one at http://mozilla.org/MPL/2.0/.
+rem
+rem This file incorporates work covered by the following license notice:
+rem
+rem Licensed to the Apache Software Foundation (ASF) under one or more
+rem contributor license agreements. See the NOTICE file distributed
+rem with this work for additional information regarding copyright
+rem ownership. The ASF licenses this file to you under the Apache
+rem License, Version 2.0 (the "License"); you may not use this file
+rem except in compliance with the License. You may obtain a copy of
+rem the License at http://www.apache.org/licenses/LICENSE-2.0 .
+rem
OPTION EXPLICIT
OPTION COMPATIBLE
Sub Main
-COMPATIBILITYMODE(true)
+COMPATIBILITYMODE(true)
If runtest = -1 Then
MsgBox "Test Failed!!!"
-Else
+Else
MsgBox "Test Succeeded"
End If
End Sub
Function runtest() As Integer
-Dim inBool As Boolean, inBool2 As Boolean, outBool As Boolean
+Dim inBool As Boolean, inBool2 As Boolean, outBool As Boolean
Dim inByte As Integer, inByte2 As Integer
Dim inShort As Integer, inShort2 As Integer
Dim inLong As Long, inLong2 As Long, inLong3 As Long, inLong4 As Long
-Dim inString As String, inString2 As String
+Dim inString As String, inString2 As String
Dim inFloat As Single, inFloat2 As Single
Dim inDouble As Double, inDouble2 As Double
Dim inVariant, inVariant2
@@ -123,7 +138,7 @@ If inBool <> outBool Or inByte <> outByte Or inShort <> outShort Or inLong <> ou
inVariant <> outVariant Or NOT equalUnoObjects(obj, outObject) Or NOT _
equalArrays(arString(), outArray()) Or inDate <> outDate Or inCurrency <> outCurrency Or _
inSCode.Value <> outSCode.Value Or Not equalUnoObjects(objFoo, outUnknown) Or _
- inDecimal <> outDecimal Then
+ inDecimal <> outDecimal Then
runtest = -1
exit Function
End If
@@ -219,7 +234,7 @@ End If
'properties -------------------------------------------------------------------------
inBool = false
-outBool = true
+outBool = true
obj.prpBool = inBool
outBool = obj.prpBool
inByte = 11
@@ -287,7 +302,7 @@ If inBool <> outBool Or inByte <> outByte Or inShort <> outShort Or inLong <> ou
inDecimal <> outDecimal Then
runtest = -1
Exit Function
-End If
+End If
' ref parameter ------------------------------------------------------------------------
obj.inLong(0)
@@ -303,7 +318,7 @@ obj.inrefVariant(inVariant)
obj.outVariant(outVariant)
If inLong <> outLong Or inVariant <> outVariant Then
runtest = -1
- Exit Function
+ Exit Function
End If
outLong = 0
@@ -314,7 +329,7 @@ obj.prprefVariant = inVariant
outVariant = obj.prprefVariant
If inLong <> outLong Or inVariant <> outVariant Then
runtest = -1
- Exit Function
+ Exit Function
End If
@@ -443,8 +458,8 @@ If inLong2 <> outLong Then
End If
'named arguments-------------------------------------------------------------------------
-'all args As named args, different order
-obj.optional6(0, 0, 0, 0)
+'all args As named args, different order
+obj.optional6(0, 0, 0, 0)
inLong = 1
inLong2 = 2
inLong3 = 3
@@ -461,22 +476,22 @@ If inLong <> outLong Or inLong2 <> outLong2 _
Or inLong3 <> outLong3 Or inLong4 <> outLong4 Then
runtest = -1
Exit Function
-End If
+End If
'mixed positional and named args with omitted args
Dim scode_paramNotFound As New com.sun.star.bridge.oleautomation.SCode
scode_paramNotFound.Value = &h80020004
obj.optional6(0, 0, 0, 0)
-'val1 and val3 will be DISP_E_PARAMNOTFOUND
+'val1 and val3 will be DISP_E_PARAMNOTFOUND
obj.optional6(, inLong2, val4:=inLong4)
-Dim outSCode1, outSCode2
+Dim outSCode1, outSCode2
obj.optional7(outSCode, outLong2, outSCode2, outLong4)
If outSCode.Value <> scode_paramNotFound.Value Or inLong2 <> outLong2 _
Or outSCode2.Value <> scode_paramNotFound.Value Or inLong4 <> outLong4 Then
runtest = -1
Exit Function
-End If
+End If
'mixed positional and named args with ommitted args as out -args
inLong = 1
@@ -579,7 +594,7 @@ If Not IsNull(oExplorer) Then
oExplorer.visible = true
oExplorer.Navigate2("http://www.openoffice.org")
Else
- MsgBox("Could not perform test with Internet Explorer!")
+ MsgBox("Could not perform test with Internet Explorer!")
End If
@@ -602,8 +617,6 @@ FOr counter = 0 To len1 - 1
equalArrays = false
Exit Function
End If
-Next
+Next
equalArrays = true
End Function
-
-
diff --git a/extensions/test/ole/StarBasic_OleClient/readme.txt b/extensions/test/ole/StarBasic_OleClient/readme.txt
index 2eca8aac3272..d3ee22237db6 100644
--- a/extensions/test/ole/StarBasic_OleClient/readme.txt
+++ b/extensions/test/ole/StarBasic_OleClient/readme.txt
@@ -1,6 +1,6 @@
-oleclient.bas is a StarBasic script that uses the
-"com.sun.star.bridge.OleObjectFactory" service to instantiate
-the ActiveX component "AxTestComponents.Basic" and calls
+oleclient.bas is a StarBasic script that uses the
+"com.sun.star.bridge.OleObjectFactory" service to instantiate
+the ActiveX component "AxTestComponents.Basic" and calls
functions on it.
------------------------------------------------------------
diff --git a/extensions/test/ole/VisualBasic/AssemblyInfo.vb b/extensions/test/ole/VisualBasic/AssemblyInfo.vb
index e663aa549ebe..c4b1d4ff5046 100644
--- a/extensions/test/ole/VisualBasic/AssemblyInfo.vb
+++ b/extensions/test/ole/VisualBasic/AssemblyInfo.vb
@@ -1,3 +1,21 @@
+'
+' This file is part of the LibreOffice project.
+'
+' This Source Code Form is subject to the terms of the Mozilla Public
+' License, v. 2.0. If a copy of the MPL was not distributed with this
+' file, You can obtain one at http://mozilla.org/MPL/2.0/.
+'
+' This file incorporates work covered by the following license notice:
+'
+' Licensed to the Apache Software Foundation (ASF) under one or more
+' contributor license agreements. See the NOTICE file distributed
+' with this work for additional information regarding copyright
+' ownership. The ASF licenses this file to you under the Apache
+' License, Version 2.0 (the "License"); you may not use this file
+' except in compliance with the License. You may obtain a copy of
+' the License at http://www.apache.org/licenses/LICENSE-2.0 .
+'
+
Imports System.Reflection
Imports System.Runtime.CompilerServices
Imports System.Runtime.InteropServices
diff --git a/extensions/test/ole/VisualBasic/Module1.vb b/extensions/test/ole/VisualBasic/Module1.vb
index 364af636585f..4295ee64eb28 100644
--- a/extensions/test/ole/VisualBasic/Module1.vb
+++ b/extensions/test/ole/VisualBasic/Module1.vb
@@ -1,7 +1,25 @@
+'
+' This file is part of the LibreOffice project.
+'
+' This Source Code Form is subject to the terms of the Mozilla Public
+' License, v. 2.0. If a copy of the MPL was not distributed with this
+' file, You can obtain one at http://mozilla.org/MPL/2.0/.
+'
+' This file incorporates work covered by the following license notice:
+'
+' Licensed to the Apache Software Foundation (ASF) under one or more
+' contributor license agreements. See the NOTICE file distributed
+' with this work for additional information regarding copyright
+' ownership. The ASF licenses this file to you under the Apache
+' License, Version 2.0 (the "License"); you may not use this file
+' except in compliance with the License. You may obtain a copy of
+' the License at http://www.apache.org/licenses/LICENSE-2.0 .
+'
+
Option Strict Off
Option Explicit On
Module Module1
-
+
Private objServiceManager As Object
Private objCoreReflection As Object
Private objOleTest As Object
@@ -35,7 +53,7 @@ Public Sub Main()
End Sub
Function testProps() As Object
-
+
Dim aToolbarItemProp1 As Object
aToolbarItemProp1 = objOleTest.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
Dim aToolbarItemProp2 As Object
@@ -43,19 +61,19 @@ Public Sub Main()
Dim aToolbarItemProp3 As Object
aToolbarItemProp3 = objOleTest.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
Dim properties(2) As Object
-
+
aToolbarItemProp1.Name = "CommandURL"
aToolbarItemProp1.Value = "macro:///standard.module1.TestIt"
aToolbarItemProp2.Name = "Label"
aToolbarItemProp2.Value = "Test"
aToolbarItemProp3.Name = "Type"
aToolbarItemProp3.Value = 0
-
+
properties(0) = aToolbarItemProp1
properties(1) = aToolbarItemProp2
properties(2) = aToolbarItemProp3
-
-
+
+
Dim dummy(-1) As Object
Dim Desktop As Object
@@ -64,25 +82,25 @@ Public Sub Main()
Doc = Desktop.loadComponentFromURL("private:factory/swriter", "_blank", 2, dummy)
Dim LayoutManager As Object
LayoutManager = Doc.currentController.Frame.LayoutManager
-
+
LayoutManager.createElement("private:resource/toolbar/user_toolbar1")
LayoutManager.showElement("private:resource/toolbar/user_toolbar1")
Dim ToolBar As Object
ToolBar = LayoutManager.getElement("private:resource/toolbar/user_toolbar1")
Dim settings As Object
settings = ToolBar.getSettings(True)
-
+
'the changes are here:
Dim aany As Object
aany = objServiceManager.Bridge_GetValueObject()
Call aany.Set("[]com.sun.star.beans.PropertyValue", properties)
Call settings.insertByIndex(0, aany)
Call ToolBar.setSettings(settings)
-
-
+
+
End Function
-
-
+
+
Function testBasics() As Object
' In Parameter, simple types
'============================================
@@ -105,8 +123,8 @@ Public Sub Main()
Dim outType, inType, retType As Object
Dim outXInterface, inXInterface, retXInterface As Object
Dim outXInterface2, inXInterface2, retXInterface2 As Object
-
-
+
+
Dim outVarByte As Object
Dim outVarBool As Object
Dim outVarShort As Object
@@ -119,7 +137,7 @@ Public Sub Main()
Dim outVarChar As Object
Dim outVarAny As Object
Dim outVarType As Object
-
+
inByte = 10
inBool = True
inShort = -10
@@ -137,7 +155,7 @@ Public Sub Main()
inType = objServiceManager.Bridge_CreateType("[]long")
inXInterface = objCoreReflection
inXInterface2 = objEventListener
-
+
retByte = objOleTest.in_methodByte(inByte)
retBool = objOleTest.in_methodBool(inBool)
retShort = objOleTest.in_methodShort(inShort)
@@ -345,12 +363,12 @@ Public Sub Main()
End Function
Function testHyper() As Object
-
+
'======================================================================
' Other Hyper tests
Dim emptyVar As Object
Dim retAny As Object
-
+
retAny = emptyVar
inHyper = CDec("9223372036854775807") 'highest positiv value of int64
retAny = objOleTest.in_methodAny(inHyper)
@@ -380,18 +398,18 @@ Public Sub Main()
If inHyper <> retAny Then
MsgBox(sError)
End If
-
+
'==============================================================================
-
-
+
+
End Function
Function testAny() As Object
Dim outVAr As Object
-
+
'Any test. We pass in an any as value object. If it is not correct converted
'then the target component throws a RuntimeException
Dim lengthInAny As Integer
-
+
lengthInAny = 10
Dim seqLongInAny(10) As Integer
For i = 0 To lengthInAny - 1
@@ -404,12 +422,12 @@ Public Sub Main()
Err.Clear()
On Error Resume Next
anySeqRet = objOleTest.other_methodAny(anySeqLong, "[]long")
-
+
If Err.Number <> 0 Then
MsgBox("error")
End If
End Function
-
+
Function testObjects() As Object
' COM obj
Dim outVAr As Object
@@ -425,7 +443,7 @@ Public Sub Main()
If ret = False Then
MsgBox("Error")
End If
-
+
'The returned object should be objEventListener, test it by calling disposing
' takes an IDispatch as Param ( EventObject).To provide a TypeMismatch
'we put in another IDispatch
@@ -434,7 +452,7 @@ Public Sub Main()
If retObj.disposingCalled = False Then
MsgBox("Error")
End If
-
+
' out param gives out the OleTestComponent
'objOleTest.testout_methodXInterface retObj
'outVAr = Null
@@ -443,21 +461,21 @@ Public Sub Main()
'If outVAr <> "I am a string in an any" Then
' MsgBox "error"
'End If
-
-
+
+
'in out
' in: UNO object, the same is expected as out param
' the function expects OleTest as parameter and sets a value
-
+
Dim myAny As Object
-
-
-
+
+
+
Dim objOleTest2 As Object
objOleTest2 = objServiceManager.createInstance("oletest.OleTest")
'Set a value
objOleTest2.AttrAny2 = "VBString "
-
+
'testinout_methodXInterfaces substitutes the argument with the object set in in_methodXInterface
objOleTest.AttrAny2 = "VBString this string was written in the UNO component to the inout pararmeter"
objOleTest.in_methodXInterface(objOleTest)
@@ -469,8 +487,8 @@ Public Sub Main()
If tmpVar <> "VBString this string was written in the UNO component to the inout pararmeter" Then
MsgBox("error")
End If
-
-
+
+
'create a struct
Dim structClass As Object
structClass = objCoreReflection.forName("oletest.SimpleStruct")
@@ -481,7 +499,7 @@ Public Sub Main()
If structInstance.message <> "Now we are in VB" Then
MsgBox("error")
End If
-
+
'put the struct into OleTest. The same struct will be returned with an added String
Dim structRet As Object
structRet = objOleTest.in_methodStruct(structInstance)
@@ -489,8 +507,8 @@ Public Sub Main()
If structRet.message <> "Now we are in VBThis string was set in OleTest" Then
MsgBox("error")
End If
-
-
+
+
End Function
Function testGetStruct() As Object
'Bridge_GetStruct
@@ -501,14 +519,14 @@ Public Sub Main()
'objDocument.dispose()
objDocument.close(True)
End Function
-
+
Function testImplementedInterfaces() As Object
'Bridge_ImplementedInterfaces
'=================================================
' call an UNO function that takes an XEventListener interface
'We provide a COM implementation (IDispatch) as EventListener
'Open a new empty writer document
-
+
Dim objDocument As Object
objDocument = createHiddenDocument()
objEventListener.resetDisposing()
@@ -518,7 +536,7 @@ Public Sub Main()
MsgBox("Error")
End If
End Function
-
+
Function testGetValueObject() As Object
'Bridge_GetValueObject
'==================================================
@@ -529,13 +547,13 @@ Public Sub Main()
For countvar = 0 To 9
arrByte(countvar) = countvar
Next countvar
-
+
objVal.Set("[]byte", arrByte)
Dim ret As Object
ret = 0
ret = objOleTest.methodByte(objVal)
'Test if ret is the same array
-
+
Dim key As Object
key = 0
For Each key In ret
@@ -544,7 +562,7 @@ Public Sub Main()
End If
Debug.Print(ret(key))
Next key
-
+
Dim outByte As Byte
outByte = 77
Dim retByte As Byte
@@ -553,14 +571,14 @@ Public Sub Main()
objOleTest.testinout_methodByte(objVal)
objVal.InitInOutParam("byte", retByte)
objOleTest.testinout_methodByte(objVal)
-
+
ret = 0
ret = objVal.Get()
Debug.Print(ret)
If ret <> outByte Then
MsgBox("error")
End If
-
+
objVal.InitOutParam()
Dim inChar As Short
inChar = 65
@@ -572,9 +590,9 @@ Public Sub Main()
If ret <> inChar Then
MsgBox("error")
End If
-
+
End Function
-
+
Function testArrays() As Object
'Arrays
'========================================
@@ -587,11 +605,11 @@ Public Sub Main()
arrObj(countvar) = CreateObject("VBasicEventListener.VBEventListener")
arrObj(countvar).setQuiet(True)
Next
-
+
'Arrays always contain VARIANTS
Dim seq() As Object
seq = objOleTest.methodLong(arrLong)
-
+
For countvar = 0 To 2
Debug.Print(CStr(seq(countvar)))
If arrLong(countvar) <> seq(countvar) Then
@@ -607,14 +625,14 @@ Public Sub Main()
MsgBox("Error")
End If
Next
-
+
'Array containing interfaces (element type is VT_DISPATCH)
Dim arEventListener(2) As Object
For countvar = 0 To 2
arEventListener(countvar) = CreateObject("VBasicEventListener.VBEventListener")
arEventListener(countvar).setQuiet(True)
Next
-
+
'The function calls disposing on the listeners
seq = objOleTest.methodXEventListeners(arEventListener)
Dim count As Object
@@ -635,7 +653,7 @@ Public Sub Main()
MsgBox("Error")
End If
Next
-
+
'Variant containing Array containing interfaces (element type is VT_VARIANT which contains VT_DISPATCH
Dim arEventListener3(2) As Object
Dim var As Object
@@ -651,10 +669,10 @@ Public Sub Main()
MsgBox("Error")
End If
Next
-
+
'Get a sequence created in UNO, out param is Variant ( VT_BYREF|VT_VARIANT)
Dim seqX As Object
-
+
objOleTest.testout_methodSequence(seqX)
Dim key As Object
For Each key In seqX
@@ -666,11 +684,11 @@ Public Sub Main()
'Get a sequence created in UNO, out param is array Variant ( VT_BYREF|VT_VARIANT|VT_ARRAY)
Dim seqX2() As Object
objOleTest.testout_methodSequence(seqX2)
-
+
For Each key In seqX2
Debug.Print(CStr(seqX2(key)))
Next key
-
+
'pass it to UNO and get it back
Dim seq7() As Object
seq7 = objOleTest.methodLong(seqX)
@@ -681,7 +699,7 @@ Public Sub Main()
MsgBox("error")
End If
Next key2
-
+
'array with starting index != 0
Dim seqIndex(2) As Integer
Dim seq8() As Object
@@ -699,17 +717,17 @@ Public Sub Main()
If longVal1 <> CInt(seq8(1)) And longVal2 <> CInt(seq8(2)) Then
MsgBox("error")
End If
-
+
'in out Array
' arrLong is Long Array
Dim inoutVar(2) As Object
-
+
For countvar = 0 To 2
inoutVar(countvar) = countvar + 10
Next
-
+
objOleTest.testinout_methodSequence(inoutVar)
-
+
countvar = 0
For countvar = 0 To 2
Debug.Print(CStr(inoutVar(countvar)))
@@ -717,7 +735,7 @@ Public Sub Main()
MsgBox("error")
End If
Next
-
+
'Multidimensional array
'============================================================
' Sequence< Sequence<long> > methodSequence( Sequence< Sequence long> >)
@@ -729,10 +747,10 @@ Public Sub Main()
mulAr(j, i) = i * 10 + j
Next j
Next i
-
+
Dim resMul As Object
resMul = objOleTest.methodSequence(mulAr)
-
+
Dim countDim1 As Integer
Dim countDim2 As Integer
Dim arr As Object
@@ -746,7 +764,7 @@ Public Sub Main()
Next countDim1
Next countDim2
IsArray(resMul)
-
+
'Array of VARIANTs containing arrays
Dim mulAr2(1) As Object
Dim arr2(9) As Integer
@@ -757,7 +775,7 @@ Public Sub Main()
Next j
mulAr2(i) = VB6.CopyArray(arr2)
Next i
-
+
resMul = 0
resMul = objOleTest.methodSequence(mulAr2)
arr = 0
@@ -772,7 +790,7 @@ Public Sub Main()
End If
Next countDim1
Next countDim2
-
+
'Array containing interfaces (element type is VT_DISPATCH)
Dim arArEventListener(1, 2) As Object
For i = 0 To 1
@@ -790,7 +808,7 @@ Public Sub Main()
End If
Next
Next
-
+
'Array containing interfaces (element type is VT_VARIANT containing VT_DISPATCH)
Dim arArEventListener2(1, 2) As Object
For i = 0 To 1
@@ -808,7 +826,7 @@ Public Sub Main()
End If
Next
Next
-
+
' SAFEARRAY of VARIANTS containing SAFEARRAYs
'The ultimate element type is VT_DISPATCH ( XEventListener)
Dim arEventListener4(1) As Object
@@ -829,9 +847,9 @@ Public Sub Main()
MsgBox("Error")
End If
Next
-
+
End Function
-
+
Function createHiddenDocument() As Object
'Try to create a hidden document
Dim objPropValue As Object
@@ -840,7 +858,7 @@ Public Sub Main()
objPropValue.Name = "Hidden"
objPropValue.Handle = -1
objPropValue.Value = True
-
+
'create a hidden document
'Create the Desktop
Dim objDesktop As Object
diff --git a/extensions/test/ole/callUnoToJava.htm b/extensions/test/ole/callUnoToJava.htm
index fdc690d7ebfb..481835e9897d 100644
--- a/extensions/test/ole/callUnoToJava.htm
+++ b/extensions/test/ole/callUnoToJava.htm
@@ -1,3 +1,20 @@
+<!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Developer Studio">
@@ -8,11 +25,11 @@
<script language="JScript">
function callOleTest( id)
-{
+{
var factory= new ActiveXObject("com.sun.star.ServiceManager");
var oletest= factory.createInstance("oletest.OleTest");
// alert(oletest);
-
+
switch( id)
{
case 1: // Test simple call of JScript object function from UNO
@@ -144,7 +161,6 @@ function callOleTest( id)
function XCallback_Impl()
{
-
// XCallback
this._environment= "JScript";
@@ -246,7 +262,7 @@ function XCallback_Impl_outAny( outVal)
function XCallback_Impl_outBool( outVal)
{
outVal[0]= true;
-}
+}
function XCallback_Impl_outChar( outVal)
{
outVal[0]= "a";
@@ -534,5 +550,3 @@ Other tests with inout parameters <br>
</body>
</html>
-
-
diff --git a/extensions/test/ole/cpnt/cpnt.cxx b/extensions/test/ole/cpnt/cpnt.cxx
index a47f18eebe56..8079d76a58f4 100644
--- a/extensions/test/ole/cpnt/cpnt.cxx
+++ b/extensions/test/ole/cpnt/cpnt.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <windows.h>
#include <atlbase.h>
diff --git a/extensions/test/ole/cpnt/makefile.mk b/extensions/test/ole/cpnt/makefile.mk
index 65601edd9444..ee8a629563aa 100644
--- a/extensions/test/ole/cpnt/makefile.mk
+++ b/extensions/test/ole/cpnt/makefile.mk
@@ -1,29 +1,20 @@
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
PRJ=..$/..$/..
PRJNAME= extensions
diff --git a/extensions/test/ole/cpnt/readme.txt b/extensions/test/ole/cpnt/readme.txt
index 46d525efb285..b615093069ae 100644
--- a/extensions/test/ole/cpnt/readme.txt
+++ b/extensions/test/ole/cpnt/readme.txt
@@ -8,7 +8,7 @@ The uno types are also build in this folder. The idl file is in ..\idl. The
types rdb is in wntmscixx.pro\bin\oletest.rdb
The service is used by:
-OleTest.htm
+OleTest.htm
JScriptNewStyle.htm
ScriptTest.html
diff --git a/extensions/test/ole/cppToUno/readme.txt b/extensions/test/ole/cppToUno/readme.txt
index 1a57d8524451..ae0189818fe1 100644
--- a/extensions/test/ole/cppToUno/readme.txt
+++ b/extensions/test/ole/cppToUno/readme.txt
@@ -6,4 +6,3 @@ must be in the same directory as the office dlls and it must be registered
at the applicat.rdb. Also the type information must have been merged with
applicat.rdb. The program requires an office to be present. Put testcppuno
into the Office/program folder and run it there.
- \ No newline at end of file
diff --git a/extensions/test/ole/cppToUno/testcppuno.cxx b/extensions/test/ole/cppToUno/testcppuno.cxx
index 85786b1cf8fe..a12e70751364 100644
--- a/extensions/test/ole/cppToUno/testcppuno.cxx
+++ b/extensions/test/ole/cppToUno/testcppuno.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#pragma warning(disable: 4917)
diff --git a/extensions/test/ole/cpptest/cpptest.cxx b/extensions/test/ole/cpptest/cpptest.cxx
index 981c3f08e50d..b711c401e3a2 100644
--- a/extensions/test/ole/cpptest/cpptest.cxx
+++ b/extensions/test/ole/cpptest/cpptest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
// cpptest.cpp : Defines the entry point for the console application.
//
diff --git a/extensions/test/ole/cpptest/readme.txt b/extensions/test/ole/cpptest/readme.txt
index 4af8cfee39af..0fd339280854 100644
--- a/extensions/test/ole/cpptest/readme.txt
+++ b/extensions/test/ole/cpptest/readme.txt
@@ -1,6 +1,4 @@
Creates the com.sun.star.ServiceManager with CoCreateInstance in a cpp program.
This little program can be used as starting point for further tests.
-
-It needs uwinapi.dll, which is in the program folder of OOo (URE\bin in
-OOo 3.0)
+It needs uwinapi.dll, which is in the program folder of OOo (URE\bin in OOo 3.0)
diff --git a/extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.rc b/extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.rc
index 32b4852338b5..007ca92ffcd7 100644
--- a/extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.rc
+++ b/extensions/test/ole/unoTocomCalls/XCallback_Impl/XCallback_Impl.rc
@@ -1,29 +1,20 @@
-/*************************************************************************
-*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * This file is part of OpenOffice.org.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
-**************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "resource.h"
diff --git a/extensions/test/ole/unoTocomCalls/readme.txt b/extensions/test/ole/unoTocomCalls/readme.txt
index 40841cb0e8f6..feb46b11e355 100644
--- a/extensions/test/ole/unoTocomCalls/readme.txt
+++ b/extensions/test/ole/unoTocomCalls/readme.txt
@@ -3,7 +3,7 @@ creates a dll containing the ActiveX components
XCallback_Impl.Simple and XCallback_Impl.Callback
Callback implements functions defined in oletest.XCallback
and Simple implements functions defined in oletest.XSimple.
-These interfaces are build in extensions/test/ole/cpnt
+These interfaces are build in extensions/test/ole/cpnt
The projects in unoToComCalls test the functionality of COM
and JScript object which implement UNO interfaces.
diff --git a/extensions/test/pgp/makefile.mk b/extensions/test/pgp/makefile.mk
index 96b7883e9e7a..d5805fbe159f 100644
--- a/extensions/test/pgp/makefile.mk
+++ b/extensions/test/pgp/makefile.mk
@@ -1,29 +1,20 @@
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
PRJ=..$/..
diff --git a/extensions/test/pgp/readme.txt b/extensions/test/pgp/readme.txt
index 899e3377fe65..bb5943474bf4 100644
--- a/extensions/test/pgp/readme.txt
+++ b/extensions/test/pgp/readme.txt
@@ -23,7 +23,7 @@ Please note the semicolons!
Office/user/config/javarc
under SystemClasspath.
-There is a bug with jdk1.1.8, therfore use 1.2 instead.
+There is a bug with jdk1.1.8, therfore use 1.2 instead.
The TestPGP is called without ;iiop; :
diff --git a/extensions/test/stm/datatest.cxx b/extensions/test/stm/datatest.cxx
index b945ee4160a9..ce910869d185 100644
--- a/extensions/test/stm/datatest.cxx
+++ b/extensions/test/stm/datatest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <smart/com/sun/star/test/XSimpleTest.hxx>
#include <smart/com/sun/star/io/XObjectOutputStream.hxx>
diff --git a/extensions/test/stm/makefile.mk b/extensions/test/stm/makefile.mk
index ac31f76fb805..6a61cb3e4e0a 100644
--- a/extensions/test/stm/makefile.mk
+++ b/extensions/test/stm/makefile.mk
@@ -1,29 +1,20 @@
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
PRJ=..$/..
PRJNAME=extensions
diff --git a/extensions/test/stm/marktest.cxx b/extensions/test/stm/marktest.cxx
index e27f9aa2b4c7..fbfafa0bac90 100644
--- a/extensions/test/stm/marktest.cxx
+++ b/extensions/test/stm/marktest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <smart/com/sun/star/test/XSimpleTest.hxx>
#include <smart/com/sun/star/io/XMarkableStream.hxx>
diff --git a/extensions/test/stm/pipetest.cxx b/extensions/test/stm/pipetest.cxx
index b888b066f065..563cbda19074 100644
--- a/extensions/test/stm/pipetest.cxx
+++ b/extensions/test/stm/pipetest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <smart/com/sun/star/test/XSimpleTest.hxx>
#include <smart/com/sun/star/io/XOutputStream.hxx>
diff --git a/extensions/test/stm/testfactreg.cxx b/extensions/test/stm/testfactreg.cxx
index 88bbb8146988..336476d44858 100644
--- a/extensions/test/stm/testfactreg.cxx
+++ b/extensions/test/stm/testfactreg.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <string.h>
diff --git a/extensions/workben/makefile.mk b/extensions/workben/makefile.mk
index d62100ac26c5..aec365fcd8c8 100644
--- a/extensions/workben/makefile.mk
+++ b/extensions/workben/makefile.mk
@@ -1,29 +1,20 @@
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
+# This file is part of the LibreOffice project.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# This file is part of OpenOffice.org.
+# This file incorporates work covered by the following license notice:
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
PRJ=..
diff --git a/extensions/workben/pythonautotest.cxx b/extensions/workben/pythonautotest.cxx
index a787791888e7..df3f7102fd9b 100644
--- a/extensions/workben/pythonautotest.cxx
+++ b/extensions/workben/pythonautotest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <stdio.h>
#include <stardiv/uno/repos/implementationregistration.hxx>
diff --git a/extensions/workben/pythontest.cxx b/extensions/workben/pythontest.cxx
index d5eb3154cdd0..71639c243991 100644
--- a/extensions/workben/pythontest.cxx
+++ b/extensions/workben/pythontest.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <stdio.h>
diff --git a/extensions/workben/testcomponent.cxx b/extensions/workben/testcomponent.cxx
index a8e08e15a48a..9cd7dd43515a 100644
--- a/extensions/workben/testcomponent.cxx
+++ b/extensions/workben/testcomponent.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
//------------------------------------------------------
diff --git a/extensions/workben/testframecontrol.cxx b/extensions/workben/testframecontrol.cxx
index 758738e4d533..5f5b72037529 100644
--- a/extensions/workben/testframecontrol.cxx
+++ b/extensions/workben/testframecontrol.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/wrkwin.hxx>
diff --git a/extensions/workben/testpgp.cxx b/extensions/workben/testpgp.cxx
index 5dad9bea661e..b9fe1f877566 100644
--- a/extensions/workben/testpgp.cxx
+++ b/extensions/workben/testpgp.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <sal/types.h>
#ifndef _RTL_WSTRING_
diff --git a/extensions/workben/testresource.cxx b/extensions/workben/testresource.cxx
index ea06fed88e1b..152d380839c5 100644
--- a/extensions/workben/testresource.cxx
+++ b/extensions/workben/testresource.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <smart/com/sun/star/registry/XImplementationRegistration.hxx>
diff --git a/external/glibc-2.1.3.patch b/external/glibc-2.1.3.patch
index 49f570d4e456..8d23c95cd969 100644
--- a/external/glibc-2.1.3.patch
+++ b/external/glibc-2.1.3.patch
@@ -75,7 +75,7 @@
int __long_only);
--- misc/glibc-2.1.3/posix/makefile.mk Mon Mar 31 09:43:50 2008
+++ misc/build/glibc-2.1.3/posix/makefile.mk Mon Mar 31 09:43:38 2008
-@@ -1 +1,70 @@
+@@ -1 +1,71 @@
-dummy
+#*************************************************************************
+#
@@ -113,6 +113,7 @@
+EXTERNAL_WARNINGS_NOT_ERRORS := TRUE
+
+SOLARINC+=-I..
++UWINAPILIB=
+
+# --- Settings -----------------------------------------------------
+
diff --git a/external/mingw-dlls/makefile.mk b/external/mingw-dlls/makefile.mk
index 8a7b3c5e18e6..57381fa878ca 100644
--- a/external/mingw-dlls/makefile.mk
+++ b/external/mingw-dlls/makefile.mk
@@ -51,6 +51,8 @@ MINGW_DLLS:= \
$(MINGW_FONTCONFIG_DLL) \
$(MINGW_FREETYPE_DLL) \
$(MINGW_GCRYPT_DLL) \
+ $(MINGW_GLIB_DLL) \
+ $(MINGW_GMODULE_DLL) \
$(MINGW_GNUTLS_DLL) \
$(MINGW_GPG_ERROR_DLL) \
$(MINGW_GRAPHITE2_DLL) \
@@ -65,10 +67,10 @@ MINGW_DLLS:= \
$(MINGW_JPEG_DLL) \
$(MINGW_LCMS2_DLL) \
$(MINGW_LIBEXSLT_DLL) \
+ $(MINGW_LIBLANGTAG_DLL) \
$(MINGW_LIBXML_DLL) \
$(MINGW_LIBXSLT_DLL) \
$(MINGW_LPSOLVE_DLL) \
- $(MINGW_MINIZIP_DLL) \
$(MINGW_MYTHES_DLL) \
$(MINGW_NEON_DLL) \
$(MINGW_NSPR4_DLL) \
@@ -85,6 +87,7 @@ MINGW_DLLS:= \
$(MINGW_READLINE_DLL) \
$(MINGW_REDLAND_DLL) \
$(MINGW_SQLITE3_DLL) \
+ $(MINGW_SMIME3_DLL) \
$(MINGW_SSH2_DLL) \
$(MINGW_SSL3_DLL) \
$(MINGW_SSL_DLL) \
diff --git a/extras/ExternalPackage_extra_fonts.mk b/extras/ExternalPackage_extra_fonts.mk
new file mode 100644
index 000000000000..638af351680f
--- /dev/null
+++ b/extras/ExternalPackage_extra_fonts.mk
@@ -0,0 +1,187 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,extras_extra_fonts,fonts-pack))
+
+$(eval $(call gb_ExternalPackage_use_unpacked,extras_extra_fonts,fonts-pack))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,extras_extra_fonts,pck,\
+ decorative/BETSY2.ttf \
+ decorative/Berylibi.ttf \
+ decorative/Beryliub.ttf \
+ decorative/Beryliui.ttf \
+ decorative/Berylium.ttf \
+ decorative/CHOPS___.TTF \
+ decorative/DTPDingbats.ttf \
+ decorative/GenAI102.TTF \
+ decorative/GenAR102.TTF \
+ decorative/GenI102.TTF \
+ decorative/GenR102.TTF \
+ decorative/Justus-Bold.ttf \
+ decorative/Justus-Italic.ttf \
+ decorative/Justus-ItalicOldstyle.ttf \
+ decorative/Justus-Oldstyle.ttf \
+ decorative/Justus-Roman.ttf \
+ decorative/Justus-Versalitas.ttf \
+ decorative/MgOpenCanonicaBold.ttf \
+ decorative/MgOpenCanonicaBoldItalic.ttf \
+ decorative/MgOpenCanonicaItalic.ttf \
+ decorative/MgOpenCanonicaRegular.ttf \
+ decorative/NEUROPOL.ttf \
+ decorative/SAPPM___.ttf \
+ decorative/Tuffy.ttf \
+ decorative/Tuffy_Bold.ttf \
+ decorative/Tuffy_Bold_Italic.ttf \
+ decorative/Tuffy_Italic.ttf \
+ decorative/Verina_Sans_Bold.otf \
+ decorative/Verina_Sans_Bold_Oblique.otf \
+ decorative/Verina_Sans_Mono.otf \
+ decorative/Verina_Sans_Mono_Bold.otf \
+ decorative/Verina_Sans_Mono_Bold_Oblique.otf \
+ decorative/Verina_Sans_Mono_Oblique.otf \
+ decorative/Verina_Sans_Oblique.otf \
+ decorative/Verina_Sans_Roman.otf \
+ decorative/Verina_Serif.otf \
+ decorative/Verina_Serif_Bold.otf \
+ decorative/a010013l.ttf \
+ decorative/a010015l.ttf \
+ decorative/a010033l.ttf \
+ decorative/a010035l.ttf \
+ decorative/airmole.ttf \
+ decorative/airmolea.ttf \
+ decorative/airmoleq.ttf \
+ decorative/airmoles.ttf \
+ decorative/astronbi.ttf \
+ decorative/astronbo.ttf \
+ decorative/astronbv.ttf \
+ decorative/astronbw.ttf \
+ decorative/b018012l.ttf \
+ decorative/b018015l.ttf \
+ decorative/b018032l.ttf \
+ decorative/b018035l.ttf \
+ decorative/baveuse.ttf \
+ decorative/bluebold.ttf \
+ decorative/bluecond.ttf \
+ decorative/bluehigh.ttf \
+ decorative/bluehigl.ttf \
+ decorative/bullpen3.ttf \
+ decorative/bullpen_.ttf \
+ decorative/bullpeni.ttf \
+ decorative/c059013l.ttf \
+ decorative/c059016l.ttf \
+ decorative/c059033l.ttf \
+ decorative/c059036l.ttf \
+ decorative/colourba.ttf \
+ decorative/colourbb.ttf \
+ decorative/counters.ttf \
+ decorative/creditva.ttf \
+ decorative/creditvb.ttf \
+ decorative/creditvi.ttf \
+ decorative/creditvz.ttf \
+ decorative/d050000l.ttf \
+ decorative/edmundis.ttf \
+ decorative/edmunds.ttf \
+ decorative/engeboit.ttf \
+ decorative/engebold.ttf \
+ decorative/engeexbi.ttf \
+ decorative/engeexbo.ttf \
+ decorative/engeexit.ttf \
+ decorative/engeexpa.ttf \
+ decorative/engeital.ttf \
+ decorative/engeregu.ttf \
+ decorative/goodfisb.ttf \
+ decorative/goodfisc.ttf \
+ decorative/goodfish.ttf \
+ decorative/goodfisi.ttf \
+ decorative/guanine_.ttf \
+ decorative/gunplay.ttf \
+ decorative/kirsty__.ttf \
+ decorative/kirsty_b.ttf \
+ decorative/kirsty_i.ttf \
+ decorative/kirstybi.ttf \
+ decorative/kirstyin.ttf \
+ decorative/letstracebasic.ttf \
+ decorative/letstraceruled.ttf \
+ decorative/luximb.ttf \
+ decorative/luximbi.ttf \
+ decorative/luximr.ttf \
+ decorative/luximri.ttf \
+ decorative/luxirb.ttf \
+ decorative/luxirbi.ttf \
+ decorative/luxirr.ttf \
+ decorative/luxirri.ttf \
+ decorative/luxisb.ttf \
+ decorative/luxisbi.ttf \
+ decorative/luxisr.ttf \
+ decorative/luxisri.ttf \
+ decorative/mufferaw.ttf \
+ decorative/n019003l.ttf \
+ decorative/n019004l.ttf \
+ decorative/n019023l.ttf \
+ decorative/n019024l.ttf \
+ decorative/n019043l.ttf \
+ decorative/n019044l.ttf \
+ decorative/n019063l.ttf \
+ decorative/n019064l.ttf \
+ decorative/n021003l.ttf \
+ decorative/n021004l.ttf \
+ decorative/n021023l.ttf \
+ decorative/n021024l.ttf \
+ decorative/n022003l.ttf \
+ decorative/n022004l.ttf \
+ decorative/n022023l.ttf \
+ decorative/n022024l.ttf \
+ decorative/nasaliza.ttf \
+ decorative/numberpi.ttf \
+ decorative/p052003l.ttf \
+ decorative/p052004l.ttf \
+ decorative/p052023l.ttf \
+ decorative/p052024l.ttf \
+ decorative/pricedow.ttf \
+ decorative/pupcat__.ttf \
+ decorative/rina.ttf \
+ decorative/s050000l.ttf \
+ decorative/sandoval.ttf \
+ decorative/screenge.ttf \
+ decorative/steelfib.ttf \
+ decorative/steelfis.ttf \
+ decorative/steelout.ttf \
+ decorative/strenu3d.ttf \
+ decorative/strenuou.ttf \
+ decorative/subpear_.ttf \
+ decorative/teen____.ttf \
+ decorative/teenbdit.ttf \
+ decorative/teenbold.ttf \
+ decorative/teenital.ttf \
+ decorative/teenlita.ttf \
+ decorative/teenlite.ttf \
+ decorative/typoderm.ttf \
+ decorative/vahika_.ttf \
+ decorative/vahikab.ttf \
+ decorative/vahikac.ttf \
+ decorative/vahikai.ttf \
+ decorative/vectroid.ttf \
+ decorative/velvenda.ttf \
+ decorative/velvendc.ttf \
+ decorative/vibroceb.ttf \
+ decorative/vibrocei.ttf \
+ decorative/vibrocen.ttf \
+ decorative/vibrocex.ttf \
+ decorative/wintermu.ttf \
+ decorative/youregoi.ttf \
+ decorative/youregon.ttf \
+ decorative/z003034l.ttf \
+ decorative/zekton__.ttf \
+ decorative/zektonbi.ttf \
+ decorative/zektonbo.ttf \
+ decorative/zektonit.ttf \
+ decorative/zorque.ttf \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/extras/Module_extras.mk b/extras/Module_extras.mk
index 50c46e5eae27..eb5a07dd6da2 100644
--- a/extras/Module_extras.mk
+++ b/extras/Module_extras.mk
@@ -50,7 +50,7 @@ endif
ifeq ($(WITH_EXTRA_FONT),YES)
$(eval $(call gb_Module_add_targets,extras,\
- Package_extra_fonts \
+ ExternalPackage_extra_fonts \
UnpackedTarball_fonts_pack \
))
endif
diff --git a/extras/Package_extra_fonts.mk b/extras/Package_extra_fonts.mk
deleted file mode 100644
index f37d4e79e968..000000000000
--- a/extras/Package_extra_fonts.mk
+++ /dev/null
@@ -1,187 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-$(eval $(call gb_Package_Package,extras_extra_fonts,$(call gb_UnpackedTarball_get_dir,fonts-pack)/decorative))
-
-$(eval $(call gb_Package_use_unpacked,extras_extra_fonts,fonts-pack))
-
-$(eval $(call gb_Package_add_files,extras_extra_fonts,pck,\
- BETSY2.ttf \
- Berylibi.ttf \
- Beryliub.ttf \
- Beryliui.ttf \
- Berylium.ttf \
- CHOPS___.TTF \
- DTPDingbats.ttf \
- GenAI102.TTF \
- GenAR102.TTF \
- GenI102.TTF \
- GenR102.TTF \
- Justus-Bold.ttf \
- Justus-Italic.ttf \
- Justus-ItalicOldstyle.ttf \
- Justus-Oldstyle.ttf \
- Justus-Roman.ttf \
- Justus-Versalitas.ttf \
- MgOpenCanonicaBold.ttf \
- MgOpenCanonicaBoldItalic.ttf \
- MgOpenCanonicaItalic.ttf \
- MgOpenCanonicaRegular.ttf \
- NEUROPOL.ttf \
- SAPPM___.ttf \
- Tuffy.ttf \
- Tuffy_Bold.ttf \
- Tuffy_Bold_Italic.ttf \
- Tuffy_Italic.ttf \
- Verina_Sans_Bold.otf \
- Verina_Sans_Bold_Oblique.otf \
- Verina_Sans_Mono.otf \
- Verina_Sans_Mono_Bold.otf \
- Verina_Sans_Mono_Bold_Oblique.otf \
- Verina_Sans_Mono_Oblique.otf \
- Verina_Sans_Oblique.otf \
- Verina_Sans_Roman.otf \
- Verina_Serif.otf \
- Verina_Serif_Bold.otf \
- a010013l.ttf \
- a010015l.ttf \
- a010033l.ttf \
- a010035l.ttf \
- airmole.ttf \
- airmolea.ttf \
- airmoleq.ttf \
- airmoles.ttf \
- astronbi.ttf \
- astronbo.ttf \
- astronbv.ttf \
- astronbw.ttf \
- b018012l.ttf \
- b018015l.ttf \
- b018032l.ttf \
- b018035l.ttf \
- baveuse.ttf \
- bluebold.ttf \
- bluecond.ttf \
- bluehigh.ttf \
- bluehigl.ttf \
- bullpen3.ttf \
- bullpen_.ttf \
- bullpeni.ttf \
- c059013l.ttf \
- c059016l.ttf \
- c059033l.ttf \
- c059036l.ttf \
- colourba.ttf \
- colourbb.ttf \
- counters.ttf \
- creditva.ttf \
- creditvb.ttf \
- creditvi.ttf \
- creditvz.ttf \
- d050000l.ttf \
- edmundis.ttf \
- edmunds.ttf \
- engeboit.ttf \
- engebold.ttf \
- engeexbi.ttf \
- engeexbo.ttf \
- engeexit.ttf \
- engeexpa.ttf \
- engeital.ttf \
- engeregu.ttf \
- goodfisb.ttf \
- goodfisc.ttf \
- goodfish.ttf \
- goodfisi.ttf \
- guanine_.ttf \
- gunplay.ttf \
- kirsty__.ttf \
- kirsty_b.ttf \
- kirsty_i.ttf \
- kirstybi.ttf \
- kirstyin.ttf \
- letstracebasic.ttf \
- letstraceruled.ttf \
- luximb.ttf \
- luximbi.ttf \
- luximr.ttf \
- luximri.ttf \
- luxirb.ttf \
- luxirbi.ttf \
- luxirr.ttf \
- luxirri.ttf \
- luxisb.ttf \
- luxisbi.ttf \
- luxisr.ttf \
- luxisri.ttf \
- mufferaw.ttf \
- n019003l.ttf \
- n019004l.ttf \
- n019023l.ttf \
- n019024l.ttf \
- n019043l.ttf \
- n019044l.ttf \
- n019063l.ttf \
- n019064l.ttf \
- n021003l.ttf \
- n021004l.ttf \
- n021023l.ttf \
- n021024l.ttf \
- n022003l.ttf \
- n022004l.ttf \
- n022023l.ttf \
- n022024l.ttf \
- nasaliza.ttf \
- numberpi.ttf \
- p052003l.ttf \
- p052004l.ttf \
- p052023l.ttf \
- p052024l.ttf \
- pricedow.ttf \
- pupcat__.ttf \
- rina.ttf \
- s050000l.ttf \
- sandoval.ttf \
- screenge.ttf \
- steelfib.ttf \
- steelfis.ttf \
- steelout.ttf \
- strenu3d.ttf \
- strenuou.ttf \
- subpear_.ttf \
- teen____.ttf \
- teenbdit.ttf \
- teenbold.ttf \
- teenital.ttf \
- teenlita.ttf \
- teenlite.ttf \
- typoderm.ttf \
- vahika_.ttf \
- vahikab.ttf \
- vahikac.ttf \
- vahikai.ttf \
- vectroid.ttf \
- velvenda.ttf \
- velvendc.ttf \
- vibroceb.ttf \
- vibrocei.ttf \
- vibrocen.ttf \
- vibrocex.ttf \
- wintermu.ttf \
- youregoi.ttf \
- youregon.ttf \
- z003034l.ttf \
- zekton__.ttf \
- zektonbi.ttf \
- zektonbo.ttf \
- zektonit.ttf \
- zorque.ttf \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/extras/source/palettes/standard.soc b/extras/source/palettes/standard.soc
index 6361f7bfa1e5..4981c86000fd 100644
--- a/extras/source/palettes/standard.soc
+++ b/extras/source/palettes/standard.soc
@@ -100,4 +100,6 @@
<draw:color draw:name="Chart 10" draw:color="#ff950e"/>
<draw:color draw:name="Chart 11" draw:color="#c5000b"/>
<draw:color draw:name="Chart 12" draw:color="#0084d1"/>
+ <draw:color draw:name="Tango: Sky Blue 1" draw:color="#729fcf" />
+ <draw:color draw:name="Tango: Sky Blue 2" draw:color="#3465a4" />
</office:color-table>
diff --git a/fileaccess/prj/build.lst b/fileaccess/prj/build.lst
index 41db40625d56..470459930a43 100644
--- a/fileaccess/prj/build.lst
+++ b/fileaccess/prj/build.lst
@@ -1,2 +1,2 @@
-fa fileaccess : comphelper unotools DESKTOP:rdbmaker tools ucbhelper LIBXSLT:libxslt NULL
+fa fileaccess : comphelper unotools tools ucbhelper LIBXSLT:libxslt NULL
fa fileaccess\prj nmake - all fa_prj NULL
diff --git a/filter/Configuration_filter.mk b/filter/Configuration_filter.mk
index 05c14fc189d3..5b41bdac1b3e 100644
--- a/filter/Configuration_filter.mk
+++ b/filter/Configuration_filter.mk
@@ -929,193 +929,4 @@ $(call filter_Configuration_add_filters,fcfg_langpack,fcfg_xslt_filters.xcu,filt
UOF_presentation \
)
-### binfilter ###
-
-ifneq ($(WITH_BINFILTER),NO)
-
-# fcfg_writer_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_writer_bf_types.xcu,filter/source/config/fragments/types,\
- writer_StarWriter_10 \
- writer_StarWriter_20 \
- writer_StarWriter_30 \
- writer_StarWriter_30_VorlageTemplate \
- writer_StarWriter_40 \
- writer_StarWriter_40_VorlageTemplate \
- writer_StarWriter_50 \
- writer_StarWriter_50_VorlageTemplate \
- writer_StarWriter_DOS \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_writer_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarWriter_1_0 \
- StarWriter_2_0 \
- StarWriter_3_0 \
- StarWriter_3_0_Vorlage_Template \
- StarWriter_4_0 \
- StarWriter_4_0_Vorlage_Template \
- StarWriter_5_0 \
- StarWriter_5_0_Vorlage_Template \
- StarWriter_DOS \
-)
-
-$(call filter_Configuration_add_ui_filters,fcfg_langpack,filter/source/config/fragments/filters,\
- StarWriter_3_0_Vorlage_Template_ui \
- StarWriter_4_0_Vorlage_Template_ui \
- StarWriter_5_0_Vorlage_Template_ui \
-)
-
-# fcfg_web_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_web_bf_types.xcu,filter/source/config/fragments/types,\
- writer_StarWriter_30 \
- writer_StarWriter_40 \
- writer_StarWriter_50 \
- writer_web_StarWriterWeb_40_VorlageTemplate \
- writer_web_StarWriterWeb_50_VorlageTemplate \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_web_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarWriter_3_0__StarWriter_Web_ \
- StarWriter_4_0__StarWriter_Web_ \
- StarWriter_5_0__StarWriter_Web_ \
- StarWriter_Web_4_0_Vorlage_Template \
- StarWriter_Web_5_0_Vorlage_Template \
-)
-
-$(call filter_Configuration_add_ui_filters,fcfg_langpack,filter/source/config/fragments/filters,\
- StarWriter_Web_4_0_Vorlage_Template_ui \
- StarWriter_Web_5_0_Vorlage_Template_ui \
-)
-
-# fcfg_global_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_global_bf_types.xcu,filter/source/config/fragments/types,\
- writer_StarWriter_30 \
- writer_StarWriter_40 \
- writer_globaldocument_StarWriter_40GlobalDocument \
- writer_StarWriter_50 \
- writer_globaldocument_StarWriter_50GlobalDocument \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_global_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarWriter_3_0__StarWriter_GlobalDocument_ \
- StarWriter_4_0__StarWriter_GlobalDocument_ \
- StarWriter_4_0_GlobalDocument \
- StarWriter_5_0__StarWriter_GlobalDocument_ \
- StarWriter_5_0_GlobalDocument \
-)
-
-$(call filter_Configuration_add_ui_filters,fcfg_langpack,filter/source/config/fragments/filters,\
- StarWriter_4_0_GlobalDocument_ui \
- StarWriter_5_0_GlobalDocument_ui \
-)
-
-# fcfg_calc_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_calc_bf_types.xcu,filter/source/config/fragments/types,\
- calc_StarCalc_10 \
- calc_StarCalc_30 \
- calc_StarCalc_30_VorlageTemplate \
- calc_StarCalc_40 \
- calc_StarCalc_40_VorlageTemplate \
- calc_StarCalc_50 \
- calc_StarCalc_50_VorlageTemplate \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_calc_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarCalc_1_0 \
- StarCalc_3_0 \
- StarCalc_3_0_Vorlage_Template \
- StarCalc_4_0 \
- StarCalc_4_0_Vorlage_Template \
- StarCalc_5_0 \
- StarCalc_5_0_Vorlage_Template \
-)
-
-$(call filter_Configuration_add_ui_filters,fcfg_langpack,filter/source/config/fragments/filters,\
- StarCalc_3_0_Vorlage_Template_ui \
- StarCalc_4_0_Vorlage_Template_ui \
- StarCalc_5_0_Vorlage_Template_ui \
-)
-
-# fcfg_draw_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_draw_bf_types.xcu,filter/source/config/fragments/types,\
- draw_StarDraw_30 \
- draw_StarDraw_30_Vorlage \
- draw_StarDraw_50 \
- draw_StarDraw_50_Vorlage \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_draw_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarDraw_3_0 \
- StarDraw_3_0_Vorlage \
- StarDraw_5_0 \
- StarDraw_5_0_Vorlage \
-)
-
-$(call filter_Configuration_add_ui_filters,fcfg_langpack,filter/source/config/fragments/filters,\
- StarDraw_3_0_Vorlage_ui \
- StarDraw_5_0_Vorlage_ui \
-)
-
-# fcfg_impress_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_impress_bf_types.xcu,filter/source/config/fragments/types,\
- draw_StarDraw_30 \
- draw_StarDraw_30_Vorlage \
- draw_StarDraw_50 \
- draw_StarDraw_50_Vorlage \
- impress_StarImpress_40 \
- impress_StarImpress_40_Vorlage \
- impress_StarImpress_50 \
- impress_StarImpress_50_Vorlage \
- impress_StarImpress_50_packed \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_impress_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarDraw_3_0_Vorlage__StarImpress_ \
- StarDraw_3_0__StarImpress_ \
- StarDraw_5_0_Vorlage__StarImpress_ \
- StarDraw_5_0__StarImpress_ \
- StarImpress_4_0 \
- StarImpress_4_0_Vorlage \
- StarImpress_5_0 \
- StarImpress_5_0_Vorlage \
- StarImpress_5_0__packed_ \
-)
-
-$(call filter_Configuration_add_ui_filters,fcfg_langpack,filter/source/config/fragments/filters,\
- StarDraw_3_0_Vorlage__StarImpress__ui \
- StarDraw_5_0_Vorlage__StarImpress__ui \
- StarImpress_4_0_Vorlage_ui \
- StarImpress_5_0_Vorlage_ui \
- StarImpress_5_0__packed__ui \
-)
-
-# fcfg_chart_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_chart_bf_types.xcu,filter/source/config/fragments/types,\
- chart_StarChart_30 \
- chart_StarChart_40 \
- chart_StarChart_50 \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_chart_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarChart_3_0 \
- StarChart_4_0 \
- StarChart_5_0 \
-)
-
-# fcfg_math_bf
-$(call filter_Configuration_add_types,fcfg_langpack,fcfg_math_bf_types.xcu,filter/source/config/fragments/types,\
- math_StarMath_20 \
- math_StarMath_30 \
- math_StarMath_40 \
- math_StarMath_50 \
-)
-
-$(call filter_Configuration_add_filters,fcfg_langpack,fcfg_math_bf_filters.xcu,filter/source/config/fragments/filters,\
- StarMath_2_0 \
- StarMath_3_0 \
- StarMath_4_0 \
- StarMath_5_0 \
-)
-
-endif # WITH_BINFILTER
-
# vim: set noet sw=4 ts=4:
diff --git a/filter/Library_msfilter.mk b/filter/Library_msfilter.mk
index ea042bba87a1..098d72a9871a 100644
--- a/filter/Library_msfilter.mk
+++ b/filter/Library_msfilter.mk
@@ -56,6 +56,8 @@ $(eval $(call gb_Library_use_libraries,msfilter,\
$(eval $(call gb_Library_add_exception_objects,msfilter,\
filter/source/msfilter/countryid \
+ filter/source/msfilter/dffpropset \
+ filter/source/msfilter/dffrecordheader \
filter/source/msfilter/escherex \
filter/source/msfilter/eschesdo \
filter/source/msfilter/mscodec \
diff --git a/filter/Module_filter.mk b/filter/Module_filter.mk
index 99bebb5c55d8..463af633763b 100644
--- a/filter/Module_filter.mk
+++ b/filter/Module_filter.mk
@@ -74,7 +74,6 @@ endif
ifneq ($(SOLAR_JAVA),)
$(eval $(call gb_Module_add_targets,filter,\
- Jar_XSLTFilter \
Jar_XSLTValidate \
))
endif
diff --git a/filter/Package_inc.mk b/filter/Package_inc.mk
index 578fe96207df..f14893df1b61 100644
--- a/filter/Package_inc.mk
+++ b/filter/Package_inc.mk
@@ -20,6 +20,8 @@ $(eval $(call gb_Package_Package,filter_inc,$(SRCDIR)/filter/inc))
$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/msfilterdllapi.h,filter/msfilter/msfilterdllapi.h))
$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/countryid.hxx,filter/msfilter/countryid.hxx))
+$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/dffpropset.hxx,filter/msfilter/dffpropset.hxx))
+$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/dffrecordheader.hxx,filter/msfilter/dffrecordheader.hxx))
$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/escherex.hxx,filter/msfilter/escherex.hxx))
$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/mscodec.hxx,filter/msfilter/mscodec.hxx))
$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/msdffimp.hxx,filter/msfilter/msdffimp.hxx))
diff --git a/filter/inc/filter/msfilter/dffpropset.hxx b/filter/inc/filter/msfilter/dffpropset.hxx
new file mode 100644
index 000000000000..a11b3822bd3f
--- /dev/null
+++ b/filter/inc/filter/msfilter/dffpropset.hxx
@@ -0,0 +1,71 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+#ifndef _DFFPROPSET_HXX
+#define _DFFPROPSET_HXX
+
+#include <tools/solar.h>
+#include <filter/msfilter/msfilterdllapi.h>
+#include <filter/msfilter/dffrecordheader.hxx>
+#include <tools/stream.hxx>
+#include <vector>
+
+struct DffPropFlags
+{
+ sal_uInt8 bSet : 1;
+ sal_uInt8 bComplex : 1;
+ sal_uInt8 bBlip : 1;
+ sal_uInt8 bSoftAttr : 1;
+};
+
+struct DffPropSetEntry
+{
+ DffPropFlags aFlags;
+ sal_uInt16 nComplexIndexOrFlagsHAttr;
+ sal_uInt32 nContent;
+};
+
+class MSFILTER_DLLPUBLIC DffPropSet
+{
+ private:
+ DffPropSetEntry* mpPropSetEntries;
+ std::vector< sal_uInt32 > maOffsets;
+
+ void ReadPropSet( SvStream&, bool );
+
+ public:
+ explicit DffPropSet();
+ ~DffPropSet();
+
+ inline sal_Bool IsProperty( sal_uInt32 nRecType ) const { return ( mpPropSetEntries[ nRecType & 0x3ff ].aFlags.bSet ); };
+ sal_Bool IsHardAttribute( sal_uInt32 nId ) const;
+ sal_uInt32 GetPropertyValue( sal_uInt32 nId, sal_uInt32 nDefault = 0 ) const;
+ /** Returns a boolean property by its real identifier. */
+ bool GetPropertyBool( sal_uInt32 nId, bool bDefault = false ) const;
+ /** Returns a string property. */
+ ::rtl::OUString GetPropertyString( sal_uInt32 nId, SvStream& rStrm ) const;
+ void SetPropertyValue( sal_uInt32 nId, sal_uInt32 nValue ) const;
+ sal_Bool SeekToContent( sal_uInt32 nRecType, SvStream& rSt ) const;
+ void InitializePropSet( sal_uInt16 nPropSetType ) const;
+
+ friend SvStream& operator>>( SvStream& rIn, DffPropSet& rPropSet );
+ friend SvStream& operator|=( SvStream& rIn, DffPropSet& rPropSet );
+};
+
+#endif
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/filter/inc/filter/msfilter/dffrecordheader.hxx b/filter/inc/filter/msfilter/dffrecordheader.hxx
new file mode 100644
index 000000000000..ca2fcc368c46
--- /dev/null
+++ b/filter/inc/filter/msfilter/dffrecordheader.hxx
@@ -0,0 +1,63 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#ifndef _DFFRECORDHEADER_HXX
+#define _DFFRECORDHEADER_HXX
+
+#include <tools/solar.h>
+#include <tools/stream.hxx>
+#include <filter/msfilter/msfilterdllapi.h>
+#include <svx/msdffdef.hxx>
+
+class MSFILTER_DLLPUBLIC DffRecordHeader
+{
+public:
+ sal_uInt8 nRecVer; // may be DFF_PSFLAG_CONTAINER
+ sal_uInt16 nRecInstance;
+ sal_uInt16 nImpVerInst;
+ sal_uInt16 nRecType;
+ sal_uInt32 nRecLen;
+ sal_uLong nFilePos;
+
+ DffRecordHeader() : nRecVer(0), nRecInstance(0), nImpVerInst(0),
+ nRecType(0), nRecLen(0), nFilePos(0) {}
+ bool IsContainer() const { return nRecVer == DFF_PSFLAG_CONTAINER; }
+ sal_uLong GetRecBegFilePos() const { return nFilePos; }
+ sal_uLong GetRecEndFilePos() const
+ { return nFilePos + DFF_COMMON_RECORD_HEADER_SIZE + nRecLen; }
+ bool SeekToEndOfRecord(SvStream& rIn) const
+ {
+ sal_Size nPos = nFilePos + DFF_COMMON_RECORD_HEADER_SIZE + nRecLen;
+ return nPos == rIn.Seek(nPos);
+ }
+ bool SeekToContent(SvStream& rIn) const
+ {
+ sal_Size nPos = nFilePos + DFF_COMMON_RECORD_HEADER_SIZE;
+ return nPos == rIn.Seek(nPos);
+ }
+ bool SeekToBegOfRecord(SvStream& rIn) const
+ {
+ return nFilePos == rIn.Seek(nFilePos);
+ }
+
+ MSFILTER_DLLPUBLIC friend SvStream& operator>>(SvStream& rIn, DffRecordHeader& rRec);
+};
+
+#endif
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/filter/inc/filter/msfilter/escherex.hxx b/filter/inc/filter/msfilter/escherex.hxx
index a5b7352ecb5a..5182417333ff 100644
--- a/filter/inc/filter/msfilter/escherex.hxx
+++ b/filter/inc/filter/msfilter/escherex.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef _SVX_ESCHEREX_HXX
#define _SVX_ESCHEREX_HXX
diff --git a/filter/inc/filter/msfilter/msdffimp.hxx b/filter/inc/filter/msfilter/msdffimp.hxx
index e9e1b148346d..ef1946bdba65 100644
--- a/filter/inc/filter/msfilter/msdffimp.hxx
+++ b/filter/inc/filter/msfilter/msdffimp.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef FLT_MSDFFIMP_HXX
#define FLT_MSDFFIMP_HXX
@@ -53,10 +44,11 @@
#include <vcl/graph.hxx>
#include <svx/msdffdef.hxx>
+#include <filter/msfilter/dffpropset.hxx>
+#include <filter/msfilter/dffrecordheader.hxx>
#include <filter/msfilter/msfilterdllapi.h>
-
class Graphic;
class SvStream;
class SdrObject;
@@ -66,91 +58,13 @@ class Polygon;
class PolyPolygon;
class FmFormModel;
class SdrModel;
-class DffRecordHeader;
class SwFlyFrmFmt;
struct SvxMSDffBLIPInfo;
struct SvxMSDffShapeInfo;
struct SvxMSDffShapeOrder;
-class MSFILTER_DLLPUBLIC DffRecordHeader
-{
-public:
- sal_uInt8 nRecVer; // may be DFF_PSFLAG_CONTAINER
- sal_uInt16 nRecInstance;
- sal_uInt16 nImpVerInst;
- sal_uInt16 nRecType;
- sal_uInt32 nRecLen;
- sal_uLong nFilePos;
-
- DffRecordHeader() : nRecVer(0), nRecInstance(0), nImpVerInst(0),
- nRecType(0), nRecLen(0), nFilePos(0) {}
- bool IsContainer() const { return nRecVer == DFF_PSFLAG_CONTAINER; }
- sal_uLong GetRecBegFilePos() const { return nFilePos; }
- sal_uLong GetRecEndFilePos() const
- { return nFilePos + DFF_COMMON_RECORD_HEADER_SIZE + nRecLen; }
- bool SeekToEndOfRecord(SvStream& rIn) const
- {
- sal_Size nPos = nFilePos + DFF_COMMON_RECORD_HEADER_SIZE + nRecLen;
- return nPos == rIn.Seek(nPos);
- }
- bool SeekToContent(SvStream& rIn) const
- {
- sal_Size nPos = nFilePos + DFF_COMMON_RECORD_HEADER_SIZE;
- return nPos == rIn.Seek(nPos);
- }
- bool SeekToBegOfRecord(SvStream& rIn) const
- {
- return nFilePos == rIn.Seek(nFilePos);
- }
-
- MSFILTER_DLLPUBLIC friend SvStream& operator>>(SvStream& rIn, DffRecordHeader& rRec);
-};
-
-struct DffPropFlags
-{
- sal_uInt8 bSet : 1;
- sal_uInt8 bComplex : 1;
- sal_uInt8 bBlip : 1;
- sal_uInt8 bSoftAttr : 1;
-};
-
class SvxMSDffManager;
-
-class MSFILTER_DLLPUBLIC DffPropSet
-{
-private:
- void InitializeProp(sal_uInt32 nKey, sal_uInt32 nContent,
- DffPropFlags& rFlags, sal_uInt32 nRecordType) const;
-
-protected:
- typedef std::map<sal_uInt32, sal_uInt32> RecordTypesMap;
-
- RecordTypesMap maRecordTypes;
- sal_uInt32 mpContents[ 1024 ];
- DffPropFlags mpFlags[ 1024 ];
-
-public:
- explicit DffPropSet( sal_Bool bInitialize = sal_False )
- {
- if ( bInitialize )
- memset( mpFlags, 0, 0x400 * sizeof( DffPropFlags ) );
- };
-
- inline sal_Bool IsProperty( sal_uInt32 nRecType ) const
- { return ( mpFlags[ nRecType & 0x3ff ].bSet ); };
- sal_Bool IsHardAttribute( sal_uInt32 nId ) const;
- sal_uInt32 GetPropertyValue( sal_uInt32 nId, sal_uInt32 nDefault = 0 ) const;
- /** Returns a boolean property by its real identifier. */
- bool GetPropertyBool( sal_uInt32 nId, bool bDefault = false ) const;
- /** Returns a string property. */
- ::rtl::OUString GetPropertyString( sal_uInt32 nId, SvStream& rStrm ) const;
- sal_Bool SeekToContent( sal_uInt32 nRecType, SvStream& rSt ) const;
- void Merge( DffPropSet& rMasterPropSet ) const;
- void InitializePropSet() const;
- friend SvStream& operator>>( SvStream& rIn, DffPropSet& rPropSet );
-};
-
class SfxItemSet;
class SdrObject;
struct DffObjData;
@@ -161,6 +75,7 @@ class MSFILTER_DLLPUBLIC DffPropertyReader : public DffPropSet
DffPropSet* pDefaultPropSet;
void ApplyCustomShapeTextAttributes( SfxItemSet& rSet ) const;
+ void CheckAndCorrectExcelTextRotation( SvStream& rIn, SfxItemSet& rSet, DffObjData& rObjData ) const;
void ApplyCustomShapeAdjustmentAttributes( SfxItemSet& rSet ) const;
void ApplyCustomShapeGeometryAttributes( SvStream& rIn,
SfxItemSet& rSet,
@@ -182,7 +97,7 @@ public:
void SetDefaultPropSet( SvStream& rIn, sal_uInt32 nOffDgg ) const;
void ApplyAttributes( SvStream& rIn, SfxItemSet& rSet ) const;
- void ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, const DffObjData& rObjData ) const;
+ void ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, DffObjData& rObjData ) const;
};
#define COL_DEFAULT RGB_COLORDATA( 0xFA, 0xFB, 0xFC )
@@ -394,7 +309,9 @@ struct DffObjData
sal_Bool bClientData : 1;
sal_Bool bChildAnchor : 1;
sal_Bool bOpt : 1;
+ sal_Bool bOpt2 : 1;
sal_Bool bIsAutoText : 1;
+ sal_Bool bRotateTextWithShape : 1;
int nCalledByGroup;
@@ -411,7 +328,9 @@ struct DffObjData
bClientData( sal_False ),
bChildAnchor( sal_False ),
bOpt( sal_False ),
+ bOpt2( sal_False ),
bIsAutoText( sal_False ),
+ bRotateTextWithShape( sal_True ),
nCalledByGroup( nClByGroup ){}
};
@@ -600,6 +519,7 @@ protected :
virtual sal_Bool ShapeHasText(sal_uLong nShapeId, sal_uLong nFilePos) const;
public:
+ DffPropertyReader* pSecPropSet;
std::map<sal_uInt32,rtl::OString> aEscherBlipCache;
DffRecordManager maShapeRecords;
@@ -685,9 +605,6 @@ public:
sal_uInt32 nLen,
const GDIMetaFile*,
const SotStorageRef & rDest );
- static rtl::OUString ReadDffString( SvStream& rSt,
- DffRecordHeader aStrHd = DffRecordHeader());
- static bool ReadObjText(SvStream& rSt, SdrObject* pObj);
void SetModel(SdrModel* pModel, long nApplicationScale);
SdrModel* GetModel() const { return pSdrModel; }
diff --git a/filter/prj/build.lst b/filter/prj/build.lst
index 9af8fbc62ede..1ed611dfb619 100644
--- a/filter/prj/build.lst
+++ b/filter/prj/build.lst
@@ -1,2 +1,2 @@
-fl filter : svtools unotools xmloff cppu tools cppuhelper sal salhelper svx javaunohelper XPDF:xpdf jvmaccess canvas SAXON:saxon LIBXSLT:libxslt basegfx package PYTHON:python NULL
+fl filter : svtools unotools xmloff cppu tools cppuhelper sal salhelper svx javaunohelper XPDF:xpdf jvmaccess canvas LIBXSLT:libxslt basegfx package PYTHON:python NULL
fl filter\prj nmake - all fl_prj NULL
diff --git a/filter/qa/cppunit/filters-pict-test.cxx b/filter/qa/cppunit/filters-pict-test.cxx
index 69228f34f946..9e5a296e7e16 100644
--- a/filter/qa/cppunit/filters-pict-test.cxx
+++ b/filter/qa/cppunit/filters-pict-test.cxx
@@ -34,7 +34,9 @@ class PictFilterTest
public:
PictFilterTest() : BootstrapFixture(true, false) {}
- virtual bool load(const rtl::OUString &, const rtl::OUString &rURL, const rtl::OUString &);
+ virtual bool load(const rtl::OUString &,
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int);
/**
* Ensure CVEs remain unbroken
@@ -47,7 +49,8 @@ public:
};
bool PictFilterTest::load(const rtl::OUString &,
- const rtl::OUString &rURL, const rtl::OUString &)
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int)
{
SvFileStream aFileStream(rURL, STREAM_READ);
Graphic aGraphic;
diff --git a/filter/qa/cppunit/filters-tga-test.cxx b/filter/qa/cppunit/filters-tga-test.cxx
index c0eba97d41f6..9edcf62b57a7 100644
--- a/filter/qa/cppunit/filters-tga-test.cxx
+++ b/filter/qa/cppunit/filters-tga-test.cxx
@@ -54,7 +54,9 @@ class TgaFilterTest
public:
TgaFilterTest() : BootstrapFixture(true, false) {}
- virtual bool load(const rtl::OUString &, const rtl::OUString &rURL, const rtl::OUString &);
+ virtual bool load(const rtl::OUString &,
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int);
/**
* Ensure CVEs remain unbroken
@@ -67,7 +69,8 @@ public:
};
bool TgaFilterTest::load(const rtl::OUString &,
- const rtl::OUString &rURL, const rtl::OUString &)
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int)
{
SvFileStream aFileStream(rURL, STREAM_READ);
Graphic aGraphic;
diff --git a/filter/qa/cppunit/filters-tiff-test.cxx b/filter/qa/cppunit/filters-tiff-test.cxx
index 942ad1609290..b967393e9ec8 100644
--- a/filter/qa/cppunit/filters-tiff-test.cxx
+++ b/filter/qa/cppunit/filters-tiff-test.cxx
@@ -54,7 +54,9 @@ class TiffFilterTest
public:
TiffFilterTest() : BootstrapFixture(true, false) {}
- virtual bool load(const rtl::OUString &, const rtl::OUString &rURL, const rtl::OUString &);
+ virtual bool load(const rtl::OUString &,
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int);
/**
* Ensure CVEs remain unbroken
@@ -67,7 +69,8 @@ public:
};
bool TiffFilterTest::load(const rtl::OUString &,
- const rtl::OUString &rURL, const rtl::OUString &)
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int)
{
SvFileStream aFileStream(rURL, STREAM_READ);
Graphic aGraphic;
diff --git a/filter/source/config/cache/filtercache.cxx b/filter/source/config/cache/filtercache.cxx
index 9159f20a19ab..ee0ac397818a 100644
--- a/filter/source/config/cache/filtercache.cxx
+++ b/filter/source/config/cache/filtercache.cxx
@@ -2466,7 +2466,7 @@ sal_Bool FilterCache::impl_isModuleInstalled(const ::rtl::OUString& sModule)
{
m_xModuleCfg = css::uno::Reference< css::container::XNameAccess >(
::comphelper::ConfigurationHelper::openConfig(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "org.openoffice.Setup/Office/Factories" )),
::comphelper::ConfigurationHelper::E_READONLY),
css::uno::UNO_QUERY_THROW);
diff --git a/filter/source/config/cache/filterfactory.cxx b/filter/source/config/cache/filterfactory.cxx
index fa918f683060..cfba722a43aa 100644
--- a/filter/source/config/cache/filterfactory.cxx
+++ b/filter/source/config/cache/filterfactory.cxx
@@ -24,6 +24,7 @@
#include "versions.hxx"
#include <com/sun/star/lang/XInitialization.hpp>
+#include <comphelper/processfactory.hxx>
#include <comphelper/enumhelper.hxx>
#include <comphelper/configurationhelper.hxx>
#include <rtl/ustrbuf.hxx>
@@ -487,7 +488,7 @@ OUStringList FilterFactory::impl_getListOfInstalledModules() const
try
{
css::uno::Reference< css::container::XNameAccess > xModuleConfig(
- ::comphelper::ConfigurationHelper::openConfig(xSMGR,
+ ::comphelper::ConfigurationHelper::openConfig( comphelper::getComponentContext(xSMGR),
CFGPACKAGE_OOO_MODULES,
::comphelper::ConfigurationHelper::E_READONLY),
css::uno::UNO_QUERY_THROW);
@@ -570,7 +571,7 @@ OUStringList FilterFactory::impl_readSortedFilterListFromConfig(const ::rtl::OUS
try
{
css::uno::Reference< css::container::XNameAccess > xUISortConfig(
- ::comphelper::ConfigurationHelper::openConfig(xSMGR,
+ ::comphelper::ConfigurationHelper::openConfig( comphelper::getComponentContext(xSMGR),
CFGPACKAGE_TD_UISORT,
::comphelper::ConfigurationHelper::E_READONLY),
css::uno::UNO_QUERY_THROW);
diff --git a/filter/source/config/fragments/filters/VisioDocument.xcu b/filter/source/config/fragments/filters/VisioDocument.xcu
index 82b3569bf3dd..15c504b8fa49 100644
--- a/filter/source/config/fragments/filters/VisioDocument.xcu
+++ b/filter/source/config/fragments/filters/VisioDocument.xcu
@@ -21,7 +21,7 @@
<prop oor:name="FilterService"><value>com.sun.star.comp.Draw.VisioImportFilter</value></prop>
<prop oor:name="UserData"><value></value></prop>
<prop oor:name="UIName">
- <value xml:lang="x-default">Microsoft Visio 2000-2010</value>
+ <value xml:lang="x-default">Microsoft Visio 2000-2013</value>
</prop>
<prop oor:name="FileFormatVersion"><value>0</value></prop>
<prop oor:name="Type"><value>draw_Visio_Document</value></prop>
diff --git a/filter/source/config/fragments/types/draw_Visio_Document.xcu b/filter/source/config/fragments/types/draw_Visio_Document.xcu
index a7234b4e1000..b6c6992a389c 100644
--- a/filter/source/config/fragments/types/draw_Visio_Document.xcu
+++ b/filter/source/config/fragments/types/draw_Visio_Document.xcu
@@ -18,12 +18,12 @@
<node oor:name="draw_Visio_Document" oor:op="replace" >
<prop oor:name="DetectService"><value>com.sun.star.comp.Draw.VisioImportFilter</value></prop>
<prop oor:name="URLPattern"/>
- <prop oor:name="Extensions"><value>vsd vst</value></prop>
+ <prop oor:name="Extensions"><value>vdx vsd vsdm vsdx</value></prop>
<prop oor:name="MediaType"><value>application/vnd.visio</value></prop>
<prop oor:name="Preferred"><value>true</value></prop>
<prop oor:name="PreferredFilter"><value>Visio Document</value></prop>
<prop oor:name="UIName">
- <value>Microsoft Visio 2000/XP/2003</value>
+ <value>Microsoft Visio</value>
</prop>
<prop oor:name="ClipboardFormat"/>
</node>
diff --git a/filter/source/config/tools/merge/FCFGMerge.cfg b/filter/source/config/tools/merge/FCFGMerge.cfg
index 59d35b8be7bf..4516a777bc57 100644
--- a/filter/source/config/tools/merge/FCFGMerge.cfg
+++ b/filter/source/config/tools/merge/FCFGMerge.cfg
@@ -1,29 +1,20 @@
-#*************************************************************************
#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# This file is part of the LibreOffice project.
#
-# Copyright 2008 by Sun Microsystems, Inc.
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# OpenOffice.org - a multi-platform office productivity suite
+# This file incorporates work covered by the following license notice:
#
-# This file is part of OpenOffice.org.
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed
+# with this work for additional information regarding copyright
+# ownership. The ASF licenses this file to you under the Apache
+# License, Version 2.0 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
#************************************************
# Specify the verbose mode of this tool.
diff --git a/filter/source/config/tools/merge/pyAltFCFGMerge b/filter/source/config/tools/merge/pyAltFCFGMerge
index dfebbecfe21f..b05e37d9b32f 100755
--- a/filter/source/config/tools/merge/pyAltFCFGMerge
+++ b/filter/source/config/tools/merge/pyAltFCFGMerge
@@ -9,7 +9,7 @@
# there is a java which is available for use by all
#_____________________________________________
-import sys, string, os.path, codecs
+import sys, string, os.path, codecs
CFGFILE = os.environ["SOLARVER"] + "/" + os.environ["INPATH_FOR_BUILD"] + "/inc/l10ntools/FCFGMerge.cfg"
diff --git a/filter/source/flash/swfwriter1.cxx b/filter/source/flash/swfwriter1.cxx
index 1352508f5835..cce56ee7c4db 100644
--- a/filter/source/flash/swfwriter1.cxx
+++ b/filter/source/flash/swfwriter1.cxx
@@ -1,32 +1,23 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <comphelper/processfactory.hxx>
@@ -39,7 +30,6 @@
#include <basegfx/matrix/b2dhommatrixtools.hxx>
#include <svtools/filter.hxx>
#include <vcl/graphictools.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
#ifndef _ZLIB_H
#ifdef SYSTEM_ZLIB
@@ -1832,19 +1822,6 @@ void Writer::Impl_writeActions( const GDIMetaFile& rMtf )
}
break;
- case( META_RENDERGRAPHIC_ACTION ):
- {
- const MetaRenderGraphicAction* pA = (const MetaRenderGraphicAction*) pAction;
- const ::vcl::RenderGraphicRasterizer aRasterizer( pA->GetRenderGraphic() );
- const Point aPointPixel;
- const Size aSizePixel( mpVDev->LogicToPixel( pA->GetSize() ) );
- const BitmapEx aBmpEx( aRasterizer.Rasterize( aSizePixel ) );
-
- Impl_writeImage( aBmpEx, pA->GetPoint(), pA->GetSize(),
- aPointPixel, aBmpEx.GetSizePixel(), clipRect, 1 == bMap );
- }
- break;
-
case( META_MAPMODE_ACTION ):
{
bMap++;
@@ -2065,8 +2042,8 @@ Reference < XBreakIterator > Writer::Impl_GetBreakIterator()
{
if ( !mxBreakIterator.is() )
{
- Reference< XMultiServiceFactory > xMSF( ::comphelper::getProcessServiceFactory() );
- mxBreakIterator.set( xMSF->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.i18n.BreakIterator" )) ), UNO_QUERY );
+ Reference< XComponentContext > xContext( ::comphelper::getProcessComponentContext() );
+ mxBreakIterator = BreakIterator::create(xContext);
}
return mxBreakIterator;
}
diff --git a/filter/source/graphicfilter/eos2met/eos2met.cxx b/filter/source/graphicfilter/eos2met/eos2met.cxx
index 6849e5408d1a..834a0f462798 100644
--- a/filter/source/graphicfilter/eos2met/eos2met.cxx
+++ b/filter/source/graphicfilter/eos2met/eos2met.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <svtools/fltcall.hxx>
@@ -43,7 +33,6 @@
#include <vcl/virdev.hxx>
#include <vcl/svapp.hxx>
#include <vcl/msgbox.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
#include <svl/solar.hrc>
@@ -175,7 +164,7 @@ private:
// Callback as the case may be. Sets bStatus to sal_False if the user wants to cancel
void CountActionsAndBitmaps(const GDIMetaFile * pMTF);
- // Counts the bitmaps and actions (nNumberOfActions and nNumberOfBitmaps have to
+ // Counts the bitmaps and actions (nNumberOfActions and nNumberOfBitmaps have to
// be set to 0 at the beginning, since this method is recursive)
void WriteBigEndianShort(sal_uInt16 nWord);
@@ -325,7 +314,6 @@ void METWriter::CountActionsAndBitmaps(const GDIMetaFile * pMTF)
case META_BMPEX_ACTION:
case META_BMPEXSCALE_ACTION:
case META_BMPEXSCALEPART_ACTION:
- case META_RENDERGRAPHIC_ACTION:
nNumberOfBitmaps++;
break;
}
@@ -799,17 +787,6 @@ void METWriter::WriteImageObjects(const GDIMetaFile * pMTF)
}
}
break;
-
- case( META_RENDERGRAPHIC_ACTION ):
- {
- const MetaRenderGraphicAction* pA = (const MetaRenderGraphicAction*) pMA;
- const ::vcl::RenderGraphicRasterizer aRasterizer( pA->GetRenderGraphic() );
- const BitmapEx aBmpEx( aRasterizer.Rasterize( pCompDev->LogicToPixel( pA->GetSize() ) ) );
-
- METSetMix( eGDIRasterOp );
- WriteImageObject( Graphic( aBmpEx ).GetBitmap() );
- }
- break;
}
if (bStatus==sal_False)
@@ -2332,15 +2309,6 @@ void METWriter::WriteOrders( const GDIMetaFile* pMTF )
WriteOrders( &aTmpMtf );
}
break;
-
- case( META_RENDERGRAPHIC_ACTION ):
- {
- const MetaRenderGraphicAction* pA = (const MetaRenderGraphicAction*) pMA;
-
- METSetMix( eGDIRasterOp );
- METBitBlt( pA->GetPoint(), pA->GetSize(), pCompDev->LogicToPixel( pA->GetSize(), pMTF->GetPrefMapMode() ) );
- }
- break;
}
nWrittenActions++;
diff --git a/filter/source/graphicfilter/epict/epict.cxx b/filter/source/graphicfilter/epict/epict.cxx
index fe1c05c8d20a..f8934c1ae4b9 100644
--- a/filter/source/graphicfilter/epict/epict.cxx
+++ b/filter/source/graphicfilter/epict/epict.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <vcl/metaact.hxx>
#include <svtools/filter.hxx>
@@ -43,8 +33,6 @@
#include <vcl/svapp.hxx>
#include <vcl/msgbox.hxx>
#include <vcl/gdimtf.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
-
#include <tools/bigint.hxx>
#include <basegfx/polygon/b2dpolygon.hxx>
@@ -224,7 +212,6 @@ void PictWriter::CountActionsAndBitmaps(const GDIMetaFile & rMTF)
case META_BMPEX_ACTION:
case META_BMPEXSCALE_ACTION:
case META_BMPEXSCALEPART_ACTION:
- case META_RENDERGRAPHIC_ACTION:
nNumberOfBitmaps++;
break;
}
@@ -254,7 +241,7 @@ Polygon PictWriter::PolyPolygonToPolygon(const PolyPolygon & rPolyPoly)
nSize2=aPoly2.GetSize();
// At first we look for a point in aPoly1 (referenced by nBestIdx1) and a
- // point in aPoly2 (referenced by nBestid2), which
+ // point in aPoly2 (referenced by nBestid2), which
// Zunaechst werden ein Punkt in aPoly1 (referenziert durch nBestIdx1) und ein
// Punkt in aPoly2 (referenziert durch nBestIdx2) gesucht, die moeglichst dicht
// beieinander liegen. Da dies mit quadratischem Aufwand einher geht, und somit
@@ -2150,18 +2137,6 @@ void PictWriter::WriteOpcodes( const GDIMetaFile & rMTF )
WriteOpcodes( aTmpMtf );
}
break;
-
- case( META_RENDERGRAPHIC_ACTION ):
- {
- const MetaRenderGraphicAction* pA = (const MetaRenderGraphicAction*) pMA;
- const ::vcl::RenderGraphicRasterizer aRasterizer( pA->GetRenderGraphic() );
- VirtualDevice aVirDev;
- const Bitmap aBmp( Graphic( aRasterizer.Rasterize(
- aVirDev.LogicToPixel( pA->GetSize() ) ) ).GetBitmap() );
-
- WriteOpcode_BitsRect( pA->GetPoint(), pA->GetSize(), aBmp );
- }
- break;
}
nWrittenActions++;
diff --git a/filter/source/graphicfilter/eps/eps.cxx b/filter/source/graphicfilter/eps/eps.cxx
index ba9f1a3dfae8..e8e0ab45543f 100644
--- a/filter/source/graphicfilter/eps/eps.cxx
+++ b/filter/source/graphicfilter/eps/eps.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
+ * This file incorporates work covered by the following license notice:
*
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <tools/solar.h>
#include <tools/stream.hxx>
@@ -46,7 +36,6 @@
#include <svtools/fltcall.hxx>
#include <svtools/FilterConfigItem.hxx>
#include <vcl/graphictools.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
#include "strings.hrc"
#include <math.h>
@@ -1367,7 +1356,6 @@ void PSWriter::ImplWriteActions( const GDIMetaFile& rMtf, VirtualDevice& rVDev )
case META_BMPSCALEPART_ACTION :
case META_BMPEXSCALE_ACTION :
case META_BMPEXSCALEPART_ACTION :
- case META_RENDERGRAPHIC_ACTION :
{
nBitmapCount++;
nBitmapAction = nCurAction;
@@ -1426,23 +1414,6 @@ void PSWriter::ImplWriteActions( const GDIMetaFile& rMtf, VirtualDevice& rVDev )
}
}
break;
-
- case( META_RENDERGRAPHIC_ACTION ):
- {
- const MetaRenderGraphicAction* pA = (const MetaRenderGraphicAction*) pMA;
- const ::vcl::RenderGraphicRasterizer aRasterizer( pA->GetRenderGraphic() );
- const BitmapEx aBmpEx( aRasterizer.Rasterize( rVDev.LogicToPixel( pA->GetSize() ) ) );
- Bitmap aBmp( aBmpEx.GetBitmap() );
-
- if ( mbGrayScale )
- aBmp.Convert( BMP_CONVERSION_8BIT_GREYS );
-
- Bitmap aMask( aBmpEx.GetMask() );
- Size aSize( pA->GetSize() );
-
- ImplBmp( &aBmp, &aMask, pA->GetPoint(), aSize.Width(), aSize.Height() );
- }
- break;
}
}
}
@@ -2419,6 +2390,7 @@ void PSWriter::ImplWriteLineInfo( const LineInfo& rLineInfo )
l_aDashArray.push_back( 2 );
const double fLWidth(( ( rLineInfo.GetWidth() + 1 ) + ( rLineInfo.GetWidth() + 1 ) ) * 0.5);
SvtGraphicStroke::JoinType aJoinType(SvtGraphicStroke::joinMiter);
+ SvtGraphicStroke::CapType aCapType(SvtGraphicStroke::capButt);
switch(rLineInfo.GetLineJoin())
{
@@ -2437,8 +2409,26 @@ void PSWriter::ImplWriteLineInfo( const LineInfo& rLineInfo )
aJoinType = SvtGraphicStroke::joinRound;
break;
}
+ switch(rLineInfo.GetLineCap())
+ {
+ default: /* com::sun::star::drawing::LineCap_BUTT */
+ {
+ aCapType = SvtGraphicStroke::capButt;
+ break;
+ }
+ case com::sun::star::drawing::LineCap_ROUND:
+ {
+ aCapType = SvtGraphicStroke::capRound;
+ break;
+ }
+ case com::sun::star::drawing::LineCap_SQUARE:
+ {
+ aCapType = SvtGraphicStroke::capSquare;
+ break;
+ }
+ }
- ImplWriteLineInfo( fLWidth, fMiterLimit, SvtGraphicStroke::capButt, aJoinType, l_aDashArray );
+ ImplWriteLineInfo( fLWidth, fMiterLimit, aCapType, aJoinType, l_aDashArray );
}
//---------------------------------------------------------------------------------
diff --git a/filter/source/graphicfilter/idxf/dxftblrd.cxx b/filter/source/graphicfilter/idxf/dxftblrd.cxx
index 9448cec5b63d..f99de87a6df7 100644
--- a/filter/source/graphicfilter/idxf/dxftblrd.cxx
+++ b/filter/source/graphicfilter/idxf/dxftblrd.cxx
@@ -40,28 +40,42 @@ void DXFLType::Read(DXFGroupReader & rDGR)
{
switch (rDGR.GetG())
{
- case 2: strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN + 1 ); break;
- case 70: nFlags=rDGR.GetI(); break;
- case 3: strncpy( sDescription, rDGR.GetS(), DXF_MAX_STRING_LEN + 1 ); break;
- case 73:
- if (nDashIndex!=-1) {
- rDGR.SetError();
- return;
- }
- nDashCount=rDGR.GetI();
- if (nDashCount>DXF_MAX_DASH_COUNT)
- nDashCount=DXF_MAX_DASH_COUNT;
- nDashIndex=0;
- break;
- case 40: fPatternLength=rDGR.GetF(); break;
- case 49:
- if (nDashCount==-1) {
- rDGR.SetError();
- return;
- }
- if (nDashIndex<nDashCount)
- fDash[nDashIndex++]=rDGR.GetF();
- break;
+ case 2:
+ strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN );
+ sName[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 3:
+ strncpy( sDescription, rDGR.GetS(), DXF_MAX_STRING_LEN );
+ sDescription[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 70:
+ nFlags=rDGR.GetI();
+ break;
+ case 73:
+ if (nDashIndex!=-1)
+ {
+ rDGR.SetError();
+ return;
+ }
+ nDashCount=rDGR.GetI();
+ if (nDashCount>DXF_MAX_DASH_COUNT)
+ {
+ nDashCount=DXF_MAX_DASH_COUNT;
+ }
+ nDashIndex=0;
+ break;
+ case 40: fPatternLength=rDGR.GetF(); break;
+ case 49:
+ if (nDashCount==-1)
+ {
+ rDGR.SetError();
+ return;
+ }
+ if (nDashIndex<nDashCount)
+ {
+ fDash[nDashIndex++]=rDGR.GetF();
+ }
+ break;
}
}
}
@@ -79,12 +93,24 @@ DXFLayer::DXFLayer()
void DXFLayer::Read(DXFGroupReader & rDGR)
{
- while (rDGR.Read()!=0) {
- switch(rDGR.GetG()) {
- case 2: strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN + 1 ); break;
- case 70: nFlags=rDGR.GetI(); break;
- case 62: nColor=rDGR.GetI(); break;
- case 6: strncpy( sLineType, rDGR.GetS(), DXF_MAX_STRING_LEN + 1 ); break;
+ while (rDGR.Read()!=0)
+ {
+ switch(rDGR.GetG())
+ {
+ case 2:
+ strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN );
+ sName[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 6:
+ strncpy( sLineType, rDGR.GetS(), DXF_MAX_STRING_LEN );
+ sLineType[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 70:
+ nFlags=rDGR.GetI();
+ break;
+ case 62:
+ nColor=rDGR.GetI();
+ break;
}
}
}
@@ -107,17 +133,40 @@ DXFStyle::DXFStyle()
void DXFStyle::Read(DXFGroupReader & rDGR)
{
- while (rDGR.Read()!=0) {
- switch(rDGR.GetG()) {
- case 2: strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN + 1 ); break;
- case 70: nFlags=rDGR.GetI(); break;
- case 40: fHeight=rDGR.GetF(); break;
- case 41: fWidthFak=rDGR.GetF(); break;
- case 50: fOblAngle=rDGR.GetF(); break;
- case 71: nTextGenFlags=rDGR.GetI(); break;
- case 42: fLastHeightUsed=rDGR.GetF(); break;
- case 3: strncpy( sPrimFontFile, rDGR.GetS(), DXF_MAX_STRING_LEN + 1 ); break;
- case 4: strncpy( sBigFontFile, rDGR.GetS(), DXF_MAX_STRING_LEN + 1 ); break;
+ while (rDGR.Read()!=0)
+ {
+ switch(rDGR.GetG())
+ {
+ case 2:
+ strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN );
+ sName[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 3:
+ strncpy( sPrimFontFile, rDGR.GetS(), DXF_MAX_STRING_LEN );
+ sPrimFontFile[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 4:
+ strncpy( sBigFontFile, rDGR.GetS(), DXF_MAX_STRING_LEN );
+ sBigFontFile[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 70:
+ nFlags=rDGR.GetI();
+ break;
+ case 40:
+ fHeight=rDGR.GetF();
+ break;
+ case 41:
+ fWidthFak=rDGR.GetF();
+ break;
+ case 42:
+ fLastHeightUsed=rDGR.GetF();
+ break;
+ case 50:
+ fOblAngle=rDGR.GetF();
+ break;
+ case 71:
+ nTextGenFlags=rDGR.GetI();
+ break;
}
}
}
@@ -164,44 +213,49 @@ DXFVPort::DXFVPort()
void DXFVPort::Read(DXFGroupReader & rDGR)
{
- while (rDGR.Read()!=0) {
- switch(rDGR.GetG()) {
- case 2: strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN + 1); break;
- case 70: nFlags=rDGR.GetI(); break;
- case 10: fMinX=rDGR.GetF(); break;
- case 20: fMinY=rDGR.GetF(); break;
- case 11: fMaxX=rDGR.GetF(); break;
- case 21: fMaxY=rDGR.GetF(); break;
- case 12: fCenterX=rDGR.GetF(); break;
- case 22: fCenterY=rDGR.GetF(); break;
- case 13: fSnapBaseX=rDGR.GetF(); break;
- case 23: fSnapBaseY=rDGR.GetF(); break;
- case 14: fSnapSapcingX=rDGR.GetF(); break;
- case 24: fSnapSpacingY=rDGR.GetF(); break;
- case 15: fGridX=rDGR.GetF(); break;
- case 25: fGridY=rDGR.GetF(); break;
- case 16: aDirection.fx=rDGR.GetF(); break;
- case 26: aDirection.fy=rDGR.GetF(); break;
- case 36: aDirection.fz=rDGR.GetF(); break;
- case 17: aTarget.fx=rDGR.GetF(); break;
- case 27: aTarget.fy=rDGR.GetF(); break;
- case 37: aTarget.fz=rDGR.GetF(); break;
- case 40: fHeight=rDGR.GetF(); break;
- case 41: fAspectRatio=rDGR.GetF(); break;
- case 42: fLensLength=rDGR.GetF(); break;
- case 43: fFrontClipPlane=rDGR.GetF(); break;
- case 44: fBackClipPlane=rDGR.GetF(); break;
- case 51: fTwistAngle=rDGR.GetF(); break;
- case 68: nStatus=rDGR.GetI(); break;
- case 69: nID=rDGR.GetI(); break;
- case 71: nMode=rDGR.GetI(); break;
- case 72: nCircleZoomPercent=rDGR.GetI(); break;
- case 73: nFastZoom=rDGR.GetI(); break;
- case 74: nUCSICON=rDGR.GetI(); break;
- case 75: nSnap=rDGR.GetI(); break;
- case 76: nGrid=rDGR.GetI(); break;
- case 77: nSnapStyle=rDGR.GetI(); break;
- case 78: nSnapIsopair=rDGR.GetI(); break;
+ while (rDGR.Read()!=0)
+ {
+ switch(rDGR.GetG())
+ {
+ case 2:
+ strncpy( sName, rDGR.GetS(), DXF_MAX_STRING_LEN);
+ sName[DXF_MAX_STRING_LEN] = 0;
+ break;
+ case 10: fMinX=rDGR.GetF(); break;
+ case 11: fMaxX=rDGR.GetF(); break;
+ case 12: fCenterX=rDGR.GetF(); break;
+ case 13: fSnapBaseX=rDGR.GetF(); break;
+ case 14: fSnapSapcingX=rDGR.GetF(); break;
+ case 15: fGridX=rDGR.GetF(); break;
+ case 16: aDirection.fx=rDGR.GetF(); break;
+ case 17: aTarget.fx=rDGR.GetF(); break;
+ case 20: fMinY=rDGR.GetF(); break;
+ case 21: fMaxY=rDGR.GetF(); break;
+ case 22: fCenterY=rDGR.GetF(); break;
+ case 23: fSnapBaseY=rDGR.GetF(); break;
+ case 24: fSnapSpacingY=rDGR.GetF(); break;
+ case 25: fGridY=rDGR.GetF(); break;
+ case 26: aDirection.fy=rDGR.GetF(); break;
+ case 27: aTarget.fy=rDGR.GetF(); break;
+ case 36: aDirection.fz=rDGR.GetF(); break;
+ case 37: aTarget.fz=rDGR.GetF(); break;
+ case 40: fHeight=rDGR.GetF(); break;
+ case 41: fAspectRatio=rDGR.GetF(); break;
+ case 42: fLensLength=rDGR.GetF(); break;
+ case 43: fFrontClipPlane=rDGR.GetF(); break;
+ case 44: fBackClipPlane=rDGR.GetF(); break;
+ case 51: fTwistAngle=rDGR.GetF(); break;
+ case 68: nStatus=rDGR.GetI(); break;
+ case 69: nID=rDGR.GetI(); break;
+ case 70: nFlags=rDGR.GetI(); break;
+ case 71: nMode=rDGR.GetI(); break;
+ case 72: nCircleZoomPercent=rDGR.GetI(); break;
+ case 73: nFastZoom=rDGR.GetI(); break;
+ case 74: nUCSICON=rDGR.GetI(); break;
+ case 75: nSnap=rDGR.GetI(); break;
+ case 76: nGrid=rDGR.GetI(); break;
+ case 77: nSnapStyle=rDGR.GetI(); break;
+ case 78: nSnapIsopair=rDGR.GetI(); break;
}
}
}
diff --git a/filter/source/graphicfilter/ipbm/ipbm.cxx b/filter/source/graphicfilter/ipbm/ipbm.cxx
index abb28ef99b79..6f5fcce96f04 100644
--- a/filter/source/graphicfilter/ipbm/ipbm.cxx
+++ b/filter/source/graphicfilter/ipbm/ipbm.cxx
@@ -380,7 +380,7 @@ sal_Bool PBMReader::ImplReadBody()
nCount--;
if ( nGrey <= mnMaxVal )
nGrey = 255 * nGrey / mnMaxVal;
- mpAcc->SetPixel( nHeight, nWidth++, (sal_uInt8)nGrey );
+ mpAcc->SetPixel( nHeight, nWidth++, (sal_uInt8)nGrey );
nGrey = 0;
if ( nWidth == mnWidth )
{
diff --git a/filter/source/graphicfilter/itga/itga.cxx b/filter/source/graphicfilter/itga/itga.cxx
index 7a00af411362..01e18aca87bc 100644
--- a/filter/source/graphicfilter/itga/itga.cxx
+++ b/filter/source/graphicfilter/itga/itga.cxx
@@ -182,6 +182,9 @@ sal_Bool TGAReader::ImplReadHeader()
mpFileHeader->nColorMapXOrigin >> mpFileHeader->nColorMapYOrigin >> mpFileHeader->nImageWidth >>
mpFileHeader->nImageHeight >> mpFileHeader->nPixelDepth >> mpFileHeader->nImageDescriptor;
+ if ( !m_rTGA.good())
+ return sal_False;
+
if ( mpFileHeader->nColorMapType > 1 )
return sal_False;
if ( mpFileHeader->nColorMapType == 1 )
@@ -200,6 +203,10 @@ sal_Bool TGAReader::ImplReadHeader()
mpFileFooter->nSignature[0] >> mpFileFooter->nSignature[1] >> mpFileFooter->nSignature[2] >>
mpFileFooter->nSignature[3] >> mpFileFooter->nPadByte >> mpFileFooter->nStringTerminator;
+
+ if ( !m_rTGA.good())
+ return sal_False;
+
// check for sal_True, VISI, ON-X, FILE in the signatures
if ( mpFileFooter->nSignature[ 0 ] == (('T'<<24)|('R'<<16)|('U'<<8)|'E') &&
mpFileFooter->nSignature[ 1 ] == (('V'<<24)|('I'<<16)|('S'<<8)|'I') &&
@@ -211,6 +218,8 @@ sal_Bool TGAReader::ImplReadHeader()
{
m_rTGA.Seek( mpFileFooter->nExtensionFileOffset );
m_rTGA >> mpExtension->nExtensionSize;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( mpExtension->nExtensionSize >= SizeOfTGAExtension )
{
mnTGAVersion = 2;
@@ -228,6 +237,8 @@ sal_Bool TGAReader::ImplReadHeader()
>> mpExtension->nPostageStampOffset >> mpExtension->nScanLineOffset
>> mpExtension->nAttributesType;
+ if ( !m_rTGA.good())
+ return sal_False;
}
}
}
@@ -309,6 +320,8 @@ sal_Bool TGAReader::ImplReadBody()
while ( nYCount < mpFileHeader->nImageHeight )
{
m_rTGA >> nRunCount;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nRunCount & 0x80 ) // a run length packet
{
m_rTGA >> nRGB16;
@@ -317,6 +330,8 @@ sal_Bool TGAReader::ImplReadBody()
nRed = (sal_uInt8)( mpColorMap[ nRGB16 ] >> 16 );
nGreen = (sal_uInt8)( mpColorMap[ nRGB16 ] >> 8 );
nBlue = (sal_uInt8)( mpColorMap[ nRGB16 ] );
+ if ( !m_rTGA.good())
+ return sal_False;
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
{
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
@@ -339,11 +354,15 @@ sal_Bool TGAReader::ImplReadBody()
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
{
m_rTGA >> nRGB16;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nRGB16 >= mpFileHeader->nColorMapLength )
return sal_False;
nRed = (sal_uInt8)( mpColorMap[ nRGB16 ] >> 16 );
nGreen = (sal_uInt8)( mpColorMap[ nRGB16 ] >> 8 );
nBlue = (sal_uInt8)( mpColorMap[ nRGB16 ] );
+ if ( !m_rTGA.good())
+ return sal_False;
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
nX += nXAdd;
nXCount++;
@@ -367,9 +386,13 @@ sal_Bool TGAReader::ImplReadBody()
while ( nYCount < mpFileHeader->nImageHeight )
{
m_rTGA >> nRunCount;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nRunCount & 0x80 ) // a run length packet
{
m_rTGA >> nDummy;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nDummy >= mpFileHeader->nColorMapLength )
return sal_False;
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
@@ -395,6 +418,8 @@ sal_Bool TGAReader::ImplReadBody()
{
m_rTGA >> nDummy;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nDummy >= mpFileHeader->nColorMapLength )
return sal_False;
mpAcc->SetPixel( nY, nX, (sal_uInt8)nDummy );
@@ -428,9 +453,13 @@ sal_Bool TGAReader::ImplReadBody()
while ( nYCount < mpFileHeader->nImageHeight )
{
m_rTGA >> nRunCount;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nRunCount & 0x80 ) // a run length packet
{
m_rTGA >> nBlue >> nGreen >> nRed >> nDummy;
+ if ( !m_rTGA.good())
+ return sal_False;
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
{
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
@@ -453,6 +482,8 @@ sal_Bool TGAReader::ImplReadBody()
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
{
m_rTGA >> nBlue >> nGreen >> nRed >> nDummy;
+ if ( !m_rTGA.good())
+ return sal_False;
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
nX += nXAdd;
nXCount++;
@@ -477,9 +508,13 @@ sal_Bool TGAReader::ImplReadBody()
while ( nYCount < mpFileHeader->nImageHeight )
{
m_rTGA >> nRunCount;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nRunCount & 0x80 ) // a run length packet
{
m_rTGA >> nBlue >> nGreen >> nRed;
+ if ( !m_rTGA.good())
+ return sal_False;
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
{
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
@@ -502,6 +537,8 @@ sal_Bool TGAReader::ImplReadBody()
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
{
m_rTGA >> nBlue >> nGreen >> nRed;
+ if ( !m_rTGA.good())
+ return sal_False;
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
nX += nXAdd;
nXCount++;
@@ -525,9 +562,13 @@ sal_Bool TGAReader::ImplReadBody()
while ( nYCount < mpFileHeader->nImageHeight )
{
m_rTGA >> nRunCount;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nRunCount & 0x80 ) // a run length packet
{
m_rTGA >> nRGB16;
+ if ( !m_rTGA.good())
+ return sal_False;
nRed = (sal_uInt8)( nRGB16 >> 7 ) & 0xf8;
nGreen = (sal_uInt8)( nRGB16 >> 2 ) & 0xf8;
nBlue = (sal_uInt8)( nRGB16 << 3 ) & 0xf8;
@@ -553,6 +594,8 @@ sal_Bool TGAReader::ImplReadBody()
for ( sal_uInt16 i = 0; i < ( ( nRunCount & 0x7f ) + 1 ); i++ )
{
m_rTGA >> nRGB16;
+ if ( !m_rTGA.good())
+ return sal_False;
nRed = (sal_uInt8)( nRGB16 >> 7 ) & 0xf8;
nGreen = (sal_uInt8)( nRGB16 >> 2 ) & 0xf8;
nBlue = (sal_uInt8)( nRGB16 << 3 ) & 0xf8;
@@ -595,6 +638,8 @@ sal_Bool TGAReader::ImplReadBody()
for (;nXCount < mpFileHeader->nImageWidth; nXCount++, nX += nXAdd )
{
m_rTGA >> nRGB16;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nRGB16 >= mpFileHeader->nColorMapLength )
return sal_False;
nRed = (sal_uInt8)( mpColorMap[ nRGB16 ] >> 16 );
@@ -609,6 +654,8 @@ sal_Bool TGAReader::ImplReadBody()
for (;nXCount < mpFileHeader->nImageWidth; nXCount++, nX += nXAdd )
{
m_rTGA >> nDummy;
+ if ( !m_rTGA.good())
+ return sal_False;
if ( nDummy >= mpFileHeader->nColorMapLength )
return sal_False;
mpAcc->SetPixel( nY, nX, (sal_uInt8)nDummy );
@@ -628,6 +675,8 @@ sal_Bool TGAReader::ImplReadBody()
for (;nXCount < mpFileHeader->nImageWidth; nXCount++, nX += nXAdd )
{
m_rTGA >> nBlue >> nGreen >> nRed >> nDummy;
+ if ( !m_rTGA.good())
+ return sal_False;
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
}
}
@@ -638,6 +687,8 @@ sal_Bool TGAReader::ImplReadBody()
for (;nXCount < mpFileHeader->nImageWidth; nXCount++, nX += nXAdd )
{
m_rTGA >> nBlue >> nGreen >> nRed;
+ if ( !m_rTGA.good())
+ return sal_False;
mpAcc->SetPixel( nY, nX, BitmapColor( nRed, nGreen, nBlue ) );
}
break;
@@ -647,6 +698,8 @@ sal_Bool TGAReader::ImplReadBody()
for (;nXCount < mpFileHeader->nImageWidth; nXCount++, nX += nXAdd )
{
m_rTGA >> nRGB16;
+ if ( !m_rTGA.good())
+ return sal_False;
nRed = (sal_uInt8)( nRGB16 >> 7 ) & 0xf8;
nGreen = (sal_uInt8)( nRGB16 >> 2 ) & 0xf8;
nBlue = (sal_uInt8)( nRGB16 << 3 ) & 0xf8;
@@ -713,6 +766,8 @@ sal_Bool TGAReader::ImplReadPalette()
{
sal_uInt16 nTemp;
m_rTGA >> nTemp;
+ if ( !m_rTGA.good() )
+ return sal_False;
mpColorMap[ i ] = ( ( nTemp & 0x7c00 ) << 9 ) + ( ( nTemp & 0x01e0 ) << 6 ) +
( ( nTemp & 0x1f ) << 3 );
}
diff --git a/filter/source/msfilter/dffpropset.cxx b/filter/source/msfilter/dffpropset.cxx
new file mode 100644
index 000000000000..c3ade4dfc055
--- /dev/null
+++ b/filter/source/msfilter/dffpropset.cxx
@@ -0,0 +1,1344 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
+
+#include <filter/msfilter/dffpropset.hxx>
+#include <rtl/ustrbuf.hxx>
+
+static const DffPropSetEntry mso_PropSetDefaults[] = {
+
+// 0
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+
+// 64
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0 }, // DFF_Prop_LockAgainstGrouping
+
+// 128
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x0010 }, // DFF_Prop_FitTextToShape
+
+// 192
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0 }, // DFF_Prop_gtextFStrikethrough
+
+//256
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0 }, // DFF_Prop_pictureActive
+
+// 320
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x0039 }, // DFF_Prop_fFillOK
+
+// 384
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0xffffff }, // DFF_Prop_fillColor
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x001c }, // DFF_Prop_fNoFillHitTest
+
+// 448
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x001e }, // DFF_Prop_fNoLineDrawDash
+
+// 512
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0 }, // DFF_Prop_fshadowObscured
+
+// 576
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0 }, // DFF_Prop_fPerspective
+
+// 640
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x0001 }, // DFF_Prop_fc3DLightFace
+
+// 704
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x0016 }, // DFF_Prop_fc3DFillHarsh
+
+// 768
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0 }, // DFF_Prop_fBackground
+
+// 832
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x0010 }, // DFF_Prop_fCalloutLengthSpecified
+
+// 896
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { true, false, false, true }, 0, 0x0001 }, // DFF_Prop_fPrint
+
+// 960
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 },
+{ { false, false, false, false }, 0, 0 }
+
+};
+
+DffPropSet::DffPropSet()
+{
+ mpPropSetEntries = reinterpret_cast< DffPropSetEntry* >( new sal_uInt8[ 1024 * sizeof( DffPropSetEntry ) ] );
+}
+
+DffPropSet::~DffPropSet()
+{
+ delete[] reinterpret_cast< sal_uInt8* >( mpPropSetEntries );
+}
+
+void DffPropSet::ReadPropSet( SvStream& rIn, bool bSetUninitializedOnly )
+{
+ DffRecordHeader aHd;
+ rIn >> aHd;
+
+ if ( !bSetUninitializedOnly )
+ {
+ InitializePropSet( aHd.nRecType );
+ maOffsets.clear();
+ }
+
+ sal_uInt32 nPropCount = aHd.nRecInstance;
+
+ // FilePos der ComplexData merken
+ sal_uInt32 nComplexDataFilePos = rIn.Tell() + ( nPropCount * 6 );
+
+ for( sal_uInt32 nPropNum = 0; nPropNum < nPropCount; nPropNum++ )
+ {
+ sal_uInt16 nTmp;
+ sal_uInt32 nRecType, nContent;
+ rIn >> nTmp
+ >> nContent;
+
+ nRecType = nTmp & 0x3fff;
+
+ if ( nRecType > 0x3ff )
+ break;
+ if ( ( nRecType & 0x3f ) == 0x3f )
+ {
+ if ( bSetUninitializedOnly )
+ {
+ sal_uInt32 nCurrentFlags = mpPropSetEntries[ nRecType ].nContent;
+ sal_uInt32 nMergeFlags = nContent;
+
+ nMergeFlags &= ( nMergeFlags >> 16 ) | 0xffff0000; // clearing low word
+ nMergeFlags &= ( ( nCurrentFlags & 0xffff0000 ) // remove allready hard set
+ | ( nCurrentFlags >> 16 ) ) ^ 0xffffffff; // attributes from mergeflags
+ nCurrentFlags &= ( ( nMergeFlags & 0xffff0000 ) // apply zero master bits
+ | ( nMergeFlags >> 16 ) ) ^ 0xffffffff;
+ nCurrentFlags |= (sal_uInt16)nMergeFlags; // apply filled master bits
+ mpPropSetEntries[ nRecType ].nContent = nCurrentFlags;
+ mpPropSetEntries[ nRecType ].nComplexIndexOrFlagsHAttr |= static_cast< sal_uInt16 >( nContent >> 16 );
+ }
+ else
+ {
+ // clear flags that have to be cleared
+ mpPropSetEntries[ nRecType ].nContent &= ( ( nContent >> 16 ) ^ 0xffffffff );
+ // set flags that have to be set
+ mpPropSetEntries[ nRecType ].nContent |= nContent;
+ mpPropSetEntries[ nRecType ].nComplexIndexOrFlagsHAttr = static_cast< sal_uInt16 >( nContent >> 16 );
+ }
+ }
+ else
+ {
+ bool bSetProperty = !bSetUninitializedOnly || ( !IsProperty( nRecType ) || !IsHardAttribute( nRecType ) );
+
+ DffPropFlags aPropFlag = { 1, 0, 0, 0 };
+ if ( nTmp & 0x4000 )
+ aPropFlag.bBlip = sal_True;
+ if ( nTmp & 0x8000 )
+ aPropFlag.bComplex = sal_True;
+ if ( aPropFlag.bComplex && nContent && ( nComplexDataFilePos < aHd.GetRecEndFilePos() ) )
+ {
+ // normally nContent is the complete size of the complex property,
+ // but this is not always true for IMsoArrays ( what the hell is a IMsoArray ? )
+
+ // I love special threatments :-(
+ if ( ( nRecType == DFF_Prop_pVertices ) || ( nRecType == DFF_Prop_pSegmentInfo )
+ || ( nRecType == DFF_Prop_fillShadeColors ) || ( nRecType == DFF_Prop_lineDashStyle )
+ || ( nRecType == DFF_Prop_pWrapPolygonVertices ) || ( nRecType == DFF_Prop_connectorPoints )
+ || ( nRecType == DFF_Prop_Handles ) || ( nRecType == DFF_Prop_pFormulas )
+ || ( nRecType == DFF_Prop_textRectangles ) )
+ {
+ // now check if the current content size is possible, or 6 bytes too small
+ sal_uInt32 nOldPos = rIn.Tell();
+ sal_Int16 nNumElem, nNumElemReserved, nSize;
+
+ rIn.Seek( nComplexDataFilePos );
+ rIn >> nNumElem >> nNumElemReserved >> nSize;
+ if ( nNumElemReserved >= nNumElem )
+ {
+ // the size of these array elements is nowhere defined,
+ // what if the size is negative ?
+ // ok, we will make it positive and shift it.
+ // for -16 this works
+ if ( nSize < 0 )
+ nSize = ( -nSize ) >> 2;
+ sal_uInt32 nDataSize = (sal_uInt32)( nSize * nNumElem );
+
+ // sometimes the content size is 6 bytes too small (array header information is missing )
+ if ( nDataSize == nContent )
+ nContent += 6;
+
+ // check if array fits into the PropertyContainer
+ if ( ( nComplexDataFilePos + nContent ) > aHd.GetRecEndFilePos() )
+ nContent = 0;
+ }
+ else
+ nContent = 0;
+ rIn.Seek( nOldPos );
+ }
+ if ( nContent )
+ {
+ if ( bSetProperty )
+ {
+ mpPropSetEntries[ nRecType ].nComplexIndexOrFlagsHAttr = static_cast< sal_uInt16 >( maOffsets.size() );
+ maOffsets.push_back( nComplexDataFilePos ); // insert the filepos of this property;
+ }
+ nComplexDataFilePos += nContent; // store filepos, that is used for the next complex property
+ }
+ else // a complex property needs content
+ aPropFlag.bSet = sal_False; // otherwise something is wrong
+ }
+ if ( bSetProperty )
+ {
+ mpPropSetEntries[ nRecType ].nContent = nContent;
+ mpPropSetEntries[ nRecType ].aFlags = aPropFlag;
+ }
+ }
+ }
+ aHd.SeekToEndOfRecord( rIn );
+}
+
+SvStream& operator>>( SvStream& rIn, DffPropSet& rRec )
+{
+ rRec.ReadPropSet( rIn, false );
+ return rIn;
+}
+
+SvStream& operator|=( SvStream& rIn, DffPropSet& rRec )
+{
+ rRec.ReadPropSet( rIn, true );
+ return rIn;
+}
+
+void DffPropSet::InitializePropSet( sal_uInt16 nPropSetType ) const
+{
+ /*
+ cmc:
+ " Boolean properties are grouped in bitfields by property set; note that
+ the Boolean properties in each property set are contiguous. They are saved
+ under the property ID of the last Boolean property in the set, and are
+ placed in the value field in reverse order starting with the last property
+ in the low bit. "
+
+ e.g.
+
+ fEditedWrap
+ fBehindDocument
+ fOnDblClickNotify
+ fIsButton
+ fOneD
+ fHidden
+ fPrint
+
+ are all part of a group and all are by default false except for fPrint,
+ which equates to a default bit sequence for the group of 0000001 -> 0x1
+
+ If at a later stage word sets fBehindDocument away from the default it
+ will be done by having a property named fPrint whose bitsequence will have
+ the fBehindDocument bit set. e.g. a DFF_Prop_fPrint with value 0x200020
+ has set bit 6 on so as to enable fBehindDocument (as well as disabling
+ everything else)
+ */
+ if ( nPropSetType == DFF_msofbtOPT )
+ {
+ memcpy( mpPropSetEntries, mso_PropSetDefaults, 0x400 * sizeof( DffPropSetEntry ) );
+ }
+ else
+ {
+ memset( mpPropSetEntries, 0, 0x400 * sizeof( DffPropSetEntry ) );
+ }
+}
+
+sal_Bool DffPropSet::IsHardAttribute( sal_uInt32 nId ) const
+{
+ sal_Bool bRetValue = sal_True;
+ nId &= 0x3ff;
+ if ( ( nId & 0x3f ) >= 48 ) // is this a flag id
+ bRetValue = ( mpPropSetEntries[ nId ].nComplexIndexOrFlagsHAttr & ( 1 << ( 0xf - ( nId & 0xf ) ) ) ) != 0;
+ else
+ bRetValue = ( mpPropSetEntries[ nId ].aFlags.bSoftAttr == 0 );
+ return bRetValue;
+};
+
+sal_uInt32 DffPropSet::GetPropertyValue( sal_uInt32 nId, sal_uInt32 nDefault ) const
+{
+ nId &= 0x3ff;
+ return ( mpPropSetEntries[ nId ].aFlags.bSet ) ? mpPropSetEntries[ nId ].nContent : nDefault;
+};
+
+bool DffPropSet::GetPropertyBool( sal_uInt32 nId, bool bDefault ) const
+{
+ sal_uInt32 nBaseId = nId | 31; // base ID to get the sal_uInt32 property value
+ sal_uInt32 nMask = 1 << (nBaseId - nId); // bit mask of the boolean property
+
+ sal_uInt32 nPropValue = GetPropertyValue( nBaseId, bDefault ? nMask : 0 );
+ return (nPropValue & nMask) != 0;
+}
+
+::rtl::OUString DffPropSet::GetPropertyString( sal_uInt32 nId, SvStream& rStrm ) const
+{
+ sal_Size nOldPos = rStrm.Tell();
+ ::rtl::OUStringBuffer aBuffer;
+ sal_uInt32 nBufferSize = GetPropertyValue( nId );
+ if( (nBufferSize > 0) && SeekToContent( nId, rStrm ) )
+ {
+ sal_Int32 nStrLen = static_cast< sal_Int32 >( nBufferSize / 2 );
+ //clip initial size of buffer to something sane in case of silly length
+ //strings. If there really is a silly amount of data available it still
+ //works out ok of course
+ aBuffer.ensureCapacity(std::min(nStrLen,static_cast<sal_Int32>(8192)));
+ for( sal_Int32 nCharIdx = 0; nCharIdx < nStrLen; ++nCharIdx )
+ {
+ sal_uInt16 nChar = 0;
+ rStrm >> nChar;
+ if( nChar > 0 )
+ aBuffer.append( static_cast< sal_Unicode >( nChar ) );
+ else
+ break;
+ }
+ }
+ rStrm.Seek( nOldPos );
+ return aBuffer.makeStringAndClear();
+}
+
+void DffPropSet::SetPropertyValue( sal_uInt32 nId, sal_uInt32 nValue ) const
+{
+ nId &= 0x3ff;
+ mpPropSetEntries[ nId ].aFlags.bSet = true;
+ mpPropSetEntries[ nId ].nContent = nValue;
+};
+
+sal_Bool DffPropSet::SeekToContent( sal_uInt32 nRecType, SvStream& rStrm ) const
+{
+ nRecType &= 0x3ff;
+ if ( mpPropSetEntries[ nRecType ].aFlags.bSet )
+ {
+ if ( mpPropSetEntries[ nRecType ].aFlags.bComplex )
+ {
+ sal_uInt16 nIndex = mpPropSetEntries[ nRecType ].nComplexIndexOrFlagsHAttr;
+ if ( nIndex < maOffsets.size() )
+ {
+ rStrm.Seek( maOffsets[ nIndex ] );
+ return sal_True;
+ }
+ }
+ }
+ return sal_False;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/rdbmaker/source/codemaker/options.cxx b/filter/source/msfilter/dffrecordheader.cxx
index 19fcc33e3fd0..74c2c8566456 100644
--- a/rdbmaker/source/codemaker/options.cxx
+++ b/filter/source/msfilter/dffrecordheader.cxx
@@ -17,44 +17,25 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <codemaker/options.hxx>
+#include <filter/msfilter/dffrecordheader.hxx>
-using ::rtl::OString;
-Options::Options()
+SvStream& operator>>( SvStream& rIn, DffRecordHeader& rRec )
{
+ rRec.nFilePos = rIn.Tell();
+ sal_uInt16 nTmp(0);
+ rIn >> nTmp;
+ rRec.nImpVerInst = nTmp;
+ rRec.nRecVer = sal::static_int_cast< sal_uInt8 >(nTmp & 0x000F);
+ rRec.nRecInstance = nTmp >> 4;
+ rIn >> rRec.nRecType;
+ rIn >> rRec.nRecLen;
+
+ // preserving overflow, optimally we would check
+ // the record size against the parent header
+ if ( rRec.nRecLen > ( SAL_MAX_UINT32 - rRec.nFilePos ) )
+ rIn.SetError( SVSTREAM_FILEFORMAT_ERROR );
+
+ return rIn;
}
-Options::~Options()
-{
-
-}
-
-const OString& Options::getProgramName() const
-{
- return m_program;
-}
-
-sal_Bool Options::isValid(const OString& option)
-{
- return (m_options.count(option) > 0);
-}
-
-const OString Options::getOption(const OString& option)
- throw( IllegalArgument )
-{
- if (m_options.count(option) > 0)
- {
- return m_options[option];
- } else
- {
- throw IllegalArgument("Option is not valid or currently not set.");
- }
-}
-
-const StringVector& Options::getInputFiles()
-{
- return m_inputFiles;
-}
-
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/filter/source/msfilter/escherex.cxx b/filter/source/msfilter/escherex.cxx
index fd2ef5288f6b..33314f4c70f8 100644
--- a/filter/source/msfilter/escherex.cxx
+++ b/filter/source/msfilter/escherex.cxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "eschesdo.hxx"
#include <filter/msfilter/escherex.hxx>
@@ -54,6 +45,7 @@
#include <com/sun/star/awt/Gradient.hpp>
#include <com/sun/star/drawing/LineStyle.hpp>
#include <com/sun/star/drawing/LineJoint.hpp>
+#include <com/sun/star/drawing/LineCap.hpp>
#include <com/sun/star/drawing/FillStyle.hpp>
#include <com/sun/star/drawing/LineDash.hpp>
#include <com/sun/star/drawing/BezierPoint.hpp>
@@ -849,6 +841,35 @@ void EscherPropertyContainer::CreateLineProperties(
AddOpt( ESCHER_Prop_lineEndArrowhead, eLineEnd );
nLineFlags |= 0x100010;
}
+
+ // support LineCaps
+ if(EscherPropertyValueHelper::GetPropertyValue(aAny, rXPropSet, String(RTL_CONSTASCII_USTRINGPARAM("LineCap")), sal_False))
+ {
+ ::com::sun::star::drawing::LineCap aLineCap(com::sun::star::drawing::LineCap_BUTT);
+
+ if(aAny >>= aLineCap)
+ {
+ switch (aLineCap)
+ {
+ default: /* com::sun::star::drawing::LineCap_BUTT */
+ {
+ AddOpt(ESCHER_Prop_lineEndCapStyle, ESCHER_LineEndCapFlat);
+ break;
+ }
+ case com::sun::star::drawing::LineCap_ROUND:
+ {
+ AddOpt(ESCHER_Prop_lineEndCapStyle, ESCHER_LineEndCapRound);
+ break;
+ }
+ case com::sun::star::drawing::LineCap_SQUARE:
+ {
+ AddOpt(ESCHER_Prop_lineEndCapStyle, ESCHER_LineEndCapSquare);
+ break;
+ }
+ }
+ }
+ }
+
if ( EscherPropertyValueHelper::GetPropertyValue(
aAny, rXPropSet, String( RTL_CONSTASCII_USTRINGPARAM( "LineStyle" ) ), sal_False ) )
{
@@ -4091,7 +4112,8 @@ sal_uInt32 EscherConnectorListEntry::GetConnectorRule( sal_Bool bFirst )
}
else if ( nGluePointType == com::sun::star::drawing::EnhancedCustomShapeGluePointType::SEGMENTS )
{
- SdrObject* pPoly = pCustoShape->DoConvertToPolyObj( sal_True );
+ // FIXME_REMOVE_WHEN_RE_BASE_COMPLETE
+ SdrObject* pPoly = pCustoShape->DoConvertToPolyObj( sal_True /*, true */ );
if ( pPoly && pPoly->ISA( SdrPathObj ) )
{
sal_Int16 a, b, nIndex = 0;
diff --git a/filter/source/msfilter/msdffimp.cxx b/filter/source/msfilter/msdffimp.cxx
index 066c84922569..9081122bb4ce 100644
--- a/filter/source/msfilter/msdffimp.cxx
+++ b/filter/source/msfilter/msdffimp.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <com/sun/star/embed/Aspects.hpp>
@@ -41,6 +31,8 @@
#include <unotools/streamwrap.hxx>
#include <comphelper/processfactory.hxx>
#include <comphelper/string.hxx>
+#include <comphelper/seqstream.hxx>
+#include <comphelper/storagehelper.hxx>
#include <sot/exchange.hxx>
#include <sot/storinfo.hxx>
#include <vcl/cvtgrf.hxx>
@@ -205,319 +197,11 @@ void Impl_OlePres::Write( SvStream & rStm )
rStm.Seek( nEndPos );
}
-//---------------------------------------------------------------------------
-// Hilfs Klassen aus MSDFFDEF.HXX
-//---------------------------------------------------------------------------
-
-SvStream& operator>>( SvStream& rIn, DffRecordHeader& rRec )
-{
- rRec.nFilePos = rIn.Tell();
- sal_uInt16 nTmp(0);
- rIn >> nTmp;
- rRec.nImpVerInst = nTmp;
- rRec.nRecVer = sal::static_int_cast< sal_uInt8 >(nTmp & 0x000F);
- rRec.nRecInstance = nTmp >> 4;
- rIn >> rRec.nRecType;
- rIn >> rRec.nRecLen;
- return rIn;
-}
-
-SvStream& operator>>( SvStream& rIn, DffPropSet& rRec )
-{
- rRec.InitializePropSet();
-
- DffRecordHeader aHd;
- rIn >> aHd;
- sal_uInt32 nPropCount = aHd.nRecInstance;
-
- // remember FilePos of the ComplexData
- sal_uInt32 nComplexDataFilePos = rIn.Tell() + ( nPropCount * 6 );
-
- for( sal_uInt32 nPropNum = 0; nPropNum < nPropCount; nPropNum++ )
- {
- sal_uInt16 nTmp;
- sal_uInt32 nRecType, nContent, nContentEx = 0xffff0000;
- rIn >> nTmp
- >> nContent;
-
- nRecType = nTmp & 0x3fff;
-
- if ( nRecType > 0x3ff )
- break;
- if ( ( nRecType & 0x3f ) == 0x3f )
- { // clear flags that have to be cleared
- rRec.mpContents[ nRecType ] &= ( ( nContent >> 16 ) ^ 0xffffffff );
- // set flags that have to be set
- rRec.mpContents[ nRecType ] |= nContent;
- nContentEx |= ( nContent >> 16 );
- rRec.maRecordTypes[ nRecType ] = nContentEx;
- }
- else
- {
- DffPropFlags aPropFlag = { 1, 0, 0, 0 };
- if ( nTmp & 0x4000 )
- aPropFlag.bBlip = sal_True;
- if ( nTmp & 0x8000 )
- aPropFlag.bComplex = sal_True;
- if ( aPropFlag.bComplex && nContent && ( nComplexDataFilePos < aHd.GetRecEndFilePos() ) )
- {
- // normally nContent is the complete size of the complex property,
- // but this is not always true for IMsoArrays ( what the hell is a IMsoArray ? )
-
- // I love special treatments :-(
- if ( ( nRecType == DFF_Prop_pVertices ) || ( nRecType == DFF_Prop_pSegmentInfo )
- || ( nRecType == DFF_Prop_fillShadeColors ) || ( nRecType == DFF_Prop_lineDashStyle )
- || ( nRecType == DFF_Prop_pWrapPolygonVertices ) || ( nRecType == DFF_Prop_connectorPoints )
- || ( nRecType == DFF_Prop_Handles ) || ( nRecType == DFF_Prop_pFormulas )
- || ( nRecType == DFF_Prop_textRectangles ) )
- {
- // now check if the current content size is possible, or 6 bytes too small
- sal_uInt32 nOldPos = rIn.Tell();
- sal_Int16 nNumElem, nNumElemReserved, nSize;
-
- rIn.Seek( nComplexDataFilePos );
- rIn >> nNumElem >> nNumElemReserved >> nSize;
- if ( nNumElemReserved >= nNumElem )
- {
- // the size of these array elements is nowhere defined,
- // what if the size is negative ?
- // ok, we will make it positive and shift it.
- // for -16 this works
- if ( nSize < 0 )
- nSize = ( -nSize ) >> 2;
- sal_uInt32 nDataSize = (sal_uInt32)( nSize * nNumElem );
-
- // sometimes the content size is 6 bytes too small (array header information is missing )
- if ( nDataSize == nContent )
- nContent += 6;
-
- // check if array fits into the PropertyContainer
- if ( ( nComplexDataFilePos + nContent ) > aHd.GetRecEndFilePos() )
- nContent = 0;
- }
- else
- nContent = 0;
- rIn.Seek( nOldPos );
- }
- if ( nContent )
- {
- nContentEx = nComplexDataFilePos; // insert the filepos of this property;
- nComplexDataFilePos += nContent; // store filepos, that is used for the next complex property
- }
- else // a complex property needs content
- aPropFlag.bSet = sal_False; // otherwise something is wrong
- }
- rRec.mpContents[ nRecType ] = nContent;
- rRec.mpFlags[ nRecType ] = aPropFlag;
- rRec.maRecordTypes[ nRecType ] = nContentEx;
- }
- }
- aHd.SeekToEndOfRecord( rIn );
- return rIn;
-}
-
-void DffPropSet::InitializePropSet() const
-{
- /*
- cmc:
- " Boolean properties are grouped in bitfields by property set; note that
- the Boolean properties in each property set are contiguous. They are saved
- under the property ID of the last Boolean property in the set, and are
- placed in the value field in reverse order starting with the last property
- in the low bit. "
-
- e.g.
-
- fEditedWrap
- fBehindDocument
- fOnDblClickNotify
- fIsButton
- fOneD
- fHidden
- fPrint
-
- are all part of a group and all are by default false except for fPrint,
- which equates to a default bit sequence for the group of 0000001 -> 0x1
-
- If at a later stage word sets fBehindDocument away from the default it
- will be done by having a property named fPrint whose bitsequence will have
- the fBehindDocument bit set. e.g. a DFF_Prop_fPrint with value 0x200020
- has set bit 6 on so as to enable fBehindDocument (as well as disabling
- everything else)
- */
-
- DffPropSet* self = (DffPropSet*) this;
- memset( self->mpFlags, 0, 0x400 * sizeof(DffPropFlags) );
- self->maRecordTypes.clear();
-
- DffPropFlags nFlags = { 1, 0, 0, 1 };
-
- //0x01ff0000;
- InitializeProp( DFF_Prop_LockAgainstGrouping, 0x0000, nFlags, 0xffff0000 );
- //0x001f0010;
- InitializeProp( DFF_Prop_FitTextToShape, 0x0010, nFlags, 0xffff0000 );
- //0xffff0000;
- InitializeProp( DFF_Prop_gtextFStrikethrough, 0x0000, nFlags, 0xffff0000 );
- //0x000f0000;
- InitializeProp( DFF_Prop_pictureActive, 0x0000, nFlags, 0xffff0000 );
- //0x003f0039;
- InitializeProp( DFF_Prop_fFillOK, 0x0039, nFlags, 0xffff0000 );
- //0x001f001c;
- InitializeProp( DFF_Prop_fNoFillHitTest, 0x001c, nFlags, 0xffff0000 );
- //0x001f000e;
- InitializeProp( DFF_Prop_fNoLineDrawDash, 0x001e, nFlags, 0xffff0000 );
- //0x00030000;
- InitializeProp( DFF_Prop_fshadowObscured, 0x0000, nFlags, 0xffff0000 );
- //0x00010000;
- InitializeProp( DFF_Prop_fPerspective, 0x0000, nFlags, 0xffff0000 );
- //0x000f0001;
- InitializeProp( DFF_Prop_fc3DLightFace, 0x0001, nFlags, 0xffff0000 );
- //0x001f0016;
- InitializeProp( DFF_Prop_fc3DFillHarsh, 0x0016, nFlags, 0xffff0000 );
- //0x001f0000;
- InitializeProp( DFF_Prop_fBackground, 0x0000, nFlags, 0xffff0000 );
- //0x00ef0010;
- InitializeProp( DFF_Prop_fCalloutLengthSpecified, 0x0010, nFlags, 0xffff0000 );
- //0x00ef0001;
- InitializeProp( DFF_Prop_fPrint, 0x0001, nFlags, 0xffff0000 );
-
- InitializeProp( DFF_Prop_fillColor, 0xffffff, nFlags, 0xffff0000 );
-}
-
-void DffPropSet::InitializeProp(sal_uInt32 nKey, sal_uInt32 nContent, DffPropFlags& rFlags, sal_uInt32 nRecordType ) const
-{
- DffPropSet* self = (DffPropSet*) this;
- self->mpContents[ nKey ] = nContent;
- self->mpFlags[ nKey ] = rFlags;
- self->maRecordTypes[ nKey ] = nRecordType;
-}
-
-
-void DffPropSet::Merge( DffPropSet& rMaster ) const
-{
- for ( RecordTypesMap::const_iterator it = rMaster.maRecordTypes.begin();
- it != rMaster.maRecordTypes.end(); ++it )
- {
- sal_uInt32 nRecType = it->first;
- if ( ( nRecType & 0x3f ) == 0x3f ) // this is something called FLAGS
- {
- sal_uInt32 nCurrentFlags = mpContents[ nRecType ];
- sal_uInt32 nMergeFlags = rMaster.mpContents[ nRecType ];
- nMergeFlags &= ( nMergeFlags >> 16 ) | 0xffff0000; // clearing low word
- nMergeFlags &= ( ( nCurrentFlags & 0xffff0000 ) // remove already hard set
- | ( nCurrentFlags >> 16 ) ) ^ 0xffffffff; // attributes from mergeflags
- nCurrentFlags &= ( ( nMergeFlags & 0xffff0000 ) // apply zero master bits
- | ( nMergeFlags >> 16 ) ) ^ 0xffffffff;
- nCurrentFlags |= (sal_uInt16)nMergeFlags; // apply filled master bits
- ( (DffPropSet*) this )->mpContents[ nRecType ] = nCurrentFlags;
-
-
- sal_uInt32 nNewContentEx = it->second;
- RecordTypesMap::const_iterator it2 = maRecordTypes.find( nRecType );
- if ( it2 != maRecordTypes.end() )
- nNewContentEx |= it2->second;
- ( (DffPropSet*) this )->maRecordTypes[ nRecType ] = nNewContentEx;
- }
- else
- {
- if ( !IsProperty( nRecType ) || !IsHardAttribute( nRecType ) )
- {
- ( (DffPropSet*) this )->mpContents[ nRecType ] = rMaster.mpContents[ nRecType ];
- DffPropFlags nFlags( rMaster.mpFlags[ nRecType ] );
- nFlags.bSoftAttr = sal_True;
- ( (DffPropSet*) this )->mpFlags[ nRecType ] = nFlags;
- ( (DffPropSet*) this )->maRecordTypes[ nRecType ] = it->second;
- }
- }
- }
-}
-
-sal_Bool DffPropSet::IsHardAttribute( sal_uInt32 nId ) const
-{
- sal_Bool bRetValue = sal_True;
- nId &= 0x3ff;
- if ( ( nId & 0x3f ) >= 48 ) // is this a flag id
- {
- RecordTypesMap::const_iterator it = maRecordTypes.find( nId | 0x3f );
- if ( it != maRecordTypes.end() )
- {
- sal_uInt32 nContentEx = it->second;
- bRetValue = ( nContentEx & ( 1 << ( 0xf - ( nId & 0xf ) ) ) ) != 0;
- }
- }
- else
- bRetValue = ( mpFlags[ nId ].bSoftAttr == 0 );
- return bRetValue;
-};
-
-sal_uInt32 DffPropSet::GetPropertyValue( sal_uInt32 nId, sal_uInt32 nDefault ) const
-{
- nId &= 0x3ff;
- return ( mpFlags[ nId ].bSet ) ? mpContents[ nId ] : nDefault;
-};
-
-bool DffPropSet::GetPropertyBool( sal_uInt32 nId, bool bDefault ) const
-{
- sal_uInt32 nBaseId = nId | 31; // base ID to get the sal_uInt32 property value
- sal_uInt32 nMask = 1 << (nBaseId - nId); // bit mask of the boolean property
-
- sal_uInt32 nPropValue = GetPropertyValue( nBaseId, bDefault ? nMask : 0 );
- return (nPropValue & nMask) != 0;
-}
-
-::rtl::OUString DffPropSet::GetPropertyString( sal_uInt32 nId, SvStream& rStrm ) const
-{
- sal_Size nOldPos = rStrm.Tell();
- ::rtl::OUStringBuffer aBuffer;
- sal_uInt32 nBufferSize = GetPropertyValue( nId );
- if( (nBufferSize > 0) && SeekToContent( nId, rStrm ) )
- {
- sal_Int32 nStrLen = static_cast< sal_Int32 >( nBufferSize / 2 );
- //clip initial size of buffer to something sane in case of silly length
- //strings. If there really is a silly amount of data available it still
- //works out ok of course
- aBuffer.ensureCapacity(std::min(nStrLen,static_cast<sal_Int32>(8192)));
- for( sal_Int32 nCharIdx = 0; nCharIdx < nStrLen; ++nCharIdx )
- {
- sal_uInt16 nChar = 0;
- rStrm >> nChar;
- if( nChar > 0 )
- aBuffer.append( static_cast< sal_Unicode >( nChar ) );
- else
- break;
- }
- }
- rStrm.Seek( nOldPos );
- return aBuffer.makeStringAndClear();
-}
-
-sal_Bool DffPropSet::SeekToContent( sal_uInt32 nRecType, SvStream& rStrm ) const
-{
- nRecType &= 0x3ff;
- if ( mpFlags[ nRecType ].bSet )
- {
- if ( mpFlags[ nRecType ].bComplex )
- {
- RecordTypesMap::const_iterator it = maRecordTypes.find( nRecType );
- if ( it != maRecordTypes.end() )
- {
- sal_uInt32 nOffset = it->second;
- if ( nOffset && ( ( nOffset & 0xffff0000 ) != 0xffff0000 ) )
- {
- rStrm.Seek( nOffset );
- return sal_True;
- }
- }
- }
- }
- return sal_False;
-}
-
DffPropertyReader::DffPropertyReader( const SvxMSDffManager& rMan ) :
rManager( rMan ),
pDefaultPropSet( NULL )
{
- InitializePropSet();
+ InitializePropSet( DFF_msofbtOPT );
}
void DffPropertyReader::SetDefaultPropSet( SvStream& rStCtrl, sal_uInt32 nOffsDgg ) const
@@ -555,9 +239,7 @@ void DffPropertyReader::ReadPropSet( SvStream& rIn, void* pClientData ) const
rIn >> aRecHd;
if ( rManager.SeekToRec( rIn, DFF_msofbtOPT, aRecHd.GetRecEndFilePos() ) )
{
- DffPropSet aMasterPropSet;
- rIn >> aMasterPropSet;
- Merge( aMasterPropSet );
+ rIn |= (DffPropertyReader&)*this;
}
}
}
@@ -1217,22 +899,43 @@ void DffPropertyReader::ApplyLineAttributes( SfxItemSet& rSet, const MSO_SPT eSh
if ( nLineFlags & 8 )
{
- // Linienattribute
+ // Line Attributes
sal_Int32 nLineWidth = (sal_Int32)GetPropertyValue( DFF_Prop_lineWidth, 9525 );
+ // support LineCap
+ const MSO_LineCap eLineCap((MSO_LineCap)GetPropertyValue(DFF_Prop_lineEndCapStyle, mso_lineEndCapSquare));
+
+ switch(eLineCap)
+ {
+ default: /* case mso_lineEndCapFlat */
+ {
+ // no need to set, it is the default. If this changes, this needs to be activated
+ // rSet.Put(XLineCapItem(com::sun::star::drawing::LineCap_BUTT));
+ break;
+ }
+ case mso_lineEndCapRound:
+ {
+ rSet.Put(XLineCapItem(com::sun::star::drawing::LineCap_ROUND));
+ break;
+ }
+ case mso_lineEndCapSquare:
+ {
+ rSet.Put(XLineCapItem(com::sun::star::drawing::LineCap_SQUARE));
+ break;
+ }
+ }
+
MSO_LineDashing eLineDashing = (MSO_LineDashing)GetPropertyValue( DFF_Prop_lineDashing, mso_lineSolid );
if ( eLineDashing == mso_lineSolid )
rSet.Put(XLineStyleItem( XLINE_SOLID ) );
else
{
-// MSO_LineCap eLineCap = (MSO_LineCap)GetPropertyValue( DFF_Prop_lineEndCapStyle, mso_lineEndCapSquare );
-
XDashStyle eDash = XDASH_RECT;
sal_uInt16 nDots = 1;
sal_uInt32 nDotLen = nLineWidth / 360;
sal_uInt16 nDashes = 0;
sal_uInt32 nDashLen = ( 8 * nLineWidth ) / 360;
- sal_uInt32 nDistance = ( 3 * nLineWidth ) / 360;;
+ sal_uInt32 nDistance = ( 3 * nLineWidth ) / 360;
switch ( eLineDashing )
{
@@ -1349,24 +1052,6 @@ void DffPropertyReader::ApplyLineAttributes( SfxItemSet& rSet, const MSO_SPT eSh
rSet.Put( XLineEndItem( aArrowName, aPolyPoly ) );
rSet.Put( XLineEndCenterItem( bArrowCenter ) );
}
- if ( IsProperty( DFF_Prop_lineEndCapStyle ) )
- {
- MSO_LineCap eLineCap = (MSO_LineCap)GetPropertyValue( DFF_Prop_lineEndCapStyle );
- const SfxPoolItem* pPoolItem = NULL;
- if ( rSet.GetItemState( XATTR_LINEDASH, sal_False, &pPoolItem ) == SFX_ITEM_SET )
- {
- XDashStyle eNewStyle = XDASH_RECT;
- if ( eLineCap == mso_lineEndCapRound )
- eNewStyle = XDASH_ROUND;
- const XDash& rOldDash = ( (const XLineDashItem*)pPoolItem )->GetDashValue();
- if ( rOldDash.GetDashStyle() != eNewStyle )
- {
- XDash aNew( rOldDash );
- aNew.SetDashStyle( eNewStyle );
- rSet.Put( XLineDashItem( rtl::OUString(), aNew ) );
- }
- }
- }
}
}
else
@@ -2890,91 +2575,65 @@ void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet ) const
ApplyAttributes( rIn, rSet, aDffObjTemp );
}
-void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, const DffObjData& rObjData ) const
+void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, DffObjData& rObjData ) const
{
sal_Bool bHasShadow = sal_False;
- for ( RecordTypesMap::const_iterator it = maRecordTypes.begin(); it != maRecordTypes.end(); ++it )
+ if ( IsProperty( DFF_Prop_gtextSize ) )
+ rSet.Put( SvxFontHeightItem( rManager.ScalePt( GetPropertyValue( DFF_Prop_gtextSize ) ), 100, EE_CHAR_FONTHEIGHT ) );
+ sal_uInt32 nFontAttributes = GetPropertyValue( DFF_Prop_gtextFStrikethrough );
+ if ( nFontAttributes & 0x20 )
+ rSet.Put( SvxWeightItem( nFontAttributes & 0x20 ? WEIGHT_BOLD : WEIGHT_NORMAL, EE_CHAR_WEIGHT ) );
+ if ( nFontAttributes & 0x10 )
+ rSet.Put( SvxPostureItem( nFontAttributes & 0x10 ? ITALIC_NORMAL : ITALIC_NONE, EE_CHAR_ITALIC ) );
+ if ( nFontAttributes & 0x08 )
+ rSet.Put( SvxUnderlineItem( nFontAttributes & 0x08 ? UNDERLINE_SINGLE : UNDERLINE_NONE, EE_CHAR_UNDERLINE ) );
+ if ( nFontAttributes & 0x40 )
+ rSet.Put( SvxShadowedItem( ( nFontAttributes & 0x40 ) != 0, EE_CHAR_SHADOW ) );
+// if ( nFontAttributes & 0x02 )
+// rSet.Put( SvxCaseMapItem( nFontAttributes & 0x02 ? SVX_CASEMAP_KAPITAELCHEN : SVX_CASEMAP_NOT_MAPPED ) );
+ if ( nFontAttributes & 0x01 )
+ rSet.Put( SvxCrossedOutItem( nFontAttributes & 0x01 ? STRIKEOUT_SINGLE : STRIKEOUT_NONE, EE_CHAR_STRIKEOUT ) );
+ if ( IsProperty( DFF_Prop_fillColor ) )
+ rSet.Put( XFillColorItem( String(), rManager.MSO_CLR_ToColor( GetPropertyValue( DFF_Prop_fillColor ), DFF_Prop_fillColor ) ) );
+ if ( IsProperty( DFF_Prop_shadowType ) )
{
- sal_uInt32 nRecType = it->first;
- sal_uInt32 nContent = mpContents[ nRecType ];
- switch ( nRecType )
+ MSO_ShadowType eShadowType = static_cast< MSO_ShadowType >( GetPropertyValue( DFF_Prop_shadowType ) );
+ if( eShadowType != mso_shadowOffset )
{
- case DFF_Prop_gtextSize :
- rSet.Put( SvxFontHeightItem( rManager.ScalePt( nContent ), 100, EE_CHAR_FONTHEIGHT ) );
- break;
- // GeoText
- case DFF_Prop_gtextFStrikethrough :
- {
- if ( nContent & 0x20 )
- rSet.Put( SvxWeightItem( nContent ? WEIGHT_BOLD : WEIGHT_NORMAL, EE_CHAR_WEIGHT ) );
- if ( nContent & 0x10 )
- rSet.Put( SvxPostureItem( nContent ? ITALIC_NORMAL : ITALIC_NONE, EE_CHAR_ITALIC ) );
- if ( nContent & 0x08 )
- rSet.Put( SvxUnderlineItem( nContent ? UNDERLINE_SINGLE : UNDERLINE_NONE, EE_CHAR_UNDERLINE ) );
- if ( nContent & 0x40 )
- rSet.Put(SvxShadowedItem( nContent != 0, EE_CHAR_SHADOW ) );
- if ( nContent & 0x01 )
- rSet.Put( SvxCrossedOutItem( nContent ? STRIKEOUT_SINGLE : STRIKEOUT_NONE, EE_CHAR_STRIKEOUT ) );
- }
- break;
-
- case DFF_Prop_fillColor :
- rSet.Put( XFillColorItem( rtl::OUString(), rManager.MSO_CLR_ToColor( nContent, DFF_Prop_fillColor ) ) );
- break;
-
- // ShadowStyle
- case DFF_Prop_shadowType :
- {
- MSO_ShadowType eShadowType = (MSO_ShadowType)nContent;
- if( eShadowType != mso_shadowOffset )
- {
- // mso_shadowDouble
- // mso_shadowRich
- // mso_shadowEmbossOrEngrave
- // not possible in LibreOffice, create default shadow with default distance
- rSet.Put( SdrShadowXDistItem( 35 ) ); // 0,35 mm shadow distance
- rSet.Put( SdrShadowYDistItem( 35 ) );
- }
- }
- break;
- case DFF_Prop_shadowColor :
- rSet.Put( SdrShadowColorItem( rtl::OUString(), rManager.MSO_CLR_ToColor( nContent, DFF_Prop_shadowColor ) ) );
- break;
- case DFF_Prop_shadowOpacity :
- rSet.Put( SdrShadowTransparenceItem( (sal_uInt16)( ( 0x10000 - nContent ) / 655 ) ) );
- break;
- case DFF_Prop_shadowOffsetX :
- {
- sal_Int32 nVal = (sal_Int32)nContent;
- rManager.ScaleEmu( nVal );
- if ( nVal )
- rSet.Put( SdrShadowXDistItem( nVal ) );
- }
- break;
- case DFF_Prop_shadowOffsetY :
- {
- sal_Int32 nVal = (sal_Int32)nContent;
- rManager.ScaleEmu( nVal );
- if ( nVal )
- rSet.Put( SdrShadowYDistItem( nVal ) );
- }
- break;
- case DFF_Prop_fshadowObscured :
- {
- bHasShadow = ( nContent & 2 ) != 0;
- if ( bHasShadow )
- {
- if ( !IsProperty( DFF_Prop_shadowOffsetX ) )
- rSet.Put( SdrShadowXDistItem( 35 ) );
- if ( !IsProperty( DFF_Prop_shadowOffsetY ) )
- rSet.Put( SdrShadowYDistItem( 35 ) );
- }
- }
- break;
+ rSet.Put( SdrShadowXDistItem( 35 ) ); // 0,35 mm Schattendistanz
+ rSet.Put( SdrShadowYDistItem( 35 ) );
+ }
+ }
+ if ( IsProperty( DFF_Prop_shadowColor ) )
+ rSet.Put( SdrShadowColorItem( String(), rManager.MSO_CLR_ToColor( GetPropertyValue( DFF_Prop_shadowColor ), DFF_Prop_shadowColor ) ) );
+ if ( IsProperty( DFF_Prop_shadowOpacity ) )
+ rSet.Put( SdrShadowTransparenceItem( (sal_uInt16)( ( 0x10000 - GetPropertyValue( DFF_Prop_shadowOpacity ) ) / 655 ) ) );
+ if ( IsProperty( DFF_Prop_shadowOffsetX ) )
+ {
+ sal_Int32 nVal = static_cast< sal_Int32 >( GetPropertyValue( DFF_Prop_shadowOffsetX ) );
+ rManager.ScaleEmu( nVal );
+ if ( nVal )
+ rSet.Put( SdrShadowXDistItem( nVal ) );
+ }
+ if ( IsProperty( DFF_Prop_shadowOffsetY ) )
+ {
+ sal_Int32 nVal = static_cast< sal_Int32 >( GetPropertyValue( DFF_Prop_shadowOffsetY ) );
+ rManager.ScaleEmu( nVal );
+ if ( nVal )
+ rSet.Put( SdrShadowYDistItem( nVal ) );
+ }
+ if ( IsProperty( DFF_Prop_fshadowObscured ) )
+ {
+ bHasShadow = ( GetPropertyValue( DFF_Prop_fshadowObscured ) & 2 ) != 0;
+ if ( bHasShadow )
+ {
+ if ( !IsProperty( DFF_Prop_shadowOffsetX ) )
+ rSet.Put( SdrShadowXDistItem( 35 ) );
+ if ( !IsProperty( DFF_Prop_shadowOffsetY ) )
+ rSet.Put( SdrShadowYDistItem( 35 ) );
}
}
-
if ( bHasShadow )
{
// #160376# sj: activating shadow only if fill and or linestyle is used
@@ -3018,6 +2677,105 @@ void DffPropertyReader::ApplyAttributes( SvStream& rIn, SfxItemSet& rSet, const
{
ApplyCustomShapeGeometryAttributes( rIn, rSet, rObjData );
ApplyCustomShapeTextAttributes( rSet );
+ if ( rManager.GetSvxMSDffSettings() & SVXMSDFF_SETTINGS_IMPORT_EXCEL )
+ {
+ if ( mnFix16Angle || ( rObjData.nSpFlags & SP_FFLIPV ) )
+ CheckAndCorrectExcelTextRotation( rIn, rSet, rObjData );
+ }
+ }
+}
+
+void DffPropertyReader::CheckAndCorrectExcelTextRotation( SvStream& rIn, SfxItemSet& rSet, DffObjData& rObjData ) const
+{
+ sal_Bool bRotateTextWithShape = rObjData.bRotateTextWithShape;
+ if ( rObjData.bOpt2 ) // sj: #158494# is the second property set available ? if then we have to check the xml data of
+ { // the shape, because the textrotation of Excel 2003 and greater versions is stored there
+ // (upright property of the textbox)
+ if ( rManager.pSecPropSet->SeekToContent( DFF_Prop_metroBlob, rIn ) )
+ {
+ sal_uInt32 nLen = rManager.pSecPropSet->GetPropertyValue( DFF_Prop_metroBlob );
+ if ( nLen )
+ {
+ ::com::sun::star::uno::Sequence< sal_Int8 > aXMLDataSeq( nLen );
+ rIn.Read( aXMLDataSeq.getArray(), nLen );
+ ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream > xInputStream
+ ( new ::comphelper::SequenceInputStream( aXMLDataSeq ) );
+ try
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xFactory( ::comphelper::getProcessServiceFactory() );
+ if ( xFactory.is() )
+ {
+ ::com::sun::star::uno::Reference< com::sun::star::embed::XStorage > xStorage
+ ( ::comphelper::OStorageHelper::GetStorageOfFormatFromInputStream(
+ OFOPXML_STORAGE_FORMAT_STRING, xInputStream, xFactory, sal_True ) );
+ if ( xStorage.is() )
+ {
+ const rtl::OUString sDRS( RTL_CONSTASCII_USTRINGPARAM ( "drs" ) );
+ ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >
+ xStorageDRS( xStorage->openStorageElement( sDRS, ::com::sun::star::embed::ElementModes::SEEKABLEREAD ) );
+ if ( xStorageDRS.is() )
+ {
+ const rtl::OUString sShapeXML( RTL_CONSTASCII_USTRINGPARAM ( "shapexml.xml" ) );
+ ::com::sun::star::uno::Reference< ::com::sun::star::io::XStream > xShapeXMLStream( xStorageDRS->openStreamElement( sShapeXML, ::com::sun::star::embed::ElementModes::SEEKABLEREAD ) );
+ if ( xShapeXMLStream.is() )
+ {
+ ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream > xShapeXMLInputStream( xShapeXMLStream->getInputStream() );
+ if ( xShapeXMLInputStream.is() )
+ {
+ ::com::sun::star::uno::Sequence< sal_Int8 > aSeq;
+ sal_Int32 nBytesRead = xShapeXMLInputStream->readBytes( aSeq, 0x7fffffff );
+ if ( nBytesRead )
+ { // for only one property I spare to use a XML parser at this point, this
+ // should be enhanced if needed
+
+ bRotateTextWithShape = sal_True; // using the correct xml default
+ const char* pArry = reinterpret_cast< char* >( aSeq.getArray() );
+ const char* pUpright = "upright=";
+ const char* pEnd = pArry + nBytesRead;
+ const char* pPtr = pArry;
+ while( ( pPtr + 12 ) < pEnd )
+ {
+ if ( !memcmp( pUpright, pPtr, 8 ) )
+ {
+ bRotateTextWithShape = ( pPtr[ 9 ] != '1' ) && ( pPtr[ 9 ] != 't' );
+ break;
+ }
+ else
+ pPtr++;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ catch( com::sun::star::uno::Exception& )
+ {
+ }
+ }
+ }
+ }
+ if ( !bRotateTextWithShape )
+ {
+ const com::sun::star::uno::Any* pAny, aAny;
+ SdrCustomShapeGeometryItem aGeometryItem((SdrCustomShapeGeometryItem&)rSet.Get( SDRATTR_CUSTOMSHAPE_GEOMETRY ));
+ const rtl::OUString sTextRotateAngle( RTL_CONSTASCII_USTRINGPARAM ( "TextRotateAngle" ) );
+ pAny = aGeometryItem.GetPropertyValueByName( sTextRotateAngle );
+ double fExtraTextRotateAngle = 0.0;
+ if ( pAny )
+ *pAny >>= fExtraTextRotateAngle;
+
+ if ( rManager.mnFix16Angle )
+ fExtraTextRotateAngle += mnFix16Angle / 100.0;
+ if ( rObjData.nSpFlags & SP_FFLIPV )
+ fExtraTextRotateAngle -= 180.0;
+
+ com::sun::star::beans::PropertyValue aTextRotateAngle;
+ aTextRotateAngle.Name = sTextRotateAngle;
+ aTextRotateAngle.Value <<= fExtraTextRotateAngle;
+ aGeometryItem.SetPropertyValue( aTextRotateAngle );
+ rSet.Put( aGeometryItem );
}
}
@@ -3374,7 +3132,7 @@ sal_Bool SvxMSDffManager::SeekToShape( SvStream& rSt, void* /* pClientData */, s
bool SvxMSDffManager::SeekToRec( SvStream& rSt, sal_uInt16 nRecId, sal_uLong nMaxFilePos, DffRecordHeader* pRecHd, sal_uLong nSkipCount ) const
{
bool bRet = sal_False;
- sal_uLong nFPosMerk = rSt.Tell(); // FilePos merken fuer ggf. spaetere Restauration
+ sal_uLong nFPosMerk = rSt.Tell(); // store FilePos to restore it later if necessary
DffRecordHeader aHd;
do
{
@@ -3405,7 +3163,7 @@ bool SvxMSDffManager::SeekToRec( SvStream& rSt, sal_uInt16 nRecId, sal_uLong nMa
}
while ( rSt.good() && rSt.Tell() < nMaxFilePos && !bRet );
if ( !bRet )
- rSt.Seek( nFPosMerk ); // restore FilePos
+ rSt.Seek( nFPosMerk ); // restore original FilePos
return bRet;
}
@@ -3433,7 +3191,7 @@ bool SvxMSDffManager::SeekToRec2( sal_uInt16 nRecId1, sal_uInt16 nRecId2, sal_uL
if ( !bRet )
aHd.SeekToEndOfRecord( rStCtrl );
}
- while ( rStCtrl.GetError() == 0 && rStCtrl.Tell() < nMaxFilePos && !bRet );
+ while ( rStCtrl.good() && rStCtrl.Tell() < nMaxFilePos && !bRet );
if ( !bRet )
rStCtrl.Seek( nFPosMerk ); // restore FilePos
return bRet;
@@ -3697,32 +3455,6 @@ Color SvxMSDffManager::MSO_CLR_ToColor( sal_uInt32 nColorCode, sal_uInt16 nConte
return aColor;
}
-rtl::OUString SvxMSDffManager::ReadDffString(SvStream& rSt, DffRecordHeader aStrHd)
-{
- String aRet;
- if( aStrHd.nRecType == 0x0 && !ReadCommonRecordHeader(aStrHd, rSt) )
- rSt.Seek( aStrHd.nFilePos );
- else if ( aStrHd.nRecType == DFF_PST_TextBytesAtom || aStrHd.nRecType == DFF_PST_TextCharsAtom )
- {
- bool bUniCode=aStrHd.nRecType==DFF_PST_TextCharsAtom;
- sal_uInt32 nBytes = aStrHd.nRecLen;
- aRet = MSDFFReadZString( rSt, nBytes, bUniCode );
- if( !bUniCode )
- {
- for ( xub_StrLen n = 0; n < nBytes; n++ )
- {
- if( aRet.GetChar( n ) == 0x0B )
- aRet.SetChar( n, ' ' ); // Weicher Umbruch
- // TODO: Zeilenumbruch im Absatz via Outliner setzen.
- }
- }
- aStrHd.SeekToEndOfRecord( rSt );
- }
- else
- aStrHd.SeekToBegOfRecord( rSt );
- return aRet;
-}
-
// sj: I just want to set a string for a text object that may contain multiple
// paragraphs. If I now take a look at the follwing code I get the impression that
// our outliner is too complicate to be used properly,
@@ -3786,185 +3518,6 @@ void SvxMSDffManager::ReadObjText( const String& rText, SdrObject* pObj ) const
}
}
-bool SvxMSDffManager::ReadObjText(SvStream& rSt, SdrObject* pObj)
-{
- bool bRet=sal_False;
- SdrTextObj* pText = PTR_CAST(SdrTextObj, pObj);
- if( pText )
- {
- DffRecordHeader aTextHd;
- if( !ReadCommonRecordHeader(aTextHd, rSt) )
- rSt.Seek( aTextHd.nFilePos );
- else if ( aTextHd.nRecType==DFF_msofbtClientTextbox || aTextHd.nRecType == 0x1022 )
- {
- bRet=sal_True;
- sal_uLong nRecEnd=aTextHd.GetRecEndFilePos();
- DffRecordHeader aHd;
- String aText;
-
- SdrOutliner& rOutliner=pText->ImpGetDrawOutliner();
- sal_uInt16 nOutlMode = rOutliner.GetMode();
-
- { // apparently a small bug in the EditEngine which causes
- // the paragraph attributes not to be delted on Clear()
- bool bClearParaAttribs = true;
- rOutliner.SetStyleSheet( 0, NULL );
- SfxItemSet aSet(rOutliner.GetEmptyItemSet());
- aSet.Put(SvxColorItem( COL_BLACK ));
- rOutliner.SetParaAttribs(0,aSet);
- pText->SetMergedItemSet(aSet);
-
- bClearParaAttribs = sal_False;
- if( bClearParaAttribs )
- {
- // apparently a small bug in the EditEngine which causes
- // the paragraph attributes not to be delted on Clear()
- rOutliner.SetParaAttribs(0,rOutliner.GetEmptyItemSet());
- }
- }
- rOutliner.Init( OUTLINERMODE_TEXTOBJECT );
-
- ///////////////////////////////////
- // read TextString and MetaChars //
- ///////////////////////////////////
- do
- {
- if( !ReadCommonRecordHeader(aHd, rSt) )
- rSt.Seek( aHd.nFilePos );
- else
- {
- switch (aHd.nRecType)
- {
- default:
- break;
- //case DFF_PST_TextHeaderAtom:
- //case TextSpecInfoAtom
- case DFF_PST_TextBytesAtom:
- case DFF_PST_TextCharsAtom:
- aText = ReadDffString(rSt, aHd);
- break;
- case DFF_PST_TextRulerAtom :
- {
- sal_uInt16 nLen = (sal_uInt16)aHd.nRecLen;
- if(nLen)
- {
- sal_uInt32 nMask;
- sal_uInt16 nVal1, nVal2, nVal3;
- sal_uInt16 nDefaultTab = 2540; // PPT def: 1 Inch //rOutliner.GetDefTab();
- sal_uInt16 nMostrightTab = 0;
- SfxItemSet aSet(rOutliner.GetEmptyItemSet());
- SvxTabStopItem aTabItem(0, 0, SVX_TAB_ADJUST_DEFAULT, EE_PARA_TABS);
-
- rSt >> nMask;
- nLen -= 4;
-
- if(nLen && (nMask & 0x0002))
- {
- // number of indent levels
- rSt >> nVal3;
- nLen -= 2;
- }
-
- // Allg. TAB verstellt auf Wert in nVal3
- if(nLen && (nMask & 0x0001))
- {
- rSt >> nVal3;
- nLen -= 2;
- nDefaultTab = (sal_uInt16)(((sal_uInt32)nVal3 * 1000) / 240);
- }
-
- // Weitere, frei gesetzte TABs
- if(nLen && (nMask & 0x0004))
- {
- rSt >> nVal1;
- nLen -= 2;
-
- // fest gesetzte TABs importieren
- while(nLen && nVal1--)
- {
- rSt >> nVal2;
- rSt >> nVal3;
- nLen -= 4;
-
- sal_uInt16 nNewTabPos = (sal_uInt16)(((sal_uInt32)nVal2 * 1000) / 240);
- if(nNewTabPos > nMostrightTab)
- nMostrightTab = nNewTabPos;
-
- SvxTabStop aTabStop(nNewTabPos);
- aTabItem.Insert(aTabStop);
- }
- }
-
- // evtl. noch default-TABs ergaenzen (immer)
- sal_uInt16 nObjWidth = sal_uInt16(pObj->GetSnapRect().GetWidth() + 1);
- sal_uInt16 nDefaultTabPos = nDefaultTab;
-
- while(nDefaultTabPos <= nObjWidth && nDefaultTabPos <= nMostrightTab)
- nDefaultTabPos =
- nDefaultTabPos + nDefaultTab;
-
- while(nDefaultTabPos <= nObjWidth)
- {
- SvxTabStop aTabStop(nDefaultTabPos);
- aTabItem.Insert(aTabStop);
- nDefaultTabPos =
- nDefaultTabPos + nDefaultTab;
- }
-
- // Falls TABs angelegt wurden, setze diese
- if(aTabItem.Count())
- {
- aSet.Put(aTabItem);
- rOutliner.SetParaAttribs(0, aSet);
- }
- }
- }
- break;
- }
- aHd.SeekToEndOfRecord( rSt );
- }
- }
- while ( rSt.GetError() == 0 && rSt.Tell() < nRecEnd );
-
- ////////////////////////
- // replace SHIFT-Ret //
- ////////////////////////
- if ( aText.Len() )
- {
- aText += ' ';
- aText.SetChar( aText.Len()-1, 0x0D );
- rOutliner.SetText( aText, rOutliner.GetParagraph( 0 ) );
-
- // replace SHIFT-Ret in the Outliner
- if (comphelper::string::getTokenCount(aText, 0x0B) > 1)
- {
- sal_uInt32 nParaCount = rOutliner.GetParagraphCount();
- for(sal_uInt16 a=0;a<nParaCount;a++)
- {
- Paragraph* pActPara = rOutliner.GetParagraph(a);
- String aParaText = rOutliner.GetText(pActPara);
- for(sal_uInt16 b=0;b<aParaText.Len();b++)
- {
- if( aParaText.GetChar( b ) == 0x0B)
- {
- ESelection aSelection(a, b, a, b+1);
- rOutliner.QuickInsertLineBreak(aSelection);
- }
- }
- }
- }
- }
- OutlinerParaObject* pNewText=rOutliner.CreateParaObject();
- rOutliner.Init( nOutlMode );
- pText->NbcSetOutlinerParaObject(pNewText);
- }
- else
- aTextHd.SeekToBegOfRecord(rSt);
-
- }
- return bRet;
-}
-
//static
rtl::OUString SvxMSDffManager::MSDFFReadZString(SvStream& rIn,
sal_uInt32 nLen, bool bUniCode)
@@ -4442,6 +3995,7 @@ SdrObject* SvxMSDffManager::ImportShape( const DffRecordHeader& rHd, SvStream& r
return pRet;
DffObjData aObjData( rHd, rClientRect, nCalledByGroup );
+ aObjData.bRotateTextWithShape = ( GetSvxMSDffSettings() & SVXMSDFF_SETTINGS_IMPORT_EXCEL ) == 0;
maShapeRecords.Consume( rSt, sal_False );
aObjData.bShapeType = maShapeRecords.SeekToContent( rSt, DFF_msofbtSp, SEEK_FROM_BEGINNING );
if ( aObjData.bShapeType )
@@ -4473,10 +4027,18 @@ SdrObject* SvxMSDffManager::ImportShape( const DffRecordHeader& rHd, SvStream& r
}
else
{
- InitializePropSet(); // get the default PropSet
+ InitializePropSet( DFF_msofbtOPT ); // get the default PropSet
( (DffPropertyReader*) this )->mnFix16Angle = 0;
}
+ aObjData.bOpt2 = maShapeRecords.SeekToContent( rSt, DFF_msofbtUDefProp, SEEK_FROM_CURRENT_AND_RESTART );
+ if ( aObjData.bOpt2 )
+ {
+ maShapeRecords.Current()->SeekToBegOfRecord( rSt );
+ pSecPropSet = new DffPropertyReader( *this );
+ pSecPropSet->ReadPropSet( rSt, NULL );
+ }
+
aObjData.bChildAnchor = maShapeRecords.SeekToContent( rSt, DFF_msofbtChildAnchor, SEEK_FROM_CURRENT_AND_RESTART );
if ( aObjData.bChildAnchor )
{
@@ -5756,6 +5318,7 @@ SvxMSDffManager::SvxMSDffManager(SvStream& rStCtrl_,
pStData2( pStData2_ ),
nSvxMSDffSettings( 0 ),
nSvxMSDffOLEConvFlags( 0 ),
+ pSecPropSet( NULL ),
mnDefaultColor( mnDefaultColor_),
mbTracing( sal_False )
{
@@ -5800,6 +5363,7 @@ SvxMSDffManager::SvxMSDffManager( SvStream& rStCtrl_, const String& rBaseURL )
pStData2( 0 ),
nSvxMSDffSettings( 0 ),
nSvxMSDffOLEConvFlags( 0 ),
+ pSecPropSet( NULL ),
mnDefaultColor( COL_DEFAULT ),
mbTracing( sal_False )
{
@@ -5808,6 +5372,7 @@ SvxMSDffManager::SvxMSDffManager( SvStream& rStCtrl_, const String& rBaseURL )
SvxMSDffManager::~SvxMSDffManager()
{
+ delete pSecPropSet;
delete pBLIPInfos;
delete pShapeOrders;
delete pFormModel;
@@ -6009,7 +5574,7 @@ void SvxMSDffManager::GetCtrlData( sal_uInt32 nOffsDgg_ )
if( !bOk )
{
- nPos++;
+ nPos++; // ????????? TODO: trying to get an one-hit wonder, this code code should be rewritten...
if (nPos != rStCtrl.Seek(nPos))
break;
bOk = ReadCommonRecordHeader( rStCtrl, nVer, nInst, nFbt, nLength )
@@ -6022,7 +5587,7 @@ void SvxMSDffManager::GetCtrlData( sal_uInt32 nOffsDgg_ )
nPos += DFF_COMMON_RECORD_HEADER_SIZE + nLength;
++nDrawingContainerId;
}
- while( nPos < nMaxStrPos && bOk );
+ while( ( rStCtrl.GetError() == 0 ) && ( nPos < nMaxStrPos ) && bOk );
}
}
@@ -6967,7 +6532,6 @@ sal_Bool SvxMSDffManager::ConvertToOle2( SvStream& rStm, sal_uInt32 nReadLen,
break;
}
- String aShort, aFull;
if( pIds->nId )
{
// found!
diff --git a/filter/source/msfilter/viscache.hxx b/filter/source/msfilter/viscache.hxx
index 3459e6b229bc..0d1049e24d06 100644
--- a/filter/source/msfilter/viscache.hxx
+++ b/filter/source/msfilter/viscache.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2000, 2010 Oracle and/or its affiliates.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include <tools/stream.hxx>
#include <vcl/gdimtf.hxx>
diff --git a/filter/source/odfflatxml/OdfFlatXml.cxx b/filter/source/odfflatxml/OdfFlatXml.cxx
index cad9039a9a53..5db1e551554c 100644
--- a/filter/source/odfflatxml/OdfFlatXml.cxx
+++ b/filter/source/odfflatxml/OdfFlatXml.cxx
@@ -50,6 +50,7 @@
#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
#include <com/sun/star/xml/sax/XExtendedDocumentHandler.hpp>
#include <com/sun/star/xml/sax/SAXException.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
@@ -185,12 +186,8 @@ OdfFlatXml::exporter(const Sequence< PropertyValue >& sourceData,
if (!getDelegate().is())
{
- OUString SAX_WRITER_SERVICE(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.xml.sax.Writer"));
- Reference< XDocumentHandler > saxWriter(m_rServiceFactory->createInstance(SAX_WRITER_SERVICE),
- UNO_QUERY);
+ Reference< XDocumentHandler > saxWriter( Writer::create(comphelper::getComponentContext(m_rServiceFactory)), UNO_QUERY_THROW );
setDelegate(saxWriter);
- if (!getDelegate().is())
- return sal_False;
}
// get data source interface ...
Reference<XActiveDataSource> dataSource(getDelegate(), UNO_QUERY);
diff --git a/filter/source/svg/svgexport.cxx b/filter/source/svg/svgexport.cxx
index a0ff05b6d120..4289a30abb67 100644
--- a/filter/source/svg/svgexport.cxx
+++ b/filter/source/svg/svgexport.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
- /*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "svgwriter.hxx"
#include "svgfontexport.hxx"
@@ -35,6 +25,7 @@
#include <com/sun/star/util/MeasureUnit.hpp>
#include <com/sun/star/text/textfield/Type.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <rtl/bootstrap.hxx>
#include <svtools/miscopt.hxx>
@@ -51,16 +42,11 @@
#include <xmloff/unointerfacetouniqueidentifiermapper.hxx>
#include <xmloff/animationexport.hxx>
-
#include <boost/preprocessor/repetition/repeat.hpp>
-
using ::rtl::OUString;
using namespace ::com::sun::star;
-
-
-
// -------------------------------
// - ooo elements and attributes -
// -------------------------------
@@ -639,7 +625,7 @@ sal_Bool SVGFilter::implExport( const Sequence< PropertyValue >& rDescriptor )
{
if( mSelectedPages.hasElements() && mMasterPageTargets.hasElements() )
{
- Reference< XDocumentHandler > xDocHandler( implCreateExportDocumentHandler( xOStm ) );
+ Reference< XDocumentHandler > xDocHandler( implCreateExportDocumentHandler( xOStm ), UNO_QUERY );
if( xDocHandler.is() )
{
@@ -714,24 +700,14 @@ sal_Bool SVGFilter::implExport( const Sequence< PropertyValue >& rDescriptor )
// -----------------------------------------------------------------------------
-Reference< XDocumentHandler > SVGFilter::implCreateExportDocumentHandler( const Reference< XOutputStream >& rxOStm )
+Reference< XWriter > SVGFilter::implCreateExportDocumentHandler( const Reference< XOutputStream >& rxOStm )
{
- Reference< XMultiServiceFactory > xMgr( ::comphelper::getProcessServiceFactory() );
- Reference< XDocumentHandler > xSaxWriter;
+ Reference< XWriter > xSaxWriter;
- if( xMgr.is() && rxOStm.is() )
+ if( rxOStm.is() )
{
- xSaxWriter = Reference< XDocumentHandler >( xMgr->createInstance( B2UCONST( "com.sun.star.xml.sax.Writer" ) ), UNO_QUERY );
-
- if( xSaxWriter.is() )
- {
- Reference< XActiveDataSource > xActiveDataSource( xSaxWriter, UNO_QUERY );
-
- if( xActiveDataSource.is() )
- xActiveDataSource->setOutputStream( rxOStm );
- else
- xSaxWriter = NULL;
- }
+ xSaxWriter = Writer::create( ::comphelper::getProcessComponentContext() );
+ xSaxWriter->setOutputStream( rxOStm );
}
return xSaxWriter;
@@ -1359,7 +1335,7 @@ sal_Bool SVGFilter::implExportTextEmbeddedBitmaps()
// specifying the wanted position, they will result
// misplaced.
pAction->Move( -aPt.X(), -aPt.Y() );
- mpSVGWriter->WriteMetaFile( aTopLeft, aSize, aMtf, SVGWRITER_WRITE_ALL, NULL );
+ mpSVGWriter->WriteMetaFile( aTopLeft, aSize, aMtf, 0xffffffff, NULL );
// We reset to the original values so that when the <use>
// element is created the x, y attributes are correct.
pAction->Move( aPt.X(), aPt.Y() );
@@ -1827,7 +1803,7 @@ sal_Bool SVGFilter::implExportShape( const Reference< XShape >& rxShape )
{
SvXMLElementExport aExp2( *mpSVGExport, XML_NAMESPACE_NONE, "g", sal_True, sal_True );
mpSVGWriter->WriteMetaFile( aTopLeft, aSize, rMtf,
- SVGWRITER_WRITE_ALL,
+ 0xffffffff,
pElementId,
&rxShape,
pEmbeddedBitmapsMtf );
@@ -1987,7 +1963,6 @@ sal_Bool SVGFilter::implCreateObjectsFromShape( const Reference< XDrawPage > & r
// We create a set of bitmaps embedded into text shape.
GDIMetaFile aMtf;
- const Point aNullPt;
const Size aSize( pObj->GetCurrentBoundRect().GetSize() );
MetaAction* pAction;
sal_Bool bIsTextShapeStarted = sal_False;
diff --git a/filter/source/svg/svgfilter.hxx b/filter/source/svg/svgfilter.hxx
index c5567dfe7de1..9624614c26f3 100644
--- a/filter/source/svg/svgfilter.hxx
+++ b/filter/source/svg/svgfilter.hxx
@@ -50,6 +50,7 @@
#include <com/sun/star/style/ParagraphAdjust.hpp>
#include <com/sun/star/drawing/FillStyle.hpp>
#include <com/sun/star/graphic/XGraphicProvider.hpp>
+#include <com/sun/star/xml/sax/XWriter.hpp>
#include <boost/unordered_set.hpp>
#include <boost/unordered_map.hpp>
@@ -308,7 +309,7 @@ private:
sal_Bool implImport( const Sequence< PropertyValue >& rDescriptor ) throw (RuntimeException);
sal_Bool implExport( const Sequence< PropertyValue >& rDescriptor ) throw (RuntimeException);
- Reference< XDocumentHandler > implCreateExportDocumentHandler( const Reference< XOutputStream >& rxOStm );
+ Reference< XWriter > implCreateExportDocumentHandler( const Reference< XOutputStream >& rxOStm );
sal_Bool implGetPagePropSet( const Reference< XDrawPage > & rxPage );
sal_Bool implGenerateMetaData();
diff --git a/filter/source/svg/svgreader.cxx b/filter/source/svg/svgreader.cxx
index 147f3f3b71c9..ecbc844c60b5 100644
--- a/filter/source/svg/svgreader.cxx
+++ b/filter/source/svg/svgreader.cxx
@@ -1168,7 +1168,7 @@ struct AnnotatingVisitor
const ARGBColor& rInheritColor,
const Gradient& rInheritGradient )
{
- std::pair<const char*,const char*> aPaintUri(NULL,NULL);
+ std::pair<const char*,const char*> aPaintUri((const char*)NULL,(const char*)NULL);
std::pair<ARGBColor,bool> aColor(maCurrState.maCurrentColor,
false);
if( strcmp(sValue,"none") == 0 )
diff --git a/filter/source/svg/svgwriter.cxx b/filter/source/svg/svgwriter.cxx
index 2e7316b8ebcc..cf1602fdbc0b 100644
--- a/filter/source/svg/svgwriter.cxx
+++ b/filter/source/svg/svgwriter.cxx
@@ -1,31 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "svgfilter.hxx"
#include "svgfontexport.hxx"
@@ -97,6 +87,8 @@ static const char aXMLAttrGradientUnits[] = "gradientUnits";
static const char aXMLAttrPatternUnits[] = "patternUnits";
static const char aXMLAttrOffset[] = "offset";
static const char aXMLAttrStopColor[] = "stop-color";
+static const char aXMLAttrStrokeLinejoin[] = "stroke-linejoin";
+static const char aXMLAttrStrokeLinecap[] = "stroke-linecap";
#define NSPREFIX "ooo:"
@@ -2033,6 +2025,7 @@ PolyPolygon& SVGActionWriter::ImplMap( const PolyPolygon& rPolyPoly, PolyPolygon
aPathData += ::rtl::OUString::valueOf( aPolyPoint.Y() );
sal_Char nCurrentMode = 0;
+ const bool bClose(!bLine || rPoly[0] == rPoly[nSize - 1]);
while( n < nSize )
{
aPathData += aBlank;
@@ -2066,7 +2059,7 @@ PolyPolygon& SVGActionWriter::ImplMap( const PolyPolygon& rPolyPoly, PolyPolygon
}
}
- if( !bLine )
+ if(bClose)
aPathData += B2UCONST( " Z" );
if( i < ( nCount - 1 ) )
@@ -2218,6 +2211,51 @@ void SVGActionWriter::ImplWriteShape( const SVGShapeDescriptor& rShape, sal_Bool
mrExport.AddAttribute( XML_NAMESPACE_NONE, aXMLAttrStrokeWidth, ::rtl::OUString::valueOf( nStrokeWidth ) );
}
+ // support for LineJoin
+ switch(rShape.maLineJoin)
+ {
+ default: // B2DLINEJOIN_NONE, B2DLINEJOIN_MIDDLE
+ case basegfx::B2DLINEJOIN_MITER:
+ {
+ // miter is Svg default, so no need to write until the exporter might write styles.
+ // If this happens, activate here
+ // mrExport.AddAttribute(XML_NAMESPACE_NONE, aXMLAttrStrokeLinejoin, ::rtl::OUString::createFromAscii("miter"));
+ break;
+ }
+ case basegfx::B2DLINEJOIN_BEVEL:
+ {
+ mrExport.AddAttribute(XML_NAMESPACE_NONE, aXMLAttrStrokeLinejoin, ::rtl::OUString::createFromAscii("bevel"));
+ break;
+ }
+ case basegfx::B2DLINEJOIN_ROUND:
+ {
+ mrExport.AddAttribute(XML_NAMESPACE_NONE, aXMLAttrStrokeLinejoin, ::rtl::OUString::createFromAscii("round"));
+ break;
+ }
+ }
+
+ // support for LineCap
+ switch(rShape.maLineCap)
+ {
+ default: /* com::sun::star::drawing::LineCap_BUTT */
+ {
+ // butt is Svg default, so no need to write until the exporter might write styles.
+ // If this happens, activate here
+ // mrExport.AddAttribute(XML_NAMESPACE_NONE, aXMLAttrStrokeLinecap, ::rtl::OUString::createFromAscii("butt"));
+ break;
+ }
+ case com::sun::star::drawing::LineCap_ROUND:
+ {
+ mrExport.AddAttribute(XML_NAMESPACE_NONE, aXMLAttrStrokeLinecap, ::rtl::OUString::createFromAscii("round"));
+ break;
+ }
+ case com::sun::star::drawing::LineCap_SQUARE:
+ {
+ mrExport.AddAttribute(XML_NAMESPACE_NONE, aXMLAttrStrokeLinecap, ::rtl::OUString::createFromAscii("square"));
+ break;
+ }
+ }
+
if( rShape.maDashArray.size() )
{
const ::rtl::OUString aComma( B2UCONST( "," ) );
@@ -2787,7 +2825,10 @@ void SVGActionWriter::ImplWriteText( const Point& rPos, const String& rText,
}
if( bCont )
+ {
+ // #118796# do NOT access pDXArray, it may be zero (!)
nX = aPos.X() + pDX[ nCurPos - 1 ];
+ }
}
}
}
@@ -2901,6 +2942,10 @@ void SVGActionWriter::ImplWriteActions( const GDIMetaFile& rMtf,
const Reference< XShape >* pxShape,
const GDIMetaFile* pTextEmbeddedBitmapMtf )
{
+ // need a counter fo rthe actions written per shape to avoid double ID
+ // generation
+ sal_Int32 nEntryCount(0);
+
if( mnInnerMtfCount )
nWriteFlags |= SVGWRITER_NO_SHAPE_COMMENTS;
@@ -3279,7 +3324,9 @@ void SVGActionWriter::ImplWriteActions( const GDIMetaFile& rMtf,
mapCurShape.reset( new SVGShapeDescriptor );
if( pElementId )
- mapCurShape->maId = *pElementId;
+ {
+ mapCurShape->maId = *pElementId + B2UCONST("_") + ::rtl::OUString::valueOf(nEntryCount++);
+ }
mapCurShape->maShapePolyPoly = aShapePolyPoly;
mapCurShape->maShapeFillColor = aFill.getFillColor();
@@ -3345,14 +3392,30 @@ void SVGActionWriter::ImplWriteActions( const GDIMetaFile& rMtf,
if( bSkip )
{
- if( !mapCurShape.get() )
+ Polygon aPoly;
+
+ aStroke.getPath(aPoly);
+
+ if(mapCurShape.get())
{
- Polygon aPoly;
+ if(1 != mapCurShape->maShapePolyPoly.Count()
+ || !mapCurShape->maShapePolyPoly[0].IsEqual(aPoly))
+ {
+ // this path action is not covering the same path than the already existing
+ // fill polypolygon, so write out the fill polygon
+ ImplWriteShape( *mapCurShape );
+ mapCurShape.reset();
+ }
+ }
+ if( !mapCurShape.get() )
+ {
mapCurShape.reset( new SVGShapeDescriptor );
if( pElementId )
- mapCurShape->maId = *pElementId;
+ {
+ mapCurShape->maId = *pElementId + B2UCONST("_") + ::rtl::OUString::valueOf(nEntryCount++);
+ }
aStroke.getPath( aPoly );
mapCurShape->maShapePolyPoly = aPoly;
@@ -3364,6 +3427,46 @@ void SVGActionWriter::ImplWriteActions( const GDIMetaFile& rMtf,
aStroke.getDashArray( mapCurShape->maDashArray );
}
+ // support for LineJoin
+ switch(aStroke.getJoinType())
+ {
+ default: /* SvtGraphicStroke::joinMiter, SvtGraphicStroke::joinNone */
+ {
+ mapCurShape->maLineJoin = basegfx::B2DLINEJOIN_MITER;
+ break;
+ }
+ case SvtGraphicStroke::joinRound:
+ {
+ mapCurShape->maLineJoin = basegfx::B2DLINEJOIN_ROUND;
+ break;
+ }
+ case SvtGraphicStroke::joinBevel:
+ {
+ mapCurShape->maLineJoin = basegfx::B2DLINEJOIN_BEVEL;
+ break;
+ }
+ }
+
+ // support for LineCap
+ switch(aStroke.getCapType())
+ {
+ default: /* SvtGraphicStroke::capButt */
+ {
+ mapCurShape->maLineCap = com::sun::star::drawing::LineCap_BUTT;
+ break;
+ }
+ case SvtGraphicStroke::capRound:
+ {
+ mapCurShape->maLineCap = com::sun::star::drawing::LineCap_ROUND;
+ break;
+ }
+ case SvtGraphicStroke::capSquare:
+ {
+ mapCurShape->maLineCap = com::sun::star::drawing::LineCap_SQUARE;
+ break;
+ }
+ }
+
// write open shape in every case
if( mapCurShape.get() )
{
@@ -3682,24 +3785,6 @@ void SVGActionWriter::ImplWriteActions( const GDIMetaFile& rMtf,
}
break;
- case( META_RENDERGRAPHIC_ACTION ):
- {
- if( nWriteFlags & SVGWRITER_WRITE_FILL )
- {
- // TODO KA: try to embed the native data in case the RenderGraphic
- // contains valid SVG data (MimeType "image/svg+xml")
- // => incorporate 'use' or 'image' element (KA 01/2011)
- const MetaRenderGraphicAction* pA = (const MetaRenderGraphicAction*) pAction;
- const ::vcl::RenderGraphicRasterizer aRasterizer( pA->GetRenderGraphic() );
- const Point aPointPixel;
- const Size aSizePixel( mpVDev->LogicToPixel( pA->GetSize() ) );
- const BitmapEx aBmpEx( aRasterizer.Rasterize( aSizePixel ) );
-
- ImplWriteBmp( aBmpEx, pA->GetPoint(), pA->GetSize(), aPointPixel, aBmpEx.GetSizePixel() );
- }
- }
- break;
-
case( META_CLIPREGION_ACTION ):
case( META_ISECTRECTCLIPREGION_ACTION ):
case( META_ISECTREGIONCLIPREGION_ACTION ):
diff --git a/filter/source/svg/svgwriter.hxx b/filter/source/svg/svgwriter.hxx
index 7f79f6ffaade..ebffda9a5f10 100644
--- a/filter/source/svg/svgwriter.hxx
+++ b/filter/source/svg/svgwriter.hxx
@@ -1,30 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Copyright 2008 by Sun Microsystems, Inc.
+ * This file incorporates work covered by the following license notice:
*
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#ifndef SVGWRITER_HXX
#define SVGWRITER_HXX
@@ -40,7 +31,6 @@
#include <vcl/virdev.hxx>
#include <vcl/cvtgrf.hxx>
#include <vcl/graphictools.hxx>
-#include <vcl/rendergraphicrasterizer.hxx>
#include <xmloff/xmlexp.hxx>
#include <xmloff/nmspmap.hxx>
@@ -98,7 +88,6 @@ using namespace ::com::sun::star::style;
#define SVGWRITER_WRITE_FILL 0x00000001
#define SVGWRITER_WRITE_TEXT 0x00000002
#define SVGWRITER_NO_SHAPE_COMMENTS 0x01000000
-#define SVGWRITER_WRITE_ALL 0xFFFFFFFF
// ----------------------
// - SVGAttributeWriter -
@@ -120,6 +109,9 @@ private:
SvXMLElementExport* mpElemFont;
SvXMLElementExport* mpElemPaint;
+ basegfx::B2DLineJoin maLineJoin;
+ com::sun::star::drawing::LineCap maLineCap;
+
SVGAttributeWriter();
double ImplRound( double fVal, sal_Int32 nDecs = 3 );
@@ -129,8 +121,6 @@ public:
SVGAttributeWriter( SVGExport& rExport, SVGFontExport& rFontExport );
virtual ~SVGAttributeWriter();
- ::rtl::OUString GetFontStyle( const Font& rFont );
- ::rtl::OUString GetPaintStyle( const Color& rLineColor, const Color& rFillColor, const LineInfo* pLineInfo );
void AddColorAttr( const char* pColorAttrName, const char* pColorOpacityAttrName, const Color& rColor );
void AddGradientDef( const Rectangle& rObjRect,const Gradient& rGradient, ::rtl::OUString& rGradientId );
void AddPaintAttr( const Color& rLineColor, const Color& rFillColor,
@@ -154,12 +144,17 @@ struct SVGShapeDescriptor
::std::auto_ptr< Gradient > mapShapeGradient;
::rtl::OUString maId;
+ basegfx::B2DLineJoin maLineJoin;
+ com::sun::star::drawing::LineCap maLineCap;
+
// -------------------------------------------------------------------------
SVGShapeDescriptor() :
maShapeFillColor( Color( COL_TRANSPARENT ) ),
maShapeLineColor( Color( COL_TRANSPARENT ) ),
- mnStrokeWidth( 0 )
+ mnStrokeWidth( 0 ),
+ maLineJoin(basegfx::B2DLINEJOIN_MITER), // miter is Svg 'stroke-linejoin' default
+ maLineCap(com::sun::star::drawing::LineCap_BUTT) // butt is Svg 'stroke-linecap' default
{
}
};
diff --git a/filter/source/svg/tokenmap.cxx b/filter/source/svg/tokenmap.cxx
index 79107d3400ff..7bf6fd1c885e 100644
--- a/filter/source/svg/tokenmap.cxx
+++ b/filter/source/svg/tokenmap.cxx
@@ -1,20 +1,21 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
+/*
+ * This file is part of the LibreOffice project.
*
- * OpenOffice.org - a multi-platform office productivity suite
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
- * Author:
- * Fridrich Strba <fridrich.strba@bluewin.ch>
- * Thorsten Behrens <tbehrens@novell.com>
+ * This file incorporates work covered by the following license notice:
*
- * Copyright (C) 2008, Novell Inc.
- * Parts copyright 2005 by Sun Microsystems, Inc.
- *
- * The Contents of this file are made available subject to
- * the terms of GNU Lesser General Public License Version 3.
- *
- ************************************************************************/
-
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ */
#include "tokenmap.hxx"
#include <string.h>
diff --git a/filter/source/t602/t602filter.cxx b/filter/source/t602/t602filter.cxx
index ed582a0659b6..f60a7781e11e 100644
--- a/filter/source/t602/t602filter.cxx
+++ b/filter/source/t602/t602filter.cxx
@@ -535,19 +535,17 @@ void T602ImportFilter::wrtfnt()
void T602ImportFilter::setfnt(fonts fnt,bool mustwrite)
{
- if( fnt == fst.oldfnt &&
- fnt == fst.nowfnt &&
- !mustwrite )
+ if (fnt == fst.oldfnt && fnt == fst.nowfnt && !mustwrite)
fst.nowfnt = standard;
- else
- if (fnt != chngul) fst.nowfnt = fnt;
+ else if (fnt != chngul)
+ fst.nowfnt = fnt;
- if(mustwrite)
- if(fst.oldfnt != fst.nowfnt || fst.olduline != fst.uline) {
- wrtfnt();
- fst.oldfnt = fst.nowfnt;
- fst.olduline = fst.uline;
- }
+ if (mustwrite && (fst.oldfnt != fst.nowfnt || fst.olduline != fst.uline))
+ {
+ wrtfnt();
+ fst.oldfnt = fst.nowfnt;
+ fst.olduline = fst.uline;
+ }
}
unsigned char T602ImportFilter::Readchar602()
diff --git a/filter/source/xsltdialog/typedetectionexport.cxx b/filter/source/xsltdialog/typedetectionexport.cxx
index 4f4bb1d32acf..f48a62c4fb69 100644
--- a/filter/source/xsltdialog/typedetectionexport.cxx
+++ b/filter/source/xsltdialog/typedetectionexport.cxx
@@ -19,6 +19,7 @@
#include <com/sun/star/xml/sax/XAttributeList.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <tools/urlobj.hxx>
@@ -36,8 +37,8 @@ using namespace com::sun::star::xml::sax;
using ::rtl::OUString;
-TypeDetectionExporter::TypeDetectionExporter( Reference< XMultiServiceFactory >& xMSF )
-: mxMSF( xMSF )
+TypeDetectionExporter::TypeDetectionExporter( Reference< XComponentContext >& xContext )
+: mxContext( xContext )
{
}
@@ -95,9 +96,8 @@ void TypeDetectionExporter::doExport( Reference< XOutputStream > xOS, const XML
// set up sax writer and connect to given output stream
- Reference< XDocumentHandler > xHandler( mxMSF->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.xml.sax.Writer" ) ) ), UNO_QUERY );
- Reference< XActiveDataSource > xDocSrc( xHandler, UNO_QUERY );
- xDocSrc->setOutputStream( xOS );
+ Reference< XWriter > xHandler = Writer::create( mxContext );
+ xHandler->setOutputStream( xOS );
::comphelper::AttributeList * pAttrList = new ::comphelper::AttributeList;
pAttrList->AddAttribute ( OUString( RTL_CONSTASCII_USTRINGPARAM( "xmlns:oor" )), sCdataAttribute, OUString( RTL_CONSTASCII_USTRINGPARAM( "http://openoffice.org/2001/registry" )) );
@@ -183,7 +183,7 @@ void TypeDetectionExporter::doExport( Reference< XOutputStream > xOS, const XML
sValue += sComma;
sValue += sXSLTFilterService;
sValue += sDelim;
- sValue += pFilter->maXSLTTransformerImpl;
+ sValue += OUString::valueOf( pFilter->mbNeedsXSLT2 );
sValue += sDelim;
const application_info_impl* pAppInfo = getApplicationInfo( pFilter->maExportService );
@@ -223,7 +223,7 @@ void TypeDetectionExporter::doExport( Reference< XOutputStream > xOS, const XML
}
}
-void TypeDetectionExporter::addProperty( Reference< XDocumentHandler > xHandler, const OUString& rName, const OUString& rValue )
+void TypeDetectionExporter::addProperty( Reference< XWriter > xHandler, const OUString& rName, const OUString& rValue )
{
try
{
@@ -253,7 +253,7 @@ void TypeDetectionExporter::addProperty( Reference< XDocumentHandler > xHandler,
}
}
-void TypeDetectionExporter::addLocaleProperty( Reference< XDocumentHandler > xHandler, const OUString& rName, const OUString& rValue )
+void TypeDetectionExporter::addLocaleProperty( Reference< XWriter > xHandler, const OUString& rName, const OUString& rValue )
{
try
{
diff --git a/filter/source/xsltdialog/typedetectionexport.hxx b/filter/source/xsltdialog/typedetectionexport.hxx
index ebd14cc58317..05d702aee494 100644
--- a/filter/source/xsltdialog/typedetectionexport.hxx
+++ b/filter/source/xsltdialog/typedetectionexport.hxx
@@ -20,8 +20,7 @@
#ifndef _TYPEDETECTION_EXPORT_HXX
#define _TYPEDETECTION_EXPORT_HXX
-#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/xml/sax/XWriter.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
#include "xmlfilterjar.hxx"
@@ -29,15 +28,15 @@
class TypeDetectionExporter
{
public:
- TypeDetectionExporter( com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& xMSF );
+ TypeDetectionExporter( com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >& mxContext );
void doExport(com::sun::star::uno::Reference < com::sun::star::io::XOutputStream > xOS, const XMLFilterVector& rFilters );
private:
- void addProperty( com::sun::star::uno::Reference< com::sun::star::xml::sax::XDocumentHandler > xWriter, const rtl::OUString& rName, const rtl::OUString& rValue );
- void addLocaleProperty( com::sun::star::uno::Reference< com::sun::star::xml::sax::XDocumentHandler > xWriter, const rtl::OUString& rName, const rtl::OUString& rValue );
+ void addProperty( com::sun::star::uno::Reference< com::sun::star::xml::sax::XWriter > xWriter, const rtl::OUString& rName, const rtl::OUString& rValue );
+ void addLocaleProperty( com::sun::star::uno::Reference< com::sun::star::xml::sax::XWriter > xWriter, const rtl::OUString& rName, const rtl::OUString& rValue );
- com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > mxMSF;
+ com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext > mxContext;
};
#endif
diff --git a/filter/source/xsltdialog/typedetectionimport.cxx b/filter/source/xsltdialog/typedetectionimport.cxx
index daf6f32d2bba..1740b6d6964f 100644
--- a/filter/source/xsltdialog/typedetectionimport.cxx
+++ b/filter/source/xsltdialog/typedetectionimport.cxx
@@ -170,7 +170,7 @@ filter_info_impl* TypeDetectionImporter::createFilterForNode( Node * pNode )
OUString aAdapterService( getSubdata( 0, aDelim, aFilterUserData ) );
//Import/ExportService
- pFilter->maXSLTTransformerImpl = getSubdata( 1, aDelim, aFilterUserData );
+ pFilter->mbNeedsXSLT2 = getSubdata( 1, aDelim, aFilterUserData ).toBoolean();
pFilter->maImportService = getSubdata( 2, aDelim, aFilterUserData );
pFilter->maExportService = getSubdata( 3, aDelim, aFilterUserData );
pFilter->maImportXSLT = getSubdata( 4, aDelim, aFilterUserData );
diff --git a/filter/source/xsltdialog/xmlfiltercommon.hxx b/filter/source/xsltdialog/xmlfiltercommon.hxx
index 85d0ff1e52e0..40d0bf7d16ba 100644
--- a/filter/source/xsltdialog/xmlfiltercommon.hxx
+++ b/filter/source/xsltdialog/xmlfiltercommon.hxx
@@ -68,7 +68,7 @@ public:
sal_Bool mbReadonly;
- rtl::OUString maXSLTTransformerImpl;
+ sal_Bool mbNeedsXSLT2;
filter_info_impl();
filter_info_impl( const filter_info_impl& rInfo );
@@ -97,7 +97,8 @@ extern const application_info_impl* getApplicationInfo( const rtl::OUString& rSe
extern ResMgr* getXSLTDialogResMgr();
-#define RESID(x) ResId(x, *getXSLTDialogResMgr() )
+#define RESID(x) ResId(x, *getXSLTDialogResMgr())
+#define RESIDSTR(x) RESID(x).toString()
#endif
diff --git a/filter/source/xsltdialog/xmlfilterhelpids.hrc b/filter/source/xsltdialog/xmlfilterhelpids.hrc
index f2d48e315517..d4ea134087b6 100644
--- a/filter/source/xsltdialog/xmlfilterhelpids.hrc
+++ b/filter/source/xsltdialog/xmlfilterhelpids.hrc
@@ -41,8 +41,7 @@
#define HID_XML_FILTER_DOCTYPE "FILTER_HID_XML_FILTER_DOCTYPE"
#define HID_XML_FILTER_DTD "FILTER_HID_XML_FILTER_DTD"
#define HID_XML_FILTER_DTD_BROWSE "FILTER_HID_XML_FILTER_DTD_BROWSE"
-#define HID_XML_FILTER_TRANSFORM_SERVICE_SAXON_J "FILTER_HID_XML_FILTER_TRANSFORM_SERVICE_SAXON_J"
-#define HID_XML_FILTER_TRANSFORM_SERVICE_LIBXSLT "FILTER_HID_XML_FILTER_TRANSFORM_SERVICE_LIBXSLT"
+#define HID_XML_FILTER_NEEDS_XSLT2 "FILTER_HID_XML_FILTER_NEEDS_XSLT2"
#define HID_XML_FILTER_EXPORT_XSLT "FILTER_HID_XML_FILTER_EXPORT_XSLT"
#define HID_XML_FILTER_EXPORT_XSLT_BROWSE "FILTER_HID_XML_FILTER_EXPORT_XSLT_BROWSE"
#define HID_XML_FILTER_IMPORT_XSLT "FILTER_HID_XML_FILTER_IMPORT_XSLT"
diff --git a/filter/source/xsltdialog/xmlfilterjar.cxx b/filter/source/xsltdialog/xmlfilterjar.cxx
index fac5f89ad8b1..3867924e080f 100644
--- a/filter/source/xsltdialog/xmlfilterjar.cxx
+++ b/filter/source/xsltdialog/xmlfilterjar.cxx
@@ -29,6 +29,7 @@
#include <com/sun/star/util/XChangesBatch.hpp>
+#include <comphelper/processfactory.hxx>
#include <comphelper/oslfile2streamwrap.hxx>
#include <comphelper/storagehelper.hxx>
#include <unotools/streamwrap.hxx>
@@ -225,7 +226,8 @@ bool XMLFilterJarHelper::savePackage( const OUString& rPackageURL, const XMLFilt
/* osl::File::RC rc = */ aOutputFile.open( osl_File_OpenFlag_Write );
Reference< XOutputStream > xOS( new OSLOutputStreamWrapper( aOutputFile ) );
- TypeDetectionExporter aExporter( mxMSF );
+ Reference<XComponentContext> xContext( comphelper::getComponentContext(mxMSF) );
+ TypeDetectionExporter aExporter( xContext );
aExporter.doExport(xOS,rFilters);
}
diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
index 7ecfddecc144..e066786ce44a 100644
--- a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
+++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
@@ -81,8 +81,8 @@ XMLFilterSettingsDialog::XMLFilterSettingsDialog( Window* pParent, ResMgr& rResM
mpFilterListBox->SetSelectHdl( LINK( this, XMLFilterSettingsDialog, SelectionChangedHdl_Impl ) );
mpFilterListBox->SetDeselectHdl( LINK( this, XMLFilterSettingsDialog, SelectionChangedHdl_Impl ) );
mpFilterListBox->SetDoubleClickHdl( LINK( this, XMLFilterSettingsDialog, DoubleClickHdl_Impl ) );
- mpFilterListBox->SetAccessibleName(String( RESID( STR_XML_FILTER_LISTBOX )));
- maCtrlFilterList.SetAccessibleName(String( RESID( STR_XML_FILTER_LISTBOX )));
+ mpFilterListBox->SetAccessibleName(RESIDSTR(STR_XML_FILTER_LISTBOX));
+ maCtrlFilterList.SetAccessibleName(RESIDSTR(STR_XML_FILTER_LISTBOX));
mpFilterListBox->SetHelpId( HID_XML_FILTER_LIST );
maPBNew.SetClickHdl(LINK( this, XMLFilterSettingsDialog, ClickHdl_Impl ) );
@@ -196,7 +196,7 @@ void XMLFilterSettingsDialog::ShowWindow()
void XMLFilterSettingsDialog::updateStates()
{
- SvLBoxEntry* pSelectedEntry = mpFilterListBox->FirstSelected();
+ SvTreeListEntry* pSelectedEntry = mpFilterListBox->FirstSelected();
bool bHasSelection = pSelectedEntry != NULL;
@@ -234,14 +234,14 @@ void XMLFilterSettingsDialog::onNew()
filter_info_impl aTempInfo;
// create a unique filter name
- aTempInfo.maFilterName = createUniqueFilterName( String( RESID( STR_DEFAULT_FILTER_NAME ) ) );
+ aTempInfo.maFilterName = createUniqueFilterName(RESIDSTR(STR_DEFAULT_FILTER_NAME));
// init default extension
- String aDefaultExtension( RESID( STR_DEFAULT_EXTENSION ) );
+ String aDefaultExtension(RESIDSTR(STR_DEFAULT_EXTENSION));
aTempInfo.maExtension = aDefaultExtension;
// set default ui name
- aTempInfo.maInterfaceName = createUniqueInterfaceName( String( RESID( STR_DEFAULT_UI_NAME ) ) );
+ aTempInfo.maInterfaceName = createUniqueInterfaceName(RESIDSTR(STR_DEFAULT_UI_NAME));
// set default application
aTempInfo.maDocumentService = OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.text.TextDocument" ));
@@ -261,7 +261,7 @@ void XMLFilterSettingsDialog::onNew()
void XMLFilterSettingsDialog::onEdit()
{
// get selected filter entry
- SvLBoxEntry* pEntry = mpFilterListBox->FirstSelected();
+ SvTreeListEntry* pEntry = mpFilterListBox->FirstSelected();
if( pEntry )
{
// get its filter info
@@ -791,7 +791,7 @@ bool XMLFilterSettingsDialog::insertOrEdit( filter_info_impl* pNewInfo, const fi
void XMLFilterSettingsDialog::onTest()
{
// get the first selected filter
- SvLBoxEntry* pEntry = mpFilterListBox->FirstSelected();
+ SvTreeListEntry* pEntry = mpFilterListBox->FirstSelected();
if( pEntry )
{
filter_info_impl* pInfo = (filter_info_impl*)pEntry->GetUserData();
@@ -805,13 +805,13 @@ void XMLFilterSettingsDialog::onTest()
void XMLFilterSettingsDialog::onDelete()
{
- SvLBoxEntry* pEntry = mpFilterListBox->FirstSelected();
+ SvTreeListEntry* pEntry = mpFilterListBox->FirstSelected();
if( pEntry )
{
filter_info_impl* pInfo = (filter_info_impl*)pEntry->GetUserData();
String aPlaceHolder( RTL_CONSTASCII_USTRINGPARAM("%s") );
- String aMessage(RESID(STR_WARN_DELETE));
+ String aMessage(RESIDSTR(STR_WARN_DELETE));
aMessage.SearchAndReplace( aPlaceHolder, pInfo->maFilterName );
WarningBox aWarnBox(this, (WinBits)(WB_YES_NO | WB_DEF_YES), aMessage );
@@ -901,7 +901,7 @@ void XMLFilterSettingsDialog::onSave()
int nFilters = 0;
- SvLBoxEntry* pEntry = mpFilterListBox->FirstSelected();
+ SvTreeListEntry* pEntry = mpFilterListBox->FirstSelected();
while( pEntry )
{
filter_info_impl* pInfo = (filter_info_impl*)pEntry->GetUserData();
@@ -916,7 +916,7 @@ void XMLFilterSettingsDialog::onSave()
0 );
String aExtensions( RTL_CONSTASCII_USTRINGPARAM("*.jar") );
- String aFilterName( RESID( STR_FILTER_PACKAGE ) );
+ String aFilterName(RESIDSTR(STR_FILTER_PACKAGE));
aFilterName += String( RTL_CONSTASCII_USTRINGPARAM(" (") );
aFilterName += aExtensions;
aFilterName += sal_Unicode(')');
@@ -935,13 +935,13 @@ void XMLFilterSettingsDialog::onSave()
String aMsg;
if( nFilters > 0 )
{
- aMsg = String( RESID( STR_FILTERS_HAVE_BEEN_SAVED ) );
+ aMsg = RESIDSTR(STR_FILTERS_HAVE_BEEN_SAVED);
aMsg.SearchAndReplace( sPlaceholder, String::CreateFromInt32(nFilters) );
aMsg.SearchAndReplace( sPlaceholder, aURL.GetName() );
}
else
{
- aMsg = String( RESID( STR_FILTER_HAS_BEEN_SAVED ) );
+ aMsg = RESIDSTR(STR_FILTER_HAS_BEEN_SAVED);
aMsg.SearchAndReplace( sPlaceholder, (*aFilters.begin())->maFilterName );
aMsg.SearchAndReplace( sPlaceholder, aURL.GetName() );
}
@@ -962,7 +962,7 @@ void XMLFilterSettingsDialog::onOpen()
com::sun::star::ui::dialogs::TemplateDescription::FILEOPEN_SIMPLE, 0 );
String aExtensions( RTL_CONSTASCII_USTRINGPARAM("*.jar") );
- String aFilterName( RESID( STR_FILTER_PACKAGE ) );
+ String aFilterName(RESIDSTR(STR_FILTER_PACKAGE));
aFilterName += String( RTL_CONSTASCII_USTRINGPARAM(" (") );
aFilterName += aExtensions;
aFilterName += sal_Unicode(')');
@@ -999,18 +999,18 @@ void XMLFilterSettingsDialog::onOpen()
if( nFilters == 0 )
{
INetURLObject aURLObj( aURL );
- aMsg = String( RESID( STR_NO_FILTERS_FOUND ) );
+ aMsg = RESIDSTR(STR_NO_FILTERS_FOUND);
aMsg.SearchAndReplace( sPlaceholder, aURLObj.GetName() );
}
else if( nFilters == 1 )
{
- aMsg = String( RESID( STR_FILTER_INSTALLED ) );
+ aMsg = RESIDSTR(STR_FILTER_INSTALLED);
aMsg.SearchAndReplace( sPlaceholder, aFilterName );
}
else
{
- aMsg = String( RESID( STR_FILTERS_INSTALLED ) );
+ aMsg = RESIDSTR(STR_FILTERS_INSTALLED);
aMsg.SearchAndReplace( sPlaceholder, String::CreateFromInt32(nFilters) );
}
@@ -1152,7 +1152,7 @@ void XMLFilterSettingsDialog::initFilterList()
continue;
// get filter information from userdata
- pTempFilter->maXSLTTransformerImpl = aUserData[1];
+ pTempFilter->mbNeedsXSLT2 = aUserData[1].toBoolean();
pTempFilter->maImportService = aUserData[2];
pTempFilter->maExportService = aUserData[3];
pTempFilter->maImportXSLT = aUserData[4];
@@ -1243,7 +1243,7 @@ void XMLFilterSettingsDialog::initFilterList()
delete pTempFilter;
}
- SvLBoxEntry* pEntry = mpFilterListBox->GetEntry( 0 );
+ SvTreeListEntry* pEntry = mpFilterListBox->GetEntry( 0 );
if( pEntry )
mpFilterListBox->Select( pEntry );
}
@@ -1359,7 +1359,7 @@ OUString getApplicationUIName( const OUString& rServiceName )
}
else
{
- OUString aRet = String( RESID( STR_UNKNOWN_APPLICATION ) );
+ OUString aRet = RESIDSTR(STR_UNKNOWN_APPLICATION);
if( !rServiceName.isEmpty() )
{
aRet += OUString( RTL_CONSTASCII_USTRINGPARAM( " (" ));
@@ -1403,8 +1403,8 @@ XMLFilterListBox::XMLFilterListBox( SvxPathControl_Impl * pParent )
mpHeaderBar->SetPosSizePixel( Point( 0, 0 ), Size( aBoxSize.Width(), 16 ) );
mpHeaderBar->SetEndDragHdl( LINK( this, XMLFilterListBox, HeaderEndDrag_Impl ) );
- String aStr1( RESID( STR_COLUMN_HEADER_NAME ) );
- String aStr2( RESID( STR_COLUMN_HEADER_TYPE ) );
+ OUString aStr1(RESIDSTR(STR_COLUMN_HEADER_NAME));
+ OUString aStr2(RESIDSTR(STR_COLUMN_HEADER_TYPE));
long nTabSize = aBoxSize.Width() / 2;
@@ -1504,7 +1504,7 @@ IMPL_LINK( XMLFilterListBox, HeaderEndDrag_Impl, HeaderBar*, pBar )
/** adds a new filter info entry to the ui filter list */
void XMLFilterListBox::addFilterEntry( const filter_info_impl* pInfo )
{
- const XubString aEntryStr( getEntryString( pInfo ) );
+ const OUString aEntryStr( getEntryString( pInfo ) );
InsertEntryToColumn( aEntryStr, LIST_APPEND, 0xffff, (void*)pInfo );
}
@@ -1516,10 +1516,10 @@ void XMLFilterListBox::changeEntry( const filter_info_impl* pInfo )
sal_uLong nPos;
for( nPos = 0; nPos < nCount; nPos++ )
{
- SvLBoxEntry* pEntry = GetEntry( nPos );
+ SvTreeListEntry* pEntry = GetEntry( nPos );
if( (filter_info_impl*)pEntry->GetUserData() == pInfo )
{
- XubString aEntryText( getEntryString( pInfo ) );
+ OUString aEntryText( getEntryString( pInfo ) );
SetEntryText( aEntryText, pEntry );
break;
}
@@ -1545,20 +1545,20 @@ String XMLFilterListBox::getEntryString( const filter_info_impl* pInfo ) const
{
if( pInfo->maFlags & 2 )
{
- aEntryStr += String( RESID( STR_IMPORT_EXPORT ) );
+ aEntryStr += RESIDSTR(STR_IMPORT_EXPORT);
}
else
{
- aEntryStr += String( RESID( STR_IMPORT_ONLY ) );
+ aEntryStr += RESIDSTR(STR_IMPORT_ONLY);
}
}
else if( pInfo->maFlags & 2 )
{
- aEntryStr += String( RESID( STR_EXPORT_ONLY ) );
+ aEntryStr += RESIDSTR(STR_EXPORT_ONLY);
}
else
{
- aEntryStr += String( RESID( STR_UNDEFINED_FILTER ) );
+ aEntryStr += RESIDSTR(STR_UNDEFINED_FILTER);
}
return aEntryStr;
@@ -1572,7 +1572,8 @@ filter_info_impl::filter_info_impl()
: maFlags(0x00080040),
maFileFormatVersion(0),
mnDocumentIconID(0),
- mbReadonly(sal_False)
+ mbReadonly(sal_False),
+ mbNeedsXSLT2(sal_False)
{
}
@@ -1597,7 +1598,7 @@ filter_info_impl::filter_info_impl( const filter_info_impl& rInfo ) :
maFileFormatVersion( rInfo.maFileFormatVersion ),
mnDocumentIconID( rInfo.mnDocumentIconID ),
mbReadonly( rInfo.mbReadonly ),
- maXSLTTransformerImpl( rInfo.maXSLTTransformerImpl )
+ mbNeedsXSLT2( rInfo.mbNeedsXSLT2 )
{
}
@@ -1621,7 +1622,7 @@ int filter_info_impl::operator==( const filter_info_impl& r ) const
maImportTemplate != r.maImportTemplate ||
maFlags != r.maFlags ||
maFileFormatVersion != r.maFileFormatVersion ||
- maXSLTTransformerImpl != r.maXSLTTransformerImpl
+ mbNeedsXSLT2 != r.mbNeedsXSLT2
)
return false;
@@ -1635,7 +1636,7 @@ Sequence< OUString > filter_info_impl::getFilterUserData() const
Sequence< OUString > aUserData(8);
aUserData[0] = OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.documentconversion.XSLTFilter" ) );
- aUserData[1] = maXSLTTransformerImpl;
+ aUserData[1] = OUString::valueOf( mbNeedsXSLT2 );
aUserData[2] = maImportService;
aUserData[3] = maExportService;
aUserData[4] = maImportXSLT;
diff --git a/filter/source/xsltdialog/xmlfiltertabpagexslt.cxx b/filter/source/xsltdialog/xmlfiltertabpagexslt.cxx
index 37be99048f71..31dce8848a20 100644
--- a/filter/source/xsltdialog/xmlfiltertabpagexslt.cxx
+++ b/filter/source/xsltdialog/xmlfiltertabpagexslt.cxx
@@ -59,9 +59,8 @@ XMLFilterTabPageXSLT::XMLFilterTabPageXSLT( Window* pParent, ResMgr& rResMgr, co
maEDImportTemplate( this, ResId( ED_XML_IMPORT_TEMPLATE, rResMgr ), INET_PROT_FILE ),
maPBImportTemplate( this, ResId( PB_XML_IMPORT_TEMPLATE_BROWSE, rResMgr ) ),
- maFTTransformationService( this, ResId (FT_XML_TRANSFORM_SERVICE, rResMgr ) ),
- maRBTransformationServiceLibXSLT( this, ResId (RB_XML_TRANSFORM_SERVICE_LIBXSLT, rResMgr ) ),
- maRBTransformationServiceSaxonJ( this, ResId (RB_XML_TRANSFORM_SERVICE_SAXON_J, rResMgr ) ),
+ maFTNeedsXSLT2( this, ResId (FT_XML_NEEDS_XSLT2, rResMgr ) ),
+ maCBNeedsXSLT2( this, ResId (CB_XML_NEEDS_XSLT2, rResMgr ) ),
sHTTPSchema( RTL_CONSTASCII_USTRINGPARAM( "http://" ) ),
sSHTTPSchema( RTL_CONSTASCII_USTRINGPARAM( "shttp://" ) ),
@@ -91,8 +90,7 @@ XMLFilterTabPageXSLT::XMLFilterTabPageXSLT( Window* pParent, ResMgr& rResMgr, co
maEDExportXSLT.SetHelpId( HID_XML_FILTER_EXPORT_XSLT );
maEDImportXSLT.SetHelpId( HID_XML_FILTER_IMPORT_XSLT );
maEDImportTemplate.SetHelpId( HID_XML_FILTER_IMPORT_TEMPLATE );
- maRBTransformationServiceLibXSLT.SetHelpId( HID_XML_FILTER_TRANSFORM_SERVICE_LIBXSLT );
- maRBTransformationServiceSaxonJ.SetHelpId( HID_XML_FILTER_TRANSFORM_SERVICE_SAXON_J );
+ maCBNeedsXSLT2.SetHelpId( HID_XML_FILTER_NEEDS_XSLT2 );
}
XMLFilterTabPageXSLT::~XMLFilterTabPageXSLT()
@@ -108,10 +106,7 @@ bool XMLFilterTabPageXSLT::FillInfo( filter_info_impl* pInfo )
pInfo->maExportXSLT = GetURL( maEDExportXSLT );
pInfo->maImportXSLT = GetURL( maEDImportXSLT );
pInfo->maImportTemplate = GetURL( maEDImportTemplate );
- pInfo->maXSLTTransformerImpl
- = maRBTransformationServiceSaxonJ.IsChecked() ? OUString(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.JAXTHelper" ))
- : OUString(RTL_CONSTASCII_USTRINGPARAM( "" ));
+ pInfo->mbNeedsXSLT2 = maCBNeedsXSLT2.IsChecked();
}
return true;
@@ -127,12 +122,7 @@ void XMLFilterTabPageXSLT::SetInfo(const filter_info_impl* pInfo)
SetURL( maEDExportXSLT, pInfo->maExportXSLT );
SetURL( maEDImportXSLT, pInfo->maImportXSLT );
SetURL( maEDImportTemplate, pInfo->maImportTemplate );
- if (pInfo->maXSLTTransformerImpl.equals(OUString(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.JAXTHelper" )))) {
- maRBTransformationServiceSaxonJ.Check();
- } else {
- maRBTransformationServiceLibXSLT.Check();
- }
+ maCBNeedsXSLT2.Check( pInfo->mbNeedsXSLT2 );
}
}
diff --git a/filter/source/xsltdialog/xmlfiltertabpagexslt.hrc b/filter/source/xsltdialog/xmlfiltertabpagexslt.hrc
index c86830758062..93c6ed15adf0 100644
--- a/filter/source/xsltdialog/xmlfiltertabpagexslt.hrc
+++ b/filter/source/xsltdialog/xmlfiltertabpagexslt.hrc
@@ -35,8 +35,7 @@
#define FT_XML_IMPORT_TEMPLATE 12
#define ED_XML_IMPORT_TEMPLATE 13
#define PB_XML_IMPORT_TEMPLATE_BROWSE 14
-#define FT_XML_TRANSFORM_SERVICE 15
-#define RB_XML_TRANSFORM_SERVICE_LIBXSLT 16
-#define RB_XML_TRANSFORM_SERVICE_SAXON_J 17
+#define FT_XML_NEEDS_XSLT2 15
+#define CB_XML_NEEDS_XSLT2 16
#endif
diff --git a/filter/source/xsltdialog/xmlfiltertabpagexslt.hxx b/filter/source/xsltdialog/xmlfiltertabpagexslt.hxx
index a37d017aa71c..cccd97e95e0e 100644
--- a/filter/source/xsltdialog/xmlfiltertabpagexslt.hxx
+++ b/filter/source/xsltdialog/xmlfiltertabpagexslt.hxx
@@ -60,9 +60,8 @@ public:
SvtURLBox maEDImportTemplate;
PushButton maPBImportTemplate;
- FixedText maFTTransformationService;
- RadioButton maRBTransformationServiceLibXSLT;
- RadioButton maRBTransformationServiceSaxonJ;
+ FixedText maFTNeedsXSLT2;
+ CheckBox maCBNeedsXSLT2;
private:
void SetURL( SvtURLBox& rURLBox, const rtl::OUString& rURL );
diff --git a/filter/source/xsltdialog/xmlfiltertabpagexslt.src b/filter/source/xsltdialog/xmlfiltertabpagexslt.src
index f719dd5a1fc4..f8feb42265b6 100644
--- a/filter/source/xsltdialog/xmlfiltertabpagexslt.src
+++ b/filter/source/xsltdialog/xmlfiltertabpagexslt.src
@@ -166,27 +166,18 @@ TabPage RID_XML_FILTER_TABPAGE_XSLT
// XSLT transformation service --------------------------------------------------------
- FixedText FT_XML_TRANSFORM_SERVICE
+ CheckBox CB_XML_NEEDS_XSLT2
{
+ HelpID = HID_XML_FILTER_NEEDS_XSLT2;
Pos = MAP_APPFONT ( FIRST_ROW_X , FIRST_ROW_Y + 5 * ROW_HEIGHT + 5 * SPACING + FIXED_TEXT_OFFSET + EDIT_OFFSET ) ;
- Size = MAP_APPFONT ( FIRST_ROW_WIDTH , 8 ) ;
- Text [ en-US ] = "XSLT Transformation Service";
- };
-
- RadioButton RB_XML_TRANSFORM_SERVICE_LIBXSLT
- {
- HelpID = HID_XML_FILTER_TRANSFORM_SERVICE_LIBXSLT;
- Pos = MAP_APPFONT ( SECOND_ROW_X , SECOND_ROW_Y + 5 * ROW_HEIGHT + 5 * SPACING + EDIT_OFFSET ) ;
- Size = MAP_APPFONT ( SECOND_ROW_WIDTH - SPACING - BROWSE_WIDTH, 12 ) ;
- Text[ en-US ] = "~Builtin (LibXSLT)";
+ Size = MAP_APPFONT ( 12, 12 ) ;
};
- RadioButton RB_XML_TRANSFORM_SERVICE_SAXON_J
+ FixedText FT_XML_NEEDS_XSLT2
{
- HelpID = HID_XML_FILTER_TRANSFORM_SERVICE_SAXON_J;
- Pos = MAP_APPFONT ( SECOND_ROW_X , SECOND_ROW_Y + 6 * ROW_HEIGHT + 6 * SPACING + EDIT_OFFSET ) ;
- Size = MAP_APPFONT ( SECOND_ROW_WIDTH - SPACING - BROWSE_WIDTH, 12 ) ;
- Text[ en-US ] = "~Saxon/J";
+ Pos = MAP_APPFONT ( FIRST_ROW_X + 3 * SPACING , SECOND_ROW_Y + 5 * ROW_HEIGHT + 5 * SPACING + FIXED_TEXT_OFFSET + EDIT_OFFSET ) ;
+ Size = MAP_APPFONT ( 2 * FIRST_ROW_WIDTH , 8 ) ; // guess width
+ Text [ en-US ] = "The filter needs XSLT 2.0 processor";
};
};
diff --git a/filter/source/xsltdialog/xmlfiltertestdialog.cxx b/filter/source/xsltdialog/xmlfiltertestdialog.cxx
index 6f265a5f8071..97c61f5915ee 100644
--- a/filter/source/xsltdialog/xmlfiltertestdialog.cxx
+++ b/filter/source/xsltdialog/xmlfiltertestdialog.cxx
@@ -36,7 +36,7 @@
#include <com/sun/star/ui/dialogs/TemplateDescription.hpp>
#include <com/sun/star/xml/XImportFilter.hpp>
#include <com/sun/star/xml/XExportFilter.hpp>
-#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <comphelper/oslfile2streamwrap.hxx>
#include <vcl/svapp.hxx>
@@ -666,7 +666,7 @@ void XMLFilterTestDialog::import( const OUString& rURL )
aSourceData[i ].Name = OUString( RTL_CONSTASCII_USTRINGPARAM( "DocType_System" ));
aSourceData[i++].Value <<= sDTDPath;
- Reference< XDocumentHandler > xWriter( mxMSF->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.xml.sax.Writer" )) ), UNO_QUERY );
+ Reference< XWriter > xWriter = Writer::create( comphelper::getComponentContext(mxMSF) );
File aOutputFile( aTempFileURL );
aOutputFile.open( osl_File_OpenFlag_Write );
@@ -676,7 +676,7 @@ void XMLFilterTestDialog::import( const OUString& rURL )
xDocSrc->setOutputStream( xOS );
Sequence< OUString > aFilterUserData( mpFilterInfo->getFilterUserData() );
- xImporter->importer( aSourceData, xWriter, aFilterUserData );
+ xImporter->importer( aSourceData, Reference<XDocumentHandler>(xWriter, UNO_QUERY_THROW), aFilterUserData );
}
displayXMLFile( aTempFileURL );
diff --git a/filter/source/xsltfilter/LibXSLTTransformer.cxx b/filter/source/xsltfilter/LibXSLTTransformer.cxx
index aa1411f7b946..5c5b0e0c4296 100644
--- a/filter/source/xsltfilter/LibXSLTTransformer.cxx
+++ b/filter/source/xsltfilter/LibXSLTTransformer.cxx
@@ -494,9 +494,11 @@ namespace XSLT
}
void
- LibXSLTTransformer::initialize(const Sequence<Any>& params)
+ LibXSLTTransformer::initialize(const Sequence<Any>& args)
throw (RuntimeException)
{
+ Sequence<Any> params;
+ args[0] >>= params;
xmlSubstituteEntitiesDefault(0);
m_parameters.clear();
for (int i = 0; i < params.getLength(); i++)
diff --git a/filter/source/xsltfilter/LibXSLTTransformer.hxx b/filter/source/xsltfilter/LibXSLTTransformer.hxx
index 444cb2f6b9ce..a7c71a611fd5 100644
--- a/filter/source/xsltfilter/LibXSLTTransformer.hxx
+++ b/filter/source/xsltfilter/LibXSLTTransformer.hxx
@@ -42,7 +42,7 @@
#include <cppuhelper/factory.hxx>
#include <cppuhelper/servicefactory.hxx>
-#include <cppuhelper/implbase4.hxx>
+#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/implbase.hxx>
#include <rtl/ref.hxx>
@@ -51,14 +51,12 @@
#include <com/sun/star/uno/Any.hxx>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
-#include <com/sun/star/io/XActiveDataSource.hpp>
-#include <com/sun/star/io/XActiveDataSink.hpp>
-#include <com/sun/star/io/XActiveDataControl.hpp>
#include <com/sun/star/io/XStreamListener.hpp>
-#include <com/sun/star/lang/XInitialization.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
+#include <com/sun/star/xml/xslt/XXSLTTransformer.hpp>
using namespace ::rtl;
using namespace ::cppu;
@@ -66,7 +64,6 @@ using namespace ::osl;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::io;
using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
using ::std::list;
using ::std::map;
@@ -90,8 +87,7 @@ namespace XSLT
*
* See Reader below.
*/
- class LibXSLTTransformer : public WeakImplHelper4<XActiveDataSink,
- XActiveDataSource, XActiveDataControl, XInitialization>
+ class LibXSLTTransformer : public WeakImplHelper1<com::sun::star::xml::xslt::XXSLTTransformer>
{
private:
static const char* const PARAM_SOURCE_URL;
@@ -102,7 +98,7 @@ namespace XSLT
static const char* const PARAM_DOCTYPE_PUBLIC;
// the UNO ServiceFactory
- com::sun::star::uno::Reference<XMultiServiceFactory> m_rServiceFactory;
+ com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> m_rServiceFactory;
com::sun::star::uno::Reference<XInputStream> m_rInputStream;
@@ -129,7 +125,7 @@ namespace XSLT
public:
// ctor...
- LibXSLTTransformer(const com::sun::star::uno::Reference<XMultiServiceFactory> &r);
+ LibXSLTTransformer(const com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> &r);
// XActiveDataSink
virtual void SAL_CALL
@@ -169,7 +165,7 @@ namespace XSLT
::std::map<const char*, OString> SAL_CALL
getParameters();
- virtual com::sun::star::uno::Reference<XMultiServiceFactory> SAL_CALL
+ virtual com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> SAL_CALL
getServiceFactory() {
return m_rServiceFactory;
}
diff --git a/filter/source/xsltfilter/Manifest b/filter/source/xsltfilter/Manifest
deleted file mode 100644
index 1bd3102908fb..000000000000
--- a/filter/source/xsltfilter/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-RegistrationClassName: com.sun.star.comp.xsltfilter.XSLTransformer
-UNO-Type-Path:
diff --git a/filter/source/xsltfilter/XSLTFilter.cxx b/filter/source/xsltfilter/XSLTFilter.cxx
index 4bb92b011d55..2ce6aba88f36 100644
--- a/filter/source/xsltfilter/XSLTFilter.cxx
+++ b/filter/source/xsltfilter/XSLTFilter.cxx
@@ -47,6 +47,7 @@
#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
#include <com/sun/star/xml/sax/XExtendedDocumentHandler.hpp>
#include <com/sun/star/xml/sax/SAXException.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/xml/XImportFilter.hpp>
#include <com/sun/star/xml/XExportFilter.hpp>
@@ -65,6 +66,8 @@
#include <com/sun/star/task/XInteractionHandler.hpp>
#include <com/sun/star/task/XInteractionRequest.hpp>
#include <com/sun/star/ucb/InteractiveAugmentedIOException.hpp>
+#include <com/sun/star/xml/xslt/XSLT2Transformer.hpp>
+#include <com/sun/star/xml/xslt/XSLTTransformer.hpp>
#include <xmloff/attrlist.hxx>
@@ -95,14 +98,10 @@ namespace XSLT
* them to an XSLT transformation service. XSLT transformation errors are
* reported to XSLTFilter.
*
- * Currently, two implementations for the XSLT transformation service exist:
- * a java based service (see XSLTransformer.java) and a libxslt based
- * service (LibXSLTTransformer.cxx).
- *
- * The libxslt implementation will be used by default.
- *
- * If the value of the 2nd "UserData" parameter of the filter configuration is
- * not empty, the service name given there will be used.
+ * Currently, our transformation service is libxslt based, so it
+ * only supports XSLT 1.0. There is a possibility to use XSLT 2.0
+ * supporting service from an extension for a specific filter; the
+ * service must support com.sun.star.xml.xslt.XSLT2Transformer.
*/
class XSLTFilter : public WeakImplHelper4<XImportFilter, XExportFilter,
XStreamListener, ExtendedDocumentHandlerAdapter>
@@ -115,7 +114,7 @@ namespace XSLT
// DocumentHandler interface of the css::xml::sax::Writer service
css::uno::Reference<XOutputStream> m_rOutputStream;
- css::uno::Reference<XActiveDataControl> m_tcontrol;
+ css::uno::Reference<xslt::XXSLTTransformer> m_tcontrol;
oslCondition m_cTransformed;
sal_Bool m_bTerminated;
@@ -128,6 +127,8 @@ namespace XSLT
OUString
expandUrl(const OUString&);
+ css::uno::Reference<xslt::XXSLTTransformer> impl_createTransformer(const rtl::OUString& rTransformer, const Sequence<Any>& rArgs);
+
public:
// ctor...
@@ -199,6 +200,43 @@ m_rServiceFactory(r), m_bTerminated(sal_False), m_bError(sal_False)
return sExpandedUrl;
}
+ css::uno::Reference<xslt::XXSLTTransformer>
+ XSLTFilter::impl_createTransformer(const rtl::OUString& rTransformer, const Sequence<Any>& rArgs)
+ {
+ css::uno::Reference<xslt::XXSLTTransformer> xTransformer;
+
+ // check if the filter needs XSLT-2.0-capable transformer
+ // COMPATIBILITY: libreoffice 3.5/3.6 used to save the impl.
+ // name of the XSLT 2.0 transformation service there, so check
+ // for that too (it is sufficient to check that there is _a_
+ // service name there)
+ if (rTransformer.toBoolean() || rTransformer.startsWith("com.sun."))
+ {
+ try
+ {
+ xTransformer = xslt::XSLT2Transformer::create(
+ comphelper::getComponentContext(m_rServiceFactory), rArgs);
+ }
+ catch (const Exception&)
+ {
+ // TODO: put a dialog telling about the need to install
+ // xslt2-transformer extension here
+ SAL_WARN("filter.xslt", "could not create XSLT 2.0 transformer");
+ throw;
+ }
+ }
+
+ // instantiation of XSLT 2.0 transformer service failed, or the
+ // filter does not need it
+ if (!xTransformer.is())
+ {
+ xTransformer = xslt::XSLTTransformer::create(
+ comphelper::getComponentContext(m_rServiceFactory), rArgs);
+ }
+
+ return xTransformer;
+ }
+
void
XSLTFilter::started() throw (RuntimeException)
{
@@ -299,11 +337,7 @@ m_rServiceFactory(r), m_bTerminated(sal_False), m_bError(sal_False)
nv.Value <<= OUString(INetURLObject(aURL).getBase());
args[2] <<= nv;
- OUString serviceName("com.sun.star.comp.documentconversion.LibXSLTTransformer");
- if (!msUserData[1].isEmpty())
- serviceName = msUserData[1];
-
- m_tcontrol = css::uno::Reference<XActiveDataControl> (m_rServiceFactory->createInstanceWithArguments(serviceName, args), UNO_QUERY);
+ m_tcontrol = impl_createTransformer(msUserData[1], args);
OSL_ASSERT(xHandler.is());
OSL_ASSERT(xInputStream.is());
@@ -431,11 +465,9 @@ m_rServiceFactory(r), m_bTerminated(sal_False), m_bError(sal_False)
if (!getDelegate().is())
{
// get the document writer
- setDelegate(css::uno::Reference<XExtendedDocumentHandler> (
- m_rServiceFactory->createInstance(
- OUString(
- "com.sun.star.xml.sax.Writer" )),
- UNO_QUERY));
+ setDelegate(css::uno::Reference<XExtendedDocumentHandler>(
+ Writer::create(comphelper::getComponentContext(m_rServiceFactory)),
+ UNO_QUERY_THROW));
}
// create transformer
@@ -460,11 +492,7 @@ m_rServiceFactory(r), m_bTerminated(sal_False), m_bError(sal_False)
nv.Value <<= m_aExportBaseUrl;
args[3] <<= nv;
- OUString serviceName("com.sun.star.comp.documentconversion.LibXSLTTransformer");
- if (!msUserData[1].isEmpty())
- serviceName = msUserData[1];
-
- m_tcontrol = css::uno::Reference<XActiveDataControl> (m_rServiceFactory->createInstanceWithArguments(serviceName, args), UNO_QUERY);
+ m_tcontrol = impl_createTransformer(msUserData[1], args);
OSL_ASSERT(m_rOutputStream.is());
OSL_ASSERT(m_tcontrol.is());
@@ -537,7 +565,7 @@ m_rServiceFactory(r), m_bTerminated(sal_False), m_bError(sal_False)
// --------------------------------------
#define FILTER_SERVICE_NAME "com.sun.star.documentconversion.XSLTFilter"
#define FILTER_IMPL_NAME "com.sun.star.comp.documentconversion.XSLTFilter"
-#define TRANSFORMER_SERVICE_NAME "com.sun.star.documentconversion.LibXSLTTransformer"
+#define TRANSFORMER_SERVICE_NAME "com.sun.star.xml.xslt.XSLTTransformer"
#define TRANSFORMER_IMPL_NAME "com.sun.star.comp.documentconversion.LibXSLTTransformer"
static css::uno::Reference<XInterface> SAL_CALL
diff --git a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java b/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java
deleted file mode 100644
index 0d0f331d3200..000000000000
--- a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/Base64.java
+++ /dev/null
@@ -1,1824 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-package com.sun.star.comp.xsltfilter;
-
-/**
- * <p>Encodes and decodes to and from Base64 notation.</p>
- * <p>Homepage: <a href="http://iharder.net/base64">http://iharder.net/base64</a>.</p>
- *
- * <p>The <tt>options</tt> parameter, which appears in a few places, is used to pass
- * several pieces of information to the encoder. In the "higher level" methods such as
- * encodeBytes( bytes, options ) the options parameter can be used to indicate such
- * things as first gzipping the bytes before encoding them, not inserting linefeeds
- * (though that breaks strict Base64 compatibility), and encoding using the URL-safe
- * and Ordered dialects.</p>
- *
- * <p>The constants defined in Base64 can be OR-ed together to combine options, so you
- * might make a call like this:</p>
- *
- * <code>String encoded = Base64.encodeBytes( mybytes, Base64.GZIP | Base64.DONT_BREAK_LINES );</code>
- *
- * <p>to compress the data before encoding it and then making the output have no newline characters.</p>
- *
- *
- * <p>
- * Change Log:
- * </p>
- * <ul>
- * <li>v2.2.2 - Fixed encodeFileToFile and decodeFileToFile to use the
- * Base64.InputStream class to encode and decode on the fly which uses
- * less memory than encoding/decoding an entire file into memory before writing.</li>
- * <li>v2.2.1 - Fixed bug using URL_SAFE and ORDERED encodings. Fixed bug
- * when using very small files (~&lt; 40 bytes).</li>
- * <li>v2.2 - Added some helper methods for encoding/decoding directly from
- * one file to the next. Also added a main() method to support command line
- * encoding/decoding from one file to the next. Also added these Base64 dialects:
- * <ol>
- * <li>The default is RFC3548 format.</li>
- * <li>Calling Base64.setFormat(Base64.BASE64_FORMAT.URLSAFE_FORMAT) generates
- * URL and file name friendly format as described in Section 4 of RFC3548.
- * http://www.faqs.org/rfcs/rfc3548.html</li>
- * <li>Calling Base64.setFormat(Base64.BASE64_FORMAT.ORDERED_FORMAT) generates
- * URL and file name friendly format that preserves lexical ordering as described
- * in http://www.faqs.org/qa/rfcc-1940.html</li>
- * </ol>
- * Special thanks to Jim Kellerman at <a href="http://www.powerset.com/">http://www.powerset.com/</a>
- * for contributing the new Base64 dialects.
- * </li>
- *
- * <li>v2.1 - Cleaned up javadoc comments and unused variables and methods. Added
- * some convenience methods for reading and writing to and from files.</li>
- * <li>v2.0.2 - Now specifies UTF-8 encoding in places where the code fails on systems
- * with other encodings (like EBCDIC).</li>
- * <li>v2.0.1 - Fixed an error when decoding a single byte, that is, when the
- * encoded data was a single byte.</li>
- * <li>v2.0 - I got rid of methods that used booleans to set options.
- * Now everything is more consolidated and cleaner. The code now detects
- * when data that's being decoded is gzip-compressed and will decompress it
- * automatically. Generally things are cleaner. You'll probably have to
- * change some method calls that you were making to support the new
- * options format (<tt>int</tt>s that you "OR" together).</li>
- * <li>v1.5.1 - Fixed bug when decompressing and decoding to a
- * byte[] using <tt>decode( String s, boolean gzipCompressed )</tt>.
- * Added the ability to "suspend" encoding in the Output Stream so
- * you can turn on and off the encoding if you need to embed base64
- * data in an otherwise "normal" stream (like an XML file).</li>
- * <li>v1.5 - Output stream pases on flush() command but doesn't do anything itself.
- * This helps when using GZIP streams.
- * Added the ability to GZip-compress objects before encoding them.</li>
- * <li>v1.4 - Added helper methods to read/write files.</li>
- * <li>v1.3.6 - Fixed OutputStream.flush() so that 'position' is reset.</li>
- * <li>v1.3.5 - Added flag to turn on and off line breaks. Fixed bug in input stream
- * where last buffer being read, if not completely full, was not returned.</li>
- * <li>v1.3.4 - Fixed when "improperly padded stream" error was thrown at the wrong time.</li>
- * <li>v1.3.3 - Fixed I/O streams which were totally messed up.</li>
- * </ul>
- *
- * <p>
- * I am placing this code in the Public Domain. Do with it as you will.
- * This software comes with no guarantees or warranties but with
- * plenty of well-wishing instead!
- * Please visit <a href="http://iharder.net/base64">http://iharder.net/base64</a>
- * periodically to check for updates or to contribute improvements.
- * </p>
- *
- * @version 2.2.2
- */
-public class Base64
-{
-
-/* ******** P U B L I C F I E L D S ******** */
-
-
- /** No options specified. Value is zero. */
- public final static int NO_OPTIONS = 0;
-
- /** Specify encoding. */
- public final static int ENCODE = 1;
-
-
- /** Specify decoding. */
- public final static int DECODE = 0;
-
-
- /** Specify that data should be gzip-compressed. */
- public final static int GZIP = 2;
-
-
- /** Don't break lines when encoding (violates strict Base64 specification) */
- public final static int DONT_BREAK_LINES = 8;
-
- /**
- * Encode using Base64-like encoding that is URL- and Filename-safe as described
- * in Section 4 of RFC3548:
- * <a href="http://www.faqs.org/rfcs/rfc3548.html">http://www.faqs.org/rfcs/rfc3548.html</a>.
- * It is important to note that data encoded this way is <em>not</em> officially valid Base64,
- * or at the very least should not be called Base64 without also specifying that is
- * was encoded using the URL- and Filename-safe dialect.
- */
- public final static int URL_SAFE = 16;
-
-
- /**
- * Encode using the special "ordered" dialect of Base64 described here:
- * <a href="http://www.faqs.org/qa/rfcc-1940.html">http://www.faqs.org/qa/rfcc-1940.html</a>.
- */
- public final static int ORDERED = 32;
-
-
-/* ******** P R I V A T E F I E L D S ******** */
-
-
- /** Maximum line length (76) of Base64 output. */
- private final static int MAX_LINE_LENGTH = 76;
-
-
- /** The equals sign (=) as a byte. */
- private final static byte EQUALS_SIGN = (byte)'=';
-
-
- /** The new line character (\n) as a byte. */
- private final static byte NEW_LINE = (byte)'\n';
-
-
- /** Preferred encoding. */
- private final static String PREFERRED_ENCODING = "UTF-8";
-
-
- // I think I end up not using the BAD_ENCODING indicator.
- //private final static byte BAD_ENCODING = -9; // Indicates error in encoding
- private final static byte WHITE_SPACE_ENC = -5; // Indicates white space in encoding
- private final static byte EQUALS_SIGN_ENC = -1; // Indicates equals sign in encoding
-
-
-/* ******** S T A N D A R D B A S E 6 4 A L P H A B E T ******** */
-
- /** The 64 valid Base64 values. */
- //private final static byte[] ALPHABET;
- /* Host platform me be something funny like EBCDIC, so we hardcode these values. */
- private final static byte[] _STANDARD_ALPHABET =
- {
- (byte)'A', (byte)'B', (byte)'C', (byte)'D', (byte)'E', (byte)'F', (byte)'G',
- (byte)'H', (byte)'I', (byte)'J', (byte)'K', (byte)'L', (byte)'M', (byte)'N',
- (byte)'O', (byte)'P', (byte)'Q', (byte)'R', (byte)'S', (byte)'T', (byte)'U',
- (byte)'V', (byte)'W', (byte)'X', (byte)'Y', (byte)'Z',
- (byte)'a', (byte)'b', (byte)'c', (byte)'d', (byte)'e', (byte)'f', (byte)'g',
- (byte)'h', (byte)'i', (byte)'j', (byte)'k', (byte)'l', (byte)'m', (byte)'n',
- (byte)'o', (byte)'p', (byte)'q', (byte)'r', (byte)'s', (byte)'t', (byte)'u',
- (byte)'v', (byte)'w', (byte)'x', (byte)'y', (byte)'z',
- (byte)'0', (byte)'1', (byte)'2', (byte)'3', (byte)'4', (byte)'5',
- (byte)'6', (byte)'7', (byte)'8', (byte)'9', (byte)'+', (byte)'/'
- };
-
-
- /**
- * Translates a Base64 value to either its 6-bit reconstruction value
- * or a negative number indicating some other meaning.
- **/
- private final static byte[] _STANDARD_DECODABET =
- {
- -9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 0 - 8
- -5,-5, // Whitespace: Tab and Linefeed
- -9,-9, // Decimal 11 - 12
- -5, // Whitespace: Carriage Return
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 14 - 26
- -9,-9,-9,-9,-9, // Decimal 27 - 31
- -5, // Whitespace: Space
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 33 - 42
- 62, // Plus sign at decimal 43
- -9,-9,-9, // Decimal 44 - 46
- 63, // Slash at decimal 47
- 52,53,54,55,56,57,58,59,60,61, // Numbers zero through nine
- -9,-9,-9, // Decimal 58 - 60
- -1, // Equals sign at decimal 61
- -9,-9,-9, // Decimal 62 - 64
- 0,1,2,3,4,5,6,7,8,9,10,11,12,13, // Letters 'A' through 'N'
- 14,15,16,17,18,19,20,21,22,23,24,25, // Letters 'O' through 'Z'
- -9,-9,-9,-9,-9,-9, // Decimal 91 - 96
- 26,27,28,29,30,31,32,33,34,35,36,37,38, // Letters 'a' through 'm'
- 39,40,41,42,43,44,45,46,47,48,49,50,51, // Letters 'n' through 'z'
- -9,-9,-9,-9 // Decimal 123 - 126
- /*,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 127 - 139
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 140 - 152
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 153 - 165
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 166 - 178
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 179 - 191
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 192 - 204
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 205 - 217
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 218 - 230
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 231 - 243
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9 // Decimal 244 - 255 */
- };
-
-
-/* ******** U R L S A F E B A S E 6 4 A L P H A B E T ******** */
-
- /**
- * Used in the URL- and Filename-safe dialect described in Section 4 of RFC3548:
- * <a href="http://www.faqs.org/rfcs/rfc3548.html">http://www.faqs.org/rfcs/rfc3548.html</a>.
- * Notice that the last two bytes become "hyphen" and "underscore" instead of "plus" and "slash."
- */
- private final static byte[] _URL_SAFE_ALPHABET =
- {
- (byte)'A', (byte)'B', (byte)'C', (byte)'D', (byte)'E', (byte)'F', (byte)'G',
- (byte)'H', (byte)'I', (byte)'J', (byte)'K', (byte)'L', (byte)'M', (byte)'N',
- (byte)'O', (byte)'P', (byte)'Q', (byte)'R', (byte)'S', (byte)'T', (byte)'U',
- (byte)'V', (byte)'W', (byte)'X', (byte)'Y', (byte)'Z',
- (byte)'a', (byte)'b', (byte)'c', (byte)'d', (byte)'e', (byte)'f', (byte)'g',
- (byte)'h', (byte)'i', (byte)'j', (byte)'k', (byte)'l', (byte)'m', (byte)'n',
- (byte)'o', (byte)'p', (byte)'q', (byte)'r', (byte)'s', (byte)'t', (byte)'u',
- (byte)'v', (byte)'w', (byte)'x', (byte)'y', (byte)'z',
- (byte)'0', (byte)'1', (byte)'2', (byte)'3', (byte)'4', (byte)'5',
- (byte)'6', (byte)'7', (byte)'8', (byte)'9', (byte)'-', (byte)'_'
- };
-
- /**
- * Used in decoding URL- and Filename-safe dialects of Base64.
- */
- private final static byte[] _URL_SAFE_DECODABET =
- {
- -9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 0 - 8
- -5,-5, // Whitespace: Tab and Linefeed
- -9,-9, // Decimal 11 - 12
- -5, // Whitespace: Carriage Return
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 14 - 26
- -9,-9,-9,-9,-9, // Decimal 27 - 31
- -5, // Whitespace: Space
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 33 - 42
- -9, // Plus sign at decimal 43
- -9, // Decimal 44
- 62, // Minus sign at decimal 45
- -9, // Decimal 46
- -9, // Slash at decimal 47
- 52,53,54,55,56,57,58,59,60,61, // Numbers zero through nine
- -9,-9,-9, // Decimal 58 - 60
- -1, // Equals sign at decimal 61
- -9,-9,-9, // Decimal 62 - 64
- 0,1,2,3,4,5,6,7,8,9,10,11,12,13, // Letters 'A' through 'N'
- 14,15,16,17,18,19,20,21,22,23,24,25, // Letters 'O' through 'Z'
- -9,-9,-9,-9, // Decimal 91 - 94
- 63, // Underscore at decimal 95
- -9, // Decimal 96
- 26,27,28,29,30,31,32,33,34,35,36,37,38, // Letters 'a' through 'm'
- 39,40,41,42,43,44,45,46,47,48,49,50,51, // Letters 'n' through 'z'
- -9,-9,-9,-9 // Decimal 123 - 126
- /*,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 127 - 139
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 140 - 152
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 153 - 165
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 166 - 178
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 179 - 191
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 192 - 204
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 205 - 217
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 218 - 230
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 231 - 243
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9 // Decimal 244 - 255 */
- };
-
-
-
-/* ******** O R D E R E D B A S E 6 4 A L P H A B E T ******** */
-
- /**
- * I don't get the point of this technique, but it is described here:
- * <a href="http://www.faqs.org/qa/rfcc-1940.html">http://www.faqs.org/qa/rfcc-1940.html</a>.
- */
- private final static byte[] _ORDERED_ALPHABET =
- {
- (byte)'-',
- (byte)'0', (byte)'1', (byte)'2', (byte)'3', (byte)'4',
- (byte)'5', (byte)'6', (byte)'7', (byte)'8', (byte)'9',
- (byte)'A', (byte)'B', (byte)'C', (byte)'D', (byte)'E', (byte)'F', (byte)'G',
- (byte)'H', (byte)'I', (byte)'J', (byte)'K', (byte)'L', (byte)'M', (byte)'N',
- (byte)'O', (byte)'P', (byte)'Q', (byte)'R', (byte)'S', (byte)'T', (byte)'U',
- (byte)'V', (byte)'W', (byte)'X', (byte)'Y', (byte)'Z',
- (byte)'_',
- (byte)'a', (byte)'b', (byte)'c', (byte)'d', (byte)'e', (byte)'f', (byte)'g',
- (byte)'h', (byte)'i', (byte)'j', (byte)'k', (byte)'l', (byte)'m', (byte)'n',
- (byte)'o', (byte)'p', (byte)'q', (byte)'r', (byte)'s', (byte)'t', (byte)'u',
- (byte)'v', (byte)'w', (byte)'x', (byte)'y', (byte)'z'
- };
-
- /**
- * Used in decoding the "ordered" dialect of Base64.
- */
- private final static byte[] _ORDERED_DECODABET =
- {
- -9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 0 - 8
- -5,-5, // Whitespace: Tab and Linefeed
- -9,-9, // Decimal 11 - 12
- -5, // Whitespace: Carriage Return
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 14 - 26
- -9,-9,-9,-9,-9, // Decimal 27 - 31
- -5, // Whitespace: Space
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 33 - 42
- -9, // Plus sign at decimal 43
- -9, // Decimal 44
- 0, // Minus sign at decimal 45
- -9, // Decimal 46
- -9, // Slash at decimal 47
- 1,2,3,4,5,6,7,8,9,10, // Numbers zero through nine
- -9,-9,-9, // Decimal 58 - 60
- -1, // Equals sign at decimal 61
- -9,-9,-9, // Decimal 62 - 64
- 11,12,13,14,15,16,17,18,19,20,21,22,23, // Letters 'A' through 'M'
- 24,25,26,27,28,29,30,31,32,33,34,35,36, // Letters 'N' through 'Z'
- -9,-9,-9,-9, // Decimal 91 - 94
- 37, // Underscore at decimal 95
- -9, // Decimal 96
- 38,39,40,41,42,43,44,45,46,47,48,49,50, // Letters 'a' through 'm'
- 51,52,53,54,55,56,57,58,59,60,61,62,63, // Letters 'n' through 'z'
- -9,-9,-9,-9 // Decimal 123 - 126
- /*,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 127 - 139
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 140 - 152
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 153 - 165
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 166 - 178
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 179 - 191
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 192 - 204
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 205 - 217
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 218 - 230
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 231 - 243
- -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9 // Decimal 244 - 255 */
- };
-
-
-/* ******** D E T E R M I N E W H I C H A L H A B E T ******** */
-
-
- /**
- * Returns one of the _SOMETHING_ALPHABET byte arrays depending on
- * the options specified.
- * It's possible, though silly, to specify ORDERED and URLSAFE
- * in which case one of them will be picked, though there is
- * no guarantee as to which one will be picked.
- */
- private final static byte[] getAlphabet( int options )
- {
- if( (options & URL_SAFE) == URL_SAFE ) return _URL_SAFE_ALPHABET;
- else if( (options & ORDERED) == ORDERED ) return _ORDERED_ALPHABET;
- else return _STANDARD_ALPHABET;
-
- } // end getAlphabet
-
-
- /**
- * Returns one of the _SOMETHING_DECODABET byte arrays depending on
- * the options specified.
- * It's possible, though silly, to specify ORDERED and URL_SAFE
- * in which case one of them will be picked, though there is
- * no guarantee as to which one will be picked.
- */
- private final static byte[] getDecodabet( int options )
- {
- if( (options & URL_SAFE) == URL_SAFE ) return _URL_SAFE_DECODABET;
- else if( (options & ORDERED) == ORDERED ) return _ORDERED_DECODABET;
- else return _STANDARD_DECODABET;
-
- } // end getAlphabet
-
-
-
- /** Defeats instantiation. */
- private Base64(){}
-
-
- /**
- * Encodes or decodes two files from the command line;
- * <strong>feel free to delete this method (in fact you probably should)
- * if you're embedding this code into a larger program.</strong>
- */
- public final static void main( String[] args )
- {
- if( args.length < 3 ){
- usage("Not enough arguments.");
- } // end if: args.length < 3
- else {
- String flag = args[0];
- String infile = args[1];
- String outfile = args[2];
- if( flag.equals( "-e" ) ){
- Base64.encodeFileToFile( infile, outfile );
- } // end if: encode
- else if( flag.equals( "-d" ) ) {
- Base64.decodeFileToFile( infile, outfile );
- } // end else if: decode
- else {
- usage( "Unknown flag: " + flag );
- } // end else
- } // end else
- } // end main
-
- /**
- * Prints command line usage.
- *
- * @param msg A message to include with usage info.
- */
- private final static void usage( String msg )
- {
- System.err.println( msg );
- System.err.println( "Usage: java Base64 -e|-d inputfile outputfile" );
- } // end usage
-
-
-/* ******** E N C O D I N G M E T H O D S ******** */
-
-
- /**
- * Encodes up to the first three bytes of array <var>threeBytes</var>
- * and returns a four-byte array in Base64 notation.
- * The actual number of significant bytes in your array is
- * given by <var>numSigBytes</var>.
- * The array <var>threeBytes</var> needs only be as big as
- * <var>numSigBytes</var>.
- * Code can reuse a byte array by passing a four-byte array as <var>b4</var>.
- *
- * @param b4 A reusable byte array to reduce array instantiation
- * @param threeBytes the array to convert
- * @param numSigBytes the number of significant bytes in your array
- * @return four byte array in Base64 notation.
- * @since 1.5.1
- */
- private static byte[] encode3to4( byte[] b4, byte[] threeBytes, int numSigBytes, int options )
- {
- encode3to4( threeBytes, 0, numSigBytes, b4, 0, options );
- return b4;
- } // end encode3to4
-
-
- /**
- * <p>Encodes up to three bytes of the array <var>source</var>
- * and writes the resulting four Base64 bytes to <var>destination</var>.
- * The source and destination arrays can be manipulated
- * anywhere along their length by specifying
- * <var>srcOffset</var> and <var>destOffset</var>.
- * This method does not check to make sure your arrays
- * are large enough to accomodate <var>srcOffset</var> + 3 for
- * the <var>source</var> array or <var>destOffset</var> + 4 for
- * the <var>destination</var> array.
- * The actual number of significant bytes in your array is
- * given by <var>numSigBytes</var>.</p>
- * <p>This is the lowest level of the encoding methods with
- * all possible parameters.</p>
- *
- * @param source the array to convert
- * @param srcOffset the index where conversion begins
- * @param numSigBytes the number of significant bytes in your array
- * @param destination the array to hold the conversion
- * @param destOffset the index where output will be put
- * @return the <var>destination</var> array
- * @since 1.3
- */
- private static byte[] encode3to4(
- byte[] source, int srcOffset, int numSigBytes,
- byte[] destination, int destOffset, int options )
- {
- byte[] ALPHABET = getAlphabet( options );
-
- // 1 2 3
- // 01234567890123456789012345678901 Bit position
- // --------000000001111111122222222 Array position from threeBytes
- // --------| || || || | Six bit groups to index ALPHABET
- // >>18 >>12 >> 6 >> 0 Right shift necessary
- // 0x3f 0x3f 0x3f Additional AND
-
- // Create buffer with zero-padding if there are only one or two
- // significant bytes passed in the array.
- // We have to shift left 24 in order to flush out the 1's that appear
- // when Java treats a value as negative that is cast from a byte to an int.
- int inBuff = ( numSigBytes > 0 ? ((source[ srcOffset ] << 24) >>> 8) : 0 )
- | ( numSigBytes > 1 ? ((source[ srcOffset + 1 ] << 24) >>> 16) : 0 )
- | ( numSigBytes > 2 ? ((source[ srcOffset + 2 ] << 24) >>> 24) : 0 );
-
- switch( numSigBytes )
- {
- case 3:
- destination[ destOffset ] = ALPHABET[ (inBuff >>> 18) ];
- destination[ destOffset + 1 ] = ALPHABET[ (inBuff >>> 12) & 0x3f ];
- destination[ destOffset + 2 ] = ALPHABET[ (inBuff >>> 6) & 0x3f ];
- destination[ destOffset + 3 ] = ALPHABET[ (inBuff ) & 0x3f ];
- return destination;
-
- case 2:
- destination[ destOffset ] = ALPHABET[ (inBuff >>> 18) ];
- destination[ destOffset + 1 ] = ALPHABET[ (inBuff >>> 12) & 0x3f ];
- destination[ destOffset + 2 ] = ALPHABET[ (inBuff >>> 6) & 0x3f ];
- destination[ destOffset + 3 ] = EQUALS_SIGN;
- return destination;
-
- case 1:
- destination[ destOffset ] = ALPHABET[ (inBuff >>> 18) ];
- destination[ destOffset + 1 ] = ALPHABET[ (inBuff >>> 12) & 0x3f ];
- destination[ destOffset + 2 ] = EQUALS_SIGN;
- destination[ destOffset + 3 ] = EQUALS_SIGN;
- return destination;
-
- default:
- return destination;
- } // end switch
- } // end encode3to4
-
-
-
- /**
- * Serializes an object and returns the Base64-encoded
- * version of that serialized object. If the object
- * cannot be serialized or there is another error,
- * the method will return <tt>null</tt>.
- * The object is not GZip-compressed before being encoded.
- *
- * @param serializableObject The object to encode
- * @return The Base64-encoded object
- * @since 1.4
- */
- public static String encodeObject( java.io.Serializable serializableObject )
- {
- return encodeObject( serializableObject, NO_OPTIONS );
- } // end encodeObject
-
-
-
- /**
- * Serializes an object and returns the Base64-encoded
- * version of that serialized object. If the object
- * cannot be serialized or there is another error,
- * the method will return <tt>null</tt>.
- * <p>
- * Valid options:<pre>
- * GZIP: gzip-compresses object before encoding it.
- * DONT_BREAK_LINES: don't break lines at 76 characters
- * <i>Note: Technically, this makes your encoding non-compliant.</i>
- * </pre>
- * <p>
- * Example: <code>encodeObject( myObj, Base64.GZIP )</code> or
- * <p>
- * Example: <code>encodeObject( myObj, Base64.GZIP | Base64.DONT_BREAK_LINES )</code>
- *
- * @param serializableObject The object to encode
- * @param options Specified options
- * @return The Base64-encoded object
- * @see Base64#GZIP
- * @see Base64#DONT_BREAK_LINES
- * @since 2.0
- */
- public static String encodeObject( java.io.Serializable serializableObject, int options )
- {
- // Streams
- java.io.ByteArrayOutputStream baos = null;
- java.io.OutputStream b64os = null;
- java.io.ObjectOutputStream oos = null;
- java.util.zip.GZIPOutputStream gzos = null;
-
- // Isolate options
- int gzip = (options & GZIP);
- int dontBreakLines = (options & DONT_BREAK_LINES);
-
- try
- {
- // ObjectOutputStream -> (GZIP) -> Base64 -> ByteArrayOutputStream
- baos = new java.io.ByteArrayOutputStream();
- b64os = new Base64.OutputStream( baos, ENCODE | options );
-
- // GZip?
- if( gzip == GZIP )
- {
- gzos = new java.util.zip.GZIPOutputStream( b64os );
- oos = new java.io.ObjectOutputStream( gzos );
- } // end if: gzip
- else
- oos = new java.io.ObjectOutputStream( b64os );
-
- oos.writeObject( serializableObject );
- } // end try
- catch( java.io.IOException e )
- {
- e.printStackTrace();
- return null;
- } // end catch
- finally
- {
- try{ oos.close(); } catch( Exception e ){}
- try{ gzos.close(); } catch( Exception e ){}
- try{ b64os.close(); } catch( Exception e ){}
- try{ baos.close(); } catch( Exception e ){}
- } // end finally
-
- // Return value according to relevant encoding.
- try
- {
- return new String( baos.toByteArray(), PREFERRED_ENCODING );
- } // end try
- catch (java.io.UnsupportedEncodingException uue)
- {
- return new String( baos.toByteArray() );
- } // end catch
-
- } // end encode
-
-
-
- /**
- * Encodes a byte array into Base64 notation.
- * Does not GZip-compress data.
- *
- * @param source The data to convert
- * @since 1.4
- */
- public static String encodeBytes( byte[] source )
- {
- return encodeBytes( source, 0, source.length, NO_OPTIONS );
- } // end encodeBytes
-
-
-
- /**
- * Encodes a byte array into Base64 notation.
- * <p>
- * Valid options:<pre>
- * GZIP: gzip-compresses object before encoding it.
- * DONT_BREAK_LINES: don't break lines at 76 characters
- * <i>Note: Technically, this makes your encoding non-compliant.</i>
- * </pre>
- * <p>
- * Example: <code>encodeBytes( myData, Base64.GZIP )</code> or
- * <p>
- * Example: <code>encodeBytes( myData, Base64.GZIP | Base64.DONT_BREAK_LINES )</code>
- *
- *
- * @param source The data to convert
- * @param options Specified options
- * @see Base64#GZIP
- * @see Base64#DONT_BREAK_LINES
- * @since 2.0
- */
- public static String encodeBytes( byte[] source, int options )
- {
- return encodeBytes( source, 0, source.length, options );
- } // end encodeBytes
-
-
- /**
- * Encodes a byte array into Base64 notation.
- * Does not GZip-compress data.
- *
- * @param source The data to convert
- * @param off Offset in array where conversion should begin
- * @param len Length of data to convert
- * @since 1.4
- */
- public static String encodeBytes( byte[] source, int off, int len )
- {
- return encodeBytes( source, off, len, NO_OPTIONS );
- } // end encodeBytes
-
-
-
- /**
- * Encodes a byte array into Base64 notation.
- * <p>
- * Valid options:<pre>
- * GZIP: gzip-compresses object before encoding it.
- * DONT_BREAK_LINES: don't break lines at 76 characters
- * <i>Note: Technically, this makes your encoding non-compliant.</i>
- * </pre>
- * <p>
- * Example: <code>encodeBytes( myData, Base64.GZIP )</code> or
- * <p>
- * Example: <code>encodeBytes( myData, Base64.GZIP | Base64.DONT_BREAK_LINES )</code>
- *
- *
- * @param source The data to convert
- * @param off Offset in array where conversion should begin
- * @param len Length of data to convert
- * @param options Specified options, alphabet type is pulled from this (standard, url-safe, ordered)
- * @see Base64#GZIP
- * @see Base64#DONT_BREAK_LINES
- * @since 2.0
- */
- public static String encodeBytes( byte[] source, int off, int len, int options )
- {
- // Isolate options
- int dontBreakLines = ( options & DONT_BREAK_LINES );
- int gzip = ( options & GZIP );
-
- // Compress?
- if( gzip == GZIP )
- {
- java.io.ByteArrayOutputStream baos = null;
- java.util.zip.GZIPOutputStream gzos = null;
- Base64.OutputStream b64os = null;
-
-
- try
- {
- // GZip -> Base64 -> ByteArray
- baos = new java.io.ByteArrayOutputStream();
- b64os = new Base64.OutputStream( baos, ENCODE | options );
- gzos = new java.util.zip.GZIPOutputStream( b64os );
-
- gzos.write( source, off, len );
- gzos.close();
- } // end try
- catch( java.io.IOException e )
- {
- e.printStackTrace();
- return null;
- } // end catch
- finally
- {
- try{ gzos.close(); } catch( Exception e ){}
- try{ b64os.close(); } catch( Exception e ){}
- try{ baos.close(); } catch( Exception e ){}
- } // end finally
-
- // Return value according to relevant encoding.
- try
- {
- return new String( baos.toByteArray(), PREFERRED_ENCODING );
- } // end try
- catch (java.io.UnsupportedEncodingException uue)
- {
- return new String( baos.toByteArray() );
- } // end catch
- } // end if: compress
-
- // Else, don't compress. Better not to use streams at all then.
- else
- {
- // Convert option to boolean in way that code likes it.
- boolean breakLines = dontBreakLines == 0;
-
- int len43 = len * 4 / 3;
- byte[] outBuff = new byte[ ( len43 ) // Main 4:3
- + ( (len % 3) > 0 ? 4 : 0 ) // Account for padding
- + (breakLines ? ( len43 / MAX_LINE_LENGTH ) : 0) ]; // New lines
- int d = 0;
- int e = 0;
- int len2 = len - 2;
- int lineLength = 0;
- for( ; d < len2; d+=3, e+=4 )
- {
- encode3to4( source, d+off, 3, outBuff, e, options );
-
- lineLength += 4;
- if( breakLines && lineLength == MAX_LINE_LENGTH )
- {
- outBuff[e+4] = NEW_LINE;
- e++;
- lineLength = 0;
- } // end if: end of line
- } // en dfor: each piece of array
-
- if( d < len )
- {
- encode3to4( source, d+off, len - d, outBuff, e, options );
- e += 4;
- } // end if: some padding needed
-
-
- // Return value according to relevant encoding.
- try
- {
- return new String( outBuff, 0, e, PREFERRED_ENCODING );
- } // end try
- catch (java.io.UnsupportedEncodingException uue)
- {
- return new String( outBuff, 0, e );
- } // end catch
-
- } // end else: don't compress
-
- } // end encodeBytes
-
-
-
-
-
-/* ******** D E C O D I N G M E T H O D S ******** */
-
-
- /**
- * Decodes four bytes from array <var>source</var>
- * and writes the resulting bytes (up to three of them)
- * to <var>destination</var>.
- * The source and destination arrays can be manipulated
- * anywhere along their length by specifying
- * <var>srcOffset</var> and <var>destOffset</var>.
- * This method does not check to make sure your arrays
- * are large enough to accomodate <var>srcOffset</var> + 4 for
- * the <var>source</var> array or <var>destOffset</var> + 3 for
- * the <var>destination</var> array.
- * This method returns the actual number of bytes that
- * were converted from the Base64 encoding.
- * <p>This is the lowest level of the decoding methods with
- * all possible parameters.</p>
- *
- *
- * @param source the array to convert
- * @param srcOffset the index where conversion begins
- * @param destination the array to hold the conversion
- * @param destOffset the index where output will be put
- * @param options alphabet type is pulled from this (standard, url-safe, ordered)
- * @return the number of decoded bytes converted
- * @since 1.3
- */
- private static int decode4to3( byte[] source, int srcOffset, byte[] destination, int destOffset, int options )
- {
- byte[] DECODABET = getDecodabet( options );
-
- // Example: Dk==
- if( source[ srcOffset + 2] == EQUALS_SIGN )
- {
- // Two ways to do the same thing. Don't know which way I like best.
- //int outBuff = ( ( DECODABET[ source[ srcOffset ] ] << 24 ) >>> 6 )
- // | ( ( DECODABET[ source[ srcOffset + 1] ] << 24 ) >>> 12 );
- int outBuff = ( ( DECODABET[ source[ srcOffset ] ] & 0xFF ) << 18 )
- | ( ( DECODABET[ source[ srcOffset + 1] ] & 0xFF ) << 12 );
-
- destination[ destOffset ] = (byte)( outBuff >>> 16 );
- return 1;
- }
-
- // Example: DkL=
- else if( source[ srcOffset + 3 ] == EQUALS_SIGN )
- {
- // Two ways to do the same thing. Don't know which way I like best.
- //int outBuff = ( ( DECODABET[ source[ srcOffset ] ] << 24 ) >>> 6 )
- // | ( ( DECODABET[ source[ srcOffset + 1 ] ] << 24 ) >>> 12 )
- // | ( ( DECODABET[ source[ srcOffset + 2 ] ] << 24 ) >>> 18 );
- int outBuff = ( ( DECODABET[ source[ srcOffset ] ] & 0xFF ) << 18 )
- | ( ( DECODABET[ source[ srcOffset + 1 ] ] & 0xFF ) << 12 )
- | ( ( DECODABET[ source[ srcOffset + 2 ] ] & 0xFF ) << 6 );
-
- destination[ destOffset ] = (byte)( outBuff >>> 16 );
- destination[ destOffset + 1 ] = (byte)( outBuff >>> 8 );
- return 2;
- }
-
- // Example: DkLE
- else
- {
- try{
- // Two ways to do the same thing. Don't know which way I like best.
- //int outBuff = ( ( DECODABET[ source[ srcOffset ] ] << 24 ) >>> 6 )
- // | ( ( DECODABET[ source[ srcOffset + 1 ] ] << 24 ) >>> 12 )
- // | ( ( DECODABET[ source[ srcOffset + 2 ] ] << 24 ) >>> 18 )
- // | ( ( DECODABET[ source[ srcOffset + 3 ] ] << 24 ) >>> 24 );
- int outBuff = ( ( DECODABET[ source[ srcOffset ] ] & 0xFF ) << 18 )
- | ( ( DECODABET[ source[ srcOffset + 1 ] ] & 0xFF ) << 12 )
- | ( ( DECODABET[ source[ srcOffset + 2 ] ] & 0xFF ) << 6)
- | ( ( DECODABET[ source[ srcOffset + 3 ] ] & 0xFF ) );
-
-
- destination[ destOffset ] = (byte)( outBuff >> 16 );
- destination[ destOffset + 1 ] = (byte)( outBuff >> 8 );
- destination[ destOffset + 2 ] = (byte)( outBuff );
-
- return 3;
- }catch( Exception e){
- System.out.println(""+source[srcOffset]+ ": " + ( DECODABET[ source[ srcOffset ] ] ) );
- System.out.println(""+source[srcOffset+1]+ ": " + ( DECODABET[ source[ srcOffset + 1 ] ] ) );
- System.out.println(""+source[srcOffset+2]+ ": " + ( DECODABET[ source[ srcOffset + 2 ] ] ) );
- System.out.println(""+source[srcOffset+3]+ ": " + ( DECODABET[ source[ srcOffset + 3 ] ] ) );
- return -1;
- } // end catch
- }
- } // end decodeToBytes
-
-
-
-
- /**
- * Very low-level access to decoding ASCII characters in
- * the form of a byte array. Does not support automatically
- * gunzipping or any other "fancy" features.
- *
- * @param source The Base64 encoded data
- * @param off The offset of where to begin decoding
- * @param len The length of characters to decode
- * @return decoded data
- * @since 1.3
- */
- public static byte[] decode( byte[] source, int off, int len, int options )
- {
- byte[] DECODABET = getDecodabet( options );
-
- int len34 = len * 3 / 4;
- byte[] outBuff = new byte[ len34 ]; // Upper limit on size of output
- int outBuffPosn = 0;
-
- byte[] b4 = new byte[4];
- int b4Posn = 0;
- int i = 0;
- byte sbiCrop = 0;
- byte sbiDecode = 0;
- for( i = off; i < off+len; i++ )
- {
- sbiCrop = (byte)(source[i] & 0x7f); // Only the low seven bits
- sbiDecode = DECODABET[ sbiCrop ];
-
- if( sbiDecode >= WHITE_SPACE_ENC ) // White space, Equals sign or better
- {
- if( sbiDecode >= EQUALS_SIGN_ENC )
- {
- b4[ b4Posn++ ] = sbiCrop;
- if( b4Posn > 3 )
- {
- outBuffPosn += decode4to3( b4, 0, outBuff, outBuffPosn, options );
- b4Posn = 0;
-
- // If that was the equals sign, break out of 'for' loop
- if( sbiCrop == EQUALS_SIGN )
- break;
- } // end if: quartet built
-
- } // end if: equals sign or better
-
- } // end if: white space, equals sign or better
- else
- {
- System.err.println( "Bad Base64 input character at " + i + ": " + source[i] + "(decimal)" );
- return null;
- } // end else:
- } // each input character
-
- byte[] out = new byte[ outBuffPosn ];
- System.arraycopy( outBuff, 0, out, 0, outBuffPosn );
- return out;
- } // end decode
-
-
-
-
- /**
- * Decodes data from Base64 notation, automatically
- * detecting gzip-compressed data and decompressing it.
- *
- * @param s the string to decode
- * @return the decoded data
- * @since 1.4
- */
- public static byte[] decode( String s )
- {
- return decode( s, NO_OPTIONS );
- }
-
-
- /**
- * Decodes data from Base64 notation, automatically
- * detecting gzip-compressed data and decompressing it.
- *
- * @param s the string to decode
- * @param options encode options such as URL_SAFE
- * @return the decoded data
- * @since 1.4
- */
- public static byte[] decode( String s, int options )
- {
- byte[] bytes;
- try
- {
- bytes = s.getBytes( PREFERRED_ENCODING );
- } // end try
- catch( java.io.UnsupportedEncodingException uee )
- {
- bytes = s.getBytes();
- } // end catch
- //</change>
-
- // Decode
- bytes = decode( bytes, 0, bytes.length, options );
-
-
- // Check to see if it's gzip-compressed
- // GZIP Magic Two-Byte Number: 0x8b1f (35615)
- if( bytes != null && bytes.length >= 4 )
- {
-
- int head = (bytes[0] & 0xff) | ((bytes[1] << 8) & 0xff00);
- if( java.util.zip.GZIPInputStream.GZIP_MAGIC == head )
- {
- java.io.ByteArrayInputStream bais = null;
- java.util.zip.GZIPInputStream gzis = null;
- java.io.ByteArrayOutputStream baos = null;
- byte[] buffer = new byte[2048];
- int length = 0;
-
- try
- {
- baos = new java.io.ByteArrayOutputStream();
- bais = new java.io.ByteArrayInputStream( bytes );
- gzis = new java.util.zip.GZIPInputStream( bais );
-
- while( ( length = gzis.read( buffer ) ) >= 0 )
- {
- baos.write(buffer,0,length);
- } // end while: reading input
-
- // No error? Get new bytes.
- bytes = baos.toByteArray();
-
- } // end try
- catch( java.io.IOException e )
- {
- // Just return originally-decoded bytes
- } // end catch
- finally
- {
- try{ baos.close(); } catch( Exception e ){}
- try{ gzis.close(); } catch( Exception e ){}
- try{ bais.close(); } catch( Exception e ){}
- } // end finally
-
- } // end if: gzipped
- } // end if: bytes.length >= 2
-
- return bytes;
- } // end decode
-
-
-
-
- /**
- * Attempts to decode Base64 data and deserialize a Java
- * Object within. Returns <tt>null</tt> if there was an error.
- *
- * @param encodedObject The Base64 data to decode
- * @return The decoded and deserialized object
- * @since 1.5
- */
- public static Object decodeToObject( String encodedObject )
- {
- // Decode and gunzip if necessary
- byte[] objBytes = decode( encodedObject );
-
- java.io.ByteArrayInputStream bais = null;
- java.io.ObjectInputStream ois = null;
- Object obj = null;
-
- try
- {
- bais = new java.io.ByteArrayInputStream( objBytes );
- ois = new java.io.ObjectInputStream( bais );
-
- obj = ois.readObject();
- } // end try
- catch( java.io.IOException e )
- {
- e.printStackTrace();
- obj = null;
- } // end catch
- catch( java.lang.ClassNotFoundException e )
- {
- e.printStackTrace();
- obj = null;
- } // end catch
- finally
- {
- try{ bais.close(); } catch( Exception e ){}
- try{ ois.close(); } catch( Exception e ){}
- } // end finally
-
- return obj;
- } // end decodeObject
-
-
-
- /**
- * Convenience method for encoding data to a file.
- *
- * @param dataToEncode byte array of data to encode in base64 form
- * @param filename Filename for saving encoded data
- * @return <tt>true</tt> if successful, <tt>false</tt> otherwise
- *
- * @since 2.1
- */
- public static boolean encodeToFile( byte[] dataToEncode, String filename )
- {
- boolean success = false;
- Base64.OutputStream bos = null;
- try
- {
- bos = new Base64.OutputStream(
- new java.io.FileOutputStream( filename ), Base64.ENCODE );
- bos.write( dataToEncode );
- success = true;
- } // end try
- catch( java.io.IOException e )
- {
-
- success = false;
- } // end catch: IOException
- finally
- {
- try{ bos.close(); } catch( Exception e ){}
- } // end finally
-
- return success;
- } // end encodeToFile
-
-
- /**
- * Convenience method for decoding data to a file.
- *
- * @param dataToDecode Base64-encoded data as a string
- * @param filename Filename for saving decoded data
- * @return <tt>true</tt> if successful, <tt>false</tt> otherwise
- *
- * @since 2.1
- */
- public static boolean decodeToFile( String dataToDecode, String filename )
- {
- boolean success = false;
- Base64.OutputStream bos = null;
- try
- {
- bos = new Base64.OutputStream(
- new java.io.FileOutputStream( filename ), Base64.DECODE );
- bos.write( dataToDecode.getBytes( PREFERRED_ENCODING ) );
- success = true;
- } // end try
- catch( java.io.IOException e )
- {
- success = false;
- } // end catch: IOException
- finally
- {
- try{ bos.close(); } catch( Exception e ){}
- } // end finally
-
- return success;
- } // end decodeToFile
-
-
-
-
- /**
- * Convenience method for reading a base64-encoded
- * file and decoding it.
- *
- * @param filename Filename for reading encoded data
- * @return decoded byte array or null if unsuccessful
- *
- * @since 2.1
- */
- public static byte[] decodeFromFile( String filename )
- {
- byte[] decodedData = null;
- Base64.InputStream bis = null;
- try
- {
- // Set up some useful variables
- java.io.File file = new java.io.File( filename );
- byte[] buffer = null;
- int length = 0;
- int numBytes = 0;
-
- // Check for size of file
- if( file.length() > Integer.MAX_VALUE )
- {
- System.err.println( "File is too big for this convenience method (" + file.length() + " bytes)." );
- return null;
- } // end if: file too big for int index
- buffer = new byte[ (int)file.length() ];
-
- // Open a stream
- bis = new Base64.InputStream(
- new java.io.BufferedInputStream(
- new java.io.FileInputStream( file ) ), Base64.DECODE );
-
- // Read until done
- while( ( numBytes = bis.read( buffer, length, 4096 ) ) >= 0 )
- length += numBytes;
-
- // Save in a variable to return
- decodedData = new byte[ length ];
- System.arraycopy( buffer, 0, decodedData, 0, length );
-
- } // end try
- catch( java.io.IOException e )
- {
- System.err.println( "Error decoding from file " + filename );
- } // end catch: IOException
- finally
- {
- try{ bis.close(); } catch( Exception e) {}
- } // end finally
-
- return decodedData;
- } // end decodeFromFile
-
-
-
- /**
- * Convenience method for reading a binary file
- * and base64-encoding it.
- *
- * @param filename Filename for reading binary data
- * @return base64-encoded string or null if unsuccessful
- *
- * @since 2.1
- */
- public static String encodeFromFile( String filename )
- {
- String encodedData = null;
- Base64.InputStream bis = null;
- try
- {
- // Set up some useful variables
- java.io.File file = new java.io.File( filename );
- byte[] buffer = new byte[ Math.max((int)(file.length() * 1.4),40) ]; // Need max() for math on small files (v2.2.1)
- int length = 0;
- int numBytes = 0;
-
- // Open a stream
- bis = new Base64.InputStream(
- new java.io.BufferedInputStream(
- new java.io.FileInputStream( file ) ), Base64.ENCODE );
-
- // Read until done
- while( ( numBytes = bis.read( buffer, length, 4096 ) ) >= 0 )
- length += numBytes;
-
- // Save in a variable to return
- encodedData = new String( buffer, 0, length, Base64.PREFERRED_ENCODING );
-
- } // end try
- catch( java.io.IOException e )
- {
- System.err.println( "Error encoding from file " + filename );
- } // end catch: IOException
- finally
- {
- try{ bis.close(); } catch( Exception e) {}
- } // end finally
-
- return encodedData;
- } // end encodeFromFile
-
-
-
-
- /**
- * Reads <tt>infile</tt> and encodes it to <tt>outfile</tt>.
- *
- * @param infile Input file
- * @param outfile Output file
- * @return true if the operation is successful
- * @since 2.2
- */
- public static boolean encodeFileToFile( String infile, String outfile )
- {
- boolean success = false;
- java.io.InputStream in = null;
- java.io.OutputStream out = null;
- try{
- in = new Base64.InputStream(
- new java.io.BufferedInputStream(
- new java.io.FileInputStream( infile ) ),
- Base64.ENCODE );
- out = new java.io.BufferedOutputStream( new java.io.FileOutputStream( outfile ) );
- byte[] buffer = new byte[65536]; // 64K
- int read = -1;
- while( ( read = in.read(buffer) ) >= 0 ){
- out.write( buffer,0,read );
- } // end while: through file
- success = true;
- } catch( java.io.IOException exc ){
- exc.printStackTrace();
- } finally{
- try{ in.close(); } catch( Exception exc ){}
- try{ out.close(); } catch( Exception exc ){}
- } // end finally
-
- return success;
- } // end encodeFileToFile
-
-
-
- /**
- * Reads <tt>infile</tt> and decodes it to <tt>outfile</tt>.
- *
- * @param infile Input file
- * @param outfile Output file
- * @return true if the operation is successful
- * @since 2.2
- */
- public static boolean decodeFileToFile( String infile, String outfile )
- {
- boolean success = false;
- java.io.InputStream in = null;
- java.io.OutputStream out = null;
- try{
- in = new Base64.InputStream(
- new java.io.BufferedInputStream(
- new java.io.FileInputStream( infile ) ),
- Base64.DECODE );
- out = new java.io.BufferedOutputStream( new java.io.FileOutputStream( outfile ) );
- byte[] buffer = new byte[65536]; // 64K
- int read = -1;
- while( ( read = in.read(buffer) ) >= 0 ){
- out.write( buffer,0,read );
- } // end while: through file
- success = true;
- } catch( java.io.IOException exc ){
- exc.printStackTrace();
- } finally{
- try{ in.close(); } catch( Exception exc ){}
- try{ out.close(); } catch( Exception exc ){}
- } // end finally
-
- return success;
- } // end decodeFileToFile
-
-
- /* ******** I N N E R C L A S S I N P U T S T R E A M ******** */
-
-
-
- /**
- * A {@link Base64.InputStream} will read data from another
- * <tt>java.io.InputStream</tt>, given in the constructor,
- * and encode/decode to/from Base64 notation on the fly.
- *
- * @see Base64
- * @since 1.3
- */
- public static class InputStream extends java.io.FilterInputStream
- {
- private boolean encode; // Encoding or decoding
- private int position; // Current position in the buffer
- private byte[] buffer; // Small buffer holding converted data
- private int bufferLength; // Length of buffer (3 or 4)
- private int numSigBytes; // Number of meaningful bytes in the buffer
- private int lineLength;
- private boolean breakLines; // Break lines at less than 80 characters
- private int options; // Record options used to create the stream.
- private byte[] alphabet; // Local copies to avoid extra method calls
- private byte[] decodabet; // Local copies to avoid extra method calls
-
-
- /**
- * Constructs a {@link Base64.InputStream} in DECODE mode.
- *
- * @param in the <tt>java.io.InputStream</tt> from which to read data.
- * @since 1.3
- */
- public InputStream( java.io.InputStream in )
- {
- this( in, DECODE );
- } // end constructor
-
-
- /**
- * Constructs a {@link Base64.InputStream} in
- * either ENCODE or DECODE mode.
- * <p>
- * Valid options:<pre>
- * ENCODE or DECODE: Encode or Decode as data is read.
- * DONT_BREAK_LINES: don't break lines at 76 characters
- * (only meaningful when encoding)
- * <i>Note: Technically, this makes your encoding non-compliant.</i>
- * </pre>
- * <p>
- * Example: <code>new Base64.InputStream( in, Base64.DECODE )</code>
- *
- *
- * @param in the <tt>java.io.InputStream</tt> from which to read data.
- * @param options Specified options
- * @see Base64#ENCODE
- * @see Base64#DECODE
- * @see Base64#DONT_BREAK_LINES
- * @since 2.0
- */
- public InputStream( java.io.InputStream in, int options )
- {
- super( in );
- this.breakLines = (options & DONT_BREAK_LINES) != DONT_BREAK_LINES;
- this.encode = (options & ENCODE) == ENCODE;
- this.bufferLength = encode ? 4 : 3;
- this.buffer = new byte[ bufferLength ];
- this.position = -1;
- this.lineLength = 0;
- this.options = options; // Record for later, mostly to determine which alphabet to use
- this.alphabet = getAlphabet(options);
- this.decodabet = getDecodabet(options);
- } // end constructor
-
- /**
- * Reads enough of the input stream to convert
- * to/from Base64 and returns the next byte.
- *
- * @return next byte
- * @since 1.3
- */
- public int read() throws java.io.IOException
- {
- // Do we need to get data?
- if( position < 0 )
- {
- if( encode )
- {
- byte[] b3 = new byte[3];
- int numBinaryBytes = 0;
- for( int i = 0; i < 3; i++ )
- {
- try
- {
- int b = in.read();
-
- // If end of stream, b is -1.
- if( b >= 0 )
- {
- b3[i] = (byte)b;
- numBinaryBytes++;
- } // end if: not end of stream
-
- } // end try: read
- catch( java.io.IOException e )
- {
- // Only a problem if we got no data at all.
- if( i == 0 )
- throw e;
-
- } // end catch
- } // end for: each needed input byte
-
- if( numBinaryBytes > 0 )
- {
- encode3to4( b3, 0, numBinaryBytes, buffer, 0, options );
- position = 0;
- numSigBytes = 4;
- } // end if: got data
- else
- {
- return -1;
- } // end else
- } // end if: encoding
-
- // Else decoding
- else
- {
- byte[] b4 = new byte[4];
- int i = 0;
- for( i = 0; i < 4; i++ )
- {
- // Read four "meaningful" bytes:
- int b = 0;
- do{ b = in.read(); }
- while( b >= 0 && decodabet[ b & 0x7f ] <= WHITE_SPACE_ENC );
-
- if( b < 0 )
- break; // Reads a -1 if end of stream
-
- b4[i] = (byte)b;
- } // end for: each needed input byte
-
- if( i == 4 )
- {
- numSigBytes = decode4to3( b4, 0, buffer, 0, options );
- position = 0;
- } // end if: got four characters
- else if( i == 0 ){
- return -1;
- } // end else if: also padded correctly
- else
- {
- // Must have broken out from above.
- throw new java.io.IOException( "Improperly padded Base64 input." );
- } // end
-
- } // end else: decode
- } // end else: get data
-
- // Got data?
- if( position >= 0 )
- {
- // End of relevant data?
- if( /*!encode &&*/ position >= numSigBytes )
- return -1;
-
- if( encode && breakLines && lineLength >= MAX_LINE_LENGTH )
- {
- lineLength = 0;
- return '\n';
- } // end if
- else
- {
- lineLength++; // This isn't important when decoding
- // but throwing an extra "if" seems
- // just as wasteful.
-
- int b = buffer[ position++ ];
-
- if( position >= bufferLength )
- position = -1;
-
- return b & 0xFF; // This is how you "cast" a byte that's
- // intended to be unsigned.
- } // end else
- } // end if: position >= 0
-
- // Else error
- else
- {
- // When JDK1.4 is more accepted, use an assertion here.
- throw new java.io.IOException( "Error in Base64 code reading stream." );
- } // end else
- } // end read
-
-
- /**
- * Calls {@link #read()} repeatedly until the end of stream
- * is reached or <var>len</var> bytes are read.
- * Returns number of bytes read into array or -1 if
- * end of stream is encountered.
- *
- * @param dest array to hold values
- * @param off offset for array
- * @param len max number of bytes to read into array
- * @return bytes read into array or -1 if end of stream is encountered.
- * @since 1.3
- */
- public int read( byte[] dest, int off, int len ) throws java.io.IOException
- {
- int i;
- int b;
- for( i = 0; i < len; i++ )
- {
- b = read();
-
- //if( b < 0 && i == 0 )
- // return -1;
-
- if( b >= 0 )
- dest[off + i] = (byte)b;
- else if( i == 0 )
- return -1;
- else
- break; // Out of 'for' loop
- } // end for: each byte read
- return i;
- } // end read
-
- } // end inner class InputStream
-
-
-
-
-
-
- /* ******** I N N E R C L A S S O U T P U T S T R E A M ******** */
-
-
-
- /**
- * A {@link Base64.OutputStream} will write data to another
- * <tt>java.io.OutputStream</tt>, given in the constructor,
- * and encode/decode to/from Base64 notation on the fly.
- *
- * @see Base64
- * @since 1.3
- */
- public static class OutputStream extends java.io.FilterOutputStream
- {
- private boolean encode;
- private int position;
- private byte[] buffer;
- private int bufferLength;
- private int lineLength;
- private boolean breakLines;
- private byte[] b4; // Scratch used in a few places
- private boolean suspendEncoding;
- private int options; // Record for later
- private byte[] alphabet; // Local copies to avoid extra method calls
- private byte[] decodabet; // Local copies to avoid extra method calls
-
- /**
- * Constructs a {@link Base64.OutputStream} in ENCODE mode.
- *
- * @param out the <tt>java.io.OutputStream</tt> to which data will be written.
- * @since 1.3
- */
- public OutputStream( java.io.OutputStream out )
- {
- this( out, ENCODE );
- } // end constructor
-
-
- /**
- * Constructs a {@link Base64.OutputStream} in
- * either ENCODE or DECODE mode.
- * <p>
- * Valid options:<pre>
- * ENCODE or DECODE: Encode or Decode as data is read.
- * DONT_BREAK_LINES: don't break lines at 76 characters
- * (only meaningful when encoding)
- * <i>Note: Technically, this makes your encoding non-compliant.</i>
- * </pre>
- * <p>
- * Example: <code>new Base64.OutputStream( out, Base64.ENCODE )</code>
- *
- * @param out the <tt>java.io.OutputStream</tt> to which data will be written.
- * @param options Specified options.
- * @see Base64#ENCODE
- * @see Base64#DECODE
- * @see Base64#DONT_BREAK_LINES
- * @since 1.3
- */
- public OutputStream( java.io.OutputStream out, int options )
- {
- super( out );
- this.breakLines = (options & DONT_BREAK_LINES) != DONT_BREAK_LINES;
- this.encode = (options & ENCODE) == ENCODE;
- this.bufferLength = encode ? 3 : 4;
- this.buffer = new byte[ bufferLength ];
- this.position = 0;
- this.lineLength = 0;
- this.suspendEncoding = false;
- this.b4 = new byte[4];
- this.options = options;
- this.alphabet = getAlphabet(options);
- this.decodabet = getDecodabet(options);
- } // end constructor
-
-
- /**
- * Writes the byte to the output stream after
- * converting to/from Base64 notation.
- * When encoding, bytes are buffered three
- * at a time before the output stream actually
- * gets a write() call.
- * When decoding, bytes are buffered four
- * at a time.
- *
- * @param theByte the byte to write
- * @since 1.3
- */
- public void write(int theByte) throws java.io.IOException
- {
- // Encoding suspended?
- if( suspendEncoding )
- {
- super.out.write( theByte );
- return;
- } // end if: supsended
-
- // Encode?
- if( encode )
- {
- buffer[ position++ ] = (byte)theByte;
- if( position >= bufferLength ) // Enough to encode.
- {
- out.write( encode3to4( b4, buffer, bufferLength, options ) );
-
- lineLength += 4;
- if( breakLines && lineLength >= MAX_LINE_LENGTH )
- {
- out.write( NEW_LINE );
- lineLength = 0;
- } // end if: end of line
-
- position = 0;
- } // end if: enough to output
- } // end if: encoding
-
- // Else, Decoding
- else
- {
- // Meaningful Base64 character?
- if( decodabet[ theByte & 0x7f ] > WHITE_SPACE_ENC )
- {
- buffer[ position++ ] = (byte)theByte;
- if( position >= bufferLength ) // Enough to output.
- {
- int len = Base64.decode4to3( buffer, 0, b4, 0, options );
- out.write( b4, 0, len );
- //out.write( Base64.decode4to3( buffer ) );
- position = 0;
- } // end if: enough to output
- } // end if: meaningful base64 character
- else if( decodabet[ theByte & 0x7f ] != WHITE_SPACE_ENC )
- {
- throw new java.io.IOException( "Invalid character in Base64 data." );
- } // end else: not white space either
- } // end else: decoding
- } // end write
-
-
-
- /**
- * Calls {@link #write(int)} repeatedly until <var>len</var>
- * bytes are written.
- *
- * @param theBytes array from which to read bytes
- * @param off offset for array
- * @param len max number of bytes to read into array
- * @since 1.3
- */
- public void write( byte[] theBytes, int off, int len ) throws java.io.IOException
- {
- // Encoding suspended?
- if( suspendEncoding )
- {
- super.out.write( theBytes, off, len );
- return;
- } // end if: supsended
-
- for( int i = 0; i < len; i++ )
- {
- write( theBytes[ off + i ] );
- } // end for: each byte written
-
- } // end write
-
-
-
- /**
- * Method added by PHIL. [Thanks, PHIL. -Rob]
- * This pads the buffer without closing the stream.
- */
- public void flushBase64() throws java.io.IOException
- {
- if( position > 0 )
- {
- if( encode )
- {
- out.write( encode3to4( b4, buffer, position, options ) );
- position = 0;
- } // end if: encoding
- else
- {
- throw new java.io.IOException( "Base64 input not properly padded." );
- } // end else: decoding
- } // end if: buffer partially full
-
- } // end flush
-
-
- /**
- * Flushes and closes (I think, in the superclass) the stream.
- *
- * @since 1.3
- */
- public void close() throws java.io.IOException
- {
- // 1. Ensure that pending characters are written
- flushBase64();
-
- // 2. Actually close the stream
- // Base class both flushes and closes.
- super.close();
-
- buffer = null;
- out = null;
- } // end close
-
-
-
- /**
- * Suspends encoding of the stream.
- * May be helpful if you need to embed a piece of
- * base640-encoded data in a stream.
- *
- * @since 1.5.1
- */
- public void suspendEncoding() throws java.io.IOException
- {
- flushBase64();
- this.suspendEncoding = true;
- } // end suspendEncoding
-
-
- /**
- * Resumes encoding of the stream.
- * May be helpful if you need to embed a piece of
- * base640-encoded data in a stream.
- *
- * @since 1.5.1
- */
- public void resumeEncoding()
- {
- this.suspendEncoding = false;
- } // end resumeEncoding
-
-
-
- } // end inner class OutputStream
-
-
-} // end class Base64
diff --git a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java b/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java
deleted file mode 100644
index ef6d4eed73a1..000000000000
--- a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java
+++ /dev/null
@@ -1,386 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-package com.sun.star.comp.xsltfilter;
-
-// Standard Java classes
-import java.io.FileWriter;
-import java.util.zip.Inflater;
-import java.util.zip.Deflater;
-
-// StarOffice Interfaces and UNO
-import com.sun.star.bridge.XBridgeFactory;
-import com.sun.star.bridge.XBridge;
-import com.sun.star.connection.XConnector;
-import com.sun.star.connection.XConnection;
-import com.sun.star.container.XNameContainer;
-import com.sun.star.embed.XTransactedObject;
-import com.sun.star.io.XStream;
-import com.sun.star.io.XSeekable;
-import com.sun.star.io.XInputStream;
-import com.sun.star.io.XOutputStream;
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XComponent;
-import com.sun.star.uno.XComponentContext;
-import com.sun.star.uno.UnoRuntime;
-
-/** This class is an xalan extension class. It provider 2 elements
- * and 2 functions to used in xslt script. With this elements and functions
- * we can convert between oledata between Wordml and OOo flat.
- * To use it, we need a running OOo. There are two ways to get the XMultiServiceFactory.
- * When called by OOo xslt filter, an XMultiServiceFactory will be add to the transformer
- * by setParameter(), then we can get it using getParameter(). Another way is using an
- * XConnection to connect to a running OOo. We connect to a running OOo, we need know the
- * uno url. It can be set in the xslt script. The default uno url is:
- * "uno:socket,host=localhost,port=8100;urp;StarOffice.ServiceManager"
- * see XSLTXalanOLEExtracter.java
- */
-public class XSLTFilterOLEExtracter {
-
- protected XMultiServiceFactory m_xMSF;
- protected XNameContainer m_Storage;
- protected XStream m_RootStream;
- protected XConnection m_Connection;
- protected String sConnectionString;
- private static final String UNO_URL = "uno:socket,host=localhost,port=8100;urp;StarOffice.ServiceManager";
-
- public XSLTFilterOLEExtracter() {
- }
-
- public void init(String unoUrl) {
- if (unoUrl == null || unoUrl.equals("")) {
- unoUrl = UNO_URL;
- }
- debugln("Init with uno url=" + unoUrl);
- if (null == m_xMSF) {
- try {
- m_xMSF = connectAwareGetServiceFactory();
- } catch (Exception ex) {
- System.err.println("Could not connect to the office '" + unoUrl + "'\n" + ex.getMessage());
- }
- }
- }
-
- public void exit() {
- m_Storage = null;
- m_xMSF = null;
- if (null != m_Connection) {
- try {
- m_Connection.close();
- } catch (Exception ex) {
- System.err.println("Could not close connection to the office.\n" + ex.getMessage());
- }
- }
- }
- //If aName = "oledata.mso" then we load the root storage from the given base64 string
- //Otherwise we compress the stream and add it to the root storage under the name of aName
- public void insertByName(String aName, String aBase64) {
- debugln("insertByName(" + aName + " : " + aBase64 + ")");
- if (aName.equals("oledata.mso")) {
- loadRootStorageFromBase64(aBase64);
- } else {
- ensureCreateRootStorage();
- insertSubStorage(aName, aBase64);
- }
- }
- //If aName = "oledata.mso" then we return the base64 encoded string of the root storage
- //Otherwise we return the base64 encoded string of the sub stream under the name of aName
- public String getByName(String aName) {
- if (aName.equals("oledata.mso")) {
- try {
- //get the length and seek to 0
- XSeekable xSeek = UnoRuntime.queryInterface(XSeekable.class, m_RootStream);
- int oleLength = (int) xSeek.getLength();
- xSeek.seek(0);
- xSeek = null;
- //read all bytes
- XInputStream xInput = m_RootStream.getInputStream();
- byte oledata[][] = new byte[1][oleLength];
- xInput.readBytes(oledata, oleLength);
- //return the base64 encoded string
- return Base64.encodeBytes(oledata[0]);
- } catch (Exception ex) {
- ex.printStackTrace();
- }
- } else {
- return getEncodedSubStorage(aName);
- }
- return "";
- }
- //get the sub stream which name = aName, decompress it and return the base64 encoded string
- public String getEncodedSubStorage(String aName) {
- debugln("getByName(" + aName + ")");
- try {
- if (!m_Storage.hasByName(aName)) {
- return "Not Found:" + aName;
- }
- Object oSubStream = m_Storage.getByName(aName);
- if (oSubStream == null) {
- return "Not Found:" + aName;
- }
- XInputStream xSubStream = UnoRuntime.queryInterface(XInputStream.class,
- oSubStream);
- if (xSubStream == null) {
- return "Not Found:" + aName;
- }
- //The first four byte are the length of the uncompressed data
- byte pLength[][] = new byte[1][4];
- XSeekable xSeek = UnoRuntime.queryInterface(XSeekable.class, xSubStream);
- xSeek.seek(0);
- xSeek = null;
- //Get the uncompressed length
- int readbytes = xSubStream.readBytes(pLength, 4);
- if (4 != readbytes) {
- System.out.println("readbytes:" + readbytes);
- return "Can not read the length.";
- }
- int oleLength = (pLength[0][0] << 0) + (pLength[0][1] << 8) + (pLength[0][2] << 16) + (pLength[0][3] << 24);
- byte pContents[][] = new byte[1][oleLength];
- //Read all bytes. The compressed length should less then the uncompressed length
- readbytes = xSubStream.readBytes(pContents, oleLength);
- if (oleLength < readbytes) {
- return "oleLength :" + oleLength + " readbytes: " + readbytes;
- }
-
- // Decompress the bytes
- Inflater decompresser = new Inflater();
- decompresser.setInput(pContents[0], 0, readbytes);
- byte[] result = new byte[oleLength];
- int resultLength = decompresser.inflate(result);
- decompresser.end();
-
- //return the base64 string of the uncompressed data
- return Base64.encodeBytes(result);
- } catch (Exception ex) {
- ex.printStackTrace();
- }
- return "";
- }
-
- public XStream CreateTempFileStream(XMultiServiceFactory xMSF) {
- // try to get temporary file representation
- XStream xTempFileStream = null;
- try {
- Object oTempFile = xMSF.createInstance("com.sun.star.io.TempFile");
- xTempFileStream = UnoRuntime.queryInterface(XStream.class, oTempFile);
- } catch (Exception e) {
- }
-
- if (xTempFileStream == null) {
- System.out.println("Can't create temporary file!");
- }
-
- return xTempFileStream;
- }
- //decode the base64 string and create an com.sun.star.embed.OLESimpleStorage from it
- public void loadRootStorageFromBase64(String aBase64) {
- try {
- //Decode and write the data to an temp stream
- byte[] oledata = Base64.decode(aBase64);
- m_RootStream = CreateTempFileStream(m_xMSF);
- XOutputStream xOutput = m_RootStream.getOutputStream();
- xOutput.writeBytes(oledata);
- xOutput.flush();
- //Get the input stream and seek to begin
- XInputStream xInput = m_RootStream.getInputStream();
- XSeekable xSeek = UnoRuntime.queryInterface(XSeekable.class, xInput);
- xSeek.seek(0);
- oledata = null;
- xSeek = null;
-
- //create an com.sun.star.embed.OLESimpleStorage from the temp stream
- Object pArgs[] = new Object[1];
- pArgs[0] = xInput;
- Object oTempStorage = m_xMSF.createInstanceWithArguments("com.sun.star.embed.OLESimpleStorage", pArgs);
- pArgs = null;
-
- m_Storage = UnoRuntime.queryInterface(XNameContainer.class, oTempStorage);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- //Create a empty OLESimpleStorage if there is not one
- public void ensureCreateRootStorage() {
- if (null == m_RootStream || null == m_Storage) {
- try {
- m_RootStream = CreateTempFileStream(m_xMSF);
-
- Object pArgs[] = new Object[1];
- pArgs[0] = m_RootStream;
- Object oTempStorage = m_xMSF.createInstanceWithArguments("com.sun.star.embed.OLESimpleStorage", pArgs);
- pArgs = null;
-
- m_Storage = UnoRuntime.queryInterface(XNameContainer.class, oTempStorage);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- //decode the base64 string and insert the length and the compressed data of it to
- //the root storage as a sub stream under aName
- public void insertSubStorage(String aName, String aBase64) {
- try {
- //decode the base64 string
- byte[] oledata = Base64.decode(aBase64);
- //create a temp stream to write data to
- XStream subStream = CreateTempFileStream(m_xMSF);
- XInputStream xInput = subStream.getInputStream();
- XOutputStream xOutput = subStream.getOutputStream();
- //write the length to the temp stream
- byte oleHead[] = new byte[4];
- oleHead[0] = (byte) ((oledata.length >>> 0) & 0xFF);
- oleHead[1] = (byte) ((oledata.length >>> 8) & 0xFF);
- oleHead[2] = (byte) ((oledata.length >>> 16) & 0xFF);
- oleHead[3] = (byte) ((oledata.length >>> 24) & 0xFF);
- xOutput.writeBytes(oleHead);
-
- // Compress the bytes
- byte[] output = new byte[oledata.length];
- Deflater compresser = new Deflater();
- compresser.setInput(oledata);
- compresser.finish();
- int compressedDataLength = compresser.deflate(output);
- //realloc the data length
- byte[] compressedBytes = new byte[compressedDataLength];
- for (int i = 0; i < compressedDataLength; i++) {
- compressedBytes[i] = output[i];
- }
-
- //write the compressed data to the temp stream
- xOutput.writeBytes(compressedBytes);
- //seek to 0
- XSeekable xSeek = UnoRuntime.queryInterface(XSeekable.class, xInput);
- xSeek.seek(0);
- xSeek = null;
- oledata = null;
-
- //insert the temp stream as a sub stream and use an XTransactedObject to commit it immediately
- XTransactedObject xTransact = UnoRuntime.queryInterface(XTransactedObject.class, m_Storage);
- m_Storage.insertByName(aName, xInput);
- xTransact.commit();
- xTransact = null;
-
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- /** separtates the uno-url into 3 different parts.
- */
- protected static String[] parseUnoUrl(String url) {
- String[] aRet = new String[3];
-
- if (!url.startsWith("uno:")) {
- return null;
- }
-
- int semicolon = url.indexOf(';');
- if (semicolon == -1) {
- return null;
- }
-
- aRet[0] = url.substring(4, semicolon);
- int nextSemicolon = url.indexOf(';', semicolon + 1);
-
- if (semicolon == -1) {
- return null;
- }
- aRet[1] = url.substring(semicolon + 1, nextSemicolon);
-
- aRet[2] = url.substring(nextSemicolon + 1);
- return aRet;
- }
- //connect to running OOo and keep an XConnection object so that we can disconnect from OOo as we wish
- protected XMultiServiceFactory connectAwareGetServiceFactory() throws com.sun.star.uno.Exception,
- com.sun.star.uno.RuntimeException,
- Exception {
-
- // Get component context
- XComponentContext xComponentContext =
- com.sun.star.comp.helper.Bootstrap.createInitialComponentContext(null);
-
- // instantiate connector service
- Object x = xComponentContext.getServiceManager().createInstanceWithContext(
- "com.sun.star.connection.Connector", xComponentContext);
-
- XConnector xConnector = UnoRuntime.queryInterface(XConnector.class, x);
-
- String a[] = parseUnoUrl(sConnectionString);
- if (null == a) {
- throw new com.sun.star.uno.Exception("Couldn't parse uno-url " + sConnectionString);
- }
-
- // connect using the connection string part of the uno-url only.
- m_Connection = xConnector.connect(a[0]);
-
- x = xComponentContext.getServiceManager().createInstanceWithContext(
- "com.sun.star.bridge.BridgeFactory", xComponentContext);
-
- XBridgeFactory xBridgeFactory = UnoRuntime.queryInterface(
- XBridgeFactory.class, x);
-
- // create a nameless bridge with no instance provider
- // using the middle part of the uno-url
- XBridge bridge = xBridgeFactory.createBridge("", a[1], m_Connection, null);
-
- // query for the XComponent interface and add this as event listener
- XComponent xComponent = UnoRuntime.queryInterface(
- XComponent.class, bridge);
-
- // get the remote instance
- x = bridge.getInstance(a[2]);
-
- // Did the remote server export this object ?
- if (null == x) {
- throw new com.sun.star.uno.Exception(
- "Server didn't provide an instance for" + a[2], null);
- }
-
- XMultiServiceFactory xFac = UnoRuntime.queryInterface(XMultiServiceFactory.class, x);
- return xFac;
- }
- protected static boolean DEBUG = false;
- protected static boolean DEBUGCHK = false;
- protected static String debugfile;
-
- protected static void debugln(String s) {
- debug(s + "\n");
- }
-
- protected static void debug(String s) {
- if (!DEBUGCHK) {
- if (System.getProperty("xsltfilter.debug") == null) {
- DEBUGCHK = true;
- return;
- } else {
- debugfile = System.getProperty("xsltfilter.debug");
- DEBUG = true;
- }
- }
- if (!DEBUG) {
- return;
- }
- try {
- FileWriter dbgwriter = new FileWriter(debugfile, true);
- dbgwriter.write(s);
- dbgwriter.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-}
diff --git a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTransformer.java b/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTransformer.java
deleted file mode 100644
index 17ef2047353d..000000000000
--- a/filter/source/xsltfilter/com/sun/star/comp/xsltfilter/XSLTransformer.java
+++ /dev/null
@@ -1,496 +0,0 @@
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-package com.sun.star.comp.xsltfilter;
-
-// Standard Java classes
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.InputStream;
-import java.io.PrintStream;
-import java.io.StringReader;
-import java.lang.ref.WeakReference;
-import java.net.URL;
-import java.net.URLConnection;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.ArrayList;
-
-// Imported TraX classes
-import javax.xml.parsers.SAXParserFactory;
-import javax.xml.transform.Source;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.URIResolver;
-import javax.xml.transform.sax.SAXSource;
-import javax.xml.transform.stream.StreamResult;
-import javax.xml.transform.stream.StreamSource;
-import org.xml.sax.EntityResolver;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.XMLReader;
-
-//StarOffice Interfaces and UNO
-import com.sun.star.beans.NamedValue;
-import com.sun.star.comp.loader.FactoryHelper;
-import com.sun.star.io.XActiveDataControl;
-import com.sun.star.io.XActiveDataSink;
-import com.sun.star.io.XActiveDataSource;
-import com.sun.star.io.XInputStream;
-import com.sun.star.io.XOutputStream;
-import com.sun.star.io.XSeekable;
-import com.sun.star.io.XStreamListener;
-import com.sun.star.lang.XInitialization;
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.lang.XServiceName;
-import com.sun.star.lang.XSingleServiceFactory;
-import com.sun.star.lang.XTypeProvider;
-import com.sun.star.registry.XRegistryKey;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.Type;
-import com.sun.star.uno.UnoRuntime;
-
-//Uno to java Adaptor
-import com.sun.star.lib.uno.adapter.XInputStreamToInputStreamAdapter;
-import com.sun.star.lib.uno.adapter.XOutputStreamToOutputStreamAdapter;
-import javax.xml.transform.Templates;
-
-import net.sf.saxon.FeatureKeys;
-
-/** This outer class provides an inner class to implement the service
- * description and a method to instantiate the
- * component on demand (__getServiceFactory()).
- */
-public class XSLTransformer
- implements XTypeProvider, XServiceName, XServiceInfo, XActiveDataSink,
- XActiveDataSource, XActiveDataControl, XInitialization, URIResolver, EntityResolver {
-
- /**
- * This component provides java based XSL transformations
- * A SAX based interface is not feasible when crossing language bordes
- * since too much time would be wasted by bridging the events between environments
- * example: 190 pages document, 82000 events 8seconds transform 40(!) sec. bridging
- *
- */
- private XInputStream m_xis;
- private XOutputStream m_xos; // private static HashMap templatecache;
- private static final String STATSPROP = "XSLTransformer.statsfile";
- private static PrintStream statsp;
- private String stylesheeturl;
- private String targeturl;
- private String targetbaseurl;
- private String sourceurl;
- private String sourcebaseurl;
- private String pubtype = new String();
- private String systype = new String(); // processing thread
- private Thread t; // listeners
- private ArrayList<XStreamListener> listeners = new ArrayList<XStreamListener>(); //
- private XMultiServiceFactory svcfactory; // cache for transformations by stylesheet
- private static Map<String,WeakReference<Transformation>> xsltReferences = new HashMap<String,WeakReference<Transformation>>();
- // struct for cached stylesheets
- private static class Transformation {
-
- public Templates cachedXSLT;
- public long lastmod;
- }
- // Resolve URIs to an empty source
- public Source resolve(String href, String base) {
- return new StreamSource(new StringReader(""));
- }
-
- public InputSource resolveEntity(String publicId, String systemId) throws SAXException, java.io.IOException {
- return new InputSource(new StringReader(""));
- }
- // --- Initialization ---
- public XSLTransformer(XMultiServiceFactory msf) {
- svcfactory = msf;
- }
-
- public void initialize(Object[] values) throws com.sun.star.uno.Exception {
- // some configurable debugging
- String statsfilepath = null;
- if ((statsfilepath = System.getProperty(STATSPROP)) != null) {
- try {
- File statsfile = new File(statsfilepath);
- statsp = new PrintStream(new FileOutputStream(statsfile.getPath(), false));
- } catch (java.lang.Exception e) {
- System.err.println("XSLTransformer: could not open statsfile'" + statsfilepath + "'");
- System.err.println(" " + e.getClass().getName() + ": " + e.getMessage());
- System.err.println(" output disabled");
- }
- }
-
- // reading the values
- NamedValue nv = null;
- debug("The transformation's parameters as 'name = value' pairs:\n");
-
- for (int i = 0; i < values.length; i++) {
- nv = (NamedValue) AnyConverter.toObject(new Type(NamedValue.class), values[i]);
-
- if (nv.Name != null && !nv.Name.equals("")) {
- debug(nv.Name + " = " + nv.Value);
- }
-
- if (nv.Name.equals("StylesheetURL")) {
- stylesheeturl = (String) AnyConverter.toObject(
- new Type(String.class), nv.Value);
- } else if (nv.Name.equals("SourceURL")) {
- sourceurl = (String) AnyConverter.toObject(
- new Type(String.class), nv.Value);
- } else if (nv.Name.equals("TargetURL")) {
- targeturl = (String) AnyConverter.toObject(
- new Type(String.class), nv.Value);
- } else if (nv.Name.equals("SourceBaseURL")) {
- sourcebaseurl = (String) AnyConverter.toObject(
- new Type(String.class), nv.Value);
- } else if (nv.Name.equals("TargetBaseURL")) {
- targetbaseurl = (String) AnyConverter.toObject(
- new Type(String.class), nv.Value);
- } else if (nv.Name.equals("SystemType")) {
- systype = (String) AnyConverter.toObject(
- new Type(String.class), nv.Value);
- } else if (nv.Name.equals("PublicType")) {
- pubtype = (String) AnyConverter.toObject(
- new Type(String.class), nv.Value);
- }
- }
- }
-
- // --- XActiveDataSink xistream = aStream;
- public void setInputStream(XInputStream aStream) {
- m_xis = aStream;
- }
-
- public com.sun.star.io.XInputStream getInputStream() {
- return m_xis;
- }
-
- // --- XActiveDataSource
- public void setOutputStream(XOutputStream aStream) {
- m_xos = aStream;
- }
-
- public com.sun.star.io.XOutputStream getOutputStream() {
- return m_xos;
- }
-
- // --- XActiveDataControl
- public void addListener(XStreamListener aListener) {
- if (aListener != null && !listeners.contains(aListener)) {
- listeners.add(aListener);
- }
- }
-
- public void removeListener(XStreamListener aListener) {
- if (aListener != null) {
- listeners.remove(aListener);
- }
-
- }
-
- public void start() {
- // notify listeners
- t = new Thread() {
-
- @Override
- public void run() {
-
- // Local variabes used outside try block in finally block
- InputStream is = null;
- Source source = null;
- BufferedOutputStream os = null;
- PrintStream origOut = System.out;
- PrintStream origErr = System.err;
- if (statsp != null) {
- System.setErr(statsp);
- System.setOut(statsp);
- }
- try {
- debug("\n\nStarting transformation...");
-
- // Set up context class loader for SAXParserFactory and
- // TransformerFactory calls below:
- setContextClassLoader(this.getClass().getClassLoader());
-
- for (Iterator<XStreamListener> e = listeners.iterator(); e.hasNext();) {
- XStreamListener l = e.next();
- l.started();
- }
-
- XSeekable xseek = UnoRuntime.queryInterface(XSeekable.class, m_xis);
- if (xseek != null) {
- xseek.seek(0);
- }
-
- is = new BufferedInputStream(
- new XInputStreamToInputStreamAdapter(m_xis));
- //Source xmlsource = new StreamSource(xmlinput);
- SAXParserFactory spf = SAXParserFactory.newInstance();
- spf.setValidating(false);
- spf.setNamespaceAware(true);
- XMLReader xmlReader = spf.newSAXParser().getXMLReader();
- xmlReader.setEntityResolver(XSLTransformer.this);
- source = new SAXSource(xmlReader, new InputSource(is));
-
- // in order to help performance and to remedy a a possible memory
- // leak in xalan, where it seems, that Transformer instances cannot
- // be reclaimed though they are no longer referenced here, we use
- // a cache of weak references (ie. xsltReferences) created for specific
- // style sheet URLs see also #i48384#
-
- Templates xsltTemplate = null;
- Transformer transformer = null;
- Transformation transformation = null;
- // File stylefile = new File(new URI(stylesheeturl));
- long lastmod = 0;
- try {
- URL uStyle = new URL(stylesheeturl);
- URLConnection c = uStyle.openConnection();
- lastmod = c.getLastModified();
- } catch (java.lang.Exception ex) {
- // lastmod will remain at 0;
- if (statsp != null) {
- statsp.println(ex.getClass().getName() + ": " + ex.getMessage());
- ex.printStackTrace(statsp);
- }
- }
-
- synchronized (xsltReferences) {
- WeakReference<Transformation> ref = null;
- // try to get the xsltTemplate reference from the cache
- if ((ref = xsltReferences.get(stylesheeturl)) == null ||
- (transformation = ref.get()) == null ||
- ref.get().lastmod < lastmod) {
- // we cannot find a valid reference for this stylesheet
- // or the stylsheet was updated
- if (ref != null) {
- xsltReferences.remove(stylesheeturl);
- }
- // create new xsltTemplate for this stylesheet
- TransformerFactory tfactory = TransformerFactory.newInstance();
- debug("TransformerFactory is '" + tfactory.getClass().getName() + "'");
- // some external saxons (Debian, Ubuntu, ...) have this disabled
- // per default
- tfactory.setAttribute(FeatureKeys.ALLOW_EXTERNAL_FUNCTIONS, new Boolean(true));
- xsltTemplate = tfactory.newTemplates(new StreamSource(stylesheeturl));
-
- // store the transformation into the cache
- transformation = new Transformation();
- transformation.lastmod = lastmod;
- transformation.cachedXSLT = xsltTemplate;
- ref = new WeakReference<Transformation>(transformation);
- xsltReferences.put(stylesheeturl, ref);
- }
- }
- xsltTemplate = transformation.cachedXSLT;
- transformer = xsltTemplate.newTransformer();
- transformer.setOutputProperty("encoding", "UTF-8");
- // transformer.setURIResolver(XSLTransformer.this);
-
- // invalid to set 'null' as parameter as 'null' is not a valid Java object
- if (sourceurl != null) {
- transformer.setParameter("sourceURL", sourceurl);
- }
- if (sourcebaseurl != null) {
- transformer.setParameter("sourceBaseURL", sourcebaseurl);
- }
- if (targeturl != null) {
- transformer.setParameter("targetURL", targeturl);
- }
- if (targetbaseurl != null) {
- transformer.setParameter("targetBaseURL", targetbaseurl);
- }
- if (pubtype != null) {
- transformer.setParameter("publicType", pubtype);
- }
- if (systype != null) {
- transformer.setParameter("systemType", systype);
- }
- if (svcfactory != null) {
- transformer.setParameter("XMultiServiceFactory", svcfactory);
- }
- os = new BufferedOutputStream(
- new XOutputStreamToOutputStreamAdapter(m_xos));
- StreamResult sr = new StreamResult(os);
- long tstart = System.currentTimeMillis();
- transformer.transform(source, sr);
- debug("finished transformation in " + (System.currentTimeMillis() - tstart) + "ms");
-
- } catch (java.lang.Throwable ex) {
- // notify any listeners about close
- for (Iterator<XStreamListener> e = listeners.iterator(); e.hasNext();) {
-
- XStreamListener l = e.next();
- l.error(new com.sun.star.uno.Exception(ex.getClass().getName() + ": " + ex.getMessage()));
- }
- if (statsp != null) {
- statsp.println(ex.getClass().getName() + ": " + ex.getMessage());
- ex.printStackTrace(statsp);
- }
- } finally {
- // dereference input buffer
- source = null;
- try {
- if (is != null) {
- is.close();
- }
- } catch (java.lang.Throwable ex) {
- if (statsp != null) {
- statsp.println(ex.getClass().getName() + ": " + ex.getMessage());
- ex.printStackTrace(statsp);
- }
- }
- try {
- if (os != null) {
- os.close();
- }
- } catch (java.lang.Throwable ex) {
- if (statsp != null) {
- statsp.println(ex.getClass().getName() + ": " + ex.getMessage());
- ex.printStackTrace(statsp);
- }
- }
- try {
- if (m_xis != null) {
- m_xis.closeInput();
- }
- } catch (java.lang.Throwable ex) {
- if (statsp != null) {
- statsp.println(ex.getClass().getName() + ": " + ex.getMessage());
- ex.printStackTrace(statsp);
- }
- }
- try {
- if (m_xos != null) {
- m_xos.closeOutput();
- }
- } catch (java.lang.Throwable ex) {
- if (statsp != null) {
- statsp.println(ex.getClass().getName() + ": " + ex.getMessage());
- ex.printStackTrace(statsp);
- }
- }
-
- // resetting standard input/error streams from logfile to default
- if (statsp != null) {
- System.setErr(origErr);
- System.setOut(origOut);
- }
- // try to release references asap...
- m_xos = null;
- m_xis = null;
- is = null;
- os = null;
- // notify any listeners about close
- if (listeners != null) {
- for (Iterator<XStreamListener> e = listeners.iterator(); e.hasNext();) {
- XStreamListener l = e.next();
- l.closed();
- }
- }
- }
- }
- };
- t.start();
- } /* a statsfile have to be created as precondition to use this function */
-
-
- private static final void debug(String s) {
- if (statsp != null) {
- statsp.println(s);
- }
- }
-
- public void terminate() {
- try {
- debug("terminate called");
- if (t.isAlive()) {
- t.interrupt();
- for (Iterator<XStreamListener> e = listeners.iterator(); e.hasNext();) {
- XStreamListener l = e.next();
- l.terminated();
- }
- }
- } catch (java.lang.Exception ex) {
- if (statsp != null) {
- statsp.println(ex.getClass().getName() + ": " + ex.getMessage());
- ex.printStackTrace(statsp);
- }
- }
- } // --- component management interfaces... ---
- private final static String _serviceName = "com.sun.star.comp.JAXTHelper";
-
- // Implement methods from interface XTypeProvider
- public byte[] getImplementationId() {
- byte[] byteReturn = {};
- byteReturn = new String("" + this.hashCode()).getBytes();
- return (byteReturn);
- }
-
- public com.sun.star.uno.Type[] getTypes() {
- Type[] typeReturn = {};
- try {
- typeReturn = new Type[]{
- new Type(XTypeProvider.class),
- new Type(XServiceName.class),
- new Type(XServiceInfo.class),
- new Type(XActiveDataSource.class),
- new Type(XActiveDataSink.class),
- new Type(XActiveDataControl.class),
- new Type(XInitialization.class)
- };
- } catch (java.lang.Exception exception) {
- }
-
- return (typeReturn);
- }
-
- // --- Implement method from interface XServiceName ---
- public String getServiceName() {
- return (_serviceName);
- }
-
- // --- Implement methods from interface XServiceInfo ---
- public boolean supportsService(String stringServiceName) {
- return (stringServiceName.equals(_serviceName));
- }
-
- public String getImplementationName() {
- return (XSLTransformer.class.getName());
- }
-
- public String[] getSupportedServiceNames() {
- String[] stringSupportedServiceNames = {_serviceName};
- return stringSupportedServiceNames;
- }
-
- // --- component registration methods ---
- public static XSingleServiceFactory __getServiceFactory(
- String implName, XMultiServiceFactory multiFactory, XRegistryKey regKey) {
- XSingleServiceFactory xSingleServiceFactory = null;
- if (implName.indexOf("XSLTransformer") != -1) {
- xSingleServiceFactory = FactoryHelper.getServiceFactory(XSLTransformer.class,
- _serviceName, multiFactory, regKey);
- }
- return xSingleServiceFactory;
- }
-}
diff --git a/filter/source/xsltfilter/xsltfilter.component b/filter/source/xsltfilter/xsltfilter.component
index b96a13fe8432..0495ad95ed2b 100644
--- a/filter/source/xsltfilter/xsltfilter.component
+++ b/filter/source/xsltfilter/xsltfilter.component
@@ -23,6 +23,6 @@
<service name="com.sun.star.documentconversion.XSLTFilter"/>
</implementation>
<implementation name="com.sun.star.comp.documentconversion.LibXSLTTransformer">
- <service name="com.sun.star.documentconversion.LibXSLTTransformer"/>
+ <service name="com.sun.star.xml.xslt.XSLTTransformer"/>
</implementation>
</component>
diff --git a/fontconfig/ExternalPackage_fontconfig.mk b/fontconfig/ExternalPackage_fontconfig.mk
new file mode 100644
index 000000000000..7f074e8ee15c
--- /dev/null
+++ b/fontconfig/ExternalPackage_fontconfig.mk
@@ -0,0 +1,24 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,fontconfig,fontconfig))
+
+$(eval $(call gb_ExternalPackage_use_external_project,fontconfig,fontconfig))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,fontconfig,inc/fontconfig,\
+ fontconfig/fcfreetype.h \
+ fontconfig/fcprivate.h \
+ fontconfig/fontconfig.h \
+))
+
+$(eval $(call gb_ExternalPackage_add_files,fontconfig,lib,\
+ src/.libs/libfontconfig.a \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/fontconfig/ExternalProject_fontconfig.mk b/fontconfig/ExternalProject_fontconfig.mk
new file mode 100644
index 000000000000..c0b18787ed4d
--- /dev/null
+++ b/fontconfig/ExternalProject_fontconfig.mk
@@ -0,0 +1,34 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,fontconfig))
+
+$(eval $(call gb_ExternalProject_use_unpacked,fontconfig,fontconfig))
+
+$(eval $(call gb_ExternalProject_use_packages,fontconfig,\
+ freetype \
+))
+
+$(eval $(call gb_ExternalProject_register_targets,fontconfig,\
+ build \
+))
+
+$(call gb_ExternalProject_get_state_target,fontconfig,build) :
+ cd $(EXTERNAL_WORKDIR) \
+ && $(if $(debug),CFLAGS=-g) $(if $(filter ANDROID,$(OS)),LIBS="-lm") ./configure \
+ --disable-shared \
+ --with-arch=arm \
+ --with-expat-includes=$(OUTDIR)/inc/external/expat \
+ --with-expat-lib=$(OUTDIR)/lib \
+ --with-freetype-config=$(OUTDIR)/bin/freetype-config \
+ --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \
+ && $(MAKE) \
+ && touch $@
+
+# vim: set noet sw=4 ts=4:
diff --git a/fontconfig/Makefile b/fontconfig/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/fontconfig/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/fontconfig/Module_fontconfig.mk b/fontconfig/Module_fontconfig.mk
new file mode 100644
index 000000000000..1bfcbdb7878a
--- /dev/null
+++ b/fontconfig/Module_fontconfig.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,fontconfig))
+
+ifeq ($(OS),ANDROID)
+
+$(eval $(call gb_Module_add_targets,fontconfig,\
+ ExternalPackage_fontconfig \
+ ExternalProject_fontconfig \
+ UnpackedTarball_fontconfig \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/fontconfig/README b/fontconfig/README
index b4c67d48ee6b..220ee6078a65 100644
--- a/fontconfig/README
+++ b/fontconfig/README
@@ -1,6 +1,6 @@
-This "bundled" fontconfig is built only in an Android build
-
-Fontconfig is a font configuration and customization library. It is designed to locate fonts
-within the system and select them according to requirements specified by applications.
-
+This "bundled" fontconfig is built only in an Android build
+
+Fontconfig is a font configuration and customization library. It is designed to locate fonts
+within the system and select them according to requirements specified by applications.
+
From [ http://packages.debian.org/squeeze/fontconfig ] \ No newline at end of file
diff --git a/fontconfig/UnpackedTarball_fontconfig.mk b/fontconfig/UnpackedTarball_fontconfig.mk
new file mode 100644
index 000000000000..7a6cfcbcf6b6
--- /dev/null
+++ b/fontconfig/UnpackedTarball_fontconfig.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,fontconfig))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,fontconfig,$(FONTCONFIG_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_set_patchlevel,fontconfig,3))
+
+$(eval $(call gb_UnpackedTarball_add_patches,fontconfig,\
+ fontconfig/fontconfig-2.8.0.patch \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/fontconfig/makefile.mk b/fontconfig/makefile.mk
deleted file mode 100644
index 55375c6758be..000000000000
--- a/fontconfig/makefile.mk
+++ /dev/null
@@ -1,67 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=fontconfig
-TARGET=fontconfig
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-TARFILE_NAME=fontconfig-2.8.0
-TARFILE_MD5=77e15a92006ddc2adbb06f840d591c0e
-
-PATCH_FILES=$(TARFILE_NAME).patch
-
-CONFIGURE_ACTION=./configure
-
-.IF "$(debug)" != ""
-CONFIGURE_ACTION!:=CFLAGS=-g $(CONFIGURE_ACTION)
-.ENDIF
-
-# This "bundled" fontconfig is built only when cross-compiling for Android
-
-CONFIGURE_FLAGS=\
- --disable-shared \
- --with-arch=arm \
- --with-expat-includes=$(SOLARVER)/$(INPATH)/inc/external \
- --with-expat-lib=$(SOLARVER)/$(INPATH)/lib \
- --with-freetype-config=$(SOLARVER)/$(INPATH)/bin/freetype-config \
- --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-
-BUILD_ACTION=$(GNUMAKE)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
-
diff --git a/fontconfig/prj/d.lst b/fontconfig/prj/d.lst
index aeb7edf32a7e..e69de29bb2d1 100644
--- a/fontconfig/prj/d.lst
+++ b/fontconfig/prj/d.lst
@@ -1,4 +0,0 @@
-..\%__SRC%\misc\build\fontconfig*\src\.libs\*.a %_DEST%\lib
-
-mkdir: %_DEST%\inc\external\fontconfig
-..\%__SRC%\misc\build\fontconfig*\fontconfig\*.h %_DEST%\inc\external\fontconfig
diff --git a/forms/source/component/Filter.cxx b/forms/source/component/Filter.cxx
index 298bf90cae4c..ba3f208f99a2 100644
--- a/forms/source/component/Filter.cxx
+++ b/forms/source/component/Filter.cxx
@@ -57,6 +57,7 @@
#include <com/sun/star/awt/XItemList.hpp>
#include <comphelper/numbers.hxx>
+#include <comphelper/processfactory.hxx>
#include <comphelper/property.hxx>
#include <connectivity/dbconversion.hxx>
#include <connectivity/dbtools.hxx>
@@ -102,7 +103,7 @@ namespace frm
OFilterControl::OFilterControl( const Reference< XMultiServiceFactory >& _rxORB )
:UnoControl( _rxORB )
,m_aTextListeners( *this )
- ,m_aParser( _rxORB )
+ ,m_aParser( comphelper::getComponentContext(_rxORB) )
,m_nControlClass( FormComponentType::TEXTFIELD )
,m_bFilterList( sal_False )
,m_bMultiLine( sal_False )
@@ -348,7 +349,7 @@ namespace frm
sItemText = itemPos->second;
if ( !sItemText.isEmpty() )
{
- ::dbtools::OPredicateInputController aPredicateInput( maContext.getLegacyServiceFactory(), m_xConnection, getParseContext() );
+ ::dbtools::OPredicateInputController aPredicateInput( maContext.getUNOContext(), m_xConnection, getParseContext() );
::rtl::OUString sErrorMessage;
OSL_VERIFY( aPredicateInput.normalizePredicateString( sItemText, m_xField, &sErrorMessage ) );
}
@@ -533,7 +534,7 @@ namespace frm
aNewText.trim();
if ( !aNewText.isEmpty() )
{
- ::dbtools::OPredicateInputController aPredicateInput( maContext.getLegacyServiceFactory(), m_xConnection, getParseContext() );
+ ::dbtools::OPredicateInputController aPredicateInput( maContext.getUNOContext(), m_xConnection, getParseContext() );
::rtl::OUString sErrorMessage;
if ( !aPredicateInput.normalizePredicateString( aNewText, m_xField, &sErrorMessage ) )
{
diff --git a/forms/source/inc/services.hxx b/forms/source/inc/services.hxx
index 3024b0609684..4c2ae6bc4413 100644
--- a/forms/source/inc/services.hxx
+++ b/forms/source/inc/services.hxx
@@ -210,7 +210,6 @@ namespace frm
// -----------------------
FORMS_CONSTASCII_STRING( SRV_AWT_POINTER, "com.sun.star.awt.Pointer" );
FORMS_CONSTASCII_STRING( SRV_AWT_IMAGEPRODUCER, "com.sun.star.awt.ImageProducer" );
- FORMS_CONSTASCII_STRING( FRM_NUMBER_FORMATTER, "com.sun.star.util.NumberFormatter" );
FORMS_CONSTASCII_STRING( FRM_NUMBER_FORMATS_SUPPLIER, "com.sun.star.util.NumberFormatsSupplier" );
FORMS_CONSTASCII_STRING( SRV_SDB_ROWSET, "com.sun.star.sdb.RowSet" );
diff --git a/forms/source/misc/InterfaceContainer.cxx b/forms/source/misc/InterfaceContainer.cxx
index 0965b2b16571..f10a32db1dcb 100644
--- a/forms/source/misc/InterfaceContainer.cxx
+++ b/forms/source/misc/InterfaceContainer.cxx
@@ -244,7 +244,7 @@ void OInterfaceContainer::impl_createEventAttacher_nothrow()
{
try
{
- m_xEventAttacher.set( ::comphelper::createEventAttacherManager( m_xServiceFactory ), UNO_SET_THROW );
+ m_xEventAttacher.set( ::comphelper::createEventAttacherManager( comphelper::getComponentContext(m_xServiceFactory) ), UNO_SET_THROW );
}
catch( const Exception& )
{
@@ -621,7 +621,7 @@ void SAL_CALL OInterfaceContainer::read( const Reference< XObjectInputStream >&
{
try
{
- m_xEventAttacher = ::comphelper::createEventAttacherManager( m_xServiceFactory );
+ m_xEventAttacher = ::comphelper::createEventAttacherManager( comphelper::getComponentContext(m_xServiceFactory) );
OSL_ENSURE( m_xEventAttacher.is(), "OInterfaceContainer::read: could not create an event attacher manager!" );
}
catch( const Exception& )
diff --git a/formula/inc/formula/IFunctionDescription.hxx b/formula/inc/formula/IFunctionDescription.hxx
index 0682f68d2075..c876ccad7f56 100644
--- a/formula/inc/formula/IFunctionDescription.hxx
+++ b/formula/inc/formula/IFunctionDescription.hxx
@@ -28,7 +28,7 @@
#include <com/sun/star/sheet/XFormulaParser.hpp>
#include <com/sun/star/sheet/XFormulaOpCodeMapper.hpp>
-class SvLBoxEntry;
+class SvTreeListEntry;
namespace formula
{
@@ -115,11 +115,11 @@ namespace formula
{
public:
IStructHelper(){}
- virtual SvLBoxEntry* InsertEntry(const XubString& rText, SvLBoxEntry* pParent,
+ virtual SvTreeListEntry* InsertEntry(const XubString& rText, SvTreeListEntry* pParent,
sal_uInt16 nFlag,sal_uLong nPos=0,IFormulaToken* pScToken=NULL) = 0;
- virtual String GetEntryText(SvLBoxEntry* pEntry) const = 0;
- virtual SvLBoxEntry* GetParent(SvLBoxEntry* pEntry) const = 0;
+ virtual String GetEntryText(SvTreeListEntry* pEntry) const = 0;
+ virtual SvTreeListEntry* GetParent(SvTreeListEntry* pEntry) const = 0;
protected:
~IStructHelper() {}
diff --git a/formula/inc/formula/tokenarray.hxx b/formula/inc/formula/tokenarray.hxx
index 1f4299ce3760..e9041acb049a 100644
--- a/formula/inc/formula/tokenarray.hxx
+++ b/formula/inc/formula/tokenarray.hxx
@@ -246,7 +246,6 @@ public:
FormulaTokenIterator( const FormulaTokenArray& );
~FormulaTokenIterator();
void Reset();
- const FormulaToken* First();
const FormulaToken* Next();
const FormulaToken* PeekNextOperator();
bool IsEndOfPath() const; /// if a jump or subroutine path is done
diff --git a/formula/source/core/api/token.cxx b/formula/source/core/api/token.cxx
index c18ca4fdc8de..d187073b2f22 100644
--- a/formula/source/core/api/token.cxx
+++ b/formula/source/core/api/token.cxx
@@ -1234,12 +1234,6 @@ void FormulaTokenIterator::Reset()
pCur->nPC = -1;
}
-const FormulaToken* FormulaTokenIterator::First()
-{
- Reset();
- return Next();
-}
-
const FormulaToken* FormulaTokenIterator::Next()
{
const FormulaToken* t = GetNonEndOfPathToken( ++pCur->nPC );
diff --git a/formula/source/ui/dlg/formula.cxx b/formula/source/ui/dlg/formula.cxx
index 03f41dc6b914..409059335c30 100644
--- a/formula/source/ui/dlg/formula.cxx
+++ b/formula/source/ui/dlg/formula.cxx
@@ -98,7 +98,7 @@ namespace formula
xub_StrLen GetFunctionPos(xub_StrLen nPos);
void ClearAllParas();
- void MakeTree(IStructHelper* _pTree,SvLBoxEntry* pParent,FormulaToken* _pToken,long Count);
+ void MakeTree(IStructHelper* _pTree,SvTreeListEntry* pParent,FormulaToken* _pToken,long Count);
void fillTree(IStructHelper* _pTree);
void UpdateTokenArray( const String& rStrExp);
String RepairFormula(const String& aFormula);
@@ -648,7 +648,7 @@ sal_Bool FormulaDlg_Impl::CalcStruct( const String& rStrExp)
}
// -----------------------------------------------------------------------------
-void FormulaDlg_Impl::MakeTree(IStructHelper* _pTree,SvLBoxEntry* pParent,FormulaToken* _pToken,long Count)
+void FormulaDlg_Impl::MakeTree(IStructHelper* _pTree,SvTreeListEntry* pParent,FormulaToken* _pToken,long Count)
{
if( _pToken != NULL && Count > 0 )
{
@@ -670,7 +670,7 @@ void FormulaDlg_Impl::MakeTree(IStructHelper* _pTree,SvLBoxEntry* pParent,Formul
if ( nParas > 0 )
{
- SvLBoxEntry* pEntry;
+ SvTreeListEntry* pEntry;
String aTest=_pTree->GetEntryText(pParent);
diff --git a/formula/source/ui/dlg/structpg.cxx b/formula/source/ui/dlg/structpg.cxx
index 280a7b8c8d7d..dfdaa5f1e108 100644
--- a/formula/source/ui/dlg/structpg.cxx
+++ b/formula/source/ui/dlg/structpg.cxx
@@ -43,12 +43,12 @@ StructListBox::StructListBox(Window* pParent, const ResId& rResId ):
SetFont( aFont );
}
-SvLBoxEntry* StructListBox::InsertStaticEntry(
+SvTreeListEntry* StructListBox::InsertStaticEntry(
const XubString& rText,
const Image& rEntryImg,
- SvLBoxEntry* pParent, sal_uLong nPos, IFormulaToken* pToken )
+ SvTreeListEntry* pParent, sal_uLong nPos, IFormulaToken* pToken )
{
- SvLBoxEntry* pEntry = InsertEntry( rText, rEntryImg, rEntryImg, pParent, sal_False, nPos, pToken );
+ SvTreeListEntry* pEntry = InsertEntry( rText, rEntryImg, rEntryImg, pParent, sal_False, nPos, pToken );
return pEntry;
}
@@ -108,12 +108,12 @@ void StructPage::ClearStruct()
aTlbStruct.Clear();
}
-SvLBoxEntry* StructPage::InsertEntry( const XubString& rText, SvLBoxEntry* pParent,
+SvTreeListEntry* StructPage::InsertEntry( const XubString& rText, SvTreeListEntry* pParent,
sal_uInt16 nFlag,sal_uLong nPos,IFormulaToken* pIFormulaToken)
{
aTlbStruct.SetActiveFlag( sal_False );
- SvLBoxEntry* pEntry = NULL;
+ SvTreeListEntry* pEntry = NULL;
switch( nFlag )
{
case STRUCT_FOLDER:
@@ -132,7 +132,7 @@ SvLBoxEntry* StructPage::InsertEntry( const XubString& rText, SvLBoxEntry* pPare
return pEntry;
}
-String StructPage::GetEntryText(SvLBoxEntry* pEntry) const
+String StructPage::GetEntryText(SvTreeListEntry* pEntry) const
{
String aString;
if(pEntry!=NULL)
@@ -140,11 +140,11 @@ String StructPage::GetEntryText(SvLBoxEntry* pEntry) const
return aString;
}
-SvLBoxEntry* StructPage::GetParent(SvLBoxEntry* pEntry) const
+SvTreeListEntry* StructPage::GetParent(SvTreeListEntry* pEntry) const
{
return aTlbStruct.GetParent(pEntry);
}
-IFormulaToken* StructPage::GetFunctionEntry(SvLBoxEntry* pEntry)
+IFormulaToken* StructPage::GetFunctionEntry(SvTreeListEntry* pEntry)
{
if(pEntry!=NULL)
{
@@ -170,7 +170,7 @@ IMPL_LINK( StructPage, SelectHdl, SvTreeListBox*, pTlb )
{
if(pTlb==&aTlbStruct)
{
- SvLBoxEntry* pCurEntry=aTlbStruct.GetCurEntry();
+ SvTreeListEntry* pCurEntry=aTlbStruct.GetCurEntry();
if(pCurEntry!=NULL)
{
pSelectedToken=(IFormulaToken *)pCurEntry->GetUserData();
diff --git a/formula/source/ui/dlg/structpg.hxx b/formula/source/ui/dlg/structpg.hxx
index 151c57e1c088..ec48d27a3510 100644
--- a/formula/source/ui/dlg/structpg.hxx
+++ b/formula/source/ui/dlg/structpg.hxx
@@ -51,10 +51,10 @@ public:
StructListBox(Window* pParent, const ResId& rResId );
/** Inserts an entry with static image (no difference between collapsed/expanded). */
- SvLBoxEntry* InsertStaticEntry(
+ SvTreeListEntry* InsertStaticEntry(
const XubString& rText,
const Image& rEntryImg,
- SvLBoxEntry* pParent = NULL,
+ SvTreeListEntry* pParent = NULL,
sal_uLong nPos = LIST_APPEND,
IFormulaToken* pToken = NULL );
@@ -86,18 +86,18 @@ private:
protected:
- IFormulaToken* GetFunctionEntry(SvLBoxEntry* pEntry);
+ IFormulaToken* GetFunctionEntry(SvTreeListEntry* pEntry);
public:
StructPage( Window* pParent);
void ClearStruct();
- virtual SvLBoxEntry* InsertEntry(const XubString& rText, SvLBoxEntry* pParent,
+ virtual SvTreeListEntry* InsertEntry(const XubString& rText, SvTreeListEntry* pParent,
sal_uInt16 nFlag,sal_uLong nPos=0,IFormulaToken* pScToken=NULL);
- virtual String GetEntryText(SvLBoxEntry* pEntry) const;
- virtual SvLBoxEntry* GetParent(SvLBoxEntry* pEntry) const;
+ virtual String GetEntryText(SvTreeListEntry* pEntry) const;
+ virtual SvTreeListEntry* GetParent(SvTreeListEntry* pEntry) const;
void SetSelectionHdl( const Link& rLink ) { aSelLink = rLink; }
const Link& GetSelectionHdl() const { return aSelLink; }
diff --git a/fpicker/prj/build.lst b/fpicker/prj/build.lst
index 423d94800fb9..91586058bf56 100644
--- a/fpicker/prj/build.lst
+++ b/fpicker/prj/build.lst
@@ -1,2 +1,2 @@
-fp fpicker : LIBXSLT:libxslt DESKTOP:rdbmaker svtools ucb NULL
+fp fpicker : LIBXSLT:libxslt svtools ucb NULL
fp fpicker\prj nmake - all fp_prj NULL
diff --git a/fpicker/source/office/PlacesListBox.cxx b/fpicker/source/office/PlacesListBox.cxx
index f514296673d0..9c27d948be60 100644
--- a/fpicker/source/office/PlacesListBox.cxx
+++ b/fpicker/source/office/PlacesListBox.cxx
@@ -144,7 +144,7 @@ void PlacesListBox::RemovePlace( sal_uInt16 nPos )
mbUpdated = true;
}
maPlaces.erase( maPlaces.begin() + nPos );
- SvLBoxEntry* pEntry = mpImpl->GetEntry( nPos );
+ SvTreeListEntry* pEntry = mpImpl->GetEntry( nPos );
mpImpl->RemoveEntry( pEntry );
}
}
diff --git a/fpicker/source/office/iodlg.cxx b/fpicker/source/office/iodlg.cxx
index f44c4c3f34ce..2eef8ee1b60e 100644
--- a/fpicker/source/office/iodlg.cxx
+++ b/fpicker/source/office/iodlg.cxx
@@ -1523,7 +1523,7 @@ void SvtFileDialog::OpenMultiSelection_Impl()
{
String aPath;
sal_uLong nCount = _pFileView->GetSelectionCount();
- SvLBoxEntry* pEntry = nCount ? _pFileView->FirstSelected() : NULL;
+ SvTreeListEntry* pEntry = nCount ? _pFileView->FirstSelected() : NULL;
if ( nCount && pEntry )
_aPath = _pFileView->GetURL( pEntry );
@@ -1598,7 +1598,7 @@ void SvtFileDialog::UpdateControls( const String& rURL )
IMPL_LINK( SvtFileDialog, SelectHdl_Impl, SvTabListBox*, pBox )
{
- SvLBoxEntry* pEntry = pBox->FirstSelected();
+ SvTreeListEntry* pEntry = pBox->FirstSelected();
DBG_ASSERT( pEntry, "SelectHandler without selected entry" );
SvtContentEntry* pUserData = (SvtContentEntry*)pEntry->GetUserData();
@@ -2458,7 +2458,7 @@ std::vector<rtl::OUString> SvtFileDialog::GetPathList() const
{
std::vector<rtl::OUString> aList;
sal_uLong nCount = _pFileView->GetSelectionCount();
- SvLBoxEntry* pEntry = nCount ? _pFileView->FirstSelected() : NULL;
+ SvTreeListEntry* pEntry = nCount ? _pFileView->FirstSelected() : NULL;
if ( ! pEntry )
{
diff --git a/fpicker/source/win32/filepicker/VistaFilePicker.cxx b/fpicker/source/win32/filepicker/VistaFilePicker.cxx
index f05aefc97f54..da1cc07ae105 100644
--- a/fpicker/source/win32/filepicker/VistaFilePicker.cxx
+++ b/fpicker/source/win32/filepicker/VistaFilePicker.cxx
@@ -38,6 +38,7 @@
#include <cppuhelper/interfacecontainer.h>
#include <comphelper/configurationhelper.hxx>
+#include <comphelper/processfactory.hxx>
#include <osl/diagnose.h>
#include <osl/mutex.hxx>
#include <osl/file.hxx>
@@ -221,13 +222,13 @@ void SAL_CALL VistaFilePicker::setDisplayDirectory(const ::rtl::OUString& sDirec
const ::rtl::OUString aKey( RTL_CONSTASCII_USTRINGPARAM("WorkPathChanged"));
css::uno::Any aValue = ::comphelper::ConfigurationHelper::readDirectKey(
- m_xSMGR, aPackage, aRelPath, aKey, ::comphelper::ConfigurationHelper::E_READONLY);
+ comphelper::getComponentContext(m_xSMGR), aPackage, aRelPath, aKey, ::comphelper::ConfigurationHelper::E_READONLY);
bool bChanged(false);
if (( aValue >>= bChanged ) && bChanged )
{
::comphelper::ConfigurationHelper::writeDirectKey(
- m_xSMGR, aPackage, aRelPath, aKey, css::uno::makeAny(false), ::comphelper::ConfigurationHelper::E_STANDARD);
+ comphelper::getComponentContext(m_xSMGR), aPackage, aRelPath, aKey, css::uno::makeAny(false), ::comphelper::ConfigurationHelper::E_STANDARD);
}
RequestRef rRequest(new Request());
diff --git a/fpicker/source/win32/filepicker/filepickerstate.cxx b/fpicker/source/win32/filepicker/filepickerstate.cxx
index f4cac5049e31..3684d4a82f9b 100644
--- a/fpicker/source/win32/filepicker/filepickerstate.cxx
+++ b/fpicker/source/win32/filepicker/filepickerstate.cxx
@@ -498,7 +498,6 @@ OUString SAL_CALL CExecuteFilePickerState::getLabel( sal_Int16 aControlId )
OUString ctrlLabel;
if ( nRet )
{
- ctrlLabel = OUString( aLabel, rtl_ustr_getLength( aLabel ) );
ctrlLabel = WindowsToSOfficeLabel( aLabel );
}
diff --git a/fpicker/source/win32/folderpicker/FolderPicker.hxx b/fpicker/source/win32/folderpicker/FolderPicker.hxx
index a795f5fbfd71..1f1e4c8f8ad3 100644
--- a/fpicker/source/win32/folderpicker/FolderPicker.hxx
+++ b/fpicker/source/win32/folderpicker/FolderPicker.hxx
@@ -20,11 +20,11 @@
#ifndef _FOLDERPICKER_HXX_
#define _FOLDERPICKER_HXX_
-#include <cppuhelper/implbase3.hxx>
+#include <cppuhelper/implbase2.hxx>
#include <osl/mutex.hxx>
#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/ui/dialogs/XFolderPicker.hpp>
+#include <com/sun/star/ui/dialogs/XFolderPicker2.hpp>
#include <com/sun/star/util/XCancellable.hpp>
#include <memory>
@@ -36,10 +36,9 @@
//----------------------------------------------------------
class CFolderPicker :
- public cppu::WeakImplHelper3<
- com::sun::star::ui::dialogs::XFolderPicker,
- com::sun::star::lang::XServiceInfo,
- com::sun::star::util::XCancellable >
+ public cppu::WeakImplHelper2<
+ com::sun::star::ui::dialogs::XFolderPicker2,
+ com::sun::star::lang::XServiceInfo >
{
public:
diff --git a/fpicker/test/svdem.cxx b/fpicker/test/svdem.cxx
index eea40b7d76cd..e6627187b60f 100644
--- a/fpicker/test/svdem.cxx
+++ b/fpicker/test/svdem.cxx
@@ -79,9 +79,9 @@ SAL_IMPLEMENT_MAIN()
xMSch.set(xComponentContext->getServiceManager(), com::sun::star::uno::UNO_QUERY);
comphelper::setProcessServiceFactory(xMSch);
-// comphelper::setProcessServiceFactory( xMS);
+ comphelper::setProcessServiceFactory(xMS);
- InitVCL( xMS );
+ InitVCL();
::Main();
DeInitVCL();
diff --git a/framework/inc/dispatch/mailtodispatcher.hxx b/framework/inc/dispatch/mailtodispatcher.hxx
index 91acd5b837de..72ad6396795e 100644
--- a/framework/inc/dispatch/mailtodispatcher.hxx
+++ b/framework/inc/dispatch/mailtodispatcher.hxx
@@ -76,14 +76,14 @@ class MailToDispatcher : // interfaces
private:
/// reference to global uno service manager which had created us
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
/* interface */
public:
// ctor/dtor
- MailToDispatcher( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory );
- virtual ~MailToDispatcher( );
+ MailToDispatcher( const css::uno::Reference< css::uno::XComponentContext >& rxContext );
+ virtual ~MailToDispatcher( );
// XInterface, XTypeProvider, XServiceInfo
FWK_DECLARE_XINTERFACE
diff --git a/framework/inc/dispatch/popupmenudispatcher.hxx b/framework/inc/dispatch/popupmenudispatcher.hxx
index b534a0797d13..f1ee756e09cc 100644
--- a/framework/inc/dispatch/popupmenudispatcher.hxx
+++ b/framework/inc/dispatch/popupmenudispatcher.hxx
@@ -94,7 +94,7 @@ class PopupMenuDispatcher : // interfaces
public:
// constructor / destructor
- PopupMenuDispatcher( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory );
+ PopupMenuDispatcher( const css::uno::Reference< css::uno::XComponentContext >& xContext );
// XInterface, XTypeProvider, XServiceInfo
FWK_DECLARE_XINTERFACE
@@ -146,7 +146,7 @@ class PopupMenuDispatcher : // interfaces
css::uno::WeakReference< css::frame::XFrame > m_xWeakFrame ; /// css::uno::WeakReference to frame (Don't use a hard css::uno::Reference. Owner can't delete us then!)
css::uno::Reference< css::container::XNameAccess > m_xPopupCtrlQuery ; /// reference to query for popup controller
css::uno::Reference< css::uri::XUriReferenceFactory > m_xUriRefFactory ; /// reference to the uri reference factory
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory ; /// factory shared with our owner to create new services!
+ css::uno::Reference< css::uno::XComponentContext > m_xContext ; /// factory shared with our owner to create new services!
IMPL_ListenerHashContainer m_aListenerContainer; /// hash table for listener at specified URLs
sal_Bool m_bAlreadyDisposed ; /// Protection against multiple disposing calls.
sal_Bool m_bActivateListener ; /// dispatcher is listener for frame activation
diff --git a/framework/inc/dispatch/systemexec.hxx b/framework/inc/dispatch/systemexec.hxx
index 3469e42a6b76..c0e2b641c7dc 100644
--- a/framework/inc/dispatch/systemexec.hxx
+++ b/framework/inc/dispatch/systemexec.hxx
@@ -78,13 +78,13 @@ class SystemExec : // interfaces
private:
/// reference to global uno service manager which had created us
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
/* interface */
public:
// ctor/dtor
- SystemExec( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory );
+ SystemExec( const css::uno::Reference< css::uno::XComponentContext >& rxContext );
virtual ~SystemExec( );
// XInterface, XTypeProvider, XServiceInfo
diff --git a/framework/inc/framework/statusbarconfiguration.hxx b/framework/inc/framework/statusbarconfiguration.hxx
index 2c405c797573..5204e670d43b 100644
--- a/framework/inc/framework/statusbarconfiguration.hxx
+++ b/framework/inc/framework/statusbarconfiguration.hxx
@@ -50,7 +50,7 @@ class FWE_DLLPUBLIC StatusBarConfiguration
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexContainer >& rStatusbarConfiguration );
static sal_Bool StoreStatusBar(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& xContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& xOutputStream,
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess >& rStatusbarConfiguration );
};
diff --git a/framework/inc/framework/titlehelper.hxx b/framework/inc/framework/titlehelper.hxx
index 959810b1d7c5..79e78077058e 100644
--- a/framework/inc/framework/titlehelper.hxx
+++ b/framework/inc/framework/titlehelper.hxx
@@ -31,6 +31,7 @@
#include <com/sun/star/uno/Reference.hxx>
#include <com/sun/star/uno/XInterface.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/lang/IllegalArgumentException.hpp>
#include <com/sun/star/frame/XUntitledNumbers.hpp>
#include <com/sun/star/frame/XTitle.hpp>
@@ -75,7 +76,7 @@ class FWE_DLLPUBLIC TitleHelper : private ::cppu::BaseMutex
//---------------------------------------
/** @short lightweight constructor.
*/
- TitleHelper(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR);
+ TitleHelper(const css::uno::Reference< css::uno::XComponentContext >& rxContext);
//---------------------------------------
/** @short free all internaly used resources.
@@ -182,7 +183,7 @@ class FWE_DLLPUBLIC TitleHelper : private ::cppu::BaseMutex
private:
/** points to the global uno service manager. */
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext> m_xContext;
/** reference to the outside UNO class using this helper. */
css::uno::WeakReference< css::uno::XInterface > m_xOwner;
diff --git a/framework/inc/framework/toolboxconfiguration.hxx b/framework/inc/framework/toolboxconfiguration.hxx
index 1e31bbb8dbac..b8282bc0b99f 100644
--- a/framework/inc/framework/toolboxconfiguration.hxx
+++ b/framework/inc/framework/toolboxconfiguration.hxx
@@ -42,7 +42,7 @@ class FWE_DLLPUBLIC ToolBoxConfiguration
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexContainer >& rToolbarConfiguration );
static sal_Bool StoreToolBox(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& rOutputStream,
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess >& rToolbarConfiguration );
};
diff --git a/framework/inc/general.h b/framework/inc/general.h
index f131eacbb15b..3ab1556ed864 100644
--- a/framework/inc/general.h
+++ b/framework/inc/general.h
@@ -48,25 +48,6 @@
*/
namespace css = ::com::sun::star;
-namespace framework {
-
-//-----------------------------------------------------------------------------
-/** Those macro is used to make it more clear where a synchronized block will start.
- Because normal documentation code wont be recognized by some developers to be real
- I need something where they are thinking about.
-
- At least this macro will do nothing ... it's empty.
- But it should make the code more clear .-))
-*/
-#define SYNCHRONIZED_START
-
-//-----------------------------------------------------------------------------
-/** Same then SYNCHRONIZED_START ... but instead it mark the end of such code block.
-*/
-#define SYNCHRONIZED_END
-
-} // namespace framework
-
#endif // #ifndef __FRAMEWORK_GENERAL_H_
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/inc/helper/persistentwindowstate.hxx b/framework/inc/helper/persistentwindowstate.hxx
index 86f63abeb17e..d9e1ae2fdfd5 100644
--- a/framework/inc/helper/persistentwindowstate.hxx
+++ b/framework/inc/helper/persistentwindowstate.hxx
@@ -117,7 +117,7 @@ class PersistentWindowState : // interfaces
/** @short identify the application module, which is used behind the component
of our frame.
- @param xSMGR
+ @param rxContext
needed to create needed uno resources.
@param xFrame
@@ -126,13 +126,13 @@ class PersistentWindowState : // interfaces
@return [string]
a module identifier for the current frame component.
*/
- static ::rtl::OUString implst_identifyModule(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
+ static ::rtl::OUString implst_identifyModule(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const css::uno::Reference< css::frame::XFrame >& xFrame);
//____________________________
/** @short retrieve the window state from the configuration.
- @param xSMGR
+ @param rxContext
needed to create the configuration access.
@param sModuleName
@@ -142,8 +142,8 @@ class PersistentWindowState : // interfaces
@return [string]
contains the information about position and size.
*/
- static ::rtl::OUString implst_getWindowStateFromConfig(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const ::rtl::OUString& sModuleName);
+ static ::rtl::OUString implst_getWindowStateFromConfig(const css::uno::Reference< css::uno::XComponentContext >& rxContext ,
+ const ::rtl::OUString& sModuleName);
//____________________________
/** @short retrieve the window state from the container window.
@@ -161,7 +161,7 @@ class PersistentWindowState : // interfaces
//____________________________
/** @short restore the position and size on the container window.
- @param xSMGR
+ @param rxContext
needed to create the configuration access.
@param sModuleName
@@ -171,9 +171,9 @@ class PersistentWindowState : // interfaces
@param sWindowState
contains the information about position and size.
*/
- static void implst_setWindowStateOnConfig(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const ::rtl::OUString& sModuleName ,
- const ::rtl::OUString& sWindowState );
+ static void implst_setWindowStateOnConfig(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sModuleName ,
+ const ::rtl::OUString& sWindowState );
//____________________________
/** @short restore the position and size on the container window.
diff --git a/framework/inc/jobs/configaccess.hxx b/framework/inc/jobs/configaccess.hxx
index 30ef4f2a47d8..dd9386a19630 100644
--- a/framework/inc/jobs/configaccess.hxx
+++ b/framework/inc/jobs/configaccess.hxx
@@ -25,6 +25,7 @@
#include <general.h>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <rtl/ustring.hxx>
#include <fwidllapi.h>
@@ -65,7 +66,7 @@ class FWI_DLLPUBLIC ConfigAccess : public ThreadHelpBase
reference to the uno service manager
It's neccessary to instanciate own needed services.
*/
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
/** hold an opened configuration alive */
css::uno::Reference< css::uno::XInterface > m_xConfig;
@@ -81,8 +82,8 @@ class FWI_DLLPUBLIC ConfigAccess : public ThreadHelpBase
public:
- ConfigAccess( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const ::rtl::OUString& sRoot );
+ ConfigAccess( const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sRoot );
virtual ~ConfigAccess();
virtual void open ( EOpenMode eMode );
diff --git a/framework/inc/jobs/helponstartup.hxx b/framework/inc/jobs/helponstartup.hxx
index 86967201db69..4111c98bbae0 100644
--- a/framework/inc/jobs/helponstartup.hxx
+++ b/framework/inc/jobs/helponstartup.hxx
@@ -31,7 +31,7 @@
#include <com/sun/star/task/XJob.hpp>
#include <com/sun/star/lang/XEventListener.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
namespace framework{
@@ -57,7 +57,7 @@ class HelpOnStartup : private ThreadHelpBase
//.......................................
/** @short such module manager is used to classify new opened documents. */
- css::uno::Reference< css::frame::XModuleManager > m_xModuleManager;
+ css::uno::Reference< css::frame::XModuleManager2 > m_xModuleManager;
//.......................................
/** @short is needed to locate a might open help frame. */
diff --git a/framework/inc/jobs/jobdata.hxx b/framework/inc/jobs/jobdata.hxx
index acb107d9d8ac..5ca4691abb12 100644
--- a/framework/inc/jobs/jobdata.hxx
+++ b/framework/inc/jobs/jobdata.hxx
@@ -28,6 +28,7 @@
#include <general.h>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
#include <com/sun/star/frame/DispatchResultEvent.hpp>
@@ -152,7 +153,7 @@ class JobData : private ThreadHelpBase
We need it for creating of own uno services ... e.g. for
opening the configuration.
*/
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
/**
An instance of this class can be used in two different modes:
@@ -224,7 +225,7 @@ class JobData : private ThreadHelpBase
public:
- JobData( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR );
+ JobData( const css::uno::Reference< css::uno::XComponentContext >& rxContext );
JobData( const JobData& rCopy );
virtual ~JobData( );
@@ -250,10 +251,10 @@ class JobData : private ThreadHelpBase
void setResult ( const JobResult& aResult );
void disableJob ( );
- static css::uno::Sequence< ::rtl::OUString > getEnabledJobsForEvent( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const ::rtl::OUString& sEvent );
+ static css::uno::Sequence< ::rtl::OUString > getEnabledJobsForEvent( const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sEvent );
- static void appendEnabledJobsForEvent( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
+ static void appendEnabledJobsForEvent( const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const ::rtl::OUString& sEvent ,
::comphelper::SequenceAsVector< JobData::TJob2DocEventBinding >& lJobs );
diff --git a/framework/inc/jobs/jobexecutor.hxx b/framework/inc/jobs/jobexecutor.hxx
index a0ab8f387fac..4b0f70f149c1 100644
--- a/framework/inc/jobs/jobexecutor.hxx
+++ b/framework/inc/jobs/jobexecutor.hxx
@@ -44,7 +44,7 @@
#include <com/sun/star/container/XContainerListener.hpp>
#include <com/sun/star/lang/XEventListener.hpp>
#include <com/sun/star/document/XEventListener.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
#include <cppuhelper/weak.hxx>
#include <rtl/ustring.hxx>
@@ -77,7 +77,7 @@ class JobExecutor : public css::lang::XTypeProvider
css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
/** reference to the module info service */
- css::uno::Reference< css::frame::XModuleManager > m_xModuleManager;
+ css::uno::Reference< css::frame::XModuleManager2 > m_xModuleManager;
/** cached list of all registered event names of cfg for call optimization. */
OUStringList m_lEvents;
diff --git a/framework/inc/macros/xserviceinfo.hxx b/framework/inc/macros/xserviceinfo.hxx
index bcca5c25f6a0..6197bd3cec98 100644
--- a/framework/inc/macros/xserviceinfo.hxx
+++ b/framework/inc/macros/xserviceinfo.hxx
@@ -225,6 +225,10 @@ ________________________________________________________________________________
PRIVATE_DEFINE_XSERVICEINFO_NEWSTYLE( CLASS, XINTERFACECAST, SERVICENAME, IMPLEMENTATIONNAME ) \
PRIVATE_DEFINE_SINGLEFACTORY( CLASS )
+#define DEFINE_XSERVICEINFO_ONEINSTANCESERVICE_2( CLASS, XINTERFACECAST, SERVICENAME, IMPLEMENTATIONNAME ) \
+ PRIVATE_DEFINE_XSERVICEINFO_NEWSTYLE( CLASS, XINTERFACECAST, SERVICENAME, IMPLEMENTATIONNAME ) \
+ PRIVATE_DEFINE_ONEINSTANCEFACTORY( CLASS )
+
//*****************************************************************************************************************
// public
// implementation of service initialize!
diff --git a/framework/inc/services.h b/framework/inc/services.h
index 70956ec6d9e4..e32de32c1ed3 100644
--- a/framework/inc/services.h
+++ b/framework/inc/services.h
@@ -34,34 +34,23 @@ namespace framework{
#define SERVICENAME_FRAMELOADERFACTORY DECLARE_ASCII("com.sun.star.frame.FrameLoaderFactory" )
#define SERVICENAME_FILTERFACTORY DECLARE_ASCII("com.sun.star.document.FilterFactory" )
#define SERVICENAME_PLUGINFRAME DECLARE_ASCII("com.sun.star.mozilla.Plugin" )
-#define SERVICENAME_BRIDGEFACTORY DECLARE_ASCII("com.sun.star.bridge.BridgeFactory" )
-#define SERVICENAME_MEDIATYPEDETECTIONHELPER DECLARE_ASCII("com.sun.star.frame.MediaTypeDetectionHelper" )
#define SERVICENAME_LOGINDIALOG DECLARE_ASCII("com.sun.star.framework.LoginDialog" )
#define SERVICENAME_CONFIGURATION DECLARE_ASCII("com.sun.star.configuration.ConfigurationRegistry" )
-#define SERVICENAME_VCLTOOLKIT DECLARE_ASCII("com.sun.star.awt.Toolkit" )
#define SERVICENAME_SIMPLEREGISTRY DECLARE_ASCII("com.sun.star.registry.SimpleRegistry" )
#define SERVICENAME_NESTEDREGISTRY DECLARE_ASCII("com.sun.star.registry.NestedRegistry" )
#define SERVICENAME_GENERICFRAMELOADER DECLARE_ASCII("com.sun.star.comp.office.FilterDetect" )
#define SERVICENAME_TYPEDETECTION DECLARE_ASCII("com.sun.star.document.TypeDetection" )
-#define SERVICENAME_DOCUMENTPROPERTIES DECLARE_ASCII("com.sun.star.document.DocumentProperties" )
#define SERVICENAME_CFGREGISTRY DECLARE_ASCII("com.sun.star.configuration.ConfigurationRegistry" ) // describe simple registry service for read access to configuration
-#define SERVICENAME_CFGPROVIDER DECLARE_ASCII("com.sun.star.configuration.ConfigurationProvider" ) // describe cfg-provider service for fatoffice, network installation
#define SERVICENAME_ADMINPROVIDER DECLARE_ASCII("com.sun.star.configuration.AdministrationProvider" ) // describe cfg-provider service for sun webtop
#define SERVICENAME_CFGUPDATEACCESS DECLARE_ASCII("com.sun.star.configuration.ConfigurationUpdateAccess") // provides read/write access to the configuration
#define SERVICENAME_CFGREADACCESS DECLARE_ASCII("com.sun.star.configuration.ConfigurationAccess" ) // provides readonly access to the configuration
#define SERVICENAME_CONTENTHANDLER DECLARE_ASCII("com.sun.star.frame.ContentHandler" )
#define SERVICENAME_CONTENTHANDLERFACTORY DECLARE_ASCII("com.sun.star.frame.ContentHandlerFactory" )
#define SERVICENAME_STATUSINDICATORFACTORY DECLARE_ASCII("com.sun.star.task.StatusIndicatorFactory" )
-#define SERVICENAME_UIINTERACTIONHANDLER DECLARE_ASCII("com.sun.star.task.InteractionHandler" )
-#define SERVICENAME_JOBEXECUTOR DECLARE_ASCII("com.sun.star.task.JobExecutor" )
#define SERVICENAME_JOB DECLARE_ASCII("com.sun.star.task.Job" )
-#define SERVICENAME_DISPATCHRECORDERSUPPLIER DECLARE_ASCII("com.sun.star.frame.DispatchRecorderSupplier" )
#define SERVICENAME_DISPATCHRECORDER DECLARE_ASCII("com.sun.star.frame.DispatchRecorder" )
-#define SERVICENAME_SYSTEMSHELLEXECUTE DECLARE_ASCII("com.sun.star.system.SystemShellExecute" )
#define SERVICENAME_PROTOCOLHANDLER DECLARE_ASCII("com.sun.star.frame.ProtocolHandler" )
-#define SERVICENAME_SUBSTITUTEPATHVARIABLES DECLARE_ASCII("com.sun.star.util.PathSubstitution" )
#define SERVICENAME_PATHSETTINGS DECLARE_ASCII("com.sun.star.util.PathSettings" )
-#define SERVICENAME_DISPATCHHELPER DECLARE_ASCII("com.sun.star.frame.DispatchHelper" )
#define SERVICENAME_DETECTORFACTORY DECLARE_ASCII("com.sun.star.document.ExtendedTypeDetectionFactory" )
#define SERVICENAME_SCRIPTCONVERTER DECLARE_ASCII("com.sun.star.script.Converter" )
#define SERVICENAME_LAYOUTMANAGER DECLARE_ASCII("com.sun.star.frame.LayoutManager" )
@@ -69,7 +58,6 @@ namespace framework{
#define SERVICENAME_POPUPMENUCONTROLLER DECLARE_ASCII("com.sun.star.frame.PopupMenuController" )
#define SERVICENAME_UICOMMANDDESCRIPTION DECLARE_ASCII("com.sun.star.frame.UICommandDescription" )
#define SERVICENAME_UIELEMENTFACTORYMANAGER DECLARE_ASCII("com.sun.star.ui.UIElementFactoryManager" )
-#define SERVICENAME_MODULEMANAGER DECLARE_ASCII("com.sun.star.frame.ModuleManager" )
#define SERVICENAME_UICONFIGURATIONMANAGER DECLARE_ASCII("com.sun.star.ui.UIConfigurationManager" )
#define SERVICENAME_MODULEUICONFIGURATIONMANAGERSUPPLIER DECLARE_ASCII("com.sun.star.ui.ModuleUIConfigurationManagerSupplier" )
#define SERVICENAME_MODULEUICONFIGURATIONMANAGER DECLARE_ASCII("com.sun.star.ui.ModuleUIConfigurationManager" )
@@ -80,16 +68,12 @@ namespace framework{
#define SERVICENAME_GLOBALACCELERATORCONFIGURATION DECLARE_ASCII("com.sun.star.ui.GlobalAcceleratorConfiguration")
#define SERVICENAME_MODULEACCELERATORCONFIGURATION DECLARE_ASCII("com.sun.star.ui.ModuleAcceleratorConfiguration")
#define SERVICENAME_DOCUMENTACCELERATORCONFIGURATION DECLARE_ASCII("com.sun.star.ui.DocumentAcceleratorConfiguration")
-#define SERVICENAME_SAXWRITER DECLARE_ASCII("com.sun.star.xml.sax.Writer" )
#define SERVICENAME_STORAGEFACTORY DECLARE_ASCII("com.sun.star.embed.StorageFactory" )
#define SERVICENAME_FILESYSTEMSTORAGEFACTORY DECLARE_ASCII("com.sun.star.embed.FileSystemStorageFactory" )
-#define SERVICENAME_TEMPFILE DECLARE_ASCII("com.sun.star.io.TempFile" )
#define SERVICENAME_PACKAGESTRUCTURECREATOR DECLARE_ASCII("com.sun.star.embed.PackageStructureCreator" )
#define SERVICENAME_TOOLBARFACTORY DECLARE_ASCII("com.sun.star.ui.ToolBarFactory" )
#define SERVICENAME_TOOLBARCONTROLLERFACTORY DECLARE_ASCII("com.sun.star.frame.ToolBarControllerFactory" )
#define SERVICENAME_LICENSE SERVICENAME_JOB
-#define SERVICENAME_AUTORECOVERY DECLARE_ASCII("com.sun.star.frame.AutoRecovery" )
-#define SERVICENAME_GLOBALEVENTBROADCASTER DECLARE_ASCII("com.sun.star.frame.GlobalEventBroadcaster" )
#define SERVICENAME_STATUSBARFACTORY DECLARE_ASCII("com.sun.star.ui.StatusBarFactory" )
#define SERVICENAME_UICATEGORYDESCRIPTION DECLARE_ASCII("com.sun.star.ui.UICategoryDescription" )
#define SERVICENAME_STATUSBARCONTROLLERFACTORY DECLARE_ASCII("com.sun.star.frame.StatusbarControllerFactory" )
diff --git a/framework/inc/services/autorecovery.hxx b/framework/inc/services/autorecovery.hxx
index 9f7c61c681c8..94347a0050ab 100644
--- a/framework/inc/services/autorecovery.hxx
+++ b/framework/inc/services/autorecovery.hxx
@@ -40,6 +40,7 @@
#include <com/sun/star/lang/XTypeProvider.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/frame/GlobalEventBroadcaster.hpp>
#include <com/sun/star/frame/XDispatch.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/document/XEventListener.hpp>
@@ -344,7 +345,7 @@ class AutoRecovery : public css::lang::XTypeProvider
/** @short holds the global event broadcaster alive,
where we listen for new created documents.
*/
- css::uno::Reference< css::document::XEventBroadcaster > m_xNewDocBroadcaster;
+ css::uno::Reference< css::frame::XGlobalEventBroadcaster > m_xNewDocBroadcaster;
//---------------------------------------
/** @short proxy weak binding to forward Events to ourself without
diff --git a/framework/inc/services/layoutmanager.hxx b/framework/inc/services/layoutmanager.hxx
index a757f261410c..3ff6ea106a9b 100644
--- a/framework/inc/services/layoutmanager.hxx
+++ b/framework/inc/services/layoutmanager.hxx
@@ -56,7 +56,7 @@
#include <com/sun/star/frame/XLayoutManager.hpp>
#include <com/sun/star/ui/XUIConfigurationManager.hpp>
#include <com/sun/star/ui/XUIConfiguration.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
#include <com/sun/star/frame/XFrameActionListener.hpp>
#include <com/sun/star/awt/XWindowListener.hpp>
#include <com/sun/star/util/XURLTransformer.hpp>
@@ -325,7 +325,7 @@ namespace framework
UIElement m_aStatusBarElement;
UIElement m_aProgressBarElement;
com::sun::star::uno::Reference< ::com::sun::star::ui::XUIElement > m_xProgressBarBackup;
- css::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleManager;
+ css::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleManager;
css::uno::Reference< ::com::sun::star::ui::XUIElementFactory > m_xUIElementFactoryManager;
css::uno::Reference< ::com::sun::star::container::XNameAccess > m_xPersistentWindowState;
css::uno::Reference< ::com::sun::star::container::XNameAccess > m_xPersistentWindowStateSupplier;
diff --git a/framework/inc/services/license.hxx b/framework/inc/services/license.hxx
index b0bb81f11f06..399b07ce6e24 100644
--- a/framework/inc/services/license.hxx
+++ b/framework/inc/services/license.hxx
@@ -69,10 +69,10 @@ namespace framework
public ::cppu::OWeakObject // => XWeak, XInterface
{
private:
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
sal_Bool m_bTerminate;
public:
- License( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rSMGR );
+ License( const com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >& rxContext );
virtual ~License();
/** declaration of XInterface, XTypeProvider, XServiceInfo */
diff --git a/framework/inc/tabwin/tabwinfactory.hxx b/framework/inc/tabwin/tabwinfactory.hxx
index a594b2a548a3..fb08f20aafbb 100644
--- a/framework/inc/tabwin/tabwinfactory.hxx
+++ b/framework/inc/tabwin/tabwinfactory.hxx
@@ -33,7 +33,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/lang/XSingleComponentFactory.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
-#include <com/sun/star/awt/XToolkit.hpp>
+#include <com/sun/star/awt/XToolkit2.hpp>
#include <cppuhelper/implbase2.hxx>
#include <rtl/ustring.hxx>
@@ -57,7 +57,7 @@ class TabWinFactory : protected ThreadHelpBase
private:
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XToolkit > m_xToolkit;
+ ::com::sun::star::uno::Reference< ::com::sun::star::awt::XToolkit2 > m_xToolkit;
};
}
diff --git a/framework/inc/uiconfiguration/globalsettings.hxx b/framework/inc/uiconfiguration/globalsettings.hxx
index 49f39b1f3ca7..3b253d8100f0 100644
--- a/framework/inc/uiconfiguration/globalsettings.hxx
+++ b/framework/inc/uiconfiguration/globalsettings.hxx
@@ -47,7 +47,7 @@ namespace framework
class GlobalSettings
{
public:
- GlobalSettings( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rSrvMgr );
+ GlobalSettings( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
~GlobalSettings();
enum UIElementType
@@ -72,7 +72,7 @@ class GlobalSettings
GlobalSettings(const GlobalSettings&);
GlobalSettings& operator=(const GlobalSettings& );
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xSrvMgr;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
};
} // namespace framework
diff --git a/framework/inc/uiconfiguration/moduleuicfgsupplier.hxx b/framework/inc/uiconfiguration/moduleuicfgsupplier.hxx
index 208c6308669d..4961ca8ad812 100644
--- a/framework/inc/uiconfiguration/moduleuicfgsupplier.hxx
+++ b/framework/inc/uiconfiguration/moduleuicfgsupplier.hxx
@@ -49,7 +49,7 @@
#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/ui/XModuleUIConfigurationManagerSupplier.hpp>
#include <com/sun/star/ui/XUIConfigurationManager.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
#include <com/sun/star/embed/XStorage.hpp>
#include <com/sun/star/embed/XTransactedObject.hpp>
@@ -102,7 +102,7 @@ namespace framework
com::sun::star::uno::Reference< com::sun::star::embed::XStorage > m_xDefaultCfgRootStorage;
com::sun::star::uno::Reference< com::sun::star::embed::XStorage > m_xUserCfgRootStorage;
com::sun::star::uno::Reference< com::sun::star::embed::XTransactedObject > m_xUserRootCommit;
- com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleMgr;
+ com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleMgr;
com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
::cppu::OMultiTypeInterfaceContainerHelper m_aListenerContainer; /// container for ALL Listener
};
diff --git a/framework/inc/uiconfiguration/uicategorydescription.hxx b/framework/inc/uiconfiguration/uicategorydescription.hxx
index 028452fb300b..bb3e73660f5b 100644
--- a/framework/inc/uiconfiguration/uicategorydescription.hxx
+++ b/framework/inc/uiconfiguration/uicategorydescription.hxx
@@ -43,7 +43,7 @@ namespace framework
class UICategoryDescription : public UICommandDescription
{
public:
- UICategoryDescription( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
+ UICategoryDescription( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
virtual ~UICategoryDescription();
DECLARE_XSERVICEINFO
diff --git a/framework/inc/uiconfiguration/windowstateconfiguration.hxx b/framework/inc/uiconfiguration/windowstateconfiguration.hxx
index fbf1b20e6a75..d254d8d4005d 100644
--- a/framework/inc/uiconfiguration/windowstateconfiguration.hxx
+++ b/framework/inc/uiconfiguration/windowstateconfiguration.hxx
@@ -46,7 +46,7 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/lang/XTypeProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
#include <cppuhelper/implbase2.hxx>
#include <rtl/ustring.hxx>
@@ -75,7 +75,7 @@ class WindowStateConfiguration : private ThreadHelpBase
public ::cppu::WeakImplHelper2< ::com::sun::star::container::XNameAccess, css::lang::XServiceInfo>
{
public:
- WindowStateConfiguration( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
+ WindowStateConfiguration( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
virtual ~WindowStateConfiguration();
// XInterface, XTypeProvider, XServiceInfo
@@ -110,10 +110,10 @@ class WindowStateConfiguration : private ThreadHelpBase
::std::equal_to< ::rtl::OUString > > ModuleToWindowStateConfigHashMap;
private:
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext> m_xContext;
ModuleToWindowStateFileMap m_aModuleToFileHashMap;
ModuleToWindowStateConfigHashMap m_aModuleToWindowStateHashMap;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleManager;
};
} // namespace framework
diff --git a/framework/inc/uielement/uicommanddescription.hxx b/framework/inc/uielement/uicommanddescription.hxx
index 8c5984ecc057..9f14a97c1875 100644
--- a/framework/inc/uielement/uicommanddescription.hxx
+++ b/framework/inc/uielement/uicommanddescription.hxx
@@ -45,8 +45,9 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/lang/XTypeProvider.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
#include <cppuhelper/implbase2.hxx>
#include <rtl/ustring.hxx>
@@ -58,7 +59,7 @@ class UICommandDescription : private ThreadHelpBase ,
com::sun::star::container::XNameAccess >
{
public:
- UICommandDescription( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
+ UICommandDescription( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
virtual ~UICommandDescription();
// XInterface, XTypeProvider, XServiceInfo
@@ -92,16 +93,16 @@ public:
::std::equal_to< ::rtl::OUString > > UICommandsHashMap;
protected:
- UICommandDescription( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager,bool );
+ UICommandDescription( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>& rxContext, bool );
virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > impl_createConfigAccess(const ::rtl::OUString& _sName);
void impl_fillElements(const sal_Char* _pName);
sal_Bool m_bConfigRead;
rtl::OUString m_aPrivateResourceURL;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
ModuleToCommandFileMap m_aModuleToCommandFileMap;
UICommandsHashMap m_aUICommandsHashMap;
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > m_xGenericUICommands;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleManager;
};
} // namespace framework
diff --git a/framework/inc/uifactory/addonstoolboxfactory.hxx b/framework/inc/uifactory/addonstoolboxfactory.hxx
index 43097aa46119..d05f11c17c5f 100644
--- a/framework/inc/uifactory/addonstoolboxfactory.hxx
+++ b/framework/inc/uifactory/addonstoolboxfactory.hxx
@@ -33,7 +33,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/ui/XUIElementFactory.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/frame/XModel.hpp>
@@ -62,7 +62,7 @@ class AddonsToolBoxFactory : protected ThreadHelpBase
private:
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleManager;
};
}
diff --git a/framework/inc/uifactory/factoryconfiguration.hxx b/framework/inc/uifactory/factoryconfiguration.hxx
index d055fd6ee87e..9a2658c93cde 100644
--- a/framework/inc/uifactory/factoryconfiguration.hxx
+++ b/framework/inc/uifactory/factoryconfiguration.hxx
@@ -60,7 +60,7 @@ class ConfigurationAccess_ControllerFactory : // interfaces
public ::cppu::WeakImplHelper1< ::com::sun::star::container::XContainerListener>
{
public:
- ConfigurationAccess_ControllerFactory( ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rServiceManager,const ::rtl::OUString& _sRoot,bool _bAskValue = false );
+ ConfigurationAccess_ControllerFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext, const ::rtl::OUString& _sRoot,bool _bAskValue = false );
virtual ~ConfigurationAccess_ControllerFactory();
void readConfigurationData();
@@ -107,7 +107,6 @@ private:
rtl::OUString m_aPropValue;
rtl::OUString m_sRoot;
MenuControllerMap m_aMenuControllerMap;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xConfigProvider;
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > m_xConfigAccess;
::com::sun::star::uno::Reference< ::com::sun::star::container::XContainerListener > m_xConfigAccessListener;
diff --git a/framework/inc/uifactory/menubarfactory.hxx b/framework/inc/uifactory/menubarfactory.hxx
index 135e6bad6c3f..d34025eb99fe 100644
--- a/framework/inc/uifactory/menubarfactory.hxx
+++ b/framework/inc/uifactory/menubarfactory.hxx
@@ -32,7 +32,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/ui/XUIElementFactory.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/XModuleManager2.hpp>
#include <toolkit/awt/vclxmenu.hxx>
#include <cppuhelper/implbase2.hxx>
@@ -59,14 +59,14 @@ namespace framework
,const char* _pExtraMode
,const char* _pAsciiName
,const ::com::sun::star::uno::Reference< ::com::sun::star::ui::XUIElement >& _xMenuBar
- ,const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager >& _xModuleManager
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 >& _xModuleManager
,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _xServiceManager);
protected:
MenuBarFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager,bool );
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleManager;
};
}
diff --git a/framework/inc/uifactory/uielementfactorymanager.hxx b/framework/inc/uifactory/uielementfactorymanager.hxx
index 99dc12f2a525..1f403e88e8b2 100644
--- a/framework/inc/uifactory/uielementfactorymanager.hxx
+++ b/framework/inc/uifactory/uielementfactorymanager.hxx
@@ -47,7 +47,7 @@
#include <com/sun/star/ui/XUIElementFactoryRegistration.hpp>
#include <com/sun/star/container/XContainerListener.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
-#include "com/sun/star/frame/XModuleManager.hpp"
+#include "com/sun/star/frame/XModuleManager2.hpp"
#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/implbase3.hxx>
@@ -63,7 +63,7 @@ namespace framework
public ::cppu::WeakImplHelper1< ::com::sun::star::container::XContainerListener>
{
public:
- ConfigurationAccess_FactoryManager( ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rServiceManager,const ::rtl::OUString& _sRoot );
+ ConfigurationAccess_FactoryManager( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>& rxContext, const ::rtl::OUString& _sRoot );
virtual ~ConfigurationAccess_FactoryManager();
void readConfigurationData();
@@ -101,7 +101,6 @@ namespace framework
rtl::OUString m_aPropFactory;
::rtl::OUString m_sRoot;
FactoryManagerMap m_aFactoryManagerMap;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xConfigProvider;
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > m_xConfigAccess;
::com::sun::star::uno::Reference< ::com::sun::star::container::XContainerListener > m_xConfigListener;
@@ -115,7 +114,7 @@ class UIElementFactoryManager : private ThreadHelpBase
::com::sun::star::ui::XUIElementFactoryRegistration>
{
public:
- UIElementFactoryManager( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
+ UIElementFactoryManager( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
virtual ~UIElementFactoryManager();
// XInterface, XTypeProvider, XServiceInfo
@@ -133,8 +132,8 @@ class UIElementFactoryManager : private ThreadHelpBase
private:
sal_Bool m_bConfigRead;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleManager;
ConfigurationAccess_FactoryManager* m_pConfigAccess;
};
diff --git a/framework/inc/uifactory/windowcontentfactorymanager.hxx b/framework/inc/uifactory/windowcontentfactorymanager.hxx
index 4711c1fa9120..c189218a32a3 100644
--- a/framework/inc/uifactory/windowcontentfactorymanager.hxx
+++ b/framework/inc/uifactory/windowcontentfactorymanager.hxx
@@ -35,7 +35,7 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
-#include "com/sun/star/frame/XModuleManager.hpp"
+#include "com/sun/star/frame/XModuleManager2.hpp"
#include <cppuhelper/implbase2.hxx>
#include <rtl/ustring.hxx>
@@ -49,7 +49,7 @@ class WindowContentFactoryManager : private ThreadHelpBase
com::sun::star::lang::XSingleComponentFactory>
{
public:
- WindowContentFactoryManager( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
+ WindowContentFactoryManager( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>& rxContext );
virtual ~WindowContentFactoryManager();
// XInterface, XTypeProvider, XServiceInfo
@@ -63,8 +63,7 @@ class WindowContentFactoryManager : private ThreadHelpBase
private:
sal_Bool m_bConfigRead;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager > m_xModuleManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 > m_xModuleManager;
ConfigurationAccess_FactoryManager* m_pConfigAccess;
};
diff --git a/framework/inc/xml/imagesconfiguration.hxx b/framework/inc/xml/imagesconfiguration.hxx
index eda31f41571b..d08c3b1cd585 100644
--- a/framework/inc/xml/imagesconfiguration.hxx
+++ b/framework/inc/xml/imagesconfiguration.hxx
@@ -106,7 +106,7 @@ class ImagesConfiguration
ImageListsDescriptor& rItems );
static sal_Bool StoreImages(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& rOutputStream,
const ImageListsDescriptor& rItems );
};
diff --git a/framework/source/accelerators/acceleratorconfiguration.cxx b/framework/source/accelerators/acceleratorconfiguration.cxx
index fa010e7d55bb..7ed41e9fd57e 100644
--- a/framework/source/accelerators/acceleratorconfiguration.cxx
+++ b/framework/source/accelerators/acceleratorconfiguration.cxx
@@ -43,6 +43,7 @@
#include <com/sun/star/xml/sax/Parser.hpp>
#include <com/sun/star/xml/sax/InputSource.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/embed/ElementModes.hpp>
#include <com/sun/star/io/XSeekable.hpp>
@@ -562,12 +563,12 @@ void XMLBasedAcceleratorConfiguration::impl_ts_save(const css::uno::Reference< c
xSeek->seek(0);
// combine writer/cache/stream etcpp.
- css::uno::Reference< css::xml::sax::XDocumentHandler > xWriter (xSMGR->createInstance(SERVICENAME_SAXWRITER), css::uno::UNO_QUERY_THROW);
- css::uno::Reference< css::io::XActiveDataSource> xDataSource(xWriter , css::uno::UNO_QUERY_THROW);
- xDataSource->setOutputStream(xStream);
+ css::uno::Reference< css::xml::sax::XWriter > xWriter = css::xml::sax::Writer::create(comphelper::getComponentContext(xSMGR));
+ xWriter->setOutputStream(xStream);
// write into the stream
- AcceleratorConfigurationWriter aWriter(aCache, xWriter);
+ css::uno::Reference< css::xml::sax::XDocumentHandler > xHandler(xWriter, css::uno::UNO_QUERY_THROW);
+ AcceleratorConfigurationWriter aWriter(aCache, xHandler);
aWriter.flush();
// take over all changes into the original container
@@ -623,7 +624,7 @@ AcceleratorCache& XMLBasedAcceleratorConfiguration::impl_getCFG(sal_Bool bWriteA
aReadLock.unlock();
// <- SAFE ----------------------------------
- css::uno::Reference< css::uno::XInterface > xCFG = fpc::ConfigurationHelper::openConfig(xSMGR,
+ css::uno::Reference< css::uno::XInterface > xCFG = fpc::ConfigurationHelper::openConfig( comphelper::getComponentContext(xSMGR),
"/org.openoffice.Setup", "L10N", fpc::ConfigurationHelper::E_READONLY);
css::uno::Reference< css::beans::XPropertySet > xProp (xCFG, css::uno::UNO_QUERY_THROW);
::rtl::OUString sISOLocale;
@@ -670,7 +671,7 @@ XCUBasedAcceleratorConfiguration::XCUBasedAcceleratorConfiguration(const css::un
{
const ::rtl::OUString CFG_ENTRY_ACCELERATORS("org.openoffice.Office.Accelerators");
m_xCfg = css::uno::Reference< css::container::XNameAccess > (
- ::comphelper::ConfigurationHelper::openConfig( m_xSMGR, CFG_ENTRY_ACCELERATORS, ::comphelper::ConfigurationHelper::E_ALL_LOCALES ),
+ ::comphelper::ConfigurationHelper::openConfig( comphelper::getComponentContext(m_xSMGR), CFG_ENTRY_ACCELERATORS, ::comphelper::ConfigurationHelper::E_ALL_LOCALES ),
css::uno::UNO_QUERY );
}
@@ -1111,12 +1112,12 @@ void SAL_CALL XCUBasedAcceleratorConfiguration::storeToStorage(const css::uno::R
if (xSeek.is())
xSeek->seek(0);
- css::uno::Reference< css::xml::sax::XDocumentHandler > xWriter (m_xSMGR->createInstance(SERVICENAME_SAXWRITER), css::uno::UNO_QUERY_THROW);
- css::uno::Reference< css::io::XActiveDataSource> xDataSource(xWriter , css::uno::UNO_QUERY_THROW);
- xDataSource->setOutputStream(xOut);
+ css::uno::Reference< css::xml::sax::XWriter > xWriter = css::xml::sax::Writer::create(comphelper::getComponentContext(m_xSMGR));
+ xWriter->setOutputStream(xOut);
// write into the stream
- AcceleratorConfigurationWriter aWriter(aCache, xWriter);
+ css::uno::Reference< css::xml::sax::XDocumentHandler > xHandler(xWriter, css::uno::UNO_QUERY_THROW);
+ AcceleratorConfigurationWriter aWriter(aCache, xHandler);
aWriter.flush();
}
@@ -1172,14 +1173,14 @@ void SAL_CALL XCUBasedAcceleratorConfiguration::reset()
if ( sConfig == "Global" )
{
m_xCfg = css::uno::Reference< css::container::XNameAccess > (
- ::comphelper::ConfigurationHelper::openConfig( m_xSMGR, CFG_ENTRY_GLOBAL, ::comphelper::ConfigurationHelper::E_ALL_LOCALES ),
+ ::comphelper::ConfigurationHelper::openConfig( comphelper::getComponentContext(m_xSMGR), CFG_ENTRY_GLOBAL, ::comphelper::ConfigurationHelper::E_ALL_LOCALES ),
css::uno::UNO_QUERY );
XCUBasedAcceleratorConfiguration::reload();
}
else if ( sConfig == "Modules" )
{
m_xCfg = css::uno::Reference< css::container::XNameAccess > (
- ::comphelper::ConfigurationHelper::openConfig( m_xSMGR, CFG_ENTRY_MODULES, ::comphelper::ConfigurationHelper::E_ALL_LOCALES ),
+ ::comphelper::ConfigurationHelper::openConfig( comphelper::getComponentContext(m_xSMGR), CFG_ENTRY_MODULES, ::comphelper::ConfigurationHelper::E_ALL_LOCALES ),
css::uno::UNO_QUERY );
XCUBasedAcceleratorConfiguration::reload();
}
@@ -1662,7 +1663,7 @@ AcceleratorCache& XCUBasedAcceleratorConfiguration::impl_getCFG(sal_Bool bPrefer
aReadLock.unlock();
// <- SAFE ----------------------------------
- css::uno::Reference< css::uno::XInterface > xCFG = fpc::ConfigurationHelper::openConfig(xSMGR,
+ css::uno::Reference< css::uno::XInterface > xCFG = fpc::ConfigurationHelper::openConfig( comphelper::getComponentContext(xSMGR),
"/org.openoffice.Setup", "L10N", fpc::ConfigurationHelper::E_READONLY);
css::uno::Reference< css::beans::XPropertySet > xProp (xCFG, css::uno::UNO_QUERY_THROW);
::rtl::OUString sISOLocale;
diff --git a/framework/source/classes/taskcreator.cxx b/framework/source/classes/taskcreator.cxx
index 147f5f4eeb50..c7d8689a6023 100644
--- a/framework/source/classes/taskcreator.cxx
+++ b/framework/source/classes/taskcreator.cxx
@@ -85,7 +85,8 @@ css::uno::Reference< css::frame::XFrame > TaskCreator::createTask( const ::rtl::
( TargetHelper::matchSpecialTarget(sName, TargetHelper::E_DEFAULT) )
)
{
- ::comphelper::ConfigurationHelper::readDirectKey(xSMGR,
+ ::comphelper::ConfigurationHelper::readDirectKey(
+ comphelper::getComponentContext(xSMGR),
"org.openoffice.Office.TabBrowse",
"TaskCreatorService",
"ImplementationName",
diff --git a/framework/source/dispatch/dispatchprovider.cxx b/framework/source/dispatch/dispatchprovider.cxx
index f570dd239d19..ebb0099f79c1 100644
--- a/framework/source/dispatch/dispatchprovider.cxx
+++ b/framework/source/dispatch/dispatchprovider.cxx
@@ -230,8 +230,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryDeskt
// I.II) "_default"
// This is a combination of search an empty task for recycling - or create a new one.
//-----------------------------------------------------------------------------------------------------
- else
- if (sTargetFrameName==SPECIALTARGET_DEFAULT)
+ else if (sTargetFrameName==SPECIALTARGET_DEFAULT)
{
if (implts_isLoadableContent(aURL))
xDispatcher = implts_getOrCreateDispatchHelper( E_DEFAULTDISPATCHER, xDesktop );
@@ -246,12 +245,11 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryDeskt
// Why is "top" here handled too? Because the desktop is the topest frame. Normaly it's superflous
// to use this target - but we can handle it in the same manner then "_self".
//-----------------------------------------------------------------------------------------------------
- else
- if (
- (sTargetFrameName==SPECIALTARGET_SELF) ||
- (sTargetFrameName==SPECIALTARGET_TOP ) ||
- (sTargetFrameName.isEmpty())
- )
+ else if (
+ (sTargetFrameName==SPECIALTARGET_SELF) ||
+ (sTargetFrameName==SPECIALTARGET_TOP ) ||
+ (sTargetFrameName.isEmpty())
+ )
{
xDispatcher = implts_searchProtocolHandler(aURL);
}
@@ -274,10 +272,9 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryDeskt
css::uno::Reference< css::frame::XDispatchProvider > xProvider( xFoundFrame, css::uno::UNO_QUERY );
xDispatcher = xProvider->queryDispatch(aURL,SPECIALTARGET_SELF,0);
}
- else
// if it couldn't be found - but creation was allowed
// use special dispatcher for creatio or froward it to the browser
- if (nSearchFlags & css::frame::FrameSearchFlag::CREATE)
+ else if (nSearchFlags & css::frame::FrameSearchFlag::CREATE)
xDispatcher = implts_getOrCreateDispatchHelper( E_CREATEDISPATCHER, xDesktop, sTargetFrameName, nSearchFlags );
}
@@ -324,8 +321,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
// I.II) "_menubar"
// Special mode on frame or task to receive the local menu. Not supported by findFrame()
//-----------------------------------------------------------------------------------------------------
- else
- if (sTargetName==SPECIALTARGET_MENUBAR)
+ else if (sTargetName==SPECIALTARGET_MENUBAR)
{
xDispatcher = implts_getOrCreateDispatchHelper( E_MENUDISPATCHER, xFrame );
}
@@ -335,8 +331,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
// Special sub frame of a top frame only. Search or create it. ... OK it's currently a little bit HACKI.
// Only the sfx (means the controller) can create it it.
//-----------------------------------------------------------------------------------------------------
- else
- if (sTargetName==SPECIALTARGET_BEAMER)
+ else if (sTargetName==SPECIALTARGET_BEAMER)
{
css::uno::Reference< css::frame::XDispatchProvider > xBeamer( xFrame->findFrame( SPECIALTARGET_BEAMER, css::frame::FrameSearchFlag::CHILDREN | css::frame::FrameSearchFlag::SELF ), css::uno::UNO_QUERY );
if (xBeamer.is())
@@ -357,8 +352,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
// I.V) "_parent"
// Our parent frame (if it exist) should handle this URL.
//-----------------------------------------------------------------------------------------------------
- else
- if (sTargetName==SPECIALTARGET_PARENT)
+ else if (sTargetName==SPECIALTARGET_PARENT)
{
css::uno::Reference< css::frame::XDispatchProvider > xParent( xFrame->getCreator(), css::uno::UNO_QUERY );
if (xParent.is())
@@ -371,8 +365,7 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
// This request must be forwarded to any parent frame, till we reach a top frame.
// If no parent exist, we can handle itself.
//-----------------------------------------------------------------------------------------------------
- else
- if (sTargetName==SPECIALTARGET_TOP)
+ else if (sTargetName==SPECIALTARGET_TOP)
{
if (xFrame->isTop())
{
@@ -398,11 +391,10 @@ css::uno::Reference< css::frame::XDispatch > DispatchProvider::implts_queryFrame
// protocol handler. If this failed too - we check for a loadable content and in case of true
// we load it into the frame by returning specilized dispatch object.
//-----------------------------------------------------------------------------------------------------
- else
- if (
- (sTargetName==SPECIALTARGET_SELF) ||
- (sTargetName.isEmpty())
- )
+ else if (
+ (sTargetName==SPECIALTARGET_SELF) ||
+ (sTargetName.isEmpty())
+ )
{
// There exist a hard coded interception for special URLs.
if ( aURL.Complete == ".uno:CloseDoc" || aURL.Complete == ".uno:CloseWin" )
diff --git a/framework/source/dispatch/mailtodispatcher.cxx b/framework/source/dispatch/mailtodispatcher.cxx
index 903e33ce695c..6555f3a885d5 100644
--- a/framework/source/dispatch/mailtodispatcher.cxx
+++ b/framework/source/dispatch/mailtodispatcher.cxx
@@ -31,7 +31,7 @@
#include <general.h>
#include <services.h>
-#include <com/sun/star/system/XSystemShellExecute.hpp>
+#include <com/sun/star/system/SystemShellExecute.hpp>
#include <com/sun/star/system/SystemShellExecuteFlags.hpp>
#include <com/sun/star/frame/DispatchResultState.hpp>
@@ -60,7 +60,7 @@ DEFINE_XTYPEPROVIDER_5(MailToDispatcher ,
css::frame::XNotifyingDispatch,
css::frame::XDispatch )
-DEFINE_XSERVICEINFO_MULTISERVICE(MailToDispatcher ,
+DEFINE_XSERVICEINFO_MULTISERVICE_2(MailToDispatcher ,
::cppu::OWeakObject ,
SERVICENAME_PROTOCOLHANDLER ,
IMPLEMENTATIONNAME_MAILTODISPATCHER)
@@ -81,15 +81,15 @@ DEFINE_INIT_SERVICE(MailToDispatcher,
@short standard ctor
@descr These initialize a new instance of ths class with needed informations for work.
- @param xFactory
+ @param rxContext
reference to uno servicemanager for creation of new services
*/
-MailToDispatcher::MailToDispatcher( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory )
+MailToDispatcher::MailToDispatcher( const css::uno::Reference< css::uno::XComponentContext >& rxContext )
// Init baseclasses first
: ThreadHelpBase( &Application::GetSolarMutex() )
, OWeakObject ( )
// Init member
- , m_xFactory ( xFactory )
+ , m_xContext ( rxContext )
{
}
@@ -101,7 +101,7 @@ MailToDispatcher::MailToDispatcher( const css::uno::Reference< css::lang::XMulti
*/
MailToDispatcher::~MailToDispatcher()
{
- m_xFactory = NULL;
+ m_xContext = NULL;
}
//_________________________________________________________________________________________________________________
@@ -228,29 +228,27 @@ sal_Bool MailToDispatcher::implts_dispatch( const css::util::URL&
{
sal_Bool bSuccess = sal_False;
- css::uno::Reference< css::lang::XMultiServiceFactory > xFactory;
+ css::uno::Reference< css::uno::XComponentContext > xContext;
/* SAFE */{
ReadGuard aReadLock( m_aLock );
- xFactory = m_xFactory;
+ xContext = m_xContext;
/* SAFE */}
- css::uno::Reference< css::system::XSystemShellExecute > xSystemShellExecute( xFactory->createInstance(SERVICENAME_SYSTEMSHELLEXECUTE), css::uno::UNO_QUERY );
- if (xSystemShellExecute.is())
+ css::uno::Reference< css::system::XSystemShellExecute > xSystemShellExecute = css::system::SystemShellExecute::create( xContext );
+
+ try
+ {
+ // start mail client
+ // Because there is no notofocation about success - we use case of
+ // no detected exception as SUCCESS - FAILED otherwhise.
+ xSystemShellExecute->execute( aURL.Complete, ::rtl::OUString(), css::system::SystemShellExecuteFlags::URIS_ONLY );
+ bSuccess = sal_True;
+ }
+ catch (const css::lang::IllegalArgumentException&)
+ {
+ }
+ catch (const css::system::SystemShellExecuteException&)
{
- try
- {
- // start mail client
- // Because there is no notofocation about success - we use case of
- // no detected exception as SUCCESS - FAILED otherwhise.
- xSystemShellExecute->execute( aURL.Complete, ::rtl::OUString(), css::system::SystemShellExecuteFlags::URIS_ONLY );
- bSuccess = sal_True;
- }
- catch (const css::lang::IllegalArgumentException&)
- {
- }
- catch (const css::system::SystemShellExecuteException&)
- {
- }
}
return bSuccess;
diff --git a/framework/source/dispatch/menudispatcher.cxx b/framework/source/dispatch/menudispatcher.cxx
index f5661d4ed4d7..f13af3d85765 100644
--- a/framework/source/dispatch/menudispatcher.cxx
+++ b/framework/source/dispatch/menudispatcher.cxx
@@ -33,7 +33,6 @@
#include <services.h>
#include <com/sun/star/frame/FrameSearchFlag.hpp>
-#include <com/sun/star/awt/XToolkit.hpp>
#include <com/sun/star/awt/WindowAttribute.hpp>
#include <com/sun/star/awt/WindowDescriptor.hpp>
#include <com/sun/star/awt/PosSize.hpp>
diff --git a/framework/source/dispatch/popupmenudispatcher.cxx b/framework/source/dispatch/popupmenudispatcher.cxx
index 9e7b210900fc..37132b424b6f 100644
--- a/framework/source/dispatch/popupmenudispatcher.cxx
+++ b/framework/source/dispatch/popupmenudispatcher.cxx
@@ -34,7 +34,6 @@
#include <properties.h>
#include <com/sun/star/frame/FrameSearchFlag.hpp>
-#include <com/sun/star/awt/XToolkit.hpp>
#include <com/sun/star/awt/WindowAttribute.hpp>
#include <com/sun/star/awt/WindowDescriptor.hpp>
#include <com/sun/star/awt/PosSize.hpp>
@@ -43,7 +42,9 @@
#include <com/sun/star/lang/WrappedTargetException.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XEnumeration.hpp>
+#include <com/sun/star/uri/UriReferenceFactory.hpp>
+#include <comphelper/componentcontext.hxx>
#include <ucbhelper/content.hxx>
#include <osl/mutex.hxx>
#include <rtl/ustrbuf.hxx>
@@ -70,12 +71,12 @@ const sal_Int32 PROTOCOL_LENGTH = 19;
// constructor
//*****************************************************************************************************************
PopupMenuDispatcher::PopupMenuDispatcher(
- const uno::Reference< XMultiServiceFactory >& xFactory )
+ const uno::Reference< XComponentContext >& xContext )
// Init baseclasses first
: ThreadHelpBase ( &Application::GetSolarMutex() )
, OWeakObject ( )
// Init member
- , m_xFactory ( xFactory )
+ , m_xContext ( xContext )
, m_aListenerContainer ( m_aLock.getShareableOslMutex() )
, m_bAlreadyDisposed ( sal_False )
, m_bActivateListener ( sal_False )
@@ -116,10 +117,61 @@ DEFINE_XTYPEPROVIDER_7 ( PopupMenuDispatcher ,
XFrameActionListener
)
-DEFINE_XSERVICEINFO_MULTISERVICE( PopupMenuDispatcher ,
- ::cppu::OWeakObject ,
- SERVICENAME_PROTOCOLHANDLER ,
- IMPLEMENTATIONNAME_POPUPMENUDISPATCHER )
+::rtl::OUString SAL_CALL PopupMenuDispatcher::getImplementationName() throw( css::uno::RuntimeException )
+{
+ return impl_getStaticImplementationName();
+}
+
+sal_Bool SAL_CALL PopupMenuDispatcher::supportsService( const ::rtl::OUString& sServiceName )
+ throw( css::uno::RuntimeException )
+{
+ return ::comphelper::findValue(getSupportedServiceNames(), sServiceName, sal_True).getLength() != 0;
+}
+
+css::uno::Sequence< ::rtl::OUString > SAL_CALL PopupMenuDispatcher::getSupportedServiceNames()
+ throw( css::uno::RuntimeException )
+{
+ return impl_getStaticSupportedServiceNames();
+}
+
+css::uno::Sequence< ::rtl::OUString > PopupMenuDispatcher::impl_getStaticSupportedServiceNames()
+{
+ css::uno::Sequence< ::rtl::OUString > seqServiceNames( 1 );
+ seqServiceNames.getArray() [0] = SERVICENAME_PROTOCOLHANDLER;
+ return seqServiceNames;
+}
+
+::rtl::OUString PopupMenuDispatcher::impl_getStaticImplementationName()
+{
+ return IMPLEMENTATIONNAME_POPUPMENUDISPATCHER;
+}
+
+css::uno::Reference< css::uno::XInterface >
+SAL_CALL PopupMenuDispatcher::impl_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager )
+throw( css::uno::Exception )
+{
+ RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework","Ocke.Janssen@sun.com",U2B(IMPLEMENTATIONNAME_POPUPMENUDISPATCHER).getStr());
+ /* create new instance of service */
+ PopupMenuDispatcher* pClass = new PopupMenuDispatcher( comphelper::getComponentContext(xServiceManager) );
+ /* hold it alive by increasing his ref count!!! */
+ css::uno::Reference< css::uno::XInterface > xService( static_cast< ::cppu::OWeakObject* >(pClass), css::uno::UNO_QUERY );
+ /* initialize new service instance ... he can use his own refcount ... we hold it! */
+ pClass->impl_initService();
+ /* return new created service as reference */
+ return xService;
+}
+
+css::uno::Reference< css::lang::XSingleServiceFactory >
+PopupMenuDispatcher::impl_createFactory( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager )
+{
+ css::uno::Reference< css::lang::XSingleServiceFactory > xReturn (
+ cppu::createSingleFactory ( xServiceManager,
+ PopupMenuDispatcher::impl_getStaticImplementationName() ,
+ PopupMenuDispatcher::impl_createInstance ,
+ PopupMenuDispatcher::impl_getStaticSupportedServiceNames() )
+ );
+ return xReturn;
+}
DEFINE_INIT_SERVICE(PopupMenuDispatcher,
{
@@ -333,7 +385,7 @@ SAL_CALL PopupMenuDispatcher::disposing( const EventObject& ) throw( RuntimeExce
}
// Forget our factory.
- m_xFactory = uno::Reference< XMultiServiceFactory >();
+ m_xContext = uno::Reference< XComponentContext >();
}
}
@@ -379,13 +431,7 @@ void PopupMenuDispatcher::impl_CreateUriRefFactory()
{
if ( !m_xUriRefFactory.is() )
{
- rtl::OUString aUriRefFactoryService(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.uri.UriReferenceFactory" ));
-
- m_xUriRefFactory = css::uno::Reference< css::uri::XUriReferenceFactory >(
- m_xFactory->createInstance( aUriRefFactoryService ),
- css::uno::UNO_QUERY);
-
+ m_xUriRefFactory = css::uri::UriReferenceFactory::create( m_xContext );
}
}
diff --git a/framework/source/dispatch/systemexec.cxx b/framework/source/dispatch/systemexec.cxx
index 4d67609b1406..1934552af98e 100644
--- a/framework/source/dispatch/systemexec.cxx
+++ b/framework/source/dispatch/systemexec.cxx
@@ -31,7 +31,7 @@
#include <general.h>
#include <services.h>
-#include <com/sun/star/system/XSystemShellExecute.hpp>
+#include <com/sun/star/system/SystemShellExecute.hpp>
#include <com/sun/star/util/PathSubstitution.hpp>
#include <com/sun/star/util/XStringSubstitution.hpp>
#include <com/sun/star/system/SystemShellExecuteFlags.hpp>
@@ -63,7 +63,7 @@ DEFINE_XTYPEPROVIDER_5(SystemExec ,
css::frame::XNotifyingDispatch,
css::frame::XDispatch )
-DEFINE_XSERVICEINFO_MULTISERVICE(SystemExec ,
+DEFINE_XSERVICEINFO_MULTISERVICE_2(SystemExec ,
::cppu::OWeakObject ,
SERVICENAME_PROTOCOLHANDLER ,
IMPLEMENTATIONNAME_SYSTEMEXEC)
@@ -80,12 +80,12 @@ DEFINE_INIT_SERVICE(SystemExec,
//_________________________________________________________________________________________________________________
-SystemExec::SystemExec( const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory )
+SystemExec::SystemExec( const css::uno::Reference< css::uno::XComponentContext >& rxContext )
// Init baseclasses first
: ThreadHelpBase( &Application::GetSolarMutex() )
, OWeakObject ( )
// Init member
- , m_xFactory ( xFactory )
+ , m_xContext ( rxContext )
{
}
@@ -93,7 +93,7 @@ SystemExec::SystemExec( const css::uno::Reference< css::lang::XMultiServiceFacto
SystemExec::~SystemExec()
{
- m_xFactory = NULL;
+ m_xContext = NULL;
}
//_________________________________________________________________________________________________________________
@@ -149,7 +149,7 @@ void SAL_CALL SystemExec::dispatchWithNotification( const css::util::URL&
// SAFE ->
ReadGuard aReadLock(m_aLock);
- css::uno::Reference< css::lang::XMultiServiceFactory > xFactory = m_xFactory;
+ css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
aReadLock.unlock();
// <- SAFE
@@ -157,14 +157,11 @@ void SAL_CALL SystemExec::dispatchWithNotification( const css::util::URL&
try
{
- css::uno::Reference< css::uno::XComponentContext > xContext( comphelper::getComponentContext(xFactory) );
css::uno::Reference< css::util::XStringSubstitution > xPathSubst( css::util::PathSubstitution::create(xContext) );
::rtl::OUString sSystemURL = xPathSubst->substituteVariables(sSystemURLWithVariables, sal_True); // sal_True force an exception if unknown variables exists !
- css::uno::Reference< css::system::XSystemShellExecute > xShell(
- xFactory->createInstance(SERVICENAME_SYSTEMSHELLEXECUTE),
- css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::system::XSystemShellExecute > xShell = css::system::SystemShellExecute::create( xContext );
xShell->execute(sSystemURL, ::rtl::OUString(), css::system::SystemShellExecuteFlags::URIS_ONLY);
impl_notifyResultListener(xListener, css::frame::DispatchResultState::SUCCESS);
diff --git a/framework/source/fwe/classes/framelistanalyzer.cxx b/framework/source/fwe/classes/framelistanalyzer.cxx
index 5aee045c1de8..e22af2127f5f 100644
--- a/framework/source/fwe/classes/framelistanalyzer.cxx
+++ b/framework/source/fwe/classes/framelistanalyzer.cxx
@@ -36,7 +36,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <comphelper/processfactory.hxx>
#include <vcl/svapp.hxx>
@@ -132,10 +132,10 @@ void FrameListAnalyzer::impl_analyze()
{
try
{
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = ::comphelper::getProcessServiceFactory();
- css::uno::Reference< css::frame::XModuleManager > xModuleMgr(xSMGR->createInstance(SERVICENAME_MODULEMANAGER), css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::uno::XComponentContext > xContext = ::comphelper::getProcessComponentContext();
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleMgr = css::frame::ModuleManager::create(xContext);
::rtl::OUString sModule = xModuleMgr->identify(m_xReferenceFrame);
- m_bReferenceIsBacking = (sModule.equals(SERVICENAME_STARTMODULE));
+ m_bReferenceIsBacking = sModule.equals(SERVICENAME_STARTMODULE);
}
catch(const css::frame::UnknownModuleException&)
{
@@ -207,8 +207,8 @@ void FrameListAnalyzer::impl_analyze()
{
try
{
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = ::comphelper::getProcessServiceFactory();
- css::uno::Reference< css::frame::XModuleManager > xModuleMgr(xSMGR->createInstance(SERVICENAME_MODULEMANAGER), css::uno::UNO_QUERY);
+ css::uno::Reference< css::uno::XComponentContext > xContext = ::comphelper::getProcessComponentContext();
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleMgr = css::frame::ModuleManager::create(xContext);
::rtl::OUString sModule = xModuleMgr->identify(xFrame);
if (sModule.equals(SERVICENAME_STARTMODULE))
{
diff --git a/framework/source/fwe/helper/titlehelper.cxx b/framework/source/fwe/helper/titlehelper.cxx
index 1782d3404a86..03aedbde529e 100644
--- a/framework/source/fwe/helper/titlehelper.cxx
+++ b/framework/source/fwe/helper/titlehelper.cxx
@@ -32,7 +32,7 @@
#include <com/sun/star/frame/UntitledNumbersConst.hpp>
#include <com/sun/star/frame/XStorable.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/document/XEventBroadcaster.hpp>
#include <com/sun/star/beans/XMaterialHolder.hpp>
@@ -50,9 +50,9 @@ namespace framework{
namespace css = ::com::sun::star;
//-----------------------------------------------
-TitleHelper::TitleHelper(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR)
+TitleHelper::TitleHelper(const css::uno::Reference< css::uno::XComponentContext >& rxContext)
: ::cppu::BaseMutex ()
- , m_xSMGR (xSMGR)
+ , m_xContext (rxContext)
, m_xOwner ()
, m_xUntitledNumbers()
, m_xSubTitle ()
@@ -558,24 +558,19 @@ void TitleHelper::impl_appendModuleName (::rtl::OUStringBuffer& sTitle)
// SYNCHRONIZED ->
::osl::ResettableMutexGuard aLock(m_aMutex);
- css::uno::Reference< css::uno::XInterface > xOwner = m_xOwner.get();
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
+ css::uno::Reference< css::uno::XInterface > xOwner = m_xOwner.get();
+ css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
aLock.clear ();
// <- SYNCHRONIZED
try
{
- css::uno::Reference< css::frame::XModuleManager > xModuleManager(
- xSMGR->createInstance(SERVICENAME_MODULEMANAGER),
- css::uno::UNO_QUERY_THROW);
-
- css::uno::Reference< css::container::XNameAccess > xConfig(
- xModuleManager,
- css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleManager =
+ css::frame::ModuleManager::create(xContext);
const ::rtl::OUString sID = xModuleManager->identify(xOwner);
- ::comphelper::SequenceAsHashMap lProps = xConfig->getByName (sID);
+ ::comphelper::SequenceAsHashMap lProps = xModuleManager->getByName (sID);
const ::rtl::OUString sUIName = lProps.getUnpackedValueOrDefault (OFFICEFACTORY_PROPNAME_UINAME, ::rtl::OUString());
// An UIname property is an optional value !
diff --git a/framework/source/fwe/xml/menuconfiguration.cxx b/framework/source/fwe/xml/menuconfiguration.cxx
index c47e52d226aa..e5a59220ae61 100644
--- a/framework/source/fwe/xml/menuconfiguration.cxx
+++ b/framework/source/fwe/xml/menuconfiguration.cxx
@@ -37,6 +37,7 @@
#include <uielement/rootitemcontainer.hxx>
#include <com/sun/star/xml/sax/Parser.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <comphelper/processfactory.hxx>
@@ -129,17 +130,13 @@ void MenuConfiguration::StoreMenuBarConfigurationToXML(
Reference< XOutputStream >& rOutputStream )
throw ( WrappedTargetException )
{
- Reference< XDocumentHandler > xWriter;
-
- xWriter = Reference< XDocumentHandler >( m_rxServiceManager->createInstance(
- SERVICENAME_SAXWRITER), UNO_QUERY) ;
-
- Reference< XActiveDataSource> xDataSource( xWriter , UNO_QUERY );
- xDataSource->setOutputStream( rOutputStream );
+ Reference< XWriter > xWriter = Writer::create(comphelper::getComponentContext(m_rxServiceManager));
+ xWriter->setOutputStream( rOutputStream );
try
{
- OWriteMenuDocumentHandler aWriteMenuDocumentHandler( rMenuBarConfiguration, xWriter );
+ Reference< XDocumentHandler > xHandler(xWriter, UNO_QUERY_THROW);
+ OWriteMenuDocumentHandler aWriteMenuDocumentHandler( rMenuBarConfiguration, xHandler );
aWriteMenuDocumentHandler.WriteMenuDocument();
}
catch ( const RuntimeException& e )
diff --git a/framework/source/fwe/xml/statusbarconfiguration.cxx b/framework/source/fwe/xml/statusbarconfiguration.cxx
index 2b24554f4485..521ad095eb6e 100644
--- a/framework/source/fwe/xml/statusbarconfiguration.cxx
+++ b/framework/source/fwe/xml/statusbarconfiguration.cxx
@@ -33,6 +33,7 @@
#include <services.h>
#include <com/sun/star/xml/sax/Parser.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -50,26 +51,12 @@ using namespace ::com::sun::star::container;
namespace framework
{
-static Reference< XParser > GetSaxParser(
- const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& xContext
- )
-{
- return Parser::create( xContext );
-}
-
-static Reference< XDocumentHandler > GetSaxWriter(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory
- )
-{
- return Reference< XDocumentHandler >( xServiceFactory->createInstance( SERVICENAME_SAXWRITER), UNO_QUERY) ;
-}
-
sal_Bool StatusBarConfiguration::LoadStatusBar(
const Reference< XComponentContext >& rxContext,
const Reference< XInputStream >& xInputStream,
const Reference< XIndexContainer >& rStatusbarConfiguration )
{
- Reference< XParser > xParser( GetSaxParser( rxContext ) );
+ Reference< XParser > xParser = Parser::create(rxContext);
// connect stream to input stream to the parser
InputSource aInputSource;
@@ -102,17 +89,17 @@ sal_Bool StatusBarConfiguration::LoadStatusBar(
}
sal_Bool StatusBarConfiguration::StoreStatusBar(
- const Reference< XMultiServiceFactory >& xServiceFactory,
+ const Reference< XComponentContext >& rxContext,
const Reference< XOutputStream >& xOutputStream,
const Reference< XIndexAccess >& rStatusbarConfiguration )
{
- Reference< XDocumentHandler > xWriter( GetSaxWriter( xServiceFactory ) );
- Reference< ::com::sun::star::io::XActiveDataSource> xDataSource( xWriter , UNO_QUERY );
- xDataSource->setOutputStream( xOutputStream );
+ Reference< XWriter > xWriter = Writer::create( rxContext );
+ xWriter->setOutputStream( xOutputStream );
try
{
- OWriteStatusBarDocumentHandler aWriteStatusBarDocumentHandler( rStatusbarConfiguration, xWriter );
+ Reference< XDocumentHandler > xHandler(xWriter, UNO_QUERY_THROW);
+ OWriteStatusBarDocumentHandler aWriteStatusBarDocumentHandler( rStatusbarConfiguration, xHandler );
aWriteStatusBarDocumentHandler.WriteStatusBarDocument();
return sal_True;
}
diff --git a/framework/source/fwe/xml/toolboxconfiguration.cxx b/framework/source/fwe/xml/toolboxconfiguration.cxx
index dcc7d48d1c51..1fe48cb7b06e 100644
--- a/framework/source/fwe/xml/toolboxconfiguration.cxx
+++ b/framework/source/fwe/xml/toolboxconfiguration.cxx
@@ -33,6 +33,7 @@
#include <services.h>
#include <com/sun/star/xml/sax/Parser.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -50,26 +51,12 @@ using namespace ::com::sun::star::container;
namespace framework
{
-static Reference< XParser > GetSaxParser(
- const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext
- )
-{
- return Parser::create(rxContext);
-}
-
-static Reference< XDocumentHandler > GetSaxWriter(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory
- )
-{
- return Reference< XDocumentHandler >( xServiceFactory->createInstance( SERVICENAME_SAXWRITER), UNO_QUERY) ;
-}
-
sal_Bool ToolBoxConfiguration::LoadToolBox(
const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream >& rInputStream,
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexContainer >& rToolbarConfiguration )
{
- Reference< XParser > xParser( GetSaxParser( rxContext ) );
+ Reference< XParser > xParser = Parser::create(rxContext);
// connect stream to input stream to the parser
InputSource aInputSource;
@@ -104,18 +91,17 @@ sal_Bool ToolBoxConfiguration::LoadToolBox(
sal_Bool ToolBoxConfiguration::StoreToolBox(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& rOutputStream,
const ::com::sun::star::uno::Reference< ::com::sun::star::container::XIndexAccess >& rToolbarConfiguration )
{
- Reference< XDocumentHandler > xWriter( GetSaxWriter( xServiceFactory ) );
-
- Reference< ::com::sun::star::io::XActiveDataSource> xDataSource( xWriter , UNO_QUERY );
- xDataSource->setOutputStream( rOutputStream );
+ Reference< XWriter > xWriter = Writer::create(rxContext);
+ xWriter->setOutputStream( rOutputStream );
try
{
- OWriteToolBoxDocumentHandler aWriteToolBoxDocumentHandler( rToolbarConfiguration, xWriter );
+ Reference< XDocumentHandler > xHandler( xWriter, UNO_QUERY_THROW );
+ OWriteToolBoxDocumentHandler aWriteToolBoxDocumentHandler( rToolbarConfiguration, xHandler );
aWriteToolBoxDocumentHandler.WriteToolBoxDocument();
return sal_True;
}
diff --git a/framework/source/fwi/helper/mischelper.cxx b/framework/source/fwi/helper/mischelper.cxx
index 3964826af56c..1706bd1e0863 100644
--- a/framework/source/fwi/helper/mischelper.cxx
+++ b/framework/source/fwi/helper/mischelper.cxx
@@ -29,7 +29,7 @@
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/document/XDocumentLanguages.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <tools/debug.hxx>
@@ -94,7 +94,7 @@ uno::Reference< linguistic2::XLanguageGuessing > LanguageGuessingHelper::GetGues
if ( !_rIni )
{
_rIni = sal_True;
- Reference< XModuleManager > xModuleManager( _xServiceFactory->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(_xServiceFactory) );
try
{
diff --git a/framework/source/fwi/jobs/configaccess.cxx b/framework/source/fwi/jobs/configaccess.cxx
index 1e23ed32e243..14d6e762b64c 100644
--- a/framework/source/fwi/jobs/configaccess.cxx
+++ b/framework/source/fwi/jobs/configaccess.cxx
@@ -35,6 +35,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/XMultiHierarchicalPropertySet.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/util/XChangesBatch.hpp>
@@ -55,10 +56,10 @@ namespace framework{
@param eMode
force opening of the configuration access in readonly or in read/write mode
*/
-ConfigAccess::ConfigAccess( /*IN*/ const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- /*IN*/ const ::rtl::OUString& sRoot )
+ConfigAccess::ConfigAccess( /*IN*/ const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ /*IN*/ const ::rtl::OUString& sRoot )
: ThreadHelpBase( )
- , m_xSMGR ( xSMGR )
+ , m_xContext ( rxContext)
, m_sRoot ( sRoot )
, m_eMode ( E_CLOSED )
{
@@ -129,35 +130,32 @@ void ConfigAccess::open( /*IN*/ EOpenMode eMode )
close();
// create the configuration provider, which provides sub access points
- css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider(m_xSMGR->createInstance(SERVICENAME_CFGPROVIDER), css::uno::UNO_QUERY);
- if (xConfigProvider.is())
+ css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider = css::configuration::theDefaultProvider::get(m_xContext);
+ css::beans::PropertyValue aParam;
+ aParam.Name = DECLARE_ASCII("nodepath");
+ aParam.Value <<= m_sRoot;
+
+ css::uno::Sequence< css::uno::Any > lParams(1);
+ lParams[0] <<= aParam;
+
+ // open it
+ try
{
- css::beans::PropertyValue aParam;
- aParam.Name = DECLARE_ASCII("nodepath");
- aParam.Value <<= m_sRoot;
-
- css::uno::Sequence< css::uno::Any > lParams(1);
- lParams[0] <<= aParam;
-
- // open it
- try
- {
- if (eMode==E_READONLY)
- m_xConfig = xConfigProvider->createInstanceWithArguments(SERVICENAME_CFGREADACCESS , lParams);
- else
- if (eMode==E_READWRITE)
- m_xConfig = xConfigProvider->createInstanceWithArguments(SERVICENAME_CFGUPDATEACCESS, lParams);
- }
- catch(const css::uno::Exception& ex)
- {
- (void) ex; // avoid warning
- LOG_WARNING("open config ...", U2B(ex.Message))
- }
-
- m_eMode = E_CLOSED;
- if (m_xConfig.is())
- m_eMode = eMode;
+ if (eMode==E_READONLY)
+ m_xConfig = xConfigProvider->createInstanceWithArguments(SERVICENAME_CFGREADACCESS , lParams);
+ else
+ if (eMode==E_READWRITE)
+ m_xConfig = xConfigProvider->createInstanceWithArguments(SERVICENAME_CFGUPDATEACCESS, lParams);
}
+ catch(const css::uno::Exception& ex)
+ {
+ (void) ex; // avoid warning
+ LOG_WARNING("open config ...", U2B(ex.Message))
+ }
+
+ m_eMode = E_CLOSED;
+ if (m_xConfig.is())
+ m_eMode = eMode;
}
aWriteLock.unlock();
diff --git a/framework/source/helper/persistentwindowstate.cxx b/framework/source/helper/persistentwindowstate.cxx
index 206deaa1187b..26d6c2d121fe 100644
--- a/framework/source/helper/persistentwindowstate.cxx
+++ b/framework/source/helper/persistentwindowstate.cxx
@@ -37,8 +37,9 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/lang/IllegalArgumentException.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
+#include <comphelper/processfactory.hxx>
#include <comphelper/configurationhelper.hxx>
#include <vcl/window.hxx>
#include <vcl/syswin.hxx>
@@ -118,7 +119,7 @@ void SAL_CALL PersistentWindowState::frameAction(const css::frame::FrameActionEv
{
// SAFE -> ----------------------------------
ReadGuard aReadLock(m_aLock);
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR ;
+ css::uno::Reference< css::uno::XComponentContext > xContext = comphelper::getComponentContext(m_xSMGR);
css::uno::Reference< css::frame::XFrame > xFrame(m_xFrame.get(), css::uno::UNO_QUERY);
sal_Bool bRestoreWindowState = !m_bWindowStateAlreadySet;
aReadLock.unlock();
@@ -134,7 +135,7 @@ void SAL_CALL PersistentWindowState::frameAction(const css::frame::FrameActionEv
return;
// unknown module -> no configuration available!
- ::rtl::OUString sModuleName = PersistentWindowState::implst_identifyModule(xSMGR, xFrame);
+ ::rtl::OUString sModuleName = PersistentWindowState::implst_identifyModule(xContext, xFrame);
if (sModuleName.isEmpty())
return;
@@ -144,7 +145,7 @@ void SAL_CALL PersistentWindowState::frameAction(const css::frame::FrameActionEv
{
if (bRestoreWindowState)
{
- ::rtl::OUString sWindowState = PersistentWindowState::implst_getWindowStateFromConfig(xSMGR, sModuleName);
+ ::rtl::OUString sWindowState = PersistentWindowState::implst_getWindowStateFromConfig(xContext, sModuleName);
PersistentWindowState::implst_setWindowStateOnWindow(xWindow,sWindowState);
// SAFE -> ----------------------------------
WriteGuard aWriteLock(m_aLock);
@@ -165,7 +166,7 @@ void SAL_CALL PersistentWindowState::frameAction(const css::frame::FrameActionEv
case css::frame::FrameAction_COMPONENT_DETACHING :
{
::rtl::OUString sWindowState = PersistentWindowState::implst_getWindowStateFromWindow(xWindow);
- PersistentWindowState::implst_setWindowStateOnConfig(xSMGR, sModuleName, sWindowState);
+ PersistentWindowState::implst_setWindowStateOnConfig(xContext, sModuleName, sWindowState);
}
break;
default:
@@ -181,14 +182,13 @@ void SAL_CALL PersistentWindowState::disposing(const css::lang::EventObject&)
}
//*****************************************************************************************************************
-::rtl::OUString PersistentWindowState::implst_identifyModule(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
+::rtl::OUString PersistentWindowState::implst_identifyModule(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const css::uno::Reference< css::frame::XFrame >& xFrame)
{
::rtl::OUString sModuleName;
- css::uno::Reference< css::frame::XModuleManager > xModuleManager(
- xSMGR->createInstance(SERVICENAME_MODULEMANAGER),
- css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleManager =
+ css::frame::ModuleManager::create( rxContext );
try
{
@@ -203,8 +203,8 @@ void SAL_CALL PersistentWindowState::disposing(const css::lang::EventObject&)
}
//*****************************************************************************************************************
-::rtl::OUString PersistentWindowState::implst_getWindowStateFromConfig(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const ::rtl::OUString& sModuleName)
+::rtl::OUString PersistentWindowState::implst_getWindowStateFromConfig(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sModuleName)
{
::rtl::OUString sWindowState;
@@ -219,7 +219,7 @@ void SAL_CALL PersistentWindowState::disposing(const css::lang::EventObject&)
try
{
- ::comphelper::ConfigurationHelper::readDirectKey(xSMGR,
+ ::comphelper::ConfigurationHelper::readDirectKey(rxContext,
sPackage,
sRelPath,
sKey,
@@ -234,9 +234,9 @@ void SAL_CALL PersistentWindowState::disposing(const css::lang::EventObject&)
}
//*****************************************************************************************************************
-void PersistentWindowState::implst_setWindowStateOnConfig(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const ::rtl::OUString& sModuleName ,
- const ::rtl::OUString& sWindowState)
+void PersistentWindowState::implst_setWindowStateOnConfig(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sModuleName ,
+ const ::rtl::OUString& sWindowState)
{
::rtl::OUStringBuffer sRelPathBuf(256);
sRelPathBuf.appendAscii("Office/Factories/*[\"");
@@ -249,7 +249,7 @@ void PersistentWindowState::implst_setWindowStateOnConfig(const css::uno::Refere
try
{
- ::comphelper::ConfigurationHelper::writeDirectKey(xSMGR,
+ ::comphelper::ConfigurationHelper::writeDirectKey(rxContext,
sPackage,
sRelPath,
sKey,
diff --git a/framework/source/helper/statusindicatorfactory.cxx b/framework/source/helper/statusindicatorfactory.cxx
index c24aabf68113..5a1ba9d822a9 100644
--- a/framework/source/helper/statusindicatorfactory.cxx
+++ b/framework/source/helper/statusindicatorfactory.cxx
@@ -420,7 +420,7 @@ void StatusIndicatorFactory::implts_makeParentVisibleIfAllowed()
{
bool bForceFrontAndFocus(false);
::comphelper::ConfigurationHelper::readDirectKey(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
::rtl::OUString("org.openoffice.Office.Common/View"),
::rtl::OUString("NewDocumentHandling"),
::rtl::OUString("ForceFocusAndToFront"),
@@ -452,8 +452,7 @@ void StatusIndicatorFactory::impl_createProgress()
VCLStatusIndicator* pVCLProgress = new VCLStatusIndicator(xSMGR, xWindow);
xProgress = css::uno::Reference< css::task::XStatusIndicator >(static_cast< css::task::XStatusIndicator* >(pVCLProgress), css::uno::UNO_QUERY);
}
- else
- if (xFrame.is())
+ else if (xFrame.is())
{
// use frame layouted progress implementation
css::uno::Reference< css::beans::XPropertySet > xPropSet(xFrame, css::uno::UNO_QUERY);
diff --git a/framework/source/helper/titlebarupdate.cxx b/framework/source/helper/titlebarupdate.cxx
index 2264a82ed545..9e702b002fb1 100644
--- a/framework/source/helper/titlebarupdate.cxx
+++ b/framework/source/helper/titlebarupdate.cxx
@@ -38,13 +38,14 @@
#include <com/sun/star/awt/XWindow.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/lang/IllegalArgumentException.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/XMaterialHolder.hpp>
#include <com/sun/star/frame/XTitleChangeBroadcaster.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
+#include <comphelper/processfactory.hxx>
#include <comphelper/sequenceashashmap.hxx>
#include <unotools/configmgr.hxx>
#include <unotools/bootstrap.hxx>
@@ -175,13 +176,8 @@ void TitleBarUpdate::impl_updateApplicationID(const css::uno::Reference< css::fr
aReadLock.unlock();
// <- SYNCHRONIZED
- css::uno::Reference< css::frame::XModuleManager > xModuleManager(
- xSMGR->createInstance(SERVICENAME_MODULEMANAGER),
- css::uno::UNO_QUERY_THROW);
-
- css::uno::Reference< css::container::XNameAccess > xConfig(
- xModuleManager,
- css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleManager =
+ css::frame::ModuleManager::create( comphelper::getComponentContext(xSMGR) );
rtl::OUString aModuleId = xModuleManager->identify(xFrame);
rtl::OUString sDesktopName;
@@ -248,16 +244,11 @@ void TitleBarUpdate::impl_updateApplicationID(const css::uno::Reference< css::fr
try
{
- css::uno::Reference< css::frame::XModuleManager > xModuleManager(
- xSMGR->createInstance(SERVICENAME_MODULEMANAGER),
- css::uno::UNO_QUERY_THROW);
-
- css::uno::Reference< css::container::XNameAccess > xConfig(
- xModuleManager,
- css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleManager =
+ css::frame::ModuleManager::create( comphelper::getComponentContext(xSMGR) );
- rInfo.sID = xModuleManager->identify(xFrame);
- ::comphelper::SequenceAsHashMap lProps = xConfig->getByName (rInfo.sID);
+ rInfo.sID = xModuleManager->identify(xFrame);
+ ::comphelper::SequenceAsHashMap lProps = xModuleManager->getByName (rInfo.sID);
rInfo.sUIName = lProps.getUnpackedValueOrDefault (OFFICEFACTORY_PROPNAME_UINAME, ::rtl::OUString());
rInfo.nIcon = lProps.getUnpackedValueOrDefault (OFFICEFACTORY_PROPNAME_ICON , INVALID_ICON_ID );
diff --git a/framework/source/inc/pattern/configuration.hxx b/framework/source/inc/pattern/configuration.hxx
index f39d5922328b..3b346a3693f3 100644
--- a/framework/source/inc/pattern/configuration.hxx
+++ b/framework/source/inc/pattern/configuration.hxx
@@ -36,6 +36,7 @@
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/beans/PropertyValue.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/uno/XInterface.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -80,7 +81,7 @@ class ConfigurationHelper
@descr TODO
- @param xSMGR
+ @param rxContext
this method need an uno service manager for internal work.
@param sPackage
@@ -100,7 +101,7 @@ class ConfigurationHelper
force opening of the configuration access in special mode.
see enum EOpenMode for further informations.
*/
- static css::uno::Reference< css::uno::XInterface > openConfig(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
+ static css::uno::Reference< css::uno::XInterface > openConfig(const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const ::rtl::OUString& sPackage ,
const ::rtl::OUString& sRelPath ,
sal_Int32 nOpenFlags)
@@ -109,8 +110,8 @@ class ConfigurationHelper
try
{
- css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider(
- xSMGR->createInstance(SERVICENAME_CFGPROVIDER), css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider =
+ css::configuration::theDefaultProvider::get( rxContext );
::rtl::OUStringBuffer sPath(1024);
sPath.append(sPackage );
diff --git a/framework/source/jobs/helponstartup.cxx b/framework/source/jobs/helponstartup.cxx
index 017cc4a140d9..a803db41a62b 100644
--- a/framework/source/jobs/helponstartup.cxx
+++ b/framework/source/jobs/helponstartup.cxx
@@ -46,6 +46,7 @@
//_______________________________________________
// include interfaces
#include <com/sun/star/frame/FrameSearchFlag.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XFramesSupplier.hpp>
#include <com/sun/star/frame/XDesktop.hpp>
@@ -90,9 +91,8 @@ DEFINE_INIT_SERVICE(HelpOnStartup,
see macro DEFINE_XSERVICEINFO_MULTISERVICE and "impl_initService()" for further informations!
*/
// create some needed uno services and cache it
- m_xModuleManager = css::uno::Reference< css::frame::XModuleManager >(
- m_xSMGR->createInstance(SERVICENAME_MODULEMANAGER),
- css::uno::UNO_QUERY_THROW);
+ css::uno::Reference<css::uno::XComponentContext> xContext = comphelper::getComponentContext(m_xSMGR);
+ m_xModuleManager = css::frame::ModuleManager::create( xContext );
m_xDesktop = css::uno::Reference< css::frame::XFrame >(
m_xSMGR->createInstance(SERVICENAME_DESKTOP),
@@ -100,14 +100,14 @@ DEFINE_INIT_SERVICE(HelpOnStartup,
m_xConfig = css::uno::Reference< css::container::XNameAccess >(
::comphelper::ConfigurationHelper::openConfig(
- m_xSMGR,
+ xContext,
CFG_PACKAGE_MODULES,
::comphelper::ConfigurationHelper::E_READONLY),
css::uno::UNO_QUERY_THROW);
// ask for office locale
::comphelper::ConfigurationHelper::readDirectKey(
- m_xSMGR,
+ xContext,
CFG_PACKAGE_SETUP,
CFG_PATH_L10N,
CFG_KEY_LOCALE,
@@ -115,7 +115,7 @@ DEFINE_INIT_SERVICE(HelpOnStartup,
// detect system
::comphelper::ConfigurationHelper::readDirectKey(
- m_xSMGR,
+ xContext,
CFG_PACKAGE_COMMON,
CFG_PATH_HELP,
CFG_KEY_HELPSYSTEM,
@@ -252,13 +252,10 @@ void SAL_CALL HelpOnStartup::disposing(const css::lang::EventObject& aEvent)
// Classify it.
// SAFE ->
ResetableGuard aLock(m_aLock);
- css::uno::Reference< css::frame::XModuleManager > xModuleManager = m_xModuleManager;
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleManager = m_xModuleManager;
aLock.unlock();
// <- SAFE
- if (!xModuleManager.is())
- return ::rtl::OUString();
-
::rtl::OUString sModuleId;
try
{
diff --git a/framework/source/jobs/job.cxx b/framework/source/jobs/job.cxx
index cc881a4d424d..4c6bfee6f01f 100644
--- a/framework/source/jobs/job.cxx
+++ b/framework/source/jobs/job.cxx
@@ -38,6 +38,7 @@
#include <com/sun/star/util/XCloseable.hpp>
#include <com/sun/star/lang/DisposedException.hpp>
+#include <comphelper/processfactory.hxx>
#include <rtl/ustrbuf.hxx>
#include <vcl/svapp.hxx>
@@ -76,7 +77,7 @@ Job::Job( /*IN*/ const css::uno::Reference< css::lang::XMultiServiceFactory >& x
/*IN*/ const css::uno::Reference< css::frame::XFrame >& xFrame )
: ThreadHelpBase (&Application::GetSolarMutex())
, ::cppu::OWeakObject ( )
- , m_aJobCfg (xSMGR )
+ , m_aJobCfg (comphelper::getComponentContext(xSMGR))
, m_xSMGR (xSMGR )
, m_xFrame (xFrame )
, m_bListenOnDesktop (sal_False )
@@ -106,7 +107,7 @@ Job::Job( /*IN*/ const css::uno::Reference< css::lang::XMultiServiceFactory >& x
/*IN*/ const css::uno::Reference< css::frame::XModel >& xModel )
: ThreadHelpBase (&Application::GetSolarMutex())
, ::cppu::OWeakObject ( )
- , m_aJobCfg (xSMGR )
+ , m_aJobCfg (comphelper::getComponentContext(xSMGR))
, m_xSMGR (xSMGR )
, m_xModel (xModel )
, m_bListenOnDesktop (sal_False )
diff --git a/framework/source/jobs/jobdata.cxx b/framework/source/jobs/jobdata.cxx
index 6195d0c18b31..fe1b1bd4e895 100644
--- a/framework/source/jobs/jobdata.cxx
+++ b/framework/source/jobs/jobdata.cxx
@@ -79,12 +79,12 @@ const sal_Char* JobData::PROP_CONTEXT = "Context"
But for real working it's neccessary to call setAlias() or setService() later.
Because we need the job data ...
- @param xSMGR
+ @param rxContext
reference to the uno service manager
*/
-JobData::JobData( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR )
+JobData::JobData( const css::uno::Reference< css::uno::XComponentContext >& rxContext )
: ThreadHelpBase(&Application::GetSolarMutex())
- , m_xSMGR (xSMGR )
+ , m_xContext (rxContext )
{
// share code for member initialization with defaults!
impl_reset();
@@ -170,7 +170,7 @@ void JobData::setAlias( const ::rtl::OUString& sAlias )
::rtl::OUString sKey(::rtl::OUString::createFromAscii(JOBCFG_ROOT));
sKey += ::utl::wrapConfigurationElementName(m_sAlias);
- ConfigAccess aConfig(m_xSMGR, sKey);
+ ConfigAccess aConfig(m_xContext, sKey);
aConfig.open(ConfigAccess::E_READONLY);
if (aConfig.getMode()==ConfigAccess::E_CLOSED)
{
@@ -304,7 +304,7 @@ void JobData::setJobConfig( const css::uno::Sequence< css::beans::NamedValue >&
::rtl::OUString sKey(::rtl::OUString::createFromAscii(JOBCFG_ROOT));
sKey += ::utl::wrapConfigurationElementName(m_sAlias);
- ConfigAccess aConfig(m_xSMGR, sKey);
+ ConfigAccess aConfig(m_xContext, sKey);
aConfig.open(ConfigAccess::E_READWRITE);
if (aConfig.getMode()==ConfigAccess::E_CLOSED)
return;
@@ -537,7 +537,7 @@ void JobData::disableJob()
sKey.appendAscii("/" );
sKey.append (::utl::wrapConfigurationElementName(m_sAlias));
- ConfigAccess aConfig(m_xSMGR, sKey.makeStringAndClear());
+ ConfigAccess aConfig(m_xContext, sKey.makeStringAndClear());
aConfig.open(ConfigAccess::E_READWRITE);
if (aConfig.getMode()==ConfigAccess::E_CLOSED)
return;
@@ -585,11 +585,11 @@ sal_Bool isEnabled( const ::rtl::OUString& sAdminTime ,
//________________________________
/**
*/
-void JobData::appendEnabledJobsForEvent( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
+void JobData::appendEnabledJobsForEvent( const css::uno::Reference< css::uno::XComponentContext >& rxContext,
const ::rtl::OUString& sEvent ,
::comphelper::SequenceAsVector< JobData::TJob2DocEventBinding >& lJobs )
{
- css::uno::Sequence< ::rtl::OUString > lAdditionalJobs = JobData::getEnabledJobsForEvent(xSMGR, sEvent);
+ css::uno::Sequence< ::rtl::OUString > lAdditionalJobs = JobData::getEnabledJobsForEvent(rxContext, sEvent);
sal_Int32 c = lAdditionalJobs.getLength();
sal_Int32 i = 0;
@@ -627,8 +627,8 @@ sal_Bool JobData::hasCorrectContext(const ::rtl::OUString& rModuleIdent) const
//________________________________
/**
*/
-css::uno::Sequence< ::rtl::OUString > JobData::getEnabledJobsForEvent( const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR ,
- const ::rtl::OUString& sEvent )
+css::uno::Sequence< ::rtl::OUString > JobData::getEnabledJobsForEvent( const css::uno::Reference< css::uno::XComponentContext >& rxContext,
+ const ::rtl::OUString& sEvent )
{
// these static values may perform following loop for reading time stamp values ...
static ::rtl::OUString ADMINTIME = ::rtl::OUString::createFromAscii(JobData::EVENTCFG_PROP_ADMINTIME);
@@ -637,7 +637,7 @@ css::uno::Sequence< ::rtl::OUString > JobData::getEnabledJobsForEvent( const css
static ::rtl::OUString JOBLIST = ::rtl::OUString::createFromAscii(JobData::EVENTCFG_PATH_JOBLIST );
// create a config access to "/org.openoffice.Office.Jobs/Events"
- ConfigAccess aConfig(xSMGR,ROOT);
+ ConfigAccess aConfig(rxContext,ROOT);
aConfig.open(ConfigAccess::E_READONLY);
if (aConfig.getMode()==ConfigAccess::E_CLOSED)
return css::uno::Sequence< ::rtl::OUString >();
diff --git a/framework/source/jobs/jobdispatch.cxx b/framework/source/jobs/jobdispatch.cxx
index fd0b5eee53fd..03aeca373d91 100644
--- a/framework/source/jobs/jobdispatch.cxx
+++ b/framework/source/jobs/jobdispatch.cxx
@@ -38,7 +38,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/frame/DispatchResultState.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <rtl/ustrbuf.hxx>
#include <vcl/svapp.hxx>
@@ -129,10 +129,8 @@ void SAL_CALL JobDispatch::initialize( const css::uno::Sequence< css::uno::Any >
{
lArguments[a] >>= m_xFrame;
- css::uno::Reference< css::frame::XModuleManager > xModuleManager(
- m_xSMGR->createInstance(
- SERVICENAME_MODULEMANAGER ),
- css::uno::UNO_QUERY_THROW );
+ css::uno::Reference< css::frame::XModuleManager2 > xModuleManager =
+ css::frame::ModuleManager::create(comphelper::getComponentContext(m_xSMGR));
try
{
m_sModuleIdentifier = xModuleManager->identify( m_xFrame );
@@ -273,7 +271,7 @@ void JobDispatch::impl_dispatchEvent( /*IN*/ const ::rtl::OUString&
// filter disabled jobs using it's time stamp values.
/* SAFE { */
ReadGuard aReadLock(m_aLock);
- css::uno::Sequence< ::rtl::OUString > lJobs = JobData::getEnabledJobsForEvent(m_xSMGR, sEvent);
+ css::uno::Sequence< ::rtl::OUString > lJobs = JobData::getEnabledJobsForEvent(comphelper::getComponentContext(m_xSMGR), sEvent);
aReadLock.unlock();
/* } SAFE */
@@ -290,7 +288,7 @@ void JobDispatch::impl_dispatchEvent( /*IN*/ const ::rtl::OUString&
/* SAFE { */
aReadLock.lock();
- JobData aCfg(m_xSMGR);
+ JobData aCfg(comphelper::getComponentContext(m_xSMGR));
aCfg.setEvent(sEvent, lJobs[j]);
aCfg.setEnvironment(JobData::E_DISPATCH);
const bool bIsEnabled=aCfg.hasCorrectContext(m_sModuleIdentifier);
@@ -354,7 +352,7 @@ void JobDispatch::impl_dispatchService( /*IN*/ const ::rtl::OUString&
/* SAFE { */
ReadGuard aReadLock(m_aLock);
- JobData aCfg(m_xSMGR);
+ JobData aCfg(comphelper::getComponentContext(m_xSMGR));
aCfg.setService(sService);
aCfg.setEnvironment(JobData::E_DISPATCH);
@@ -405,7 +403,7 @@ void JobDispatch::impl_dispatchAlias( /*IN*/ const ::rtl::OUString&
/* SAFE { */
ReadGuard aReadLock(m_aLock);
- JobData aCfg(m_xSMGR);
+ JobData aCfg(comphelper::getComponentContext(m_xSMGR));
aCfg.setAlias(sAlias);
aCfg.setEnvironment(JobData::E_DISPATCH);
diff --git a/framework/source/jobs/jobexecutor.cxx b/framework/source/jobs/jobexecutor.cxx
index 0963d58c50b7..e3e6c58c800b 100644
--- a/framework/source/jobs/jobexecutor.cxx
+++ b/framework/source/jobs/jobexecutor.cxx
@@ -42,6 +42,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XContainer.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <unotools/configpaths.hxx>
#include <rtl/ustrbuf.hxx>
@@ -72,16 +73,13 @@ DEFINE_XTYPEPROVIDER_6( JobExecutor ,
DEFINE_XSERVICEINFO_ONEINSTANCESERVICE( JobExecutor ,
::cppu::OWeakObject ,
- SERVICENAME_JOBEXECUTOR ,
+ "com.sun.star.task.JobExecutor",
IMPLEMENTATIONNAME_JOBEXECUTOR
)
DEFINE_INIT_SERVICE( JobExecutor,
{
- m_xModuleManager = css::uno::Reference< css::frame::XModuleManager >(
- m_xSMGR->createInstance(
- SERVICENAME_MODULEMANAGER ),
- css::uno::UNO_QUERY_THROW );
+ m_xModuleManager = css::frame::ModuleManager::create( comphelper::getComponentContext(m_xSMGR) );
/*Attention
I think we don't need any mutex or lock here ... because we are called by our own static method impl_createInstance()
@@ -128,7 +126,7 @@ JobExecutor::JobExecutor( /*IN*/ const css::uno::Reference< css::lang::XMultiSer
, ::cppu::OWeakObject ( )
, m_xSMGR (xSMGR )
, m_xModuleManager ( )
- , m_aConfig (xSMGR, ::rtl::OUString::createFromAscii(JobData::EVENTCFG_ROOT) )
+ , m_aConfig (comphelper::getComponentContext(xSMGR), ::rtl::OUString::createFromAscii(JobData::EVENTCFG_ROOT) )
{
// Don't do any reference related code here! Do it inside special
// impl_ method() ... see DEFINE_INIT_SERVICE() macro for further informations.
@@ -168,7 +166,7 @@ void SAL_CALL JobExecutor::trigger( const ::rtl::OUString& sEvent ) throw(css::u
// get list of all enabled jobs
// The called static helper methods read it from the configuration and
// filter disabled jobs using it's time stamp values.
- css::uno::Sequence< ::rtl::OUString > lJobs = JobData::getEnabledJobsForEvent(m_xSMGR, sEvent);
+ css::uno::Sequence< ::rtl::OUString > lJobs = JobData::getEnabledJobsForEvent(comphelper::getComponentContext(m_xSMGR), sEvent);
aReadLock.unlock();
/* } SAFE */
@@ -180,7 +178,7 @@ void SAL_CALL JobExecutor::trigger( const ::rtl::OUString& sEvent ) throw(css::u
/* SAFE { */
aReadLock.lock();
- JobData aCfg(m_xSMGR);
+ JobData aCfg(comphelper::getComponentContext(m_xSMGR));
aCfg.setEvent(sEvent, lJobs[j]);
aCfg.setEnvironment(JobData::E_EXECUTION);
@@ -237,7 +235,7 @@ void SAL_CALL JobExecutor::notifyEvent( const css::document::EventObject& aEvent
)
{
if (m_lEvents.find(EVENT_ON_DOCUMENT_OPENED) != m_lEvents.end())
- JobData::appendEnabledJobsForEvent(m_xSMGR, EVENT_ON_DOCUMENT_OPENED, lJobs);
+ JobData::appendEnabledJobsForEvent(comphelper::getComponentContext(m_xSMGR), EVENT_ON_DOCUMENT_OPENED, lJobs);
}
// Special feature: If the events "OnCreate" or "OnLoadFinished" occures - we generate our own event "onDocumentAdded".
@@ -247,12 +245,12 @@ void SAL_CALL JobExecutor::notifyEvent( const css::document::EventObject& aEvent
)
{
if (m_lEvents.find(EVENT_ON_DOCUMENT_ADDED) != m_lEvents.end())
- JobData::appendEnabledJobsForEvent(m_xSMGR, EVENT_ON_DOCUMENT_ADDED, lJobs);
+ JobData::appendEnabledJobsForEvent(comphelper::getComponentContext(m_xSMGR), EVENT_ON_DOCUMENT_ADDED, lJobs);
}
// Add all jobs for "real" notified event too .-)
if (m_lEvents.find(aEvent.EventName) != m_lEvents.end())
- JobData::appendEnabledJobsForEvent(m_xSMGR, aEvent.EventName, lJobs);
+ JobData::appendEnabledJobsForEvent(comphelper::getComponentContext(m_xSMGR), aEvent.EventName, lJobs);
aReadLock.unlock();
/* } SAFE */
@@ -268,7 +266,7 @@ void SAL_CALL JobExecutor::notifyEvent( const css::document::EventObject& aEvent
const JobData::TJob2DocEventBinding& rBinding = *pIt;
- JobData aCfg(m_xSMGR);
+ JobData aCfg(comphelper::getComponentContext(m_xSMGR));
aCfg.setEvent(rBinding.m_sDocEvent, rBinding.m_sJobName);
aCfg.setEnvironment(JobData::E_DOCUMENTEVENT);
diff --git a/framework/source/layoutmanager/helpers.cxx b/framework/source/layoutmanager/helpers.cxx
index 1f9a03742686..a954551c6db5 100644
--- a/framework/source/layoutmanager/helpers.cxx
+++ b/framework/source/layoutmanager/helpers.cxx
@@ -31,13 +31,15 @@
#include <services.h>
#include <com/sun/star/ui/DockingArea.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XTopWindow.hpp>
-#include <com/sun/star/frame/XDispatchHelper.hpp>
+#include <com/sun/star/frame/DispatchHelper.hpp>
#include <com/sun/star/awt/XDockableWindow.hpp>
#include <com/sun/star/awt/XDockableWindowListener.hpp>
#include <com/sun/star/awt/XWindowListener.hpp>
#include <com/sun/star/ui/XUIElement.hpp>
+#include <comphelper/processfactory.hxx>
#include <comphelper/mediadescriptor.hxx>
#include <vcl/svapp.hxx>
#include <toolkit/unohlp.hxx>
@@ -169,29 +171,21 @@ bool lcl_checkUIElement(const uno::Reference< ui::XUIElement >& xUIElement, awt:
return bRet;
}
-uno::Reference< awt::XWindowPeer > createToolkitWindow( const uno::Reference< lang::XMultiServiceFactory >& rFactory, const uno::Reference< awt::XWindowPeer >& rParent, const char* pService )
+uno::Reference< awt::XWindowPeer > createToolkitWindow( const uno::Reference< uno::XComponentContext >& rxContext, const uno::Reference< awt::XWindowPeer >& rParent, const char* pService )
{
- const rtl::OUString aAWTToolkit( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.Toolkit" ));
+ uno::Reference< awt::XToolkit2 > xToolkit = awt::Toolkit::create( rxContext );
- uno::Reference< awt::XWindowPeer > xPeer;
- if ( rFactory.is() )
- {
- uno::Reference< awt::XToolkit > xToolkit( rFactory->createInstance( aAWTToolkit ), uno::UNO_QUERY_THROW );
- if ( xToolkit.is() )
- {
- // describe window properties.
- css::awt::WindowDescriptor aDescriptor;
- aDescriptor.Type = awt::WindowClass_SIMPLE;
- aDescriptor.WindowServiceName = ::rtl::OUString::createFromAscii( pService );
- aDescriptor.ParentIndex = -1;
- aDescriptor.Parent = uno::Reference< awt::XWindowPeer >( rParent, uno::UNO_QUERY );
- aDescriptor.Bounds = awt::Rectangle(0,0,0,0);
- aDescriptor.WindowAttributes = 0;
-
- // create a awt window
- xPeer = xToolkit->createWindow( aDescriptor );
- }
- }
+ // describe window properties.
+ css::awt::WindowDescriptor aDescriptor;
+ aDescriptor.Type = awt::WindowClass_SIMPLE;
+ aDescriptor.WindowServiceName = ::rtl::OUString::createFromAscii( pService );
+ aDescriptor.ParentIndex = -1;
+ aDescriptor.Parent = uno::Reference< awt::XWindowPeer >( rParent, uno::UNO_QUERY );
+ aDescriptor.Bounds = awt::Rectangle(0,0,0,0);
+ aDescriptor.WindowAttributes = 0;
+
+ // create a awt window
+ uno::Reference< awt::XWindowPeer > xPeer = xToolkit->createWindow( aDescriptor );
return xPeer;
}
@@ -314,10 +308,9 @@ sal_Bool implts_isFrameOrWindowTop( const uno::Reference< frame::XFrame >& xFram
return sal_False;
}
-void impl_setDockingWindowVisibility( const css::uno::Reference< css::lang::XMultiServiceFactory>& rSMGR, const css::uno::Reference< css::frame::XFrame >& rFrame, const ::rtl::OUString& rDockingWindowName, bool bVisible )
+void impl_setDockingWindowVisibility( const css::uno::Reference< css::uno::XComponentContext>& rxContext, const css::uno::Reference< css::frame::XFrame >& rFrame, const ::rtl::OUString& rDockingWindowName, bool bVisible )
{
const ::rtl::OUString aDockWinPrefixCommand( RTL_CONSTASCII_USTRINGPARAM( "DockingWindow" ));
- css::uno::WeakReference< css::frame::XDispatchHelper > xDispatchHelper;
sal_Int32 nID = rDockingWindowName.toInt32();
sal_Int32 nIndex = nID - DOCKWIN_ID_BASE;
@@ -334,12 +327,7 @@ void impl_setDockingWindowVisibility( const css::uno::Reference< css::lang::XMul
aArgs[0].Name = aDockWinArgName;
aArgs[0].Value = css::uno::makeAny( bVisible );
- css::uno::Reference< css::frame::XDispatchHelper > xDispatcher( xDispatchHelper );
- if ( !xDispatcher.is())
- {
- xDispatcher = css::uno::Reference< css::frame::XDispatchHelper >(
- rSMGR->createInstance(SERVICENAME_DISPATCHHELPER), css::uno::UNO_QUERY_THROW);
- }
+ css::uno::Reference< css::frame::XDispatchHelper > xDispatcher = css::frame::DispatchHelper::create( rxContext );
aDockWinCommand = aDockWinCommand + aDockWinArgName;
xDispatcher->executeDispatch(
diff --git a/framework/source/layoutmanager/helpers.hxx b/framework/source/layoutmanager/helpers.hxx
index 3d11ee5bc19f..e2e667c073f9 100644
--- a/framework/source/layoutmanager/helpers.hxx
+++ b/framework/source/layoutmanager/helpers.hxx
@@ -34,6 +34,8 @@
#include <properties.h>
#include <com/sun/star/awt/XWindowPeer.hpp>
+#include <com/sun/star/awt/XToolkit2.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/ui/XUIElement.hpp>
@@ -66,7 +68,7 @@ SystemWindow* getTopSystemWindow( const ::com::sun::star::uno::Reference< ::com:
bool equalRectangles( const css::awt::Rectangle& rRect1, const css::awt::Rectangle& rRect2 );
void setZeroRectangle( ::Rectangle& rRect );
bool lcl_checkUIElement(const ::com::sun::star::uno::Reference< ::com::sun::star::ui::XUIElement >& xUIElement,::com::sun::star::awt::Rectangle& _rPosSize, ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xWindow);
-::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > createToolkitWindow( const css::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rFactory, const css::uno::Reference< ::com::sun::star::awt::XWindowPeer >& rParent, const char* pService );
+::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > createToolkitWindow( const css::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext, const css::uno::Reference< ::com::sun::star::awt::XWindowPeer >& rParent, const char* pService );
WindowAlign ImplConvertAlignment( sal_Int16 aAlignment );
::rtl::OUString getElementTypeFromResourceURL( const ::rtl::OUString& aResourceURL );
void parseResourceURL( const rtl::OUString& aResourceURL, rtl::OUString& aElementType, rtl::OUString& aElementName );
@@ -75,9 +77,9 @@ void parseResourceURL( const rtl::OUString& aResourceURL, rtl::OUString& aElemen
::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > impl_getModelFromFrame( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rFrame );
sal_Bool implts_isPreviewModel( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >& xModel );
sal_Bool implts_isFrameOrWindowTop( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& xFrame );
-void impl_setDockingWindowVisibility( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>& rSMGR, const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rFrame, const ::rtl::OUString& rDockingWindowName, bool bVisible );
+void impl_setDockingWindowVisibility( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext>& rxContext, const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >& rFrame, const ::rtl::OUString& rDockingWindowName, bool bVisible );
void impl_addWindowListeners( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& xThis, const ::com::sun::star::uno::Reference< css::ui::XUIElement >& xUIElement );
-::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > implts_createToolkitWindow( const css::uno::Reference< ::com::sun::star::awt::XToolkit >& rToolkit, const css::uno::Reference< ::com::sun::star::awt::XWindowPeer >& rParent );
+::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > implts_createToolkitWindow( const css::uno::Reference< ::com::sun::star::awt::XToolkit2 >& rToolkit, const css::uno::Reference< ::com::sun::star::awt::XWindowPeer >& rParent );
}
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx
index 10094d988a33..b29960cca32d 100644
--- a/framework/source/layoutmanager/layoutmanager.cxx
+++ b/framework/source/layoutmanager/layoutmanager.cxx
@@ -44,6 +44,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/PropertyAttribute.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/frame/FrameAction.hpp>
#include <com/sun/star/frame/XUIControllerRegistration.hpp>
@@ -62,7 +63,7 @@
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/frame/LayoutManagerEvents.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
-#include <com/sun/star/frame/XDispatchHelper.hpp>
+#include <com/sun/star/frame/DispatchHelper.hpp>
#include <com/sun/star/lang/DisposedException.hpp>
#include <com/sun/star/util/URLTransformer.hpp>
@@ -137,7 +138,7 @@ LayoutManager::LayoutManager( const Reference< XMultiServiceFactory >& xServiceM
, m_bPreserveContentSize( false )
, m_bMenuBarCloser( false )
, m_pInplaceMenuBar( NULL )
- , m_xModuleManager( Reference< XModuleManager >( xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY ))
+ , m_xModuleManager( ModuleManager::create( comphelper::getComponentContext(xServiceManager) ))
, m_xUIElementFactoryManager( Reference< ui::XUIElementFactory >(
xServiceManager->createInstance( SERVICENAME_UIELEMENTFACTORYMANAGER ), UNO_QUERY ))
, m_xPersistentWindowStateSupplier( Reference< XNameAccess >(
@@ -163,7 +164,7 @@ LayoutManager::LayoutManager( const Reference< XMultiServiceFactory >& xServiceM
m_aStatusBarElement.m_aType = rtl::OUString( "statusbar" );
m_aStatusBarElement.m_aName = m_aStatusBarAlias;
- m_pToolbarManager = new ToolbarLayoutManager( xServiceManager, m_xUIElementFactoryManager, this );
+ m_pToolbarManager = new ToolbarLayoutManager( comphelper::getComponentContext(xServiceManager), m_xUIElementFactoryManager, this );
m_xToolbarManager = uno::Reference< ui::XUIConfigurationListener >( static_cast< OWeakObject* >( m_pToolbarManager ), uno::UNO_QUERY );
Application::AddEventListener( LINK( this, LayoutManager, SettingsChanged ) );
@@ -516,7 +517,7 @@ sal_Bool LayoutManager::implts_readWindowStateData( const rtl::OUString& aName,
GlobalSettings* pGlobalSettings( 0 );
if ( m_pGlobalSettings == 0 )
{
- m_pGlobalSettings = new GlobalSettings( m_xSMGR );
+ m_pGlobalSettings = new GlobalSettings( comphelper::getComponentContext(m_xSMGR) );
bGetSettingsState = sal_True;
}
pGlobalSettings = m_pGlobalSettings;
@@ -1638,7 +1639,7 @@ throw (RuntimeException)
uno::Reference< lang::XMultiServiceFactory > xSMGR( m_xSMGR );
aWriteLock.unlock();
- impl_setDockingWindowVisibility( xSMGR, xFrame, aElementName, false );
+ impl_setDockingWindowVisibility( comphelper::getComponentContext(xSMGR), xFrame, aElementName, false );
bMustBeLayouted = false;
bNotify = false;
}
@@ -1859,7 +1860,7 @@ throw (RuntimeException)
uno::Reference< lang::XMultiServiceFactory > xSMGR( m_xSMGR );
aReadGuard.unlock();
- impl_setDockingWindowVisibility( xSMGR, xFrame, aElementName, true );
+ impl_setDockingWindowVisibility( comphelper::getComponentContext(xSMGR), xFrame, aElementName, true );
}
else if ( aElementType.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("toolpanel")))
{
@@ -1949,7 +1950,7 @@ throw (RuntimeException)
uno::Reference< lang::XMultiServiceFactory > xSMGR( m_xSMGR );
aReadGuard.unlock();
- impl_setDockingWindowVisibility( xSMGR, xFrame, aElementName, false );
+ impl_setDockingWindowVisibility( comphelper::getComponentContext(xSMGR), xFrame, aElementName, false );
}
if ( bMustLayout )
@@ -2669,8 +2670,7 @@ IMPL_LINK_NOARG(LayoutManager, MenuBarClose)
if ( !xProvider.is())
return 0;
- uno::Reference< frame::XDispatchHelper > xDispatcher(
- xSMGR->createInstance(SERVICENAME_DISPATCHHELPER), uno::UNO_QUERY_THROW);
+ uno::Reference< frame::XDispatchHelper > xDispatcher = frame::DispatchHelper::create( comphelper::getComponentContext( xSMGR ) );
xDispatcher->executeDispatch(
xProvider,
diff --git a/framework/source/layoutmanager/toolbarlayoutmanager.cxx b/framework/source/layoutmanager/toolbarlayoutmanager.cxx
index 179725afd338..2bb41fe93235 100644
--- a/framework/source/layoutmanager/toolbarlayoutmanager.cxx
+++ b/framework/source/layoutmanager/toolbarlayoutmanager.cxx
@@ -34,6 +34,7 @@
#include <uiconfiguration/windowstateconfiguration.hxx>
#include <com/sun/star/awt/PosSize.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/ui/UIElementType.hpp>
#include <com/sun/star/container/XNameReplace.hpp>
@@ -55,11 +56,11 @@ namespace framework
{
ToolbarLayoutManager::ToolbarLayoutManager(
- const uno::Reference< lang::XMultiServiceFactory >& xSMGR,
+ const uno::Reference< uno::XComponentContext >& rxContext,
const uno::Reference< ui::XUIElementFactory >& xUIElementFactory,
ILayoutNotifications* pParentLayouter )
: ThreadHelpBase( &Application::GetSolarMutex() ),
- m_xSMGR( xSMGR ),
+ m_xContext( rxContext),
m_xUIElementFactoryManager( xUIElementFactory ),
m_pParentLayouter( pParentLayouter ),
m_eDockOperation( DOCKOP_ON_COLROW ),
@@ -82,7 +83,7 @@ ToolbarLayoutManager::ToolbarLayoutManager(
setZeroRectangle( m_aDockingArea );
// create toolkit object
- m_xToolkit = uno::Reference< awt::XToolkit >( m_xSMGR->createInstance( SERVICENAME_VCLTOOLKIT ), uno::UNO_QUERY );
+ m_xToolkit = awt::Toolkit::create( m_xContext );
}
ToolbarLayoutManager::~ToolbarLayoutManager()
@@ -912,10 +913,10 @@ void ToolbarLayoutManager::setParentWindow(
{
static const char DOCKINGAREASTRING[] = "dockingarea";
- uno::Reference< awt::XWindow > xTopDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xSMGR, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
- uno::Reference< awt::XWindow > xLeftDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xSMGR, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
- uno::Reference< awt::XWindow > xRightDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xSMGR, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
- uno::Reference< awt::XWindow > xBottomDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xSMGR, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
+ uno::Reference< awt::XWindow > xTopDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xContext, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
+ uno::Reference< awt::XWindow > xLeftDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xContext, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
+ uno::Reference< awt::XWindow > xRightDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xContext, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
+ uno::Reference< awt::XWindow > xBottomDockWindow = uno::Reference< awt::XWindow >( createToolkitWindow( m_xContext, xParentWindow, DOCKINGAREASTRING ), uno::UNO_QUERY );
WriteGuard aWriteLock( m_aLock );
m_xContainerWindow = uno::Reference< awt::XWindow2 >( xParentWindow, uno::UNO_QUERY );
@@ -1581,7 +1582,7 @@ sal_Bool ToolbarLayoutManager::implts_readWindowStateData( const rtl::OUString&
GlobalSettings* pGlobalSettings( 0 );
if ( m_pGlobalSettings.get() == 0 )
{
- m_pGlobalSettings.reset( new GlobalSettings( m_xSMGR ) );
+ m_pGlobalSettings.reset( new GlobalSettings( m_xContext ) );
bGetSettingsState = true;
}
pGlobalSettings = m_pGlobalSettings.get();
diff --git a/framework/source/layoutmanager/toolbarlayoutmanager.hxx b/framework/source/layoutmanager/toolbarlayoutmanager.hxx
index 0f4d2b7ac212..1237c147de4b 100644
--- a/framework/source/layoutmanager/toolbarlayoutmanager.hxx
+++ b/framework/source/layoutmanager/toolbarlayoutmanager.hxx
@@ -63,6 +63,7 @@
#include <com/sun/star/util/XURLTransformer.hpp>
#include <com/sun/star/ui/XUIElementFactory.hpp>
#include <com/sun/star/ui/DockingArea.hpp>
+#include <com/sun/star/awt/XToolkit2.hpp>
#include <com/sun/star/awt/XTopWindow2.hpp>
#include <com/sun/star/awt/XWindow2.hpp>
#include <com/sun/star/awt/XDockableWindow.hpp>
@@ -89,7 +90,7 @@ class ToolbarLayoutManager : public ::cppu::WeakImplHelper3< ::com::sun::star::a
PREVIEWFRAME_YES
};
- ToolbarLayoutManager( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xSMGR,
+ ToolbarLayoutManager( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::ui::XUIElementFactory >& xUIElementFactory,
ILayoutNotifications* pParentLayouter );
virtual ~ToolbarLayoutManager();
@@ -298,14 +299,14 @@ class ToolbarLayoutManager : public ::cppu::WeakImplHelper3< ::com::sun::star::a
//---------------------------------------------------------------------------------------------------------
// members
//---------------------------------------------------------------------------------------------------------
- css::uno::Reference< css::lang::XMultiServiceFactory > m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > m_xContext;
css::uno::Reference< css::frame::XFrame > m_xFrame;
css::uno::Reference< css::awt::XWindow2 > m_xContainerWindow;
css::uno::Reference< css::awt::XWindow > m_xDockAreaWindows[DOCKINGAREAS_COUNT];
css::uno::Reference< ::com::sun::star::ui::XUIElementFactory > m_xUIElementFactoryManager;
css::uno::Reference< ::com::sun::star::ui::XUIConfigurationManager > m_xModuleCfgMgr;
css::uno::Reference< ::com::sun::star::ui::XUIConfigurationManager > m_xDocCfgMgr;
- css::uno::Reference< ::com::sun::star::awt::XToolkit > m_xToolkit;
+ css::uno::Reference< ::com::sun::star::awt::XToolkit2 > m_xToolkit;
css::uno::Reference< ::com::sun::star::container::XNameAccess > m_xPersistentWindowState;
ILayoutNotifications* m_pParentLayouter;
diff --git a/framework/source/loadenv/loadenv.cxx b/framework/source/loadenv/loadenv.cxx
index 799a48ddb587..fc5581312e04 100644
--- a/framework/source/loadenv/loadenv.cxx
+++ b/framework/source/loadenv/loadenv.cxx
@@ -952,7 +952,7 @@ sal_Bool LoadEnv::impl_furtherDocsAllowed()
try
{
css::uno::Any aVal = ::comphelper::ConfigurationHelper::readDirectKey(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
::rtl::OUString("org.openoffice.Office.Common/"),
::rtl::OUString("Misc"),
::rtl::OUString("MaxOpenDocuments"),
@@ -1690,7 +1690,7 @@ void LoadEnv::impl_makeFrameWindowVisible(const css::uno::Reference< css::awt::X
{
css::uno::Any const a =
::comphelper::ConfigurationHelper::readDirectKey(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
::rtl::OUString("org.openoffice.Office.Common/View"),
::rtl::OUString("NewDocumentHandling"),
::rtl::OUString("ForceFocusAndToFront"),
@@ -1770,7 +1770,7 @@ void LoadEnv::impl_applyPersistentWindowState(const css::uno::Reference< css::aw
// get access to the configuration of this office module
css::uno::Reference< css::container::XNameAccess > xModuleCfg(::comphelper::ConfigurationHelper::openConfig(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
PACKAGE_SETUP_MODULES,
::comphelper::ConfigurationHelper::E_READONLY),
css::uno::UNO_QUERY_THROW);
diff --git a/framework/source/recording/dispatchrecordersupplier.cxx b/framework/source/recording/dispatchrecordersupplier.cxx
index 164b6370b7c1..1fd5dedf0677 100644
--- a/framework/source/recording/dispatchrecordersupplier.cxx
+++ b/framework/source/recording/dispatchrecordersupplier.cxx
@@ -47,7 +47,7 @@ DEFINE_XTYPEPROVIDER_3(
DEFINE_XSERVICEINFO_MULTISERVICE(
DispatchRecorderSupplier,
::cppu::OWeakObject,
- SERVICENAME_DISPATCHRECORDERSUPPLIER,
+ "com.sun.star.frame.DispatchRecorderSupplier",
IMPLEMENTATIONNAME_DISPATCHRECORDERSUPPLIER)
DEFINE_INIT_SERVICE(
diff --git a/framework/source/services/autorecovery.cxx b/framework/source/services/autorecovery.cxx
index 43fd47c26b03..2e3b2649886d 100644
--- a/framework/source/services/autorecovery.cxx
+++ b/framework/source/services/autorecovery.cxx
@@ -45,9 +45,10 @@
#include <com/sun/star/ucb/NameClash.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
+#include <com/sun/star/frame/GlobalEventBroadcaster.hpp>
#include <com/sun/star/frame/XLoadable.hpp>
#include <com/sun/star/frame/XModel2.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XTitle.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
@@ -111,6 +112,7 @@ using ::com::sun::star::uno::Any;
using ::com::sun::star::beans::PropertyValue;
using ::com::sun::star::container::XEnumeration;
using ::com::sun::star::document::XDocumentRecovery;
+using ::com::sun::star::frame::ModuleManager;
using ::com::sun::star::frame::XModel2;
using ::com::sun::star::frame::XModel;
using ::com::sun::star::frame::XFrame;
@@ -425,7 +427,7 @@ DEFINE_XTYPEPROVIDER_6(AutoRecovery ,
//-----------------------------------------------
DEFINE_XSERVICEINFO_ONEINSTANCESERVICE(AutoRecovery ,
::cppu::OWeakObject ,
- SERVICENAME_AUTORECOVERY ,
+ "com.sun.star.frame.AutoRecovery",
IMPLEMENTATIONNAME_AUTORECOVERY)
//-----------------------------------------------
@@ -930,7 +932,7 @@ css::uno::Reference< css::container::XNameAccess > AutoRecovery::implts_openConf
if (m_xRecoveryCFG.is())
return m_xRecoveryCFG;
- css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
+ css::uno::Reference< css::uno::XComponentContext > xContext = comphelper::getComponentContext(m_xSMGR);
aWriteLock.unlock();
// <- SAFE ----------------------------------
@@ -938,7 +940,7 @@ css::uno::Reference< css::container::XNameAccess > AutoRecovery::implts_openConf
rtl::OUString sCFG_PACKAGE_RECOVERY(RTL_CONSTASCII_USTRINGPARAM(CFG_PACKAGE_RECOVERY));
// throws a RuntimeException if an error occure!
css::uno::Reference< css::container::XNameAccess > xCFG(
- ::comphelper::ConfigurationHelper::openConfig(xSMGR, sCFG_PACKAGE_RECOVERY, ::comphelper::ConfigurationHelper::E_STANDARD),
+ ::comphelper::ConfigurationHelper::openConfig(xContext, sCFG_PACKAGE_RECOVERY, ::comphelper::ConfigurationHelper::E_STANDARD),
css::uno::UNO_QUERY);
sal_Int32 nMinSpaceDocSave = MIN_DISCSPACE_DOCSAVE;
@@ -947,13 +949,13 @@ css::uno::Reference< css::container::XNameAccess > AutoRecovery::implts_openConf
try
{
rtl::OUString sCFG_PATH_AUTOSAVE(CFG_PATH_AUTOSAVE);
- ::comphelper::ConfigurationHelper::readDirectKey(xSMGR,
+ ::comphelper::ConfigurationHelper::readDirectKey(xContext,
sCFG_PACKAGE_RECOVERY,
sCFG_PATH_AUTOSAVE,
rtl::OUString(CFG_ENTRY_MINSPACE_DOCSAVE),
::comphelper::ConfigurationHelper::E_STANDARD) >>= nMinSpaceDocSave;
- ::comphelper::ConfigurationHelper::readDirectKey(xSMGR,
+ ::comphelper::ConfigurationHelper::readDirectKey(xContext,
sCFG_PACKAGE_RECOVERY,
sCFG_PATH_AUTOSAVE,
rtl::OUString(CFG_ENTRY_MINSPACE_CONFIGSAVE),
@@ -1128,7 +1130,7 @@ void AutoRecovery::implts_specifyDefaultFilterAndExtension(AutoRecovery::TDocume
{
// open module config on demand and cache the update access
xCFG = css::uno::Reference< css::container::XNameAccess >(
- ::comphelper::ConfigurationHelper::openConfig(xSMGR, rtl::OUString(CFG_PACKAGE_MODULES),
+ ::comphelper::ConfigurationHelper::openConfig(comphelper::getComponentContext(xSMGR), rtl::OUString(CFG_PACKAGE_MODULES),
::comphelper::ConfigurationHelper::E_STANDARD),
css::uno::UNO_QUERY_THROW);
@@ -1181,13 +1183,12 @@ void AutoRecovery::implts_specifyAppModuleAndFactory(AutoRecovery::TDocumentInfo
aReadLock.unlock();
// <- SAFE ----------------------------------
- css::uno::Reference< css::frame::XModuleManager > xManager (xSMGR->createInstance(SERVICENAME_MODULEMANAGER), css::uno::UNO_QUERY_THROW);
- css::uno::Reference< css::container::XNameAccess > xModuleConfig(xManager , css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::frame::XModuleManager2 > xManager = ModuleManager::create( comphelper::getComponentContext(xSMGR) );
if (rInfo.AppModule.isEmpty())
rInfo.AppModule = xManager->identify(rInfo.Document);
- ::comphelper::SequenceAsHashMap lModuleDescription(xModuleConfig->getByName(rInfo.AppModule));
+ ::comphelper::SequenceAsHashMap lModuleDescription(xManager->getByName(rInfo.AppModule));
lModuleDescription[rtl::OUString(CFG_ENTRY_PROP_EMPTYDOCUMENTURL)] >>= rInfo.FactoryURL;
lModuleDescription[rtl::OUString(CFG_ENTRY_PROP_FACTORYSERVICE)] >>= rInfo.FactoryService;
}
@@ -1365,7 +1366,7 @@ void AutoRecovery::implts_startListening()
ReadGuard aReadLock(m_aLock);
css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR = m_xSMGR;
css::uno::Reference< css::util::XChangesNotifier > xCFG (m_xRecoveryCFG, css::uno::UNO_QUERY);
- css::uno::Reference< css::document::XEventBroadcaster > xBroadcaster = m_xNewDocBroadcaster;
+ css::uno::Reference< css::frame::XGlobalEventBroadcaster > xBroadcaster = m_xNewDocBroadcaster;
sal_Bool bListenForDocEvents = m_bListenForDocEvents;
aReadLock.unlock();
// <- SAFE ----------------------------------
@@ -1382,7 +1383,7 @@ void AutoRecovery::implts_startListening()
if (!xBroadcaster.is())
{
- xBroadcaster = css::uno::Reference< css::document::XEventBroadcaster >(xSMGR->createInstance(SERVICENAME_GLOBALEVENTBROADCASTER), css::uno::UNO_QUERY_THROW);
+ xBroadcaster = css::frame::GlobalEventBroadcaster::create( comphelper::getComponentContext(xSMGR) );
// SAFE -> ----------------------------------
WriteGuard aWriteLock(m_aLock);
m_xNewDocBroadcaster = xBroadcaster;
@@ -2534,8 +2535,7 @@ AutoRecovery::ETimerType AutoRecovery::implts_openDocs(const DispatchParams& aPa
rInfo.DocumentState |= AutoRecovery::E_TRY_LOAD_BACKUP;
lDescriptor[::comphelper::MediaDescriptor::PROP_SALVAGEDFILE()] <<= sLoadOriginalURL;
}
- else
- if (!sLoadOriginalURL.isEmpty())
+ else if (!sLoadOriginalURL.isEmpty())
{
sURL = sLoadOriginalURL;
rInfo.DocumentState |= AutoRecovery::E_TRY_LOAD_ORIGINAL;
@@ -2780,8 +2780,7 @@ void AutoRecovery::implts_generateNewTempURL(const ::rtl::OUString&
xParser->parseStrict(aURL);
sUniqueName.append(aURL.Name);
}
- else
- if (!rInfo.FactoryURL.isEmpty())
+ else if (!rInfo.FactoryURL.isEmpty())
sUniqueName.appendAscii("untitled");
sUniqueName.appendAscii("_");
@@ -2975,7 +2974,7 @@ void AutoRecovery::implts_doEmergencySave(const DispatchParams& aParams)
// the error report tool is started too in case no recovery
// documents exists and was saved.
::comphelper::ConfigurationHelper::writeDirectKey(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
rtl::OUString(CFG_PACKAGE_RECOVERY),
rtl::OUString(CFG_PATH_RECOVERYINFO),
rtl::OUString(CFG_ENTRY_CRASHED),
@@ -3036,7 +3035,7 @@ void AutoRecovery::implts_doRecovery(const DispatchParams& aParams)
// Reset the configuration hint "we was crashed"!
::comphelper::ConfigurationHelper::writeDirectKey(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
rtl::OUString(CFG_PACKAGE_RECOVERY),
rtl::OUString(CFG_PATH_RECOVERYINFO),
rtl::OUString(CFG_ENTRY_CRASHED),
@@ -3103,7 +3102,7 @@ void AutoRecovery::implts_doSessionQuietQuit(const DispatchParams& /*aParams*/)
// Write a hint for "stored session data" into the configuration, so
// the on next startup we know what's happen last time
::comphelper::ConfigurationHelper::writeDirectKey(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
rtl::OUString(CFG_PACKAGE_RECOVERY),
rtl::OUString(CFG_PATH_RECOVERYINFO),
rtl::OUString(CFG_ENTRY_SESSIONDATA),
@@ -3140,7 +3139,7 @@ void AutoRecovery::implts_doSessionRestore(const DispatchParams& aParams)
// Reset the configuration hint for "session save"!
LOG_RECOVERY("... reset config key 'SessionData'")
::comphelper::ConfigurationHelper::writeDirectKey(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
rtl::OUString(CFG_PACKAGE_RECOVERY),
rtl::OUString(CFG_PATH_RECOVERYINFO),
rtl::OUString(CFG_ENTRY_SESSIONDATA),
@@ -3168,11 +3167,9 @@ void AutoRecovery::implts_backupWorkingEntry(const DispatchParams& aParams)
// Prefer temp file. It contains the changes against the original document!
if (!rInfo.OldTempURL.isEmpty())
sSourceURL = rInfo.OldTempURL;
- else
- if (!rInfo.NewTempURL.isEmpty())
+ else if (!rInfo.NewTempURL.isEmpty())
sSourceURL = rInfo.NewTempURL;
- else
- if (!rInfo.OrgURL.isEmpty())
+ else if (!rInfo.OrgURL.isEmpty())
sSourceURL = rInfo.OrgURL;
else
continue; // nothing real to save! An unmodified but new created document.
@@ -3279,7 +3276,7 @@ void SAL_CALL AutoRecovery::getFastPropertyValue(css::uno::Any& aValue ,
{
sal_Bool bSessionData = sal_False;
::comphelper::ConfigurationHelper::readDirectKey(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
rtl::OUString(CFG_PACKAGE_RECOVERY),
rtl::OUString(CFG_PATH_RECOVERYINFO),
rtl::OUString(CFG_ENTRY_SESSIONDATA),
@@ -3298,7 +3295,7 @@ void SAL_CALL AutoRecovery::getFastPropertyValue(css::uno::Any& aValue ,
case AUTORECOVERY_PROPHANDLE_CRASHED :
aValue = ::comphelper::ConfigurationHelper::readDirectKey(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
rtl::OUString(CFG_PACKAGE_RECOVERY),
rtl::OUString(CFG_PATH_RECOVERYINFO),
rtl::OUString(CFG_ENTRY_CRASHED),
@@ -3307,7 +3304,7 @@ void SAL_CALL AutoRecovery::getFastPropertyValue(css::uno::Any& aValue ,
case AUTORECOVERY_PROPHANDLE_EXISTS_SESSIONDATA :
aValue = ::comphelper::ConfigurationHelper::readDirectKey(
- m_xSMGR,
+ comphelper::getComponentContext(m_xSMGR),
rtl::OUString(CFG_PACKAGE_RECOVERY),
rtl::OUString(CFG_PATH_RECOVERYINFO),
rtl::OUString(CFG_ENTRY_SESSIONDATA),
diff --git a/framework/source/services/backingcomp.cxx b/framework/source/services/backingcomp.cxx
index 9058790ef086..a411b4b9575d 100644
--- a/framework/source/services/backingcomp.cxx
+++ b/framework/source/services/backingcomp.cxx
@@ -44,6 +44,7 @@
#include <com/sun/star/util/XURLTransformer.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XDataTransferProviderAccess.hpp>
#include <com/sun/star/datatransfer/dnd/XDropTarget.hpp>
#include <com/sun/star/awt/KeyEvent.hpp>
@@ -471,15 +472,12 @@ void SAL_CALL BackingComp::attachFrame( /*IN*/ const css::uno::Reference< css::f
::framework::DropTargetListener* pDropListener = new ::framework::DropTargetListener(m_xSMGR, m_xFrame);
m_xDropTargetListener = css::uno::Reference< css::datatransfer::dnd::XDropTargetListener >(static_cast< ::cppu::OWeakObject* >(pDropListener), css::uno::UNO_QUERY);
- css::uno::Reference< css::awt::XDataTransferProviderAccess > xTransfer(m_xSMGR->createInstance(SERVICENAME_VCLTOOLKIT), css::uno::UNO_QUERY);
- if (xTransfer.is())
+ css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(m_xSMGR) );
+ css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xToolkit->getDropTarget(m_xWindow);
+ if (xDropTarget.is())
{
- css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xTransfer->getDropTarget(m_xWindow);
- if (xDropTarget.is())
- {
- xDropTarget->addDropTargetListener(m_xDropTargetListener);
- xDropTarget->setActive(sal_True);
- }
+ xDropTarget->addDropTargetListener(m_xDropTargetListener);
+ xDropTarget->setActive(sal_True);
}
// initialize the component and it's parent window
@@ -690,15 +688,12 @@ void SAL_CALL BackingComp::dispose()
// deregister drag&drop helper
if (m_xDropTargetListener.is())
{
- css::uno::Reference< css::awt::XDataTransferProviderAccess > xTransfer(m_xSMGR->createInstance(SERVICENAME_VCLTOOLKIT), css::uno::UNO_QUERY);
- if (xTransfer.is())
+ css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(m_xSMGR) );
+ css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xToolkit->getDropTarget(m_xWindow);
+ if (xDropTarget.is())
{
- css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xTransfer->getDropTarget(m_xWindow);
- if (xDropTarget.is())
- {
- xDropTarget->removeDropTargetListener(m_xDropTargetListener);
- xDropTarget->setActive(sal_False);
- }
+ xDropTarget->removeDropTargetListener(m_xDropTargetListener);
+ xDropTarget->setActive(sal_False);
}
m_xDropTargetListener = css::uno::Reference< css::datatransfer::dnd::XDropTargetListener >();
}
diff --git a/framework/source/services/backingwindow.cxx b/framework/source/services/backingwindow.cxx
index 34c2585e22f9..765c46575c3b 100644
--- a/framework/source/services/backingwindow.cxx
+++ b/framework/source/services/backingwindow.cxx
@@ -62,6 +62,7 @@
#include "com/sun/star/lang/XMultiServiceFactory.hpp"
#include "com/sun/star/container/XNameAccess.hpp"
+#include "com/sun/star/configuration/theDefaultProvider.hpp"
#include "com/sun/star/system/SystemShellExecute.hpp"
#include "com/sun/star/system/SystemShellExecuteFlags.hpp"
#include "com/sun/star/task/XJobExecutor.hpp"
@@ -163,23 +164,20 @@ BackingWindow::BackingWindow( Window* i_pParent ) :
try
{
- Reference<lang::XMultiServiceFactory> xConfig( comphelper::getProcessServiceFactory()->createInstance(SERVICENAME_CFGPROVIDER),UNO_QUERY);
- if( xConfig.is() )
+ Reference<lang::XMultiServiceFactory> xConfig = configuration::theDefaultProvider::get( comphelper::getProcessComponentContext() );
+ Sequence<Any> args(1);
+ PropertyValue val(
+ rtl::OUString( "nodepath" ),
+ 0,
+ Any(rtl::OUString( "/org.openoffice.Office.Common/Help/StartCenter")),
+ PropertyState_DIRECT_VALUE);
+ args.getArray()[0] <<= val;
+ Reference<container::XNameAccess> xNameAccess(xConfig->createInstanceWithArguments(SERVICENAME_CFGREADACCESS,args), UNO_QUERY);
+ if( xNameAccess.is() )
{
- Sequence<Any> args(1);
- PropertyValue val(
- rtl::OUString( "nodepath" ),
- 0,
- Any(rtl::OUString( "/org.openoffice.Office.Common/Help/StartCenter")),
- PropertyState_DIRECT_VALUE);
- args.getArray()[0] <<= val;
- Reference<container::XNameAccess> xNameAccess(xConfig->createInstanceWithArguments(SERVICENAME_CFGREADACCESS,args), UNO_QUERY);
- if( xNameAccess.is() )
- {
- //throws css::container::NoSuchElementException, css::lang::WrappedTargetException
- Any value( xNameAccess->getByName(rtl::OUString("StartCenterHideExternalLinks")) );
- mnHideExternalLinks = value.get<sal_Int32>();
- }
+ //throws css::container::NoSuchElementException, css::lang::WrappedTargetException
+ Any value( xNameAccess->getByName(rtl::OUString("StartCenterHideExternalLinks")) );
+ mnHideExternalLinks = value.get<sal_Int32>();
}
}
catch (const Exception&)
@@ -886,30 +884,27 @@ IMPL_LINK_NOARG(BackingWindow, ToolboxHdl)
{
try
{
- Reference<lang::XMultiServiceFactory> xConfig( comphelper::getProcessServiceFactory()->createInstance(SERVICENAME_CFGPROVIDER),UNO_QUERY);
- if( xConfig.is() )
+ Reference<lang::XMultiServiceFactory> xConfig = configuration::theDefaultProvider::get( comphelper::getProcessComponentContext() );
+ Sequence<Any> args(1);
+ PropertyValue val(
+ rtl::OUString( "nodepath" ),
+ 0,
+ Any(rtl::OUString::createFromAscii(pNodePath)),
+ PropertyState_DIRECT_VALUE);
+ args.getArray()[0] <<= val;
+ Reference<container::XNameAccess> xNameAccess(xConfig->createInstanceWithArguments(SERVICENAME_CFGREADACCESS,args), UNO_QUERY);
+ if( xNameAccess.is() )
{
- Sequence<Any> args(1);
- PropertyValue val(
- rtl::OUString( "nodepath" ),
- 0,
- Any(rtl::OUString::createFromAscii(pNodePath)),
- PropertyState_DIRECT_VALUE);
- args.getArray()[0] <<= val;
- Reference<container::XNameAccess> xNameAccess(xConfig->createInstanceWithArguments(SERVICENAME_CFGREADACCESS,args), UNO_QUERY);
- if( xNameAccess.is() )
- {
- rtl::OUString sURL;
- //throws css::container::NoSuchElementException, css::lang::WrappedTargetException
- Any value( xNameAccess->getByName(rtl::OUString::createFromAscii(pNode)) );
- sURL = value.get<rtl::OUString> ();
- localizeWebserviceURI(sURL);
-
- Reference< com::sun::star::system::XSystemShellExecute > xSystemShellExecute(
- com::sun::star::system::SystemShellExecute::create(comphelper::getProcessComponentContext()));
- //throws css::lang::IllegalArgumentException, css::system::SystemShellExecuteException
- xSystemShellExecute->execute( sURL, rtl::OUString(), com::sun::star::system::SystemShellExecuteFlags::URIS_ONLY);
- }
+ rtl::OUString sURL;
+ //throws css::container::NoSuchElementException, css::lang::WrappedTargetException
+ Any value( xNameAccess->getByName(rtl::OUString::createFromAscii(pNode)) );
+ sURL = value.get<rtl::OUString> ();
+ localizeWebserviceURI(sURL);
+
+ Reference< com::sun::star::system::XSystemShellExecute > xSystemShellExecute(
+ com::sun::star::system::SystemShellExecute::create(comphelper::getProcessComponentContext()));
+ //throws css::lang::IllegalArgumentException, css::system::SystemShellExecuteException
+ xSystemShellExecute->execute( sURL, rtl::OUString(), com::sun::star::system::SystemShellExecuteFlags::URIS_ONLY);
}
}
catch (const Exception&)
diff --git a/framework/source/services/desktop.cxx b/framework/source/services/desktop.cxx
index 713ad4ad93e1..bd281a361e7b 100644
--- a/framework/source/services/desktop.cxx
+++ b/framework/source/services/desktop.cxx
@@ -48,7 +48,6 @@
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/frame/FrameSearchFlag.hpp>
-#include <com/sun/star/awt/XToolkit.hpp>
#include <com/sun/star/awt/XWindow.hpp>
#include <com/sun/star/awt/XWindowPeer.hpp>
#include <com/sun/star/awt/WindowDescriptor.hpp>
@@ -272,19 +271,17 @@ sal_Bool SAL_CALL Desktop::terminate()
{
TransactionGuard aTransaction( m_aTransactionManager, E_HARDEXCEPTIONS );
- SYNCHRONIZED_START
- ReadGuard aReadLock( m_aLock );
+ ReadGuard aReadLock( m_aLock ); // start synchronize
- css::uno::Reference< css::frame::XTerminateListener > xPipeTerminator = m_xPipeTerminator;
- css::uno::Reference< css::frame::XTerminateListener > xQuickLauncher = m_xQuickLauncher;
- css::uno::Reference< css::frame::XTerminateListener > xSWThreadManager = m_xSWThreadManager;
- css::uno::Reference< css::frame::XTerminateListener > xSfxTerminator = m_xSfxTerminator;
+ css::uno::Reference< css::frame::XTerminateListener > xPipeTerminator = m_xPipeTerminator;
+ css::uno::Reference< css::frame::XTerminateListener > xQuickLauncher = m_xQuickLauncher;
+ css::uno::Reference< css::frame::XTerminateListener > xSWThreadManager = m_xSWThreadManager;
+ css::uno::Reference< css::frame::XTerminateListener > xSfxTerminator = m_xSfxTerminator;
- css::lang::EventObject aEvent ( static_cast< ::cppu::OWeakObject* >(this) );
- ::sal_Bool bAskQuickStart = !m_bSuspendQuickstartVeto ;
+ css::lang::EventObject aEvent ( static_cast< ::cppu::OWeakObject* >(this) );
+ ::sal_Bool bAskQuickStart = !m_bSuspendQuickstartVeto ;
- aReadLock.unlock();
- SYNCHRONIZED_END
+ aReadLock.unlock(); // end synchronize
//-------------------------------------------------------------------------------------------------------------
// Ask normal terminate listener. They could stop terminate without closing any open document.
@@ -1180,30 +1177,29 @@ void SAL_CALL Desktop::dispose()
fprintf( stderr, "This used to be an assertion failure: Desktop disposed before terminating it,\n"
"but nothing bad seems to happen anyway?\n" );
#endif
- SYNCHRONIZED_START
- WriteGuard aWriteLock( m_aLock );
- // Look for multiple calls of this method!
- // If somewhere call dispose() twice - he will be stopped here realy!!!
- TransactionGuard aTransaction( m_aTransactionManager, E_HARDEXCEPTIONS );
-
- // Now - we are alone and its the first call of this method ...
- // otherwise call before had thrown a DisposedException / hopefully .-)
- // But we dont use the transaction object created before ... we reset it immediatly ...
- // two lines of code ... for what ?
- // The answer: We wished to synchronize concurrent dispose() calls -> OK
- // But next line will wait for all currently running transaction (even if they
- // are running within the same thread!) So we would block ourself there if aTransaction
- // will stay registered .-)
- aTransaction.stop();
-
- // Disable this instance for further work.
- // This will wait for all current running transactions ...
- // and reject all new incoming requests!
- m_aTransactionManager.setWorkingMode( E_BEFORECLOSE );
+ WriteGuard aWriteLock( m_aLock ); // start synchronize
- aWriteLock.unlock();
- SYNCHRONIZED_END
+ // Look for multiple calls of this method!
+ // If somewhere call dispose() twice - he will be stopped here realy!!!
+ TransactionGuard aTransaction( m_aTransactionManager, E_HARDEXCEPTIONS );
+
+ // Now - we are alone and its the first call of this method ...
+ // otherwise call before had thrown a DisposedException / hopefully .-)
+ // But we dont use the transaction object created before ... we reset it immediatly ...
+ // two lines of code ... for what ?
+ // The answer: We wished to synchronize concurrent dispose() calls -> OK
+ // But next line will wait for all currently running transaction (even if they
+ // are running within the same thread!) So we would block ourself there if aTransaction
+ // will stay registered .-)
+ aTransaction.stop();
+
+ // Disable this instance for further work.
+ // This will wait for all current running transactions ...
+ // and reject all new incoming requests!
+ m_aTransactionManager.setWorkingMode( E_BEFORECLOSE );
+
+ aWriteLock.unlock(); // end synchronize
// Following lines of code can be called outside a synchronized block ...
// Because our transaction manager will block all new requests to this object.
@@ -1899,11 +1895,9 @@ void Desktop::impl_sendNotifyTerminationEvent()
//=============================================================================
::sal_Bool Desktop::impl_closeFrames(::sal_Bool bAllowUI)
{
- SYNCHRONIZED_START
- ReadGuard aReadLock( m_aLock );
- css::uno::Sequence< css::uno::Reference< css::frame::XFrame > > lFrames = m_aChildTaskContainer.getAllElements();
- aReadLock.unlock();
- SYNCHRONIZED_END
+ ReadGuard aReadLock( m_aLock ); // start synchronize
+ css::uno::Sequence< css::uno::Reference< css::frame::XFrame > > lFrames = m_aChildTaskContainer.getAllElements();
+ aReadLock.unlock(); // end synchronize
::sal_Int32 c = lFrames.getLength();
::sal_Int32 i = 0;
diff --git a/framework/source/services/dispatchhelper.cxx b/framework/source/services/dispatchhelper.cxx
index e3b264e47696..f70f853a2761 100644
--- a/framework/source/services/dispatchhelper.cxx
+++ b/framework/source/services/dispatchhelper.cxx
@@ -44,7 +44,7 @@ namespace framework{
DEFINE_XSERVICEINFO_MULTISERVICE(DispatchHelper ,
::cppu::OWeakObject ,
- SERVICENAME_DISPATCHHELPER ,
+ "com.sun.star.frame.DispatchHelper",
IMPLEMENTATIONNAME_DISPATCHHELPER)
DEFINE_INIT_SERVICE( DispatchHelper, {} )
diff --git a/framework/source/services/frame.cxx b/framework/source/services/frame.cxx
index e3bf76b76006..5d956076d5bc 100644
--- a/framework/source/services/frame.cxx
+++ b/framework/source/services/frame.cxx
@@ -54,6 +54,7 @@
#include <com/sun/star/util/URLTransformer.hpp>
#include <com/sun/star/util/XURLTransformer.hpp>
#include <com/sun/star/util/XCloseable.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XDevice.hpp>
#include <com/sun/star/awt/XTopWindow.hpp>
#include <com/sun/star/frame/XDesktop.hpp>
@@ -599,7 +600,7 @@ void SAL_CALL Frame::initialize( const css::uno::Reference< css::awt::XWindow >&
m_pWindowCommandDispatch = new WindowCommandDispatch(xSMGR, this);
// Initialize title functionality
- TitleHelper* pTitleHelper = new TitleHelper(xSMGR);
+ TitleHelper* pTitleHelper = new TitleHelper( comphelper::getComponentContext(xSMGR) );
m_xTitleHelper = css::uno::Reference< css::frame::XTitle >(static_cast< ::cppu::OWeakObject* >(pTitleHelper), css::uno::UNO_QUERY_THROW);
pTitleHelper->setOwner(xThis);
}
@@ -2926,15 +2927,12 @@ void Frame::implts_startWindowListening()
{
xTopWindow->addTopWindowListener( xTopWindowListener );
- css::uno::Reference< css::awt::XDataTransferProviderAccess > xTransfer( xFactory->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY );
- if( xTransfer.is() == sal_True )
+ css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(xFactory) );
+ css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xToolkit->getDropTarget( xContainerWindow );
+ if( xDropTarget.is() == sal_True )
{
- css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xTransfer->getDropTarget( xContainerWindow );
- if( xDropTarget.is() == sal_True )
- {
- xDropTarget->addDropTargetListener( xDragDropListener );
- xDropTarget->setActive( sal_True );
- }
+ xDropTarget->addDropTargetListener( xDragDropListener );
+ xDropTarget->setActive( sal_True );
}
}
}
@@ -2969,15 +2967,12 @@ void Frame::implts_stopWindowListening()
{
xTopWindow->removeTopWindowListener( xTopWindowListener );
- css::uno::Reference< css::awt::XDataTransferProviderAccess > xTransfer( xFactory->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY );
- if( xTransfer.is() == sal_True )
+ css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(xFactory) );
+ css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xToolkit->getDropTarget( xContainerWindow );
+ if( xDropTarget.is() == sal_True )
{
- css::uno::Reference< css::datatransfer::dnd::XDropTarget > xDropTarget = xTransfer->getDropTarget( xContainerWindow );
- if( xDropTarget.is() == sal_True )
- {
- xDropTarget->removeDropTargetListener( xDragDropListener );
- xDropTarget->setActive( sal_False );
- }
+ xDropTarget->removeDropTargetListener( xDragDropListener );
+ xDropTarget->setActive( sal_False );
}
}
}
diff --git a/framework/source/services/license.cxx b/framework/source/services/license.cxx
index 6dff1bf129e3..a7f435fffb63 100644
--- a/framework/source/services/license.cxx
+++ b/framework/source/services/license.cxx
@@ -38,6 +38,7 @@
#include <com/sun/star/frame/XDesktop.hpp>
#include <com/sun/star/lang/XInitialization.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/util/XChangesBatch.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
@@ -64,6 +65,7 @@ using namespace ::osl ;
using namespace ::cppu ;
using namespace ::com::sun::star::uno ;
using namespace ::com::sun::star::beans ;
+using namespace ::com::sun::star::configuration ;
using namespace ::com::sun::star::lang ;
using namespace ::com::sun::star::util ;
using namespace ::com::sun::star::frame ;
@@ -81,7 +83,7 @@ static const char *szWNTLicenseExt = ".txt";
//*****************************************************************************************************************
// constructor
//*****************************************************************************************************************
-License::License( const Reference< XMultiServiceFactory >& xFactory )
+License::License( const Reference< XComponentContext >& rxContext )
// Init baseclasses first
// Attention:
// Don't change order of initialization!
@@ -91,7 +93,7 @@ License::License( const Reference< XMultiServiceFactory >& xFactory )
: ThreadHelpBase ( &Application::GetSolarMutex() )
, OWeakObject ( )
// Init member
- , m_xFactory ( xFactory )
+ , m_xContext ( rxContext )
, m_bTerminate ( sal_False )
{
}
@@ -122,7 +124,7 @@ DEFINE_XTYPEPROVIDER_4 ( License ,
XCloseable
)
-DEFINE_XSERVICEINFO_MULTISERVICE ( License,
+DEFINE_XSERVICEINFO_MULTISERVICE_2 ( License,
OWeakObject ,
SERVICENAME_LICENSE ,
IMPLEMENTATIONNAME_LICENSE
@@ -262,12 +264,10 @@ css::uno::Any SAL_CALL License::execute(const css::uno::Sequence< css::beans::Na
#endif
// check if we need to show the license at all
// open org.openoffice.Setup/Office/ooLicenseAcceptDate
- ::rtl::OUString sConfigSrvc = SERVICENAME_CFGPROVIDER;
::rtl::OUString sAccessSrvc("com.sun.star.configuration.ConfigurationUpdateAccess");
// get configuration provider
- Reference< XMultiServiceFactory > theConfigProvider = Reference< XMultiServiceFactory >(
- m_xFactory->createInstance(sConfigSrvc), UNO_QUERY_THROW);
+ Reference< XMultiServiceFactory > theConfigProvider = theDefaultProvider::get( m_xContext );
Sequence< Any > theArgs(1);
NamedValue v;
v.Name = ::rtl::OUString("NodePath");
diff --git a/framework/source/services/mediatypedetectionhelper.cxx b/framework/source/services/mediatypedetectionhelper.cxx
index efe7097d50bf..4ab19425950a 100644
--- a/framework/source/services/mediatypedetectionhelper.cxx
+++ b/framework/source/services/mediatypedetectionhelper.cxx
@@ -55,7 +55,7 @@ MediaTypeDetectionHelper::~MediaTypeDetectionHelper()
DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( MediaTypeDetectionHelper
, ::cppu::OWeakObject
- , SERVICENAME_MEDIATYPEDETECTIONHELPER
+ , "com.sun.star.frame.MediaTypeDetectionHelper"
, IMPLEMENTATIONNAME_MEDIATYPEDETECTIONHELPER
)
diff --git a/framework/source/services/modulemanager.cxx b/framework/source/services/modulemanager.cxx
index 8860f0d56c23..307e3fc1af2e 100644
--- a/framework/source/services/modulemanager.cxx
+++ b/framework/source/services/modulemanager.cxx
@@ -67,7 +67,7 @@ ModuleManager::impl_createFactory(
css::uno::Sequence< rtl::OUString >
ModuleManager::impl_getSupportedServiceNames() {
css::uno::Sequence< rtl::OUString > s(1);
- s[0] = SERVICENAME_MODULEMANAGER;
+ s[0] = "com.sun.star.frame.ModuleManager";
return s;
}
@@ -194,7 +194,7 @@ void SAL_CALL ModuleManager::replaceByName(const ::rtl::OUString& sName ,
// flush changes (because an error occurred) we will read them later. If we use a different config access
// we can close it without a flush ... and our read data wont be affected .-)
css::uno::Reference< css::uno::XInterface > xCfg = ::comphelper::ConfigurationHelper::openConfig(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
rtl::OUString(CFGPATH_FACTORIES),
::comphelper::ConfigurationHelper::E_STANDARD);
css::uno::Reference< css::container::XNameAccess > xModules (xCfg, css::uno::UNO_QUERY_THROW);
@@ -333,7 +333,7 @@ css::uno::Reference< css::container::XNameAccess > ModuleManager::implts_getConf
try
{
xCfg = ::comphelper::ConfigurationHelper::openConfig(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
rtl::OUString(CFGPATH_FACTORIES),
::comphelper::ConfigurationHelper::E_READONLY);
}
diff --git a/framework/source/services/pathsettings.cxx b/framework/source/services/pathsettings.cxx
index f8698868009d..00b807bef137 100644
--- a/framework/source/services/pathsettings.cxx
+++ b/framework/source/services/pathsettings.cxx
@@ -1112,7 +1112,7 @@ css::uno::Reference< css::container::XNameAccess > PathSettings::fa_getCfgOld()
{
xCfg = css::uno::Reference< css::container::XNameAccess >(
::comphelper::ConfigurationHelper::openConfig(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
CFG_NODE_OLD,
::comphelper::ConfigurationHelper::E_STANDARD), // not readonly! Somtimes we need write access there !!!
css::uno::UNO_QUERY_THROW);
@@ -1142,7 +1142,7 @@ css::uno::Reference< css::container::XNameAccess > PathSettings::fa_getCfgNew()
{
xCfg = css::uno::Reference< css::container::XNameAccess >(
::comphelper::ConfigurationHelper::openConfig(
- xSMGR,
+ comphelper::getComponentContext(xSMGR),
CFG_NODE_NEW,
::comphelper::ConfigurationHelper::E_STANDARD),
css::uno::UNO_QUERY_THROW);
diff --git a/framework/source/services/sessionlistener.cxx b/framework/source/services/sessionlistener.cxx
index abe3761ec46d..5b573c6b8e93 100644
--- a/framework/source/services/sessionlistener.cxx
+++ b/framework/source/services/sessionlistener.cxx
@@ -45,6 +45,7 @@
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/PropertyState.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/frame/AutoRecovery.hpp>
#include <com/sun/star/frame/XFramesSupplier.hpp>
#include <com/sun/star/frame/XStorable.hpp>
#include <com/sun/star/frame/XComponentLoader.hpp>
@@ -144,8 +145,8 @@ void SessionListener::StoreSession( sal_Bool bAsync )
// on stop event m_rSessionManager->saveDone(this); in case of asynchronous call
// in case of synchronous call the caller should do saveDone() call himself!
- css::uno::Reference< XDispatch > xDispatch(m_xSMGR->createInstance(SERVICENAME_AUTORECOVERY), UNO_QUERY_THROW);
- css::uno::Reference< XURLTransformer > xURLTransformer(URLTransformer::create(::comphelper::getComponentContext(m_xSMGR)));
+ css::uno::Reference< XDispatch > xDispatch = css::frame::AutoRecovery::create( ::comphelper::getComponentContext(m_xSMGR) );
+ css::uno::Reference< XURLTransformer > xURLTransformer = URLTransformer::create( ::comphelper::getComponentContext(m_xSMGR) );
URL aURL;
aURL.Complete = OUString("vnd.sun.star.autorecovery:/doSessionSave");
xURLTransformer->parseStrict(aURL);
@@ -177,8 +178,8 @@ void SessionListener::QuitSessionQuietly()
// xd->dispatch("vnd.sun.star.autorecovery:/doSessionQuietQuit, async=false
// it is done synchronously to avoid conflict with normal quit process
- css::uno::Reference< XDispatch > xDispatch(m_xSMGR->createInstance(SERVICENAME_AUTORECOVERY), UNO_QUERY_THROW);
- css::uno::Reference< XURLTransformer > xURLTransformer(URLTransformer::create(::comphelper::getComponentContext(m_xSMGR)));
+ css::uno::Reference< XDispatch > xDispatch = css::frame::AutoRecovery::create( ::comphelper::getComponentContext(m_xSMGR) );
+ css::uno::Reference< XURLTransformer > xURLTransformer = URLTransformer::create( ::comphelper::getComponentContext(m_xSMGR) );
URL aURL;
aURL.Complete = OUString("vnd.sun.star.autorecovery:/doSessionQuietQuit");
xURLTransformer->parseStrict(aURL);
@@ -257,7 +258,7 @@ sal_Bool SAL_CALL SessionListener::doRestore()
ResetableGuard aGuard(m_aLock);
m_bRestored = sal_False;
try {
- css::uno::Reference< XDispatch > xDispatch(m_xSMGR->createInstance(SERVICENAME_AUTORECOVERY), UNO_QUERY_THROW);
+ css::uno::Reference< XDispatch > xDispatch = css::frame::AutoRecovery::create( ::comphelper::getComponentContext(m_xSMGR) );
URL aURL;
aURL.Complete = OUString("vnd.sun.star.autorecovery:/doSessionRestore");
diff --git a/framework/source/services/substitutepathvars.cxx b/framework/source/services/substitutepathvars.cxx
index f554854388d8..68178a52dcc7 100644
--- a/framework/source/services/substitutepathvars.cxx
+++ b/framework/source/services/substitutepathvars.cxx
@@ -570,7 +570,7 @@ void SubstitutePathVariables_Impl::ReadSharePointRuleSetFromConfiguration(
//*****************************************************************************************************************
DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( SubstitutePathVariables ,
::cppu::OWeakObject ,
- SERVICENAME_SUBSTITUTEPATHVARIABLES ,
+ "com.sun.star.util.PathSubstitution",
IMPLEMENTATIONNAME_SUBSTITUTEPATHVARIABLES )
DEFINE_INIT_SERVICE ( SubstitutePathVariables, {} )
@@ -698,7 +698,7 @@ rtl::OUString SubstitutePathVariables::GetWorkPath() const
try
{
::comphelper::ConfigurationHelper::readDirectKey(
- m_xServiceManager,
+ comphelper::getComponentContext(m_xServiceManager),
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("org.openoffice.Office.Paths")),
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Paths/Work")),
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("WritePath")),
@@ -723,7 +723,7 @@ rtl::OUString SubstitutePathVariables::GetWorkVariableValue() const
try
{
::comphelper::ConfigurationHelper::readDirectKey(
- m_xServiceManager,
+ comphelper::getComponentContext(m_xServiceManager),
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("org.openoffice.Office.Paths")),
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Variables")),
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Work")),
diff --git a/framework/source/services/taskcreatorsrv.cxx b/framework/source/services/taskcreatorsrv.cxx
index 56a308f88045..d7fb64392ecd 100644
--- a/framework/source/services/taskcreatorsrv.cxx
+++ b/framework/source/services/taskcreatorsrv.cxx
@@ -40,6 +40,7 @@
#include <com/sun/star/frame/XController.hpp>
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/frame/XDesktop.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XTopWindow.hpp>
#include <com/sun/star/awt/WindowDescriptor.hpp>
#include <com/sun/star/awt/WindowAttribute.hpp>
@@ -220,7 +221,7 @@ css::uno::Reference< css::awt::XWindow > TaskCreatorService::implts_createContai
// <- SAFE
// get toolkit to create task container window
- css::uno::Reference< css::awt::XToolkit > xToolkit( xSMGR->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY_THROW);
+ css::uno::Reference< css::awt::XToolkit2 > xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(xSMGR) );
// Check if child frames can be created realy. We need at least a valid window at the parent frame ...
css::uno::Reference< css::awt::XWindowPeer > xParentWindowPeer;
diff --git a/framework/source/tabwin/tabwindow.cxx b/framework/source/tabwin/tabwindow.cxx
index d1b287492639..e0bdb92bfb2f 100644
--- a/framework/source/tabwin/tabwindow.cxx
+++ b/framework/source/tabwin/tabwindow.cxx
@@ -32,6 +32,7 @@
#include <threadhelp/resetableguard.hxx>
#include <com/sun/star/util/XURLTransformer.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/PosSize.hpp>
#include <com/sun/star/awt/WindowDescriptor.hpp>
#include <com/sun/star/beans/PropertyAttribute.hpp>
@@ -299,15 +300,14 @@ throw (css::uno::Exception, css::uno::RuntimeException)
{
css::beans::PropertyValue aPropValue;
css::uno::Reference< css::awt::XTopWindow > xTopWindow;
- css::uno::Reference< css::awt::XToolkit > xToolkit;
+ css::uno::Reference< css::awt::XToolkit2 > xToolkit;
css::awt::WindowDescriptor aDescriptor;
if ( xSMGR.is() )
{
try
{
- xToolkit = css::uno::Reference< css::awt::XToolkit >(
- xSMGR->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY );
+ xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(xSMGR) );
}
catch ( const css::uno::RuntimeException& )
{
diff --git a/framework/source/tabwin/tabwinfactory.cxx b/framework/source/tabwin/tabwinfactory.cxx
index a3d7815fd7ce..89a58d2928a9 100644
--- a/framework/source/tabwin/tabwinfactory.cxx
+++ b/framework/source/tabwin/tabwinfactory.cxx
@@ -33,6 +33,7 @@
#include <com/sun/star/util/XURLTransformer.hpp>
#include <com/sun/star/lang/XInitialization.hpp>
+#include <com/sun/star/awt/Toolkit.hpp>
#include <com/sun/star/awt/XTopWindow.hpp>
#include <com/sun/star/awt/WindowAttribute.hpp>
@@ -90,7 +91,7 @@ throw ( css::uno::Exception, css::uno::RuntimeException )
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
ResetableGuard aLock( m_aLock );
- css::uno::Reference< css::awt::XToolkit > xToolkit = m_xToolkit;
+ css::uno::Reference< css::awt::XToolkit2 > xToolkit = m_xToolkit;
css::uno::Reference< css::lang::XMultiServiceFactory > xSMGR( m_xServiceManager );
aLock.unlock();
/* SAFE AREA ----------------------------------------------------------------------------------------------- */
@@ -110,37 +111,31 @@ throw ( css::uno::Exception, css::uno::RuntimeException )
if ( !xToolkit.is() && xSMGR.is() )
{
- xToolkit = css::uno::Reference< css::awt::XToolkit >( xSMGR->createInstance( SERVICENAME_VCLTOOLKIT ), css::uno::UNO_QUERY );
- if ( xToolkit.is() )
- {
- /* SAFE AREA ----------------------------------------------------------------------------------------------- */
- aLock.lock();
- m_xToolkit = xToolkit;
- aLock.unlock();
- /* SAFE AREA ----------------------------------------------------------------------------------------------- */
- }
+ xToolkit = css::awt::Toolkit::create( comphelper::getComponentContext(xSMGR) );
+ /* SAFE AREA ----------------------------------------------------------------------------------------------- */
+ aLock.lock();
+ m_xToolkit = xToolkit;
+ aLock.unlock();
+ /* SAFE AREA ----------------------------------------------------------------------------------------------- */
}
if ( !xTopWindow.is() )
{
- if ( xToolkit.is() )
- {
- // describe window properties.
- css::awt::WindowDescriptor aDescriptor;
- aDescriptor.Type = css::awt::WindowClass_TOP ;
- aDescriptor.ParentIndex = -1 ;
- aDescriptor.Parent = css::uno::Reference< css::awt::XWindowPeer >() ;
- aDescriptor.Bounds = css::awt::Rectangle(0,0,0,0) ;
- aDescriptor.WindowAttributes = css::awt::WindowAttribute::BORDER|
- css::awt::WindowAttribute::SIZEABLE|
- css::awt::WindowAttribute::MOVEABLE|
- css::awt::WindowAttribute::CLOSEABLE|
- css::awt::WindowAttribute::MINSIZE;
-
- // create a parent window
- xTopWindow = css::uno::Reference< css::awt::XTopWindow >(
- xToolkit->createWindow( aDescriptor ), css::uno::UNO_QUERY );
- }
+ // describe window properties.
+ css::awt::WindowDescriptor aDescriptor;
+ aDescriptor.Type = css::awt::WindowClass_TOP ;
+ aDescriptor.ParentIndex = -1 ;
+ aDescriptor.Parent = css::uno::Reference< css::awt::XWindowPeer >() ;
+ aDescriptor.Bounds = css::awt::Rectangle(0,0,0,0) ;
+ aDescriptor.WindowAttributes = css::awt::WindowAttribute::BORDER|
+ css::awt::WindowAttribute::SIZEABLE|
+ css::awt::WindowAttribute::MOVEABLE|
+ css::awt::WindowAttribute::CLOSEABLE|
+ css::awt::WindowAttribute::MINSIZE;
+
+ // create a parent window
+ xTopWindow = css::uno::Reference< css::awt::XTopWindow >(
+ xToolkit->createWindow( aDescriptor ), css::uno::UNO_QUERY );
}
if ( xTopWindow.is() )
diff --git a/framework/source/uiconfiguration/globalsettings.cxx b/framework/source/uiconfiguration/globalsettings.cxx
index de8304da6534..4567c5ceddd9 100644
--- a/framework/source/uiconfiguration/globalsettings.cxx
+++ b/framework/source/uiconfiguration/globalsettings.cxx
@@ -32,6 +32,7 @@
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/container/XContainer.hpp>
@@ -74,7 +75,7 @@ class GlobalSettings_Access : public ::com::sun::star::lang::XComponent ,
public ::cppu::OWeakObject
{
public:
- GlobalSettings_Access( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager );
+ GlobalSettings_Access( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
virtual ~GlobalSettings_Access();
// XInterface, XTypeProvider, XServiceInfo
@@ -103,7 +104,7 @@ class GlobalSettings_Access : public ::com::sun::star::lang::XComponent ,
rtl::OUString m_aPropLocked;
rtl::OUString m_aPropDocked;
::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess > m_xConfigAccess;
- ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > m_xServiceManager;
+ ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext> m_xContext;
};
@@ -116,7 +117,7 @@ DEFINE_XINTERFACE_2 ( GlobalSettings_Access ,
DIRECT_INTERFACE ( css::lang::XEventListener )
)
-GlobalSettings_Access::GlobalSettings_Access( const css::uno::Reference< css::lang::XMultiServiceFactory >& rServiceManager ) :
+GlobalSettings_Access::GlobalSettings_Access( const css::uno::Reference< css::uno::XComponentContext >& rxContext ) :
ThreadHelpBase(),
m_bDisposed( sal_False ),
m_bConfigRead( sal_False ),
@@ -125,7 +126,7 @@ GlobalSettings_Access::GlobalSettings_Access( const css::uno::Reference< css::la
m_aPropStatesEnabled( RTL_CONSTASCII_USTRINGPARAM( GLOBALSETTINGS_PROPERTY_STATESENABLED )),
m_aPropLocked( RTL_CONSTASCII_USTRINGPARAM( GLOBALSETTINGS_PROPERTY_LOCKED )),
m_aPropDocked( RTL_CONSTASCII_USTRINGPARAM( GLOBALSETTINGS_PROPERTY_DOCKED )),
- m_xServiceManager( rServiceManager )
+ m_xContext( rxContext )
{
}
@@ -255,14 +256,11 @@ sal_Bool GlobalSettings_Access::impl_initConfigAccess()
try
{
- css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider;
- if ( m_xServiceManager.is() )
- xConfigProvider = css::uno::Reference< css::lang::XMultiServiceFactory >(
- m_xServiceManager->createInstance( SERVICENAME_CFGPROVIDER ),
- css::uno::UNO_QUERY );
-
- if ( xConfigProvider.is() )
+ if ( m_xContext.is() )
{
+ css::uno::Reference< css::lang::XMultiServiceFactory > xConfigProvider =
+ css::configuration::theDefaultProvider::get( m_xContext );
+
aPropValue.Name = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "nodepath" ));
aPropValue.Value = css::uno::makeAny( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( GLOBALSETTINGS_ROOT_ACCESS )));
aArgs[0] = css::uno::makeAny( aPropValue );
@@ -275,9 +273,8 @@ sal_Bool GlobalSettings_Access::impl_initConfigAccess()
SERVICENAME_CFGREADACCESS, aArgs ),
css::uno::UNO_QUERY );
- css::uno::Reference< css::lang::XComponent > xComponent( xConfigProvider, css::uno::UNO_QUERY );
- if ( xComponent.is() )
- xComponent->addEventListener(
+ css::uno::Reference< css::lang::XComponent >(
+ xConfigProvider, css::uno::UNO_QUERY_THROW )->addEventListener(
css::uno::Reference< css::lang::XEventListener >(
static_cast< cppu::OWeakObject* >( this ),
css::uno::UNO_QUERY ));
@@ -302,16 +299,16 @@ sal_Bool GlobalSettings_Access::impl_initConfigAccess()
struct mutexGlobalSettings : public rtl::Static< osl::Mutex, mutexGlobalSettings > {};
static GlobalSettings_Access* pStaticSettings = 0;
-static GlobalSettings_Access* GetGlobalSettings( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rSrvMgr )
+static GlobalSettings_Access* GetGlobalSettings( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext )
{
osl::MutexGuard aGuard(mutexGlobalSettings::get());
if ( !pStaticSettings )
- pStaticSettings = new GlobalSettings_Access( rSrvMgr );
+ pStaticSettings = new GlobalSettings_Access( rxContext );
return pStaticSettings;
}
-GlobalSettings::GlobalSettings( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& rSrvMgr ) :
- m_xSrvMgr( rSrvMgr )
+GlobalSettings::GlobalSettings( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext ) :
+ m_xContext( rxContext )
{
}
@@ -322,7 +319,7 @@ GlobalSettings::~GlobalSettings()
// settings access
sal_Bool GlobalSettings::HasStatesInfo( UIElementType eElementType )
{
- GlobalSettings_Access* pSettings( GetGlobalSettings( m_xSrvMgr ));
+ GlobalSettings_Access* pSettings( GetGlobalSettings( m_xContext ));
if ( pSettings )
return pSettings->HasStatesInfo( eElementType );
@@ -332,7 +329,7 @@ sal_Bool GlobalSettings::HasStatesInfo( UIElementType eElementType )
sal_Bool GlobalSettings::GetStateInfo( UIElementType eElementType, StateInfo eStateInfo, ::com::sun::star::uno::Any& aValue )
{
- GlobalSettings_Access* pSettings( GetGlobalSettings( m_xSrvMgr ));
+ GlobalSettings_Access* pSettings( GetGlobalSettings( m_xContext ));
if ( pSettings )
return pSettings->GetStateInfo( eElementType, eStateInfo, aValue );
diff --git a/framework/source/uiconfiguration/imagemanagerimpl.cxx b/framework/source/uiconfiguration/imagemanagerimpl.cxx
index 3e3b5033290c..c6f3389b2eb9 100644
--- a/framework/source/uiconfiguration/imagemanagerimpl.cxx
+++ b/framework/source/uiconfiguration/imagemanagerimpl.cxx
@@ -614,7 +614,7 @@ sal_Bool ImageManagerImpl::implts_storeUserImages(
xOutputStream = xStream->getOutputStream();
if ( xOutputStream.is() )
- ImagesConfiguration::StoreImages( m_xServiceManager, xOutputStream, aUserImageListInfo );
+ ImagesConfiguration::StoreImages( comphelper::getComponentContext(m_xServiceManager), xOutputStream, aUserImageListInfo );
// Commit user image storage
xTransaction = uno::Reference< XTransactedObject >( xUserImageStorage, UNO_QUERY );
diff --git a/framework/source/uiconfiguration/moduleuicfgsupplier.cxx b/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
index 0753e9d45e96..088271f1287e 100644
--- a/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
+++ b/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
@@ -34,6 +34,7 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/embed/ElementModes.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XSeekable.hpp>
@@ -109,7 +110,7 @@ ModuleUIConfigurationManagerSupplier::ModuleUIConfigurationManagerSupplier( cons
ThreadHelpBase( &Application::GetSolarMutex() )
, m_bDisposed( false )
//TODO_AS , m_bInit( false )
- , m_xModuleMgr( Reference< XModuleManager >( xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY ))
+ , m_xModuleMgr( ModuleManager::create( comphelper::getComponentContext(xServiceManager) ) )
, m_xServiceManager( xServiceManager )
, m_aListenerContainer( m_aLock.getShareableOslMutex() )
{
diff --git a/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx b/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx
index 2a6b451303c3..85a44285bbc3 100644
--- a/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx
+++ b/framework/source/uiconfiguration/moduleuiconfigurationmanager.cxx
@@ -468,7 +468,7 @@ void ModuleUIConfigurationManager::impl_storeElementTypeData( Reference< XStorag
{
try
{
- ToolBoxConfiguration::StoreToolBox( m_xServiceManager, xOutputStream, rElement.xSettings );
+ ToolBoxConfiguration::StoreToolBox( comphelper::getComponentContext(m_xServiceManager), xOutputStream, rElement.xSettings );
}
catch ( const ::com::sun::star::lang::WrappedTargetException& )
{
@@ -480,7 +480,7 @@ void ModuleUIConfigurationManager::impl_storeElementTypeData( Reference< XStorag
{
try
{
- StatusBarConfiguration::StoreStatusBar( m_xServiceManager, xOutputStream, rElement.xSettings );
+ StatusBarConfiguration::StoreStatusBar( comphelper::getComponentContext(m_xServiceManager), xOutputStream, rElement.xSettings );
}
catch ( const ::com::sun::star::lang::WrappedTargetException& )
{
diff --git a/framework/source/uiconfiguration/uicategorydescription.cxx b/framework/source/uiconfiguration/uicategorydescription.cxx
index 18ed4445d477..7f701e8f4446 100644
--- a/framework/source/uiconfiguration/uicategorydescription.cxx
+++ b/framework/source/uiconfiguration/uicategorydescription.cxx
@@ -36,6 +36,7 @@
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/container/XContainer.hpp>
@@ -55,6 +56,7 @@
using namespace com::sun::star::uno;
using namespace com::sun::star::lang;
using namespace com::sun::star::beans;
+using namespace com::sun::star::configuration;
using namespace com::sun::star::container;
using namespace ::com::sun::star::frame;
@@ -85,7 +87,7 @@ class ConfigurationAccess_UICategory : // Order is neccessary for right initiali
public ::cppu::WeakImplHelper2<XNameAccess,XContainerListener>
{
public:
- ConfigurationAccess_UICategory( const ::rtl::OUString& aModuleName, const Reference< XNameAccess >& xGenericUICommands, const Reference< XMultiServiceFactory >& rServiceManager );
+ ConfigurationAccess_UICategory( const ::rtl::OUString& aModuleName, const Reference< XNameAccess >& xGenericUICommands, const Reference< XComponentContext >& rxContext );
virtual ~ConfigurationAccess_UICategory();
// XNameAccess
@@ -130,7 +132,6 @@ class ConfigurationAccess_UICategory : // Order is neccessary for right initiali
rtl::OUString m_aConfigCategoryAccess;
rtl::OUString m_aPropUIName;
Reference< XNameAccess > m_xGenericUICategories;
- Reference< XMultiServiceFactory > m_xServiceManager;
Reference< XMultiServiceFactory > m_xConfigProvider;
Reference< XNameAccess > m_xConfigAccess;
Reference< XContainerListener > m_xConfigListener;
@@ -143,12 +144,11 @@ class ConfigurationAccess_UICategory : // Order is neccessary for right initiali
// XInterface, XTypeProvider
//*****************************************************************************************************************
-ConfigurationAccess_UICategory::ConfigurationAccess_UICategory( const rtl::OUString& aModuleName, const Reference< XNameAccess >& rGenericUICategories, const Reference< XMultiServiceFactory >& rServiceManager ) :
+ConfigurationAccess_UICategory::ConfigurationAccess_UICategory( const rtl::OUString& aModuleName, const Reference< XNameAccess >& rGenericUICategories, const Reference< XComponentContext >& rxContext ) :
ThreadHelpBase(),
m_aConfigCategoryAccess( CONFIGURATION_ROOT_ACCESS ),
m_aPropUIName( CONFIGURATION_PROPERTY_NAME ),
m_xGenericUICategories( rGenericUICategories ),
- m_xServiceManager( rServiceManager ),
m_bConfigAccessInitialized( sal_False ),
m_bCacheFilled( sal_False )
{
@@ -157,7 +157,7 @@ ConfigurationAccess_UICategory::ConfigurationAccess_UICategory( const rtl::OUStr
m_aConfigCategoryAccess += aModuleName;
m_aConfigCategoryAccess += rtl::OUString( CONFIGURATION_CATEGORY_ELEMENT_ACCESS );
- m_xConfigProvider = Reference< XMultiServiceFactory >( rServiceManager->createInstance(SERVICENAME_CFGPROVIDER),UNO_QUERY );
+ m_xConfigProvider = theDefaultProvider::get( rxContext );
}
ConfigurationAccess_UICategory::~ConfigurationAccess_UICategory()
@@ -424,7 +424,7 @@ void SAL_CALL ConfigurationAccess_UICategory::disposing( const EventObject& aEve
//*****************************************************************************************************************
// XInterface, XTypeProvider, XServiceInfo
//*****************************************************************************************************************
-DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( UICategoryDescription ,
+DEFINE_XSERVICEINFO_ONEINSTANCESERVICE_2 ( UICategoryDescription ,
::cppu::OWeakObject ,
SERVICENAME_UICATEGORYDESCRIPTION ,
IMPLEMENTATIONNAME_UICATEGORYDESCRIPTION
@@ -432,12 +432,12 @@ DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( UICategoryDescription
DEFINE_INIT_SERVICE ( UICategoryDescription, {} )
-UICategoryDescription::UICategoryDescription( const Reference< XMultiServiceFactory >& xServiceManager ) :
- UICommandDescription(xServiceManager,true)
+UICategoryDescription::UICategoryDescription( const Reference< XComponentContext >& rxContext ) :
+ UICommandDescription(rxContext,true)
{
Reference< XNameAccess > xEmpty;
rtl::OUString aGenericCategories( "GenericCategories" );
- m_xGenericUICommands = new ConfigurationAccess_UICategory( aGenericCategories, xEmpty, xServiceManager );
+ m_xGenericUICommands = new ConfigurationAccess_UICategory( aGenericCategories, xEmpty, rxContext );
// insert generic categories mappings
m_aModuleToCommandFileMap.insert( ModuleToCommandFileMap::value_type(
@@ -455,7 +455,7 @@ UICategoryDescription::~UICategoryDescription()
}
Reference< XNameAccess > UICategoryDescription::impl_createConfigAccess(const ::rtl::OUString& _sName)
{
- return new ConfigurationAccess_UICategory( _sName,m_xGenericUICommands,m_xServiceManager );
+ return new ConfigurationAccess_UICategory( _sName, m_xGenericUICommands, m_xContext );
}
} // namespace framework
diff --git a/framework/source/uiconfiguration/uiconfigurationmanager.cxx b/framework/source/uiconfiguration/uiconfigurationmanager.cxx
index f19853f0ed0c..6ca9126caf87 100644
--- a/framework/source/uiconfiguration/uiconfigurationmanager.cxx
+++ b/framework/source/uiconfiguration/uiconfigurationmanager.cxx
@@ -397,7 +397,7 @@ void UIConfigurationManager::impl_storeElementTypeData( Reference< XStorage >& x
{
try
{
- ToolBoxConfiguration::StoreToolBox( m_xServiceManager, xOutputStream, rElement.xSettings );
+ ToolBoxConfiguration::StoreToolBox( comphelper::getComponentContext(m_xServiceManager), xOutputStream, rElement.xSettings );
}
catch ( const ::com::sun::star::lang::WrappedTargetException& )
{
@@ -409,7 +409,7 @@ void UIConfigurationManager::impl_storeElementTypeData( Reference< XStorage >& x
{
try
{
- StatusBarConfiguration::StoreStatusBar( m_xServiceManager, xOutputStream, rElement.xSettings );
+ StatusBarConfiguration::StoreStatusBar( comphelper::getComponentContext(m_xServiceManager), xOutputStream, rElement.xSettings );
}
catch ( const ::com::sun::star::lang::WrappedTargetException& )
{
diff --git a/framework/source/uiconfiguration/windowstateconfiguration.cxx b/framework/source/uiconfiguration/windowstateconfiguration.cxx
index 8a38346e391d..625aeb3128d8 100644
--- a/framework/source/uiconfiguration/windowstateconfiguration.cxx
+++ b/framework/source/uiconfiguration/windowstateconfiguration.cxx
@@ -34,9 +34,11 @@
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/container/XContainer.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/awt/Point.hpp>
#include <com/sun/star/awt/Size.hpp>
#include <com/sun/star/ui/DockingArea.hpp>
@@ -54,6 +56,7 @@ using namespace com::sun::star::uno;
using namespace com::sun::star::lang;
using namespace com::sun::star::beans;
using namespace com::sun::star::util;
+using namespace com::sun::star::configuration;
using namespace com::sun::star::container;
using namespace ::com::sun::star::frame;
using namespace ::com::sun::star::ui;
@@ -139,7 +142,7 @@ class ConfigurationAccess_WindowState : // interfaces
public ::cppu::OWeakObject
{
public:
- ConfigurationAccess_WindowState( const ::rtl::OUString& aWindowStateConfigFile, const Reference< XMultiServiceFactory >& rServiceManager );
+ ConfigurationAccess_WindowState( const ::rtl::OUString& aWindowStateConfigFile, const Reference< XComponentContext >& rxContext );
virtual ~ConfigurationAccess_WindowState();
// XInterface, XTypeProvider
@@ -249,7 +252,6 @@ class ConfigurationAccess_WindowState : // interfaces
::std::equal_to< ::rtl::OUString > > ResourceURLToInfoCache;
rtl::OUString m_aConfigWindowAccess;
- Reference< XMultiServiceFactory > m_xServiceManager;
Reference< XMultiServiceFactory > m_xConfigProvider;
Reference< XNameAccess > m_xConfigAccess;
Reference< XContainerListener > m_xConfigListener;
@@ -283,17 +285,16 @@ DEFINE_XTYPEPROVIDER_7 ( ConfigurationAccess_WindowState ,
css::lang::XTypeProvider
)
-ConfigurationAccess_WindowState::ConfigurationAccess_WindowState( const rtl::OUString& aModuleName, const Reference< XMultiServiceFactory >& rServiceManager ) :
+ConfigurationAccess_WindowState::ConfigurationAccess_WindowState( const rtl::OUString& aModuleName, const Reference< XComponentContext >& rxContext ) :
ThreadHelpBase(),
m_aConfigWindowAccess( CONFIGURATION_ROOT_ACCESS ),
- m_xServiceManager( rServiceManager ),
m_bConfigAccessInitialized( sal_False ),
m_bModified( sal_False )
{
// Create configuration hierachical access name
m_aConfigWindowAccess += aModuleName;
m_aConfigWindowAccess += rtl::OUString( CONFIGURATION_WINDOWSTATE_ACCESS );
- m_xConfigProvider = Reference< XMultiServiceFactory >( rServiceManager->createInstance( SERVICENAME_CFGPROVIDER ), UNO_QUERY );
+ m_xConfigProvider = theDefaultProvider::get( rxContext );
// Initialize access array with property names.
sal_Int32 n = 0;
@@ -1351,7 +1352,7 @@ DEFINE_XTYPEPROVIDER_4 ( WindowStateConfiguration
css::container::XElementAccess
)
-DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( WindowStateConfiguration ,
+DEFINE_XSERVICEINFO_ONEINSTANCESERVICE_2( WindowStateConfiguration ,
::cppu::OWeakObject ,
SERVICENAME_WINDOWSTATECONFIGURATION ,
IMPLEMENTATIONNAME_WINDOWSTATECONFIGURATION
@@ -1359,18 +1360,16 @@ DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( WindowStateConfiguration
DEFINE_INIT_SERVICE ( WindowStateConfiguration, {} )
-WindowStateConfiguration::WindowStateConfiguration( const Reference< XMultiServiceFactory >& xServiceManager ) :
+WindowStateConfiguration::WindowStateConfiguration( const Reference< XComponentContext >& rxContext ) :
ThreadHelpBase(),
- m_xServiceManager( xServiceManager )
+ m_xContext( rxContext )
{
- m_xModuleManager = Reference< XModuleManager >( m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ),
- UNO_QUERY );
+ m_xModuleManager = ModuleManager::create( m_xContext );
Reference< XNameAccess > xEmptyNameAccess;
- Reference< XNameAccess > xNameAccess( m_xModuleManager, UNO_QUERY_THROW );
Sequence< rtl::OUString > aElementNames;
try
{
- aElementNames = xNameAccess->getElementNames();
+ aElementNames = m_xModuleManager->getElementNames();
}
catch (const ::com::sun::star::uno::RuntimeException &)
{
@@ -1381,7 +1380,7 @@ WindowStateConfiguration::WindowStateConfiguration( const Reference< XMultiServi
for ( sal_Int32 i = 0; i < aElementNames.getLength(); i++ )
{
aModuleIdentifier = aElementNames[i];
- if ( xNameAccess->getByName( aModuleIdentifier ) >>= aSeq )
+ if ( m_xModuleManager->getByName( aModuleIdentifier ) >>= aSeq )
{
::rtl::OUString aWindowStateFileStr;
for ( sal_Int32 y = 0; y < aSeq.getLength(); y++ )
@@ -1433,7 +1432,7 @@ throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::la
else
{
Reference< XNameAccess > xResourceURLWindowState;
- ConfigurationAccess_WindowState* pModuleWindowState = new ConfigurationAccess_WindowState( aWindowStateConfigFile, m_xServiceManager );
+ ConfigurationAccess_WindowState* pModuleWindowState = new ConfigurationAccess_WindowState( aWindowStateConfigFile, m_xContext );
xResourceURLWindowState = Reference< XNameAccess >( static_cast< cppu::OWeakObject* >( pModuleWindowState ),UNO_QUERY );
pModuleIter->second = xResourceURLWindowState;
a <<= xResourceURLWindowState;
diff --git a/framework/source/uielement/addonstoolbarmanager.cxx b/framework/source/uielement/addonstoolbarmanager.cxx
index 1bc24dda35e1..5f6c847a4a48 100644
--- a/framework/source/uielement/addonstoolbarmanager.cxx
+++ b/framework/source/uielement/addonstoolbarmanager.cxx
@@ -48,6 +48,7 @@
#include <uielement/toolbarmerger.hxx>
#include <com/sun/star/ui/ItemType.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XToolbarController.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
@@ -225,8 +226,7 @@ void AddonsToolBarManager::FillToolbar( const Sequence< Sequence< PropertyValue
::rtl::OUString aModuleIdentifier;
try
{
- Reference< XModuleManager > xModuleManager(
- m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(m_xServiceManager) );
aModuleIdentifier = xModuleManager->identify( m_xFrame );
}
catch ( const Exception& )
diff --git a/framework/source/uielement/menubarmanager.cxx b/framework/source/uielement/menubarmanager.cxx
index b79f1795bce8..2f1f22e09a2c 100644
--- a/framework/source/uielement/menubarmanager.cxx
+++ b/framework/source/uielement/menubarmanager.cxx
@@ -56,7 +56,7 @@
#include <com/sun/star/ui/ItemType.hpp>
#include <com/sun/star/ui/ImageType.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/ui/XModuleUIConfigurationManagerSupplier.hpp>
#include <com/sun/star/ui/XUIConfigurationManagerSupplier.hpp>
#include <com/sun/star/ui/ItemStyle.hpp>
@@ -1537,8 +1537,7 @@ void MenuBarManager::RetrieveShortcuts( std::vector< MenuItemHandler* >& aMenuSh
if ( !m_bModuleIdentified )
{
m_bModuleIdentified = sal_True;
- Reference< XModuleManager > xModuleManager;
- xModuleManager = Reference< XModuleManager >( getServiceFactory()->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext( getServiceFactory() ) );
try
{
@@ -1657,9 +1656,9 @@ void MenuBarManager::RetrieveImageManagers()
}
}
- Reference< XModuleManager > xModuleManager;
+ Reference< XModuleManager2 > xModuleManager;
if ( m_aModuleIdentifier.isEmpty() )
- xModuleManager.set( getServiceFactory()->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ xModuleManager.set( ModuleManager::create( comphelper::getComponentContext( getServiceFactory() ) ) );
try
{
@@ -1895,8 +1894,7 @@ void MenuBarManager::SetItemContainer( const Reference< XIndexAccess >& rItemCon
if ( !m_bModuleIdentified )
{
m_bModuleIdentified = sal_True;
- Reference< XModuleManager > xModuleManager;
- xModuleManager = Reference< XModuleManager >( getServiceFactory()->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(getServiceFactory()) );
try
{
diff --git a/framework/source/uielement/menubarwrapper.cxx b/framework/source/uielement/menubarwrapper.cxx
index 48b93d5fd754..cc7032a37bec 100644
--- a/framework/source/uielement/menubarwrapper.cxx
+++ b/framework/source/uielement/menubarwrapper.cxx
@@ -38,7 +38,7 @@
#include <com/sun/star/container/XIndexContainer.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/ui/UIElementType.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/util/URLTransformer.hpp>
#include <comphelper/processfactory.hxx>
@@ -147,10 +147,7 @@ void SAL_CALL MenuBarWrapper::initialize( const Sequence< Any >& aArguments ) th
pVCLMenuBar = new MenuBar();
}
- Reference< XModuleManager > xModuleManager;
- xModuleManager = Reference< XModuleManager >(
- m_xServiceFactory->createInstance(
- SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(m_xServiceFactory) );
try
{
diff --git a/framework/source/uielement/newmenucontroller.cxx b/framework/source/uielement/newmenucontroller.cxx
index 38595629a595..bf8dbbf91c43 100644
--- a/framework/source/uielement/newmenucontroller.cxx
+++ b/framework/source/uielement/newmenucontroller.cxx
@@ -41,8 +41,7 @@
#include <com/sun/star/awt/MenuItemStyle.hpp>
#include <com/sun/star/ui/XModuleUIConfigurationManagerSupplier.hpp>
#include <com/sun/star/ui/XUIConfigurationManagerSupplier.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
-#include <com/sun/star/container/XNameAccess.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <vcl/svapp.hxx>
#include <vcl/i18nhelp.hxx>
@@ -487,39 +486,35 @@ void NewMenuController::impl_setPopupMenu()
fillPopupMenu( m_xPopupMenu );
// Identify module that we are attach to. It's our context that we need to know.
- Reference< XModuleManager > xModuleManager( m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ),UNO_QUERY );
- if ( xModuleManager.is() )
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(m_xServiceManager) );
+ try
{
- try
+ m_aModuleIdentifier = xModuleManager->identify( m_xFrame );
+ m_bModuleIdentified = sal_True;
+
+ if ( !m_aModuleIdentifier.isEmpty() )
{
- m_aModuleIdentifier = xModuleManager->identify( m_xFrame );
- m_bModuleIdentified = sal_True;
+ Sequence< PropertyValue > aSeq;
- Reference< XNameAccess > xNameAccess( xModuleManager, UNO_QUERY );
- if ( !m_aModuleIdentifier.isEmpty() && xNameAccess.is() )
+ if ( xModuleManager->getByName( m_aModuleIdentifier ) >>= aSeq )
{
- Sequence< PropertyValue > aSeq;
-
- if ( xNameAccess->getByName( m_aModuleIdentifier ) >>= aSeq )
+ for ( sal_Int32 y = 0; y < aSeq.getLength(); y++ )
{
- for ( sal_Int32 y = 0; y < aSeq.getLength(); y++ )
+ if ( aSeq[y].Name == "ooSetupFactoryEmptyDocumentURL" )
{
- if ( aSeq[y].Name == "ooSetupFactoryEmptyDocumentURL" )
- {
- aSeq[y].Value >>= m_aEmptyDocURL;
- break;
- }
+ aSeq[y].Value >>= m_aEmptyDocURL;
+ break;
}
}
}
}
- catch ( const RuntimeException& )
- {
- throw;
- }
- catch ( const Exception& )
- {
- }
+ }
+ catch ( const RuntimeException& )
+ {
+ throw;
+ }
+ catch ( const Exception& )
+ {
}
}
diff --git a/framework/source/uielement/toolbarmanager.cxx b/framework/source/uielement/toolbarmanager.cxx
index 208fe1dc81af..21d23bdd46dc 100644
--- a/framework/source/uielement/toolbarmanager.cxx
+++ b/framework/source/uielement/toolbarmanager.cxx
@@ -49,7 +49,7 @@
#include <com/sun/star/ui/DockingArea.hpp>
#include <com/sun/star/graphic/XGraphic.hpp>
#include <com/sun/star/lang/XMultiComponentFactory.hpp>
-#include <com/sun/star/frame/XModuleManager.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/ui/XUIElementSettings.hpp>
#include <com/sun/star/ui/XUIConfigurationPersistence.hpp>
#include <com/sun/star/ui/XModuleUIConfigurationManagerSupplier.hpp>
@@ -829,7 +829,7 @@ uno::Sequence< beans::PropertyValue > ToolBarManager::GetPropsForCommand( const
{
if ( !m_bModuleIdentified )
{
- Reference< XModuleManager > xModuleManager( m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(m_xServiceManager) );
Reference< XInterface > xIfac( m_xFrame, UNO_QUERY );
m_bModuleIdentified = sal_True;
@@ -1200,8 +1200,7 @@ void ToolBarManager::FillToolbar( const Reference< XIndexAccess >& rItemContaine
sal_uInt16 nId( 1 );
- Reference< XModuleManager > xModuleManager( Reference< XModuleManager >(
- m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY ));
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(m_xServiceManager) );
if ( !m_xDocImageManager.is() )
{
Reference< XModel > xModel( GetModelFromFrame() );
@@ -1221,8 +1220,7 @@ void ToolBarManager::FillToolbar( const Reference< XIndexAccess >& rItemContaine
try
{
- if ( xModuleManager.is() )
- m_aModuleIdentifier = xModuleManager->identify( Reference< XInterface >( m_xFrame, UNO_QUERY ) );
+ m_aModuleIdentifier = xModuleManager->identify( Reference< XInterface >( m_xFrame, UNO_QUERY ) );
}
catch (const Exception&)
{
diff --git a/framework/source/uielement/toolbarsmenucontroller.cxx b/framework/source/uielement/toolbarsmenucontroller.cxx
index 5d479a552060..37bf5ecad454 100644
--- a/framework/source/uielement/toolbarsmenucontroller.cxx
+++ b/framework/source/uielement/toolbarsmenucontroller.cxx
@@ -41,6 +41,7 @@
#include <com/sun/star/awt/XDevice.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/awt/MenuItemStyle.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XDispatchProvider.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
@@ -229,7 +230,7 @@ rtl::OUString ToolbarsMenuController::getUINameFromCommand( const rtl::OUString&
{
try
{
- Reference< XModuleManager > xModuleManager( m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY_THROW );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(m_xServiceManager) );
m_aModuleIdentifier = xModuleManager->identify( m_xFrame );
Reference< XNameAccess > xNameAccess( m_xServiceManager->createInstance(
SERVICENAME_UICOMMANDDESCRIPTION ),
@@ -831,9 +832,7 @@ void SAL_CALL ToolbarsMenuController::initialize( const Sequence< Any >& aArgume
if ( m_bInitialized )
{
- Reference< XModuleManager > xModuleManager( m_xServiceManager->createInstance(
- SERVICENAME_MODULEMANAGER ),
- UNO_QUERY );
+ Reference< XModuleManager2 > xModuleManager = ModuleManager::create( comphelper::getComponentContext(m_xServiceManager) );
Reference< XNameAccess > xPersistentWindowStateSupplier( m_xServiceManager->createInstance(
SERVICENAME_WINDOWSTATECONFIGURATION ),
UNO_QUERY );
diff --git a/framework/source/uielement/uicommanddescription.cxx b/framework/source/uielement/uicommanddescription.cxx
index 4715e1c1a453..2946f1da2482 100644
--- a/framework/source/uielement/uicommanddescription.cxx
+++ b/framework/source/uielement/uicommanddescription.cxx
@@ -36,6 +36,8 @@
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/container/XContainer.hpp>
@@ -57,6 +59,7 @@
using namespace com::sun::star::uno;
using namespace com::sun::star::lang;
using namespace com::sun::star::beans;
+using namespace com::sun::star::configuration;
using namespace com::sun::star::container;
using namespace ::com::sun::star::frame;
@@ -96,12 +99,12 @@ namespace framework
// Configuration access class for PopupMenuControllerFactory implementation
//*****************************************************************************************************************
-class ConfigurationAccess_UICommand : // Order is neccessary for right initialization!
+class ConfigurationAccess_UICommand : // Order is necessary for right initialization!
private ThreadHelpBase ,
public ::cppu::WeakImplHelper2<XNameAccess,XContainerListener>
{
public:
- ConfigurationAccess_UICommand( const ::rtl::OUString& aModuleName, const Reference< XNameAccess >& xGenericUICommands, const Reference< XMultiServiceFactory >& rServiceManager );
+ ConfigurationAccess_UICommand( const ::rtl::OUString& aModuleName, const Reference< XNameAccess >& xGenericUICommands, const Reference< XComponentContext >& rxContext );
virtual ~ConfigurationAccess_UICommand();
// XNameAccess
@@ -179,7 +182,6 @@ class ConfigurationAccess_UICommand : // Order is neccessary for right initializ
rtl::OUString m_aExtension;
rtl::OUString m_aPrivateResourceURL;
Reference< XNameAccess > m_xGenericUICommands;
- Reference< XMultiServiceFactory > m_xServiceManager;
Reference< XMultiServiceFactory > m_xConfigProvider;
Reference< XNameAccess > m_xConfigAccess;
Reference< XContainerListener > m_xConfigListener;
@@ -197,7 +199,7 @@ class ConfigurationAccess_UICommand : // Order is neccessary for right initializ
//*****************************************************************************************************************
// XInterface, XTypeProvider
//*****************************************************************************************************************
-ConfigurationAccess_UICommand::ConfigurationAccess_UICommand( const rtl::OUString& aModuleName, const Reference< XNameAccess >& rGenericUICommands, const Reference< XMultiServiceFactory >& rServiceManager ) :
+ConfigurationAccess_UICommand::ConfigurationAccess_UICommand( const rtl::OUString& aModuleName, const Reference< XNameAccess >& rGenericUICommands, const Reference< XComponentContext>& rxContext ) :
ThreadHelpBase(),
m_aConfigCmdAccess( CONFIGURATION_ROOT_ACCESS ),
m_aConfigPopupAccess( CONFIGURATION_ROOT_ACCESS ),
@@ -209,7 +211,6 @@ ConfigurationAccess_UICommand::ConfigurationAccess_UICommand( const rtl::OUStrin
m_aPropProperties( PROPSET_PROPERTIES ),
m_aPrivateResourceURL( PRIVATE_RESOURCE_URL ),
m_xGenericUICommands( rGenericUICommands ),
- m_xServiceManager( rServiceManager ),
m_bConfigAccessInitialized( sal_False ),
m_bCacheFilled( sal_False ),
m_bGenericDataRetrieved( sal_False )
@@ -218,7 +219,7 @@ ConfigurationAccess_UICommand::ConfigurationAccess_UICommand( const rtl::OUStrin
m_aConfigCmdAccess += aModuleName;
m_aConfigCmdAccess += rtl::OUString( CONFIGURATION_CMD_ELEMENT_ACCESS );
- m_xConfigProvider = Reference< XMultiServiceFactory >( rServiceManager->createInstance(SERVICENAME_CFGPROVIDER),UNO_QUERY );
+ m_xConfigProvider = theDefaultProvider::get( rxContext );
m_aConfigPopupAccess += aModuleName;
m_aConfigPopupAccess += rtl::OUString( CONFIGURATION_POP_ELEMENT_ACCESS );
@@ -623,7 +624,7 @@ void SAL_CALL ConfigurationAccess_UICommand::disposing( const EventObject& aEven
//*****************************************************************************************************************
// XInterface, XTypeProvider, XServiceInfo
//*****************************************************************************************************************
-DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( UICommandDescription ,
+DEFINE_XSERVICEINFO_ONEINSTANCESERVICE_2 ( UICommandDescription ,
::cppu::OWeakObject ,
SERVICENAME_UICOMMANDDESCRIPTION ,
IMPLEMENTATIONNAME_UICOMMANDDESCRIPTION
@@ -631,15 +632,15 @@ DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( UICommandDescription
DEFINE_INIT_SERVICE ( UICommandDescription, {} )
-UICommandDescription::UICommandDescription( const Reference< XMultiServiceFactory >& xServiceManager ) :
+UICommandDescription::UICommandDescription( const Reference< XComponentContext >& rxContext ) :
ThreadHelpBase(),
m_aPrivateResourceURL( PRIVATE_RESOURCE_URL ),
- m_xServiceManager( xServiceManager )
+ m_xContext( rxContext )
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen@sun.com", "UICommandDescription::UICommandDescription" );
Reference< XNameAccess > xEmpty;
rtl::OUString aGenericUICommand( "GenericCommands" );
- m_xGenericUICommands = new ConfigurationAccess_UICommand( aGenericUICommand, xEmpty, xServiceManager );
+ m_xGenericUICommands = new ConfigurationAccess_UICommand( aGenericUICommand, xEmpty, m_xContext );
impl_fillElements("ooSetupFactoryCommandConfigRef");
@@ -648,9 +649,9 @@ UICommandDescription::UICommandDescription( const Reference< XMultiServiceFactor
if ( pIter != m_aUICommandsHashMap.end() )
pIter->second = m_xGenericUICommands;
}
-UICommandDescription::UICommandDescription( const Reference< XMultiServiceFactory >& xServiceManager,bool ) :
+UICommandDescription::UICommandDescription( const Reference< XComponentContext >& rxContext, bool ) :
ThreadHelpBase(),
- m_xServiceManager( xServiceManager )
+ m_xContext( rxContext )
{
}
UICommandDescription::~UICommandDescription()
@@ -662,16 +663,15 @@ UICommandDescription::~UICommandDescription()
}
void UICommandDescription::impl_fillElements(const sal_Char* _pName)
{
- m_xModuleManager.set( m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ),UNO_QUERY );
- Reference< XNameAccess > xNameAccess( m_xModuleManager, UNO_QUERY_THROW );
- Sequence< rtl::OUString > aElementNames = xNameAccess->getElementNames();
+ m_xModuleManager.set( ModuleManager::create( m_xContext ) );
+ Sequence< rtl::OUString > aElementNames = m_xModuleManager->getElementNames();
Sequence< PropertyValue > aSeq;
::rtl::OUString aModuleIdentifier;
for ( sal_Int32 i = 0; i < aElementNames.getLength(); i++ )
{
aModuleIdentifier = aElementNames[i];
- if ( xNameAccess->getByName( aModuleIdentifier ) >>= aSeq )
+ if ( m_xModuleManager->getByName( aModuleIdentifier ) >>= aSeq )
{
::rtl::OUString aCommandStr;
for ( sal_Int32 y = 0; y < aSeq.getLength(); y++ )
@@ -695,7 +695,7 @@ void UICommandDescription::impl_fillElements(const sal_Char* _pName)
}
Reference< XNameAccess > UICommandDescription::impl_createConfigAccess(const ::rtl::OUString& _sName)
{
- return new ConfigurationAccess_UICommand( _sName,m_xGenericUICommands,m_xServiceManager );
+ return new ConfigurationAccess_UICommand( _sName, m_xGenericUICommands, m_xContext );
}
Any SAL_CALL UICommandDescription::getByName( const ::rtl::OUString& aName )
@@ -720,7 +720,7 @@ throw (::com::sun::star::container::NoSuchElementException, ::com::sun::star::la
Reference< XNameAccess > xUICommands;
ConfigurationAccess_UICommand* pUICommands = new ConfigurationAccess_UICommand( aCommandFile,
m_xGenericUICommands,
- m_xServiceManager );
+ m_xContext );
xUICommands = Reference< XNameAccess >( static_cast< cppu::OWeakObject* >( pUICommands ),UNO_QUERY );
pIter->second = xUICommands;
a <<= xUICommands;
diff --git a/framework/source/uifactory/addonstoolboxfactory.cxx b/framework/source/uifactory/addonstoolboxfactory.cxx
index 21ca8c1a9909..54b84d15fa3b 100644
--- a/framework/source/uifactory/addonstoolboxfactory.cxx
+++ b/framework/source/uifactory/addonstoolboxfactory.cxx
@@ -32,6 +32,7 @@
#include <threadhelp/resetableguard.hxx>
#include <com/sun/star/util/XURLTransformer.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/lang/XInitialization.hpp>
@@ -71,7 +72,7 @@ AddonsToolBoxFactory::AddonsToolBoxFactory(
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager ) :
ThreadHelpBase( &Application::GetSolarMutex() )
, m_xServiceManager( xServiceManager )
- , m_xModuleManager( xServiceManager->createInstance(SERVICENAME_MODULEMANAGER),UNO_QUERY )
+ , m_xModuleManager( ModuleManager::create( comphelper::getComponentContext(xServiceManager) ) )
{
}
diff --git a/framework/source/uifactory/factoryconfiguration.cxx b/framework/source/uifactory/factoryconfiguration.cxx
index d029b849f013..476fefcb391b 100644
--- a/framework/source/uifactory/factoryconfiguration.cxx
+++ b/framework/source/uifactory/factoryconfiguration.cxx
@@ -34,6 +34,7 @@
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/container/XContainer.hpp>
@@ -69,19 +70,18 @@ rtl::OUString getHashKeyFromStrings( const rtl::OUString& aCommandURL, const rtl
//*****************************************************************************************************************
// XInterface, XTypeProvider
//*****************************************************************************************************************
-ConfigurationAccess_ControllerFactory::ConfigurationAccess_ControllerFactory( Reference< XMultiServiceFactory >& rServiceManager,const ::rtl::OUString& _sRoot,bool _bAskValue ) :
+ConfigurationAccess_ControllerFactory::ConfigurationAccess_ControllerFactory( const Reference< XComponentContext >& rxContext, const ::rtl::OUString& _sRoot,bool _bAskValue ) :
ThreadHelpBase(),
m_aPropCommand( RTL_CONSTASCII_USTRINGPARAM( "Command" )),
m_aPropModule( RTL_CONSTASCII_USTRINGPARAM( "Module" )),
m_aPropController( RTL_CONSTASCII_USTRINGPARAM( "Controller" )),
m_aPropValue( RTL_CONSTASCII_USTRINGPARAM( "Value" )),
m_sRoot(_sRoot),
- m_xServiceManager( rServiceManager ),
m_bConfigAccessInitialized( sal_False ),
m_bAskValue(_bAskValue)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen@sun.com", "ConfigurationAccess_ControllerFactory::ConfigurationAccess_ControllerFactory" );
- m_xConfigProvider = Reference< XMultiServiceFactory >( rServiceManager->createInstance( SERVICENAME_CFGPROVIDER),UNO_QUERY );
+ m_xConfigProvider = configuration::theDefaultProvider::get( rxContext );
}
ConfigurationAccess_ControllerFactory::~ConfigurationAccess_ControllerFactory()
diff --git a/framework/source/uifactory/menubarfactory.cxx b/framework/source/uifactory/menubarfactory.cxx
index e221e9a5459f..fcb17ccd9496 100644
--- a/framework/source/uifactory/menubarfactory.cxx
+++ b/framework/source/uifactory/menubarfactory.cxx
@@ -33,6 +33,7 @@
#include <uielement/menubarwrapper.hxx>
#include <com/sun/star/util/XURLTransformer.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/frame/XModel.hpp>
#include <com/sun/star/lang/XInitialization.hpp>
@@ -73,13 +74,13 @@ DEFINE_INIT_SERVICE ( MenuBarFactory, {} )
MenuBarFactory::MenuBarFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager ) :
ThreadHelpBase()
, m_xServiceManager( xServiceManager )
- , m_xModuleManager( xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY )
+ , m_xModuleManager( ModuleManager::create( comphelper::getComponentContext(xServiceManager) ) )
{
}
MenuBarFactory::MenuBarFactory( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceManager,bool ) :
ThreadHelpBase(&Application::GetSolarMutex())
, m_xServiceManager( xServiceManager )
- , m_xModuleManager( xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY )
+ , m_xModuleManager( ModuleManager::create( comphelper::getComponentContext(xServiceManager) ) )
{
}
@@ -97,7 +98,7 @@ throw ( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::l
ResetableGuard aLock( m_aLock );
MenuBarWrapper* pMenuBarWrapper = new MenuBarWrapper( m_xServiceManager );
Reference< ::com::sun::star::ui::XUIElement > xMenuBar( (OWeakObject *)pMenuBarWrapper, UNO_QUERY );
- Reference< ::com::sun::star::frame::XModuleManager > xModuleManager = m_xModuleManager;
+ Reference< ::com::sun::star::frame::XModuleManager2 > xModuleManager = m_xModuleManager;
aLock.unlock();
CreateUIElement(ResourceURL,Args,"MenuOnly","private:resource/menubar/",xMenuBar,xModuleManager,m_xServiceManager);
return xMenuBar;
@@ -107,7 +108,7 @@ void MenuBarFactory::CreateUIElement(const ::rtl::OUString& ResourceURL
,const char* _pExtraMode
,const char* _pAsciiName
,const Reference< ::com::sun::star::ui::XUIElement >& _xMenuBar
- ,const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager >& _xModuleManager
+ ,const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModuleManager2 >& _xModuleManager
,const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _xServiceManager)
{
Reference< XUIConfigurationManager > xCfgMgr;
diff --git a/framework/source/uifactory/popupmenucontrollerfactory.cxx b/framework/source/uifactory/popupmenucontrollerfactory.cxx
index e98f03e91464..34dd936f7b72 100644
--- a/framework/source/uifactory/popupmenucontrollerfactory.cxx
+++ b/framework/source/uifactory/popupmenucontrollerfactory.cxx
@@ -64,7 +64,7 @@ PopupMenuControllerFactory::PopupMenuControllerFactory( const Reference< XMultiS
ToolbarControllerFactory(xServiceManager,true)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen@sun.com", "PopupMenuControllerFactory::PopupMenuControllerFactory" );
- m_pConfigAccess = new ConfigurationAccess_ControllerFactory( m_xServiceManager,rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Controller/Registered/PopupMenu" )) );
+ m_pConfigAccess = new ConfigurationAccess_ControllerFactory( comphelper::getComponentContext(m_xServiceManager), rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Controller/Registered/PopupMenu" )) );
m_pConfigAccess->acquire();
}
diff --git a/framework/source/uifactory/statusbarcontrollerfactory.cxx b/framework/source/uifactory/statusbarcontrollerfactory.cxx
index 3de5b25245ab..b0e0342f3e94 100644
--- a/framework/source/uifactory/statusbarcontrollerfactory.cxx
+++ b/framework/source/uifactory/statusbarcontrollerfactory.cxx
@@ -61,7 +61,7 @@ DEFINE_INIT_SERVICE ( StatusbarControllerFactory, {} )
StatusbarControllerFactory::StatusbarControllerFactory( const Reference< XMultiServiceFactory >& xServiceManager ) :
ToolbarControllerFactory(xServiceManager,true)
{
- m_pConfigAccess = new ConfigurationAccess_ControllerFactory( m_xServiceManager,rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Controller/Registered/StatusBar" )),true );
+ m_pConfigAccess = new ConfigurationAccess_ControllerFactory( comphelper::getComponentContext(m_xServiceManager), rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Controller/Registered/StatusBar" )),true );
m_pConfigAccess->acquire();
}
diff --git a/framework/source/uifactory/statusbarfactory.cxx b/framework/source/uifactory/statusbarfactory.cxx
index 7f2fce4714e0..df64bc16f899 100644
--- a/framework/source/uifactory/statusbarfactory.cxx
+++ b/framework/source/uifactory/statusbarfactory.cxx
@@ -76,7 +76,7 @@ throw ( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::l
ResetableGuard aLock( m_aLock );
StatusBarWrapper* pWrapper = new StatusBarWrapper( m_xServiceManager );
Reference< ::com::sun::star::ui::XUIElement > xMenuBar( (OWeakObject *)pWrapper, UNO_QUERY );
- Reference< ::com::sun::star::frame::XModuleManager > xModuleManager = m_xModuleManager;
+ Reference< ::com::sun::star::frame::XModuleManager2 > xModuleManager = m_xModuleManager;
aLock.unlock();
MenuBarFactory::CreateUIElement(ResourceURL,Args,NULL,"private:resource/statusbar/",xMenuBar,xModuleManager,m_xServiceManager);
return xMenuBar;
diff --git a/framework/source/uifactory/toolbarcontrollerfactory.cxx b/framework/source/uifactory/toolbarcontrollerfactory.cxx
index 5651159be7dd..6967a8aae367 100644
--- a/framework/source/uifactory/toolbarcontrollerfactory.cxx
+++ b/framework/source/uifactory/toolbarcontrollerfactory.cxx
@@ -73,7 +73,7 @@ ToolbarControllerFactory::ToolbarControllerFactory( const Reference< XMultiServi
m_bConfigRead( sal_False ),
m_xServiceManager( xServiceManager )
{
- m_pConfigAccess = new ConfigurationAccess_ControllerFactory( m_xServiceManager,rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Controller/Registered/ToolBar" )) );
+ m_pConfigAccess = new ConfigurationAccess_ControllerFactory( comphelper::getComponentContext(m_xServiceManager), rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Controller/Registered/ToolBar" )) );
m_pConfigAccess->acquire();
}
diff --git a/framework/source/uifactory/toolboxfactory.cxx b/framework/source/uifactory/toolboxfactory.cxx
index a30a1c3737a2..69a037c7a934 100644
--- a/framework/source/uifactory/toolboxfactory.cxx
+++ b/framework/source/uifactory/toolboxfactory.cxx
@@ -72,7 +72,7 @@ throw ( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::l
ResetableGuard aLock( m_aLock );
ToolBarWrapper* pWrapper = new ToolBarWrapper( m_xServiceManager );
Reference< ::com::sun::star::ui::XUIElement > xMenuBar( (OWeakObject *)pWrapper, UNO_QUERY );
- Reference< ::com::sun::star::frame::XModuleManager > xModuleManager = m_xModuleManager;
+ Reference< ::com::sun::star::frame::XModuleManager2 > xModuleManager = m_xModuleManager;
aLock.unlock();
CreateUIElement(ResourceURL,Args,"PopupMode","private:resource/toolbar/",xMenuBar,xModuleManager,m_xServiceManager);
return xMenuBar;
diff --git a/framework/source/uifactory/uielementfactorymanager.cxx b/framework/source/uifactory/uielementfactorymanager.cxx
index 11ff2a17fdc9..6e4b9d59b9b8 100644
--- a/framework/source/uifactory/uielementfactorymanager.cxx
+++ b/framework/source/uifactory/uielementfactorymanager.cxx
@@ -35,9 +35,11 @@
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/container/XContainer.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <rtl/ustrbuf.hxx>
@@ -53,6 +55,7 @@ using namespace com::sun::star::uno;
using namespace com::sun::star::lang;
using namespace com::sun::star::beans;
using namespace com::sun::star::frame;
+using namespace com::sun::star::configuration;
using namespace com::sun::star::container;
using namespace ::com::sun::star::ui;
using namespace ::com::sun::star::frame;
@@ -81,18 +84,17 @@ rtl::OUString getHashKeyFromStrings( const rtl::OUString& aType, const rtl::OUSt
//*****************************************************************************************************************
-ConfigurationAccess_FactoryManager::ConfigurationAccess_FactoryManager( Reference< XMultiServiceFactory >& rServiceManager,const ::rtl::OUString& _sRoot ) :
+ConfigurationAccess_FactoryManager::ConfigurationAccess_FactoryManager( const Reference< XComponentContext >& rxContext, const ::rtl::OUString& _sRoot ) :
ThreadHelpBase(),
m_aPropType( RTL_CONSTASCII_USTRINGPARAM( "Type" )),
m_aPropName( RTL_CONSTASCII_USTRINGPARAM( "Name" )),
m_aPropModule( RTL_CONSTASCII_USTRINGPARAM( "Module" )),
m_aPropFactory( RTL_CONSTASCII_USTRINGPARAM( "FactoryImplementation" )),
m_sRoot(_sRoot),
- m_xServiceManager( rServiceManager ),
m_bConfigAccessInitialized( sal_False )
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen@sun.com", "UIElementFactoryManager::ConfigurationAccess_FactoryManager" );
- m_xConfigProvider = Reference< XMultiServiceFactory >( rServiceManager->createInstance( SERVICENAME_CFGPROVIDER),UNO_QUERY );
+ m_xConfigProvider = theDefaultProvider::get( rxContext );
}
ConfigurationAccess_FactoryManager::~ConfigurationAccess_FactoryManager()
@@ -378,7 +380,7 @@ sal_Bool ConfigurationAccess_FactoryManager::impl_getElementProps( const Any& aE
//*****************************************************************************************************************
// XInterface, XTypeProvider, XServiceInfo
//*****************************************************************************************************************
-DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( UIElementFactoryManager ,
+DEFINE_XSERVICEINFO_ONEINSTANCESERVICE_2 ( UIElementFactoryManager ,
::cppu::OWeakObject ,
SERVICENAME_UIELEMENTFACTORYMANAGER ,
IMPLEMENTATIONNAME_UIELEMENTFACTORYMANAGER
@@ -386,15 +388,15 @@ DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( UIElementFactoryManager
DEFINE_INIT_SERVICE ( UIElementFactoryManager, {} )
-UIElementFactoryManager::UIElementFactoryManager( const Reference< XMultiServiceFactory >& xServiceManager ) :
+UIElementFactoryManager::UIElementFactoryManager( const Reference< XComponentContext >& rxContext ) :
ThreadHelpBase( &Application::GetSolarMutex() ),
m_bConfigRead( sal_False ),
- m_xServiceManager( xServiceManager )
+ m_xContext(rxContext)
{
RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "framework", "Ocke.Janssen@sun.com", "UIElementFactoryManager::UIElementFactoryManager" );
- m_pConfigAccess = new ConfigurationAccess_FactoryManager( m_xServiceManager,rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Factories/Registered/UIElementFactories" )) );
+ m_pConfigAccess = new ConfigurationAccess_FactoryManager( rxContext, rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.Factories/Registered/UIElementFactories" )) );
m_pConfigAccess->acquire();
- m_xModuleManager = Reference< XModuleManager >( m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), UNO_QUERY );
+ m_xModuleManager = ModuleManager::create( rxContext );
}
UIElementFactoryManager::~UIElementFactoryManager()
@@ -436,7 +438,7 @@ throw ( ::com::sun::star::container::NoSuchElementException, ::com::sun::star::l
Args[i].Value >>= xFrame;
}
- Reference< XModuleManager > xManager( m_xModuleManager );
+ Reference< XModuleManager2 > xManager( m_xModuleManager );
aLock.unlock();
// Determine the module identifier
@@ -490,13 +492,13 @@ throw ( RuntimeException )
WindowContentFactoryManager::RetrieveTypeNameFromResourceURL( aResourceURL, aType, aName );
- Reference< XMultiServiceFactory > xSManager( m_xServiceManager );
+ Reference< XComponentContext > xContext( m_xContext );
rtl::OUString aServiceSpecifier = m_pConfigAccess->getFactorySpecifierFromTypeNameModule( aType, aName, aModuleId );
aLock.unlock();
if ( !aServiceSpecifier.isEmpty() )
- return Reference< XUIElementFactory >( xSManager->createInstance( aServiceSpecifier ), UNO_QUERY );
+ return Reference< XUIElementFactory >( xContext->getServiceManager()->createInstanceWithContext(aServiceSpecifier, xContext), UNO_QUERY );
else
return Reference< XUIElementFactory >();
}
diff --git a/framework/source/uifactory/windowcontentfactorymanager.cxx b/framework/source/uifactory/windowcontentfactorymanager.cxx
index b9691a5c92fd..68176592ae00 100644
--- a/framework/source/uifactory/windowcontentfactorymanager.cxx
+++ b/framework/source/uifactory/windowcontentfactorymanager.cxx
@@ -36,8 +36,8 @@
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/container/XNameContainer.hpp>
#include <com/sun/star/container/XContainer.hpp>
+#include <com/sun/star/frame/ModuleManager.hpp>
#include <com/sun/star/frame/XFrame.hpp>
-#include <com/sun/star/awt/XToolkit.hpp>
#include <com/sun/star/awt/XControlModel.hpp>
#include <com/sun/star/awt/XControl.hpp>
@@ -63,7 +63,7 @@ namespace framework
//*****************************************************************************************************************
// XInterface, XTypeProvider, XServiceInfo
//*****************************************************************************************************************
-DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( WindowContentFactoryManager ,
+DEFINE_XSERVICEINFO_ONEINSTANCESERVICE_2 ( WindowContentFactoryManager ,
::cppu::OWeakObject ,
SERVICENAME_WINDOWCONTENTFACTORYMANAGER ,
IMPLEMENTATIONNAME_WINDOWCONTENTFACTORYMANAGER
@@ -71,14 +71,13 @@ DEFINE_XSERVICEINFO_ONEINSTANCESERVICE ( WindowContentFactoryManager
DEFINE_INIT_SERVICE ( WindowContentFactoryManager, {} )
-WindowContentFactoryManager::WindowContentFactoryManager( const uno::Reference< lang::XMultiServiceFactory >& xServiceManager ) :
+WindowContentFactoryManager::WindowContentFactoryManager( const uno::Reference< uno::XComponentContext >& rxContext ) :
ThreadHelpBase( &Application::GetSolarMutex() ),
- m_bConfigRead( sal_False ),
- m_xServiceManager( xServiceManager )
+ m_bConfigRead( sal_False )
{
- m_pConfigAccess = new ConfigurationAccess_FactoryManager( m_xServiceManager,rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.WindowContentFactories/Registered/ContentFactories" )) );
+ m_pConfigAccess = new ConfigurationAccess_FactoryManager( rxContext, rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "/org.openoffice.Office.UI.WindowContentFactories/Registered/ContentFactories" )) );
m_pConfigAccess->acquire();
- m_xModuleManager = uno::Reference< frame::XModuleManager >( m_xServiceManager->createInstance( SERVICENAME_MODULEMANAGER ), uno::UNO_QUERY );
+ m_xModuleManager = frame::ModuleManager::create( rxContext );
}
WindowContentFactoryManager::~WindowContentFactoryManager()
@@ -147,7 +146,7 @@ throw (uno::Exception, uno::RuntimeException)
}
}
- uno::Reference< frame::XModuleManager > xModuleManager;
+ uno::Reference< frame::XModuleManager2 > xModuleManager;
// SAFE
{
ResetableGuard aLock( m_aLock );
diff --git a/framework/source/xml/imagesconfiguration.cxx b/framework/source/xml/imagesconfiguration.cxx
index 622b45f5eecc..c65c46cebf8d 100644
--- a/framework/source/xml/imagesconfiguration.cxx
+++ b/framework/source/xml/imagesconfiguration.cxx
@@ -34,6 +34,7 @@
#include <xml/saxnamespacefilter.hxx>
#include <com/sun/star/xml/sax/Parser.hpp>
+#include <com/sun/star/xml/sax/Writer.hpp>
#include <com/sun/star/io/XActiveDataSource.hpp>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -50,26 +51,12 @@ using namespace ::com::sun::star::io;
namespace framework
{
-static Reference< XParser > GetSaxParser(
- const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext
- )
-{
- return Parser::create(rxContext);
-}
-
-static Reference< XDocumentHandler > GetSaxWriter(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory
- )
-{
- return Reference< XDocumentHandler >( xServiceFactory->createInstance( SERVICENAME_SAXWRITER), UNO_QUERY) ;
-}
-
sal_Bool ImagesConfiguration::LoadImages(
const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream >& rInputStream,
ImageListsDescriptor& rItems )
{
- Reference< XParser > xParser( GetSaxParser( rxContext ) );
+ Reference< XParser > xParser = Parser::create( rxContext );
// connect stream to input stream to the parser
InputSource aInputSource;
@@ -103,18 +90,17 @@ sal_Bool ImagesConfiguration::LoadImages(
}
sal_Bool ImagesConfiguration::StoreImages(
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory,
+ const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext,
const ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream >& rOutputStream,
const ImageListsDescriptor& rItems )
{
- Reference< XDocumentHandler > xWriter( GetSaxWriter( xServiceFactory ) );
-
- Reference< ::com::sun::star::io::XActiveDataSource> xDataSource( xWriter , UNO_QUERY );
- xDataSource->setOutputStream( rOutputStream );
+ Reference< XWriter > xWriter = Writer::create(rxContext);
+ xWriter->setOutputStream( rOutputStream );
try
{
- OWriteImagesDocumentHandler aWriteImagesDocumentHandler( rItems, xWriter );
+ Reference< XDocumentHandler > xHandler( xWriter, UNO_QUERY_THROW );
+ OWriteImagesDocumentHandler aWriteImagesDocumentHandler( rItems, xHandler );
aWriteImagesDocumentHandler.WriteImagesDocument();
return sal_True;
}
diff --git a/freetype/ExternalPackage_freetype.mk b/freetype/ExternalPackage_freetype.mk
new file mode 100644
index 000000000000..0c9016508ef5
--- /dev/null
+++ b/freetype/ExternalPackage_freetype.mk
@@ -0,0 +1,79 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,freetype,freetype))
+
+$(eval $(call gb_ExternalPackage_use_external_project,freetype,freetype))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,freetype,inc/external,\
+ include/ft2build.h \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,freetype,inc/external/freetype,\
+ include/freetype/freetype.h \
+ include/freetype/ftadvanc.h \
+ include/freetype/ftbbox.h \
+ include/freetype/ftbdf.h \
+ include/freetype/ftbitmap.h \
+ include/freetype/ftbzip2.h \
+ include/freetype/ftcache.h \
+ include/freetype/ftchapters.h \
+ include/freetype/ftcid.h \
+ include/freetype/fterrdef.h \
+ include/freetype/fterrors.h \
+ include/freetype/ftgasp.h \
+ include/freetype/ftglyph.h \
+ include/freetype/ftgxval.h \
+ include/freetype/ftgzip.h \
+ include/freetype/ftimage.h \
+ include/freetype/ftincrem.h \
+ include/freetype/ftlcdfil.h \
+ include/freetype/ftlist.h \
+ include/freetype/ftlzw.h \
+ include/freetype/ftmac.h \
+ include/freetype/ftmm.h \
+ include/freetype/ftmodapi.h \
+ include/freetype/ftmoderr.h \
+ include/freetype/ftotval.h \
+ include/freetype/ftoutln.h \
+ include/freetype/ftpfr.h \
+ include/freetype/ftrender.h \
+ include/freetype/ftsizes.h \
+ include/freetype/ftsnames.h \
+ include/freetype/ftstroke.h \
+ include/freetype/ftsynth.h \
+ include/freetype/ftsystem.h \
+ include/freetype/fttrigon.h \
+ include/freetype/fttypes.h \
+ include/freetype/ftwinfnt.h \
+ include/freetype/ftxf86.h \
+ include/freetype/t1tables.h \
+ include/freetype/ttnameid.h \
+ include/freetype/tttables.h \
+ include/freetype/tttags.h \
+ include/freetype/ttunpat.h \
+))
+
+$(eval $(call gb_ExternalPackage_add_unpacked_files,freetype,inc/external/freetype/config,\
+ include/freetype/config/ftconfig.h \
+ include/freetype/config/ftheader.h \
+ include/freetype/config/ftmodule.h \
+ include/freetype/config/ftoption.h \
+ include/freetype/config/ftstdlib.h \
+))
+
+$(eval $(call gb_ExternalPackage_add_files,freetype,lib,\
+ objs/.libs/libfreetype.a \
+))
+
+$(eval $(call gb_ExternalPackage_add_files,freetype,bin,\
+ builds/unix/freetype-config \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/freetype/ExternalProject_freetype.mk b/freetype/ExternalProject_freetype.mk
new file mode 100644
index 000000000000..914007b36884
--- /dev/null
+++ b/freetype/ExternalProject_freetype.mk
@@ -0,0 +1,30 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,freetype))
+
+$(eval $(call gb_ExternalProject_use_unpacked,freetype,freetype))
+
+$(eval $(call gb_ExternalProject_register_targets,freetype,\
+ build \
+))
+
+$(call gb_ExternalProject_get_state_target,freetype,build) :
+ cd $(EXTERNAL_WORKDIR) \
+ && ./configure \
+ --disable-shared \
+ --without-zlib \
+ --without-bzip2 \
+ --prefix=$(OUTDIR) --includedir=$(OUTDIR)/inc/external \
+ --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \
+ && chmod +x builds/unix/freetype-config \
+ && $(MAKE) \
+ && touch $@
+
+# vim: set noet sw=4 ts=4:
diff --git a/freetype/Makefile b/freetype/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/freetype/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/freetype/Module_freetype.mk b/freetype/Module_freetype.mk
new file mode 100644
index 000000000000..e0965a0deb2b
--- /dev/null
+++ b/freetype/Module_freetype.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,freetype))
+
+ifeq ($(OS),ANDROID)
+
+$(eval $(call gb_Module_add_targets,freetype,\
+ ExternalPackage_freetype \
+ ExternalProject_freetype \
+ UnpackedTarball_freetype \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/freetype/README b/freetype/README
index 27ce14479558..c90f9509fb1a 100644
--- a/freetype/README
+++ b/freetype/README
@@ -1,8 +1,8 @@
-This "bundled" freetype is built only in an Android build
-
-FreeType 2 is a software font engine that is designed to be small, efficient, highly customizable,
-and portable while capable of producing high-quality output (glyph images). It can be
-used in graphics libraries, display servers, font conversion tools, text image generation
-tools, and many other products as well.
-
+This "bundled" freetype is built only in an Android build
+
+FreeType 2 is a software font engine that is designed to be small, efficient, highly customizable,
+and portable while capable of producing high-quality output (glyph images). It can be
+used in graphics libraries, display servers, font conversion tools, text image generation
+tools, and many other products as well.
+
From [http://freetype.sourceforge.net/freetype2/index.html] \ No newline at end of file
diff --git a/freetype/UnpackedTarball_freetype.mk b/freetype/UnpackedTarball_freetype.mk
new file mode 100644
index 000000000000..a1060adbf335
--- /dev/null
+++ b/freetype/UnpackedTarball_freetype.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,freetype))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,freetype,$(FREETYPE_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_set_patchlevel,freetype,3))
+
+$(eval $(call gb_UnpackedTarball_add_patches,freetype,\
+ freetype/freetype-2.4.8.patch \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/freetype/makefile.mk b/freetype/makefile.mk
deleted file mode 100644
index 52f73663e952..000000000000
--- a/freetype/makefile.mk
+++ /dev/null
@@ -1,59 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=freetype
-TARGET=freetype
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-TARFILE_NAME=freetype-2.4.8
-TARFILE_MD5=dbf2caca1d3afd410a29217a9809d397
-
-PATCH_FILES=$(TARFILE_NAME).patch
-
-CONFIGURE_ACTION=./configure
-
-CONFIGURE_FLAGS=\
- --disable-shared \
- --without-zlib \
- --without-bzip2 \
- --prefix=$(SOLARVER)/$(INPATH) --includedir=$(SOLARVER)/$(INPATH)/inc/external \
- --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-
-BUILD_ACTION=chmod +x builds/unix/freetype-config && $(GNUMAKE)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
diff --git a/freetype/prj/d.lst b/freetype/prj/d.lst
index ac34ac49efb3..e69de29bb2d1 100644
--- a/freetype/prj/d.lst
+++ b/freetype/prj/d.lst
@@ -1,8 +0,0 @@
-..\%__SRC%\misc\build\freetype*\objs\.libs\*.a %_DEST%\lib
-
-..\%__SRC%\misc\build\freetype*\builds\unix\freetype-config %_DEST%\bin
-
-mkdir: %_DEST%\inc\external\freetype\config
-..\%__SRC%\misc\build\freetype*\include\ft2build.h %_DEST%\inc\external
-..\%__SRC%\misc\build\freetype*\include\freetype\*.h %_DEST%\inc\external\freetype
-..\%__SRC%\misc\build\freetype*\include\freetype\config\*.h %_DEST%\inc\external\freetype\config
diff --git a/g b/g
index a82fc313c2db..0ca04dd6749f 100755
--- a/g
+++ b/g
@@ -3,116 +3,248 @@
# Wrapper for git to handle more subdirs at the same time
#
-# no params, no action
-if [ "$#" -eq "0" ] ; then
- git
- echo
- echo "Additional options available only in this 'g' wrapper:"
- echo
- echo "Usage: g [options] [git commands]"
- echo " -f Force - act on all the repos, not only the changed ones"
- echo " -s Silent - do not report the repo names."
- echo " -v Verbose - Print git commands."
- echo " -1 report the repos name on the first line of the output as <repo>:"
- echo " -z just to some house cleaning (hooks mostly). this is a stand-alone option as in ./g -z"
- echo " --set-push-user [username] re-write an existing tree's config with an fd.o commit account name"
- echo " --last-working checks out the last known working build (useful for windows)";
- echo " --set-last-working adds a note denoting a working build";
- echo " --push-notes pushes all notes";
- exit $?
+if [ -n "$g_debug" ] ; then
+ set -x
fi
-if [ ! "`type -p git`" ]; then
- echo "Cannot find the git binary! Is git installed and is in PATH?"
- exit 1
-fi
+SUBMODULES_ALL="dictionaries helpcontent2 translations"
pushd $(dirname $0) > /dev/null
COREDIR=$(pwd)
popd > /dev/null
-if test -f $COREDIR/bin/repo-list
-then
- ALLREPOS="core `cat "$COREDIR/bin/repo-list"`"
-else
- ALLREPOS=core
-fi
+usage()
+{
+ git
+ echo
+ echo "Usage: g [options] [git (checkout|clone|fetch|grep|pull|push|reset) [git options/args..]]"
+ echo ""
+ echo " -z restore the git hooks and do other sanity checks"
+}
-refresh_hooks()
+refresh_submodule_hooks()
{
- repo=$1
- case "$repo" in
- core)
- pushd $COREDIR > /dev/null
- for hook_name in $(ls -1 $COREDIR/git-hooks) ; do
- hook=".git/hooks/$hook_name"
- if [ ! -x "$hook" ] ; then
- rm -f "$hook"
- ln -sf "$COREDIR/git-hooks/$hook_name" "$hook"
- fi
- done
- popd > /dev/null
- ;;
- translations)
- if [ -d $COREDIR/clone/translations ] ; then
- pushd $COREDIR/clone/translations > /dev/null
- for hook_name in $(ls -1 $COREDIR/clone/translations/git-hooks); do
- hook=".git/hooks/$hook_name"
- if [ ! -x "$hook" ] ; then
- rm -f "$hook"
- ln -sf "$COREDIR/clone/translations/git-hooks/$hook_name" "$hook"
- fi
- done
- # .gitattribute should be per-repo, avoid entangling repos
- if [ -L .gitattributes ] ; then
- rm -f .gitattributes
- fi
- popd > /dev/null
- fi
- ;;
- binfilter|help|dictionaries)
- if [ -d $COREDIR/clone/$repo ] ; then
- pushd $COREDIR/clone/$repo > /dev/null
- # fixme: we should really keep these per-repo to
- # keep the repos independant. since these two
- # are realy not independant yet, we keep using core's hooks
- for hook_name in $(ls -1 $COREDIR/git-hooks) ; do
- hook=".git/hooks/$hook_name"
- if [ ! -x "$hook" ] ; then
- rm -f "$hook"
- ln -sf "$COREDIR/git-hooks/$hook_name" "$hook"
- fi
- done
- # .gitattribute should be per-repo, avoid entangling repos
- if [ -L .gitattributes ] ; then
- rm -f .gitattributes
- fi
- popd > /dev/null
+local repo=$1
+local hook
+local hook_name
+
+ if [ -d ${repo?}/.git ] ; then
+ # use core's hook by default
+ for hook_name in $(ls -1 ${COREDIR?}/.git-hooks) ; do
+ hook="${repo?}/.git/hooks/${hook_name?}"
+ if [ ! -e "${hook?}" -o -L "${hook?}" ] ; then
+ rm -f "${hook?}"
+ ln -sf "${COREDIR?}/.git-hooks/${hook_name?}" "${hook?}"
fi
- ;;
- esac
+ done
+ # override if need be by the submodules' own hooks
+ for hook_name in $(ls -1 ${COREDIR?}/${repo?}/.git-hooks 2>/dev/null) ; do
+ hook="${repo?}/.git/hooks/${hook_name?}"
+ if [ ! -e "${hook?}" -o -L "${hook?}" ] ; then
+ rm -f "${hook?}"
+ ln -sf "${COREDIR?}/${repo?}/.git-hooks/${hook_name?}" "${hook?}"
+ fi
+ done
+ fi
}
refresh_all_hooks()
{
- repos="$ALLREPOS"
- for repo in $repos ; do
- refresh_hooks $repo
+local repo
+local hook_name
+local hook
+
+ pushd ${COREDIR?} > /dev/null
+ for hook_name in $(ls -1 ${COREDIR?}/.git-hooks) ; do
+ hook=".git/hooks/${hook_name?}"
+ if [ ! -e "${hook?}" -o -L "${hook?}" ] ; then
+ rm -f "${hook?}"
+ ln -sf "${COREDIR?}/.git-hooks/${hook_name?}" "${hook?}"
+ fi
+ done
+
+ for repo in ${SUBMODULES_ALL?} ; do
+ refresh_submodule_hooks $repo
done
+ popd > /dev/null
+
}
-postprocess()
+set_push_url()
{
- rc=$1
- if $DO_HOOK_REFRESH ; then
- refresh_all_hooks
+local repo
+
+ repo="$1"
+ if [ -n "$repo" ] ; then
+ pushd "${COREDIR?}/${repo?}" > /dev/null
+ else
+ pushd "${COREDIR?}" > /dev/null
+ repo="core"
+ fi
+ echo "setting up push url for ${repo?}"
+ if [ "${repo?}" = "helpcontent2" ] ; then
+ git config remote.origin.pushurl "ssh://${PUSH_USER}gerrit.libreoffice.org:29418/help"
+ else
+ git config remote.origin.pushurl "ssh://${PUSH_USER}gerrit.libreoffice.org:29418/${repo?}"
+ fi
+ popd > /dev/null
+}
+
+set_push_urls()
+{
+ PUSH_USER="$1"
+ if [ -n "$PUSH_USER" ] ; then
+ PUSH_USER="${PUSH_USER}@"
+ fi
+ set_push_url
+ for repo in ${SUBMODULES_ACTIVE?} ; do
+ set_push_url "${repo?}"
+ done
+}
+
+get_active_submodules()
+{
+SUBMODULES_ACTIVE=""
+local repo
+
+ for repo in ${SUBMODULES_ALL?} ; do
+ if [ -d ${repo?}/.git ] ; then
+ SUBMODULES_ACTIVE="${repo?} ${SUBMODULES_ACTIVE?}"
+ fi
+ done
+}
+
+get_configured_submodules()
+{
+ SUBMODULES_CONFIGURED=""
+ if [ -f "config_host.mk" ] ; then
+ SUBMODULES_CONFIGURED=$(cat config_host.mk | grep GIT_NEEDED_SUBMODULES | sed -e "s/.*=//")
+ else
+ # if we need the configured submoduel before the configuration is done. we assumed you want them all
+ SUBMODULES_CONFIGURED=${SUBMODULES_ALL?}
+ fi
+}
+
+do_shortcut_update()
+{
+local module
+local repo
+
+ for module in $SUBMODULES_CONFIGURED ; do
+ if [ ! -d ${module?}/.git ] ; then
+ case "${module?}" in
+ helpcontent2)
+ if [ -d clone/help/.git ] ; then
+ repo="clone/help/.git"
+ fi
+ ;;
+ *)
+ if [ -d clone/${module?}/.git ] ; then
+ repo="clone/${module?}/.git"
+ fi
+ ;;
+ esac
+ if [ -n "$repo" ] ; then
+ cp -r "${repo?}" "${module?}/."
+ fi
+ fi
+ done
+}
+
+do_git_cmd()
+{
+ echo "cmd:$@"
+ git "$@"
+ git submodule foreach git "$@" $KEEP_GOING
+}
+
+do_checkout()
+{
+local cmd
+local create_branch="0"
+local branch
+local module
+
+ git checkout "$@" || return $?
+ for cmd in "$@" ; do
+ if [ "$cmd" = "-f" ]; then
+ return 0
+ elif [ "$cmd" = "-b" ] ; then
+ create_branch=1
+ elif [ "$create_branch" = "1" ] ; then
+ branch="$arg"
+ create_branch=0
+ fi
+ done
+ if [ -f .gitmodules ] ; then
+ git submodule update
+ if [ -n "$branch" ] ; then
+ git submodules foreach git checkout -b ${branch} HEAD || return $?
+ fi
+ else
+ # now that is the nasty case we moved prior to submodules
+ # delete the submodules left over if any
+ for module in $SUBMODULES_ALL ; do
+ echo "clean-up submodule $module"
+ rm -fr ${module}
+ done
+ # make sure we have the needed repo in clone
+ ./g clone && ./g -f checkout "$@" || return $?
+ fi
+ return $?
+}
+
+do_reset()
+{
+ git reset "$@" || return $?
+ if [ -f .gitmodules ] ; then
+ git submodule update || return $?
+ else
+ # now that is the nasty case we moved prior to submodules
+ # delete the submodules left over if any
+ for module in $SUBMODULES_ALL ; do
+ echo "clean-up submodule $module"
+ rm -fr ${module}
+ done
+ # make sure we have the needed repo in clone
+ ./g clone && ./g -f reset "$@"
fi
+ return $?;
+}
+
+do_init_modules()
+{
+local module
+local configured
- exit $rc;
+ do_shortcut_update
+
+ for module in $SUBMODULES_CONFIGURED ; do
+ configured=$(git config --local --get submodule.${module}.url)
+ if [ -z "$configured" ] ; then
+ git submodule init $module || return $?
+ fi
+ done
+ return 0
}
-CLONEDIR="$COREDIR/clone"
-if [ ! -e ${CLONEDIR} ]; then mkdir -p "$CLONEDIR"; fi
+
+# no params, no action
+if [ "$#" -eq "0" ] ; then
+ usage
+fi
+
+if [ ! "`type -p git`" ]; then
+ echo "Cannot find the git binary! Is git installed and is in PATH?"
+ exit 1
+fi
+
+
+get_active_submodules
+get_configured_submodules
+
+
+
# extra params for some commands, like log
EXTRA=
@@ -125,7 +257,7 @@ PUSH_NOTES=
LAST_WORKING=
SET_LAST_WORKING=
ALLOW_EMPTY=
-KEEP_GOING=0
+KEEP_GOING=
REPORT_REPOS=1
REPORT_COMMANDS=0
REPORT_COMPACT=0
@@ -133,289 +265,72 @@ DO_HOOK_REFRESH=false
while [ "${COMMAND:0:1}" = "-" ] ; do
case "$COMMAND" in
- -f) KEEP_GOING=1
- ;;
- -s) REPORT_REPOS=0
- ;;
- -v) REPORT_COMMANDS=1
- ;;
- -1) REPORT_COMPACT=1
- ;;
- --set-push-user)
- shift
- PUSH_USER="$1"
- ;;
- --last-working) LAST_WORKING=1
- ;;
- --set-last-working) SET_LAST_WORKING=1
- ;;
- --push-notes) PUSH_NOTES=1
+ -f )KEEP_GOING="||:"
;;
-z)
- DO_HOOK_REFRESH=true
- postprocess 0
+ refresh_all_hooks
+ exit 0;
;;
+ --set-push-urls)
+ shift
+ PUSH_USER="$1"
+ if [ -n "${PUSH_USER}" ] ; then
+ PUSH_USER="${PUSH_USER}@"
+ fi
+ set_push_urls
+ exit 0;
+ ;;
+ -*)
+ echo "option: $COMMAND not supported" 1>&2
+ exit 1
esac
shift
COMMAND="$1"
done
+shift
+
case "$COMMAND" in
- apply)
- EXTRA="-p0 --stat --apply --index --ignore-space-change --whitespace=error"
- RELATIVIZE=0
- ;;
- clone|fetch|pull)
- DO_HOOK_REFRESH=true
- ;;
- diff)
- PAGER='--no-pager'
- REPORT_REPOS=0
- ;;
- log)
- if [ "$#" = "1" ] ; then
- EXTRA='-1'
- fi
- PAGER='--no-pager'
+ branch)
+ do_git_cmd ${COMMAND} "$@"
+ ;;
+ checkout)
+ do_checkout "$@"
+ ;;
+ clone)
+ do_init_modules && git submodule update && refresh_all_hooks
;;
+ fetch)
+ (git fetch "$@" && git submodule foreach git fetch "$@" ) && git submodule update
+
+ ;;
+ grep)
+ KEEP_GOING="||:"
+ do_git_cmd ${COMMAND} "$@"
+ ;;
+ pull)
+ git pull "$@" && git submodule update && refresh_all_hooks
+ ;;
push)
- if [ "$#" != "1" ] ; then
- PUSH_ALL=1
- fi
+ git submodule foreach git push "$@"
+ if [ "$?" = "0" ] ; then
+ git push "$@"
+ fi
+ ;;
+ reset)
+ do_reset
+ ;;
+ tag)
+ do_git_cmd ${COMMAND} "$@"
+ ;;
+ "")
+ ;;
+ *)
+ echo "./g does not support command: $COMMAND" 1>&2
+ exit 1;
;;
esac
-# absolutize the parameters first
-unset FILES
-FILESNUM=0
-while shift ; do
- PARAM="$1"
- if [ -z "$PARAM" ] ; then
- continue
- elif [ "${PARAM:0:1}" = "-" ] ; then
- if [ \( "$COMMAND" = "checkout" -a "$PARAM" = "-b" \) -o \
- \( "$COMMAND" = "clone" -a "$PARAM" = "--reference" \) -o \
- \( "$COMMAND" = "commit" -a "$PARAM" = "-m" \) -o \
- \( "$COMMAND" = "commit" -a "$PARAM" = "-am" \) -o \
- \( "$COMMAND" = "tag" -a "$PARAM" = "-m" \) ]
- then
- # params that take an argument
- FILES[$FILESNUM]="$PARAM"
- FILESNUM=$(($FILESNUM+1))
- shift
- FILES[$FILESNUM]="$1"
- FILESNUM=$(($FILESNUM+1))
- else
- if [ "$COMMAND" = "commit" -a "$PARAM" = "-F" ]
- then
- shift
- # this still needs some magic to handle relative paths
- EXTRA="${EXTRA} -F ${1}"
- else
- [ "$COMMAND" = "commit" -a "$PARAM" = "--allow-empty" ] && ALLOW_EMPTY=1
- FILES[$FILESNUM]="$PARAM"
- FILESNUM=$(($FILESNUM+1))
- fi
- fi
- else
- if [ "$COMMAND" = "apply" ] ; then
- grep -qs $'^+ *\t' "$PARAM" && {
- echo "Patch '$PARAM' introduces tabs in indentation, aborting."
- echo
- echo "Please fix the patch (something like s/^\(+ *\)\t/\1 /) and try again."
- echo
- exit 1
- }
- fi
- if [ "$COMMAND" == "rev-parse" ] ; then
- # this is not a file
- FILES[$FILESNUM]="$PARAM"
- FILESNUM=$(($FILESNUM+1))
- else
- # make the paths absolute
- FILES[$FILESNUM]=$(perl -e 'use Cwd "abs_path"; print abs_path(shift);' "$PARAM" 2>/dev/null)
- if [ -z "${FILES[$FILESNUM]}" -o ! -e "${FILES[$FILESNUM]}" ] ; then
- # it is probably not a file, but a tag name, or something
- FILES[$FILESNUM]="$PARAM"
- fi
- FILESNUM=$(($FILESNUM+1))
- fi
- fi
-done
-
-# do it!
-DIRS="core $(cd $CLONEDIR ; ls)"
-if [ "$COMMAND" = "clone" ] ; then
- DIRS="$ALLREPOS"
-fi
-for REPO in $DIRS ; do
- DIR="$CLONEDIR/$REPO"
- NAME="$REPO"
- if [ "$REPO" = "core" ] ; then
- DIR="$COREDIR"
- NAME="main repo"
- fi
-
- if [ -d "$DIR" -a "z$PUSH_USER" != "z" ]; then
- echo "setting up push url for $DIR"
- (cd $DIR && git config remote.origin.pushurl "ssh://${PUSH_USER}@gerrit.libreoffice.org:29418/${REPO}")
- elif [ -d "$DIR" -a "z$LAST_WORKING" != "z" ]; then
- echo "fetching notes for $REPO ..."
- (cd $DIR && git fetch origin 'refs/notes/*:refs/notes/*')
- hash=`(cd $DIR && git log --pretty='%H %N' | grep 'win32 working build' | head -n1 | sed 's/ win32.*//')`
- if test "z$hash" != "z"; then
- echo "update to $hash"
- (cd $DIR && git checkout $hash)
- else
- echo "Warning: missing known working note on repo $REPO"
- fi
- elif [ -d "$DIR" -a "z$SET_LAST_WORKING" != "z" ]; then
- echo "fetching notes for $REPO ..."
- (cd $DIR && git fetch origin 'refs/notes/*:refs/notes/*')
- (cd $DIR && git notes add -m 'win32 working build')
- elif [ -d "$DIR" -a "z$PUSH_NOTES" != "z" ]; then
- echo "pushing notes for $REPO ..."
- (cd $DIR && git push origin 'refs/notes/*:refs/notes/*')
- elif [ \( -d "$DIR" -a -d "$DIR"/.git \) -o \( "$COMMAND" = "clone" \) ] ; then
- (
- # executed in a subshell
- if [ "$COMMAND" != "clone" ] ; then
- cd "$DIR"
- else
- cd "$CLONEDIR"
- fi
-
- # relativize the absolutized params again if we want to operate
- # only on the files belonging to this exact repo
- if [ "$RELATIVIZE" = "1" -a -n "$FILES" ] ; then
- FILESNUM=0
- INSERTNUM=0
- PWD=$(pwd)
- PWDLEN=$(pwd | wc -c)
- for I in "${FILES[@]}" ; do
- I="${I//@REPO@/${REPO}}"
- unset FILES[$FILESNUM]
- FILESNUM=$(($FILESNUM+1))
- # filter out files that don't belong to this repo
- if [ \( "${I:0:1}" = "/" \) -a \( "$COMMAND" != "clone" \) ] ; then
- if [ "${I:0:$PWDLEN}" = "$PWD/" ] ; then
- FILES[$INSERTNUM]="${I:$PWDLEN}"
- INSERTNUM=$(($INSERTNUM+1))
- fi
- else
- FILES[$INSERTNUM]="$I"
- INSERTNUM=$(($INSERTNUM+1))
- fi
- done
- [ "$INSERTNUM" = "0" ] && exit 0
- fi
-
- # some extra params
- case "$COMMAND" in
- apply)
- for I in * ; do
- if [ -d "$I" ] ; then
- EXTRA="$EXTRA --include=$I/*"
- else
- EXTRA="$EXTRA --include=$I"
- fi
- done
- ;;
- commit)
- if [ "$ALLOW_EMPTY" != "1" ] ; then
- [ -z "$(git diff-index --name-only HEAD --)" ] && exit 0
- fi
- ;;
- push)
- if [ "$PUSH_ALL" != "1" ] ; then
- [ -n "$(git rev-list @{upstream}..HEAD)" ] || exit 0
- fi
- ;;
- status)
- LOCALCOMMITS="$(git rev-list @{upstream}..HEAD)"
- if [ -z "$LOCALCOMMITS" ] ; then
- [ -z "$(git diff-index --name-only HEAD --)" ] && exit 0
- fi
- ;;
- clone)
- EXTRA="$(git config remote.origin.url)"
- EXTRA=${EXTRA/core/${REPO}}
- ;;
- esac
-
- # do it!
- if [ "$COMMAND" != "clone" -o ! -d $DIR ] ; then
- if [ "$REPORT_REPOS" = "1" -a "$COMMAND" != "grep" ] ; then
- if [ "$REPORT_COMPACT" = "1" ] ; then
- echo -n "${REPO}:"
- else
- echo "===== $NAME ====="
- fi
- fi
- if [ "$REPORT_COMMANDS" = "1" ] ; then
- echo "+ git $PAGER $COMMAND $EXTRA ${FILES[@]}"
- fi
- git $PAGER "$COMMAND" $EXTRA "${FILES[@]}"
- RETURN=$?
- fi
-
- # now we can change the dir in case of clone as well
- if [ "$COMMAND" = "clone" ] ; then
- cd $DIR
- fi
-
- case "$COMMAND" in
- pull|clone)
- # update links
- if [ "$DIR" != "$COREDIR" ]; then
- for link in $(ls) ; do
- if [ ! -e "$COREDIR/$link" ] ; then
- if test -h "$COREDIR/$link"; then
- rm "$COREDIR/$link"
- echo -n "re-"
- fi
- echo "creating missing link $link"
- ln -s "$DIR/$link" "$COREDIR/$link"
- fi
- done
- fi
- ;;
- status)
- # git status returns error in some versions, clear that
- RETURN=0
- ;;
- grep)
- # git grep return an 'error' if nothing is found
- # still we should continue grepping the other repos
- RETURN=0
- ;;
- esac
- if [ "$KEEP_GOING" = "1" ] ; then
- RETURN=0
- fi
-
- exit $RETURN
- ) || postprocess $?
- fi
-done
-
-# Cleanup the broken links
-if [ "$COMMAND" = "pull" ] ; then
- for link in $(ls $COREDIR) ; do
- if [ -h "$COREDIR/$link" -a ! -e "$COREDIR/$link" ]; then
- echo "Removing broken link $link"
- rm $COREDIR/$link
- fi
- done
-fi
-
-# warn
-if [ "$COMMAND" = "apply" ] ; then
- echo
- echo "Don't forget to check the status & commit now ;-)"
- echo
-fi
-
-postprocess $?
+exit $?
# vi:set shiftwidth=4 expandtab:
diff --git a/gdk-pixbuf/README b/gdk-pixbuf/README
deleted file mode 100644
index 325bd2d32c54..000000000000
--- a/gdk-pixbuf/README
+++ /dev/null
@@ -1,10 +0,0 @@
-GdkPixbuf is a library for image loading and pixel buffer manipulation.
-And it's provides a number of features:
-
- - Image loading saving facilities.
- - Rendering of a GdkPixBuf into various formats:
- drawables (windows, pixmaps), GdkRGB buffers.
- - Fast scaling and compositing of pixbufs.
- - Simple animation loading (ie. animated GIFs)
-
-See Also [ http://developer.gnome.org/gdk-pixbuf/stable/ ] \ No newline at end of file
diff --git a/gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch b/gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch
deleted file mode 100644
index a6f6a84d95ae..000000000000
--- a/gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch
+++ /dev/null
@@ -1,463 +0,0 @@
---- misc/gdk-pixbuf-2.23.0/config.h.win32 2011-03-24 04:59:07.000000000 +0100
-+++ misc/build/gdk-pixbuf-2.23.0/config.h.win32 2011-03-22 01:58:24.296875000 +0100
-@@ -1 +1,126 @@
--dummy
-+/* config.h.in. Generated from configure.ac by autoheader. */
-+
-+/* Define to 1 if translation of program messages to the user's native
-+ language is requested. */
-+#undef ENABLE_NLS
-+
-+/* Define if gio can sniff image data */
-+#undef GDK_PIXBUF_USE_GIO_MIME
-+
-+/* The prefix for our gettext translation domains. */
-+#define GETTEXT_PACKAGE "intl.dll"
-+
-+/* Define to 1 if you have the `bind_textdomain_codeset' function. */
-+#undef HAVE_BIND_TEXTDOMAIN_CODESET
-+
-+/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
-+ CoreFoundation framework. */
-+#undef HAVE_CFLOCALECOPYCURRENT
-+
-+/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
-+ the CoreFoundation framework. */
-+#undef HAVE_CFPREFERENCESCOPYAPPVALUE
-+
-+/* Define if the GNU dcgettext() function is already present or preinstalled.
-+ */
-+#undef HAVE_DCGETTEXT
-+
-+/* Define to 1 if you have the <dlfcn.h> header file. */
-+#undef HAVE_DLFCN_H
-+
-+/* Define if the GNU gettext() function is already present or preinstalled. */
-+#define HAVE_GETTEXT 1
-+
-+/* Define if you have the iconv() function and it works. */
-+#define HAVE_ICONV 1
-+
-+/* Define to 1 if you have the <inttypes.h> header file. */
-+#undef HAVE_INTTYPES_H
-+
-+/* Define to 1 if you have the <memory.h> header file. */
-+#undef HAVE_MEMORY_H
-+
-+/* Define to 1 is libjpeg supports progressive JPEG */
-+#define HAVE_PROGRESSIVE_JPEG 1
-+
-+/* Define to 1 if sigsetjmp is available */
-+#undef HAVE_SIGSETJMP
-+
-+/* Define to 1 if you have the <stdint.h> header file. */
-+#undef HAVE_STDINT_H
-+
-+/* Define to 1 if you have the <stdlib.h> header file. */
-+#define HAVE_STDLIB_H 1
-+
-+/* Define to 1 if you have the <strings.h> header file. */
-+#define HAVE_STRINGS_H 1
-+
-+/* Define to 1 if you have the <string.h> header file. */
-+#undef HAVE_STRING_H
-+
-+/* Define to 1 if you have the <sys/stat.h> header file. */
-+#undef HAVE_SYS_STAT_H
-+
-+/* Define to 1 if sys/sysinfo.h is available */
-+#undef HAVE_SYS_SYSINFO_H
-+
-+/* Define to 1 if sys/systeminfo.h is available */
-+#undef HAVE_SYS_SYSTEMINFO_H
-+
-+/* Define to 1 if you have the <sys/types.h> header file. */
-+#undef HAVE_SYS_TYPES_H
-+
-+/* Define to 1 if you have the <unistd.h> header file. */
-+#undef HAVE_UNISTD_H
-+
-+/* Define to the sub-directory in which libtool stores uninstalled libraries.
-+ */
-+#undef LT_OBJDIR
-+
-+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
-+#undef NO_MINUS_C_MINUS_O
-+
-+/* Define to the address where bug reports for this package should be sent. */
-+#undef PACKAGE_BUGREPORT
-+
-+/* Define to the full name of this package. */
-+#undef PACKAGE_NAME
-+
-+/* Define to the full name and version of this package. */
-+#undef PACKAGE_STRING
-+
-+/* Define to the one symbol short name of this package. */
-+#undef PACKAGE_TARNAME
-+
-+/* Define to the home page for this package. */
-+#undef PACKAGE_URL
-+
-+/* Define to the version of this package. */
-+#undef PACKAGE_VERSION
-+
-+/* Define to 1 if you have the ANSI C header files. */
-+#undef STDC_HEADERS
-+
-+/* Define to 1 if gmodule works and should be used */
-+#undef USE_GMODULE
-+
-+/* Whether to load modules via .la files rather than directly */
-+#undef USE_LA_MODULES
-+
-+/* Define to 1 if medialib is available and should be used */
-+#undef USE_MEDIALIB
-+
-+/* Define to 1 if medialib 2.5 is available */
-+#undef USE_MEDIALIB25
-+
-+/* Define to 1 if XXM is available and should be used */
-+#undef USE_MMX
-+
-+/* Number of bits in a file offset, on hosts where this is settable. */
-+#undef _FILE_OFFSET_BITS
-+
-+/* Define for large files, on AIX-style hosts. */
-+#undef _LARGE_FILES
-+
-+/* Define to empty if `const' does not conform to ANSI C. */
-+#undef const
---- misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/io-png.c
-+++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/io-png.c
-@@ -30,6 +30,10 @@
- #include <pngstruct.h>
- #include "gdk-pixbuf-private.h"
-
-+#ifndef png_jmpbuf
-+# define png_jmpbuf(png_ptr) ((png_ptr)->png_jmpbuf)
-+#endif
-+
-
-
- static gboolean
-@@ -183,7 +183,7 @@ png_simple_error_callback(png_structp png_save_ptr,
- error_msg);
- }
-
-- longjmp (png_save_ptr->jmpbuf, 1);
-+ longjmp (png_jmpbuf (png_save_ptr), 1);
- }
-
- static void
-@@ -287,7 +287,7 @@ gdk_pixbuf__png_image_load (FILE *f, GError **error)
- return NULL;
- }
-
-- if (setjmp (png_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (png_ptr))) {
- g_free (rows);
-
- if (pixbuf)
-@@ -459,7 +459,7 @@ gdk_pixbuf__png_image_begin_load (GdkPixbufModuleSizeFunc size_func,
- return NULL;
- }
-
-- if (setjmp (lc->png_read_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (lc->png_read_ptr))) {
- if (lc->png_info_ptr)
- png_destroy_read_struct(&lc->png_read_ptr, NULL, NULL);
- g_free(lc);
-@@ -531,7 +531,7 @@ gdk_pixbuf__png_image_load_increment(gpointer context,
- lc->error = error;
-
- /* Invokes our callbacks as needed */
-- if (setjmp (lc->png_read_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (lc->png_read_ptr))) {
- lc->error = NULL;
- return FALSE;
- } else {
-@@ -769,7 +769,7 @@ png_error_callback(png_structp png_read_ptr,
- error_msg);
- }
-
-- longjmp (png_read_ptr->jmpbuf, 1);
-+ longjmp (png_jmpbuf (png_read_ptr), 1);
- }
-
- static void
-@@ -978,7 +978,7 @@ static gboolean real_save_png (GdkPixbuf *pixbuf,
- success = FALSE;
- goto cleanup;
- }
-- if (setjmp (png_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (png_ptr))) {
- success = FALSE;
- goto cleanup;
- }
-
---- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/makefile.msc 2010-06-25 23:40:10.000000000 +0200
-+++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/makefile.msc 2011-03-24 06:13:30.515625000 +0100
-@@ -1,9 +1,19 @@
--TOP = ..\..
- PRJ_TOP = ..
-+GLIB_TOP =
- PACKAGE = gdk_pixbuf
- PKG_VER = $(GDK_PIXBUF_VER)
-+GLIB_INC = -I$(OUTDIR)\inc\external\glib-2.0
-+LIBPNG_INC = -I$(OUTDIR)\inc\external\libpng
-+LIBJPEG_INC = -I$(OUTDIR)\inc\external\libjpeg
-+
-+INTL_LIB = $(OUTDIR)\lib\intl.lib
-+GLIB_LIB = $(OUTDIR)\lib\glib-2.0.lib $(OUTDIR)\lib\gobject-2.0.lib $(OUTDIR)\lib\gmodule-2.0.lib $(OUTDIR)\lib\gio-2.0.lib $(OUTDIR)\lib\gthread-2.0.lib
-+LIBJPEG_LIB = $(OUTDIR)\lib\jpeg.lib
-+LIBPNG_LIB = $(OUTDIR)\lib\libpng.lib
-+ZLIB_LIB = $(OUTDIR)\lib\zlib.lib
-+GDIPLUS_LIB = gdiplus.lib
-
--!INCLUDE $(TOP)/glib/build/win32/make.msc
-+!INCLUDE $(OUTDIR)\inc\external\glib-2.0\make.msc
-
- !IFNDEF PERL
- PERL = perl
-@@ -13,22 +23,22 @@
-
- # -DINCLUDE_gdiplus _replaces_ -DINCLUDE_bmp -DINCLUDE_gif -DINCLUDE_ico -DINCLUDE_jpeg -DINCLUDE_tiff
- # but not yet -DINCLUDE_png
--##USEGDIP=1
-+USEGDIP=1
- # to get _working_ include modules we need respective defines ...
- #
- BUILT_IN_FORMATS = \
- !IFDEF USEGDIP
- -DINCLUDE_gdiplus \
- !ELSE
-- -DINCLUDE_bmp -DINCLUDE_gif -DINCLUDE_ico -DINCLUDE_jpeg -DINCLUDE_tiff \
-+ -DINCLUDE_bmp -DINCLUDE_gif -DINCLUDE_ico -DINCLUDE_jpeg \
- !ENDIF
- -DINCLUDE_png \
- -DINCLUDE_xpm -DINCLUDE_wbmp \
- -DINCLUDE_pnm -DINCLUDE_ras
-
--PKG_CFLAGS = -FImsvc_recommended_pragmas.h \
-+PKG_CFLAGS = -FI$(PRJ_TOP)\msvc_recommended_pragmas.h \
- !IFNDEF USEGDIP
-- $(JPEG_CFLAGS) $(TIFF_CFLAGS) \
-+ $(JPEG_CFLAGS) \
- !ENDIF
- -I. -I.. $(GLIB_CFLAGS) \
- $(BUILT_IN_FORMATS) \
-@@ -39,13 +49,14 @@
- -UUSE_GMODULE # use built-in
- # -DUSE_GMODULE -DPIXBUF_LIBDIR=\".\"
-
--PKG_LINK = $(GLIB_LIBS) \
--!IFNDEF USEGDIP
-- $(TIFF_LIBS) $(JPEG_LIBS) \
--!ENDIF
-- $(PNG_LIBS) $(INTL_LIBS) \
-- pixops\pixops.lib \
--
-+PKG_LINK = $(INTL_LIB) \
-+ $(GLIB_LIB) \
-+ $(LIBPNG_LIB) \
-+ $(LIBJPEG_LIB) \
-+ $(ZLIB_LIB) \
-+ $(GDIPLUS_LIB) \
-+ pixops\pixops.lib
-+
- OBJECTS_NON_NATIVE = \
- io-bmp.obj \
- io-gif.obj \
-@@ -95,13 +106,13 @@
- gdk-pixbuf-transform.h
-
- gdk-pixbuf-marshal.h: gdk-pixbuf-marshal.list
-- ..\..\glib\gobject\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --header >gdk-pixbuf-marshal.h
-+ $(OUTDIR)\bin\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --header >gdk-pixbuf-marshal.h
-
- gdk-pixbuf-marshal.c: gdk-pixbuf-marshal.h gdk-pixbuf-marshal.list
-- ..\..\glib\gobject\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --body >gdk-pixbuf-marshal.c
-+ $(OUTDIR)\bin\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --body >gdk-pixbuf-marshal.c
-
--gdk-pixbuf-alias.h: gdk-pixbuf.symbols
-- perl makegdkpixbufalias.pl < gdk-pixbuf.symbols > gdk-pixbuf-alias.h
-+#gdk-pixbuf-alias.h: gdk-pixbuf.symbols
-+# perl makegdkpixbufalias.pl < gdk-pixbuf.symbols > gdk-pixbuf-alias.h
-
- gdk_pixbuf.def: gdk-pixbuf.symbols makefile.msc
- echo EXPORTS > gdk_pixbuf.def
-@@ -109,14 +120,15 @@
- -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= -DG_GNUC_PRINTF=;G_GNUC_PRINTF \
- gdk-pixbuf.symbols >> gdk_pixbuf.def
-
--gdk-pixbuf-aliasdef.c: gdk-pixbuf.symbols
-- perl makegdkpixbufalias.pl -def < gdk-pixbuf.symbols > gdk-pixbuf-aliasdef.c
-+#gdk-pixbuf-aliasdef.c: gdk-pixbuf.symbols
-+# perl makegdkpixbufalias.pl -def < gdk-pixbuf.symbols > gdk-pixbuf-aliasdef.c
-
- ## common stuff
-
- INSTALL = copy
-
--CFLAGS = -I. -DHAVE_CONFIG_H
-+CFLAGS = -I. $(SOLARINC) $(GLIB_INC) $(LIBPNG_INC) $(LIBJPEG_INC) \
-+ -DHAVE_CONFIG_H -DGDK_PIXBUF_LOCALEDIR="\"locale_dummy\""
-
- sub-pixops :
- cd pixops
-@@ -126,19 +138,19 @@
- ## targets
- all : \
- $(PRJ_TOP)\config.h \
-- gdk-pixbuf-alias.h \
-- gdk-pixbuf-aliasdef.c \
-+# gdk-pixbuf-alias.h \
-+# gdk-pixbuf-aliasdef.c \
- gdk-pixbuf-marshal.h \
- gdk-pixbuf-marshal.c \
- sub-pixops \
- lib$(PACKAGE)-$(PKG_VER)-0.dll \
-- $(PACKAGE)-$(PKG_VER)s.lib \
-+ $(PACKAGE)-$(PKG_VER)s.lib
- # make-inline-pixbuf.exe \
-- gdk-pixbuf-csource.exe \
-- test-gdk-pixbuf.exe
-+# gdk-pixbuf-csource.exe \
-+# test-gdk-pixbuf.exe
-
- $(PACKAGE).res : $(PACKAGE).rc
-- rc -DBUILDNUMBER=0 -r -fo $(PACKAGE).res $(PACKAGE).rc
-+ rc -I $(SOLARINCLUDES) -DBUILDNUMBER=0 -r -fo $(PACKAGE).res $(PACKAGE).rc
-
- $(PACKAGE)-$(PKG_VER)s.lib : $(OBJECTS)
- lib /out:$(PACKAGE)-$(PKG_VER)s.lib $(OBJECTS) pixops\pixops.lib
-@@ -160,7 +172,7 @@
- # gdk-pixbuf-enum-types.h
- #
- gdk-pixbuf-enum-types.h : $(gdk_pixbuf_headers) makefile.msc
-- $(PERL) $(GLIB)\gobject\glib-mkenums \
-+ perl $(OUTDIR)\bin\glib-mkenums \
- --fhead "#ifndef __GDK_PIXBUF__ENUM_TYPES_H__\n#define __GDK_PIXBUF_ENUM_TYPES_H__\n" \
- --fprod "/* enumerations from \"@filename@\" */\n" \
- --vhead "GType @enum_name@_get_type (void);\n#define GDK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
-@@ -171,8 +183,8 @@
- # gdk-pixbuf-enum-types.c
- #
- gdk-pixbuf-enum-types.c: $(gdk_pixbuf_headers) makefile.msc
-- $(PERL) $(GLIB)\gobject\glib-mkenums \
-- --fhead "#include <gdk-pixbuf/gdk-pixbuf.h>" \
-+ perl $(OUTDIR)\bin\glib-mkenums \
-+ --fhead "#include <gdk-pixbuf.h>" \
- --fprod "\n/* enumerations from \"@filename@\" */" \
- --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
-@@ -188,10 +200,10 @@
- $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<
-
- clean::
-- del config.h
-- del gdk-pixbuf-marshal.h
-- del gdk-pixbuf-marshal.c
-- del gdk-pixbuf-alaias.h
-+ rm config.h
-+ rm gdk-pixbuf-marshal.h
-+ rm gdk-pixbuf-marshal.c
-+ rm gdk-pixbuf-alaias.h
-
-
-
---- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/makefile.msc 2010-06-25 23:40:10.000000000 +0200
-+++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/makefile.msc 2011-03-24 06:03:59.062500000 +0100
-@@ -1,10 +1,11 @@
--TOP = ../../..
--PACKAGE = pixops
- PRJ_TOP = ..\..
-+PACKAGE = pixops
-+GLIB_TOP =
-+GLIB_INC = -I$(OUTDIR)\inc\external\glib-2.0
-
--!INCLUDE $(TOP)/glib/build/win32/make.msc
-+!INCLUDE $(OUTDIR)\inc\external\glib-2.0\make.msc
-
--PKG_CFLAGS = -I.. $(GLIB_CFLAGS)
-+PKG_CFLAGS = -I.. $(SOLARINC) $(GLIB_INC) $(GLIB_CFLAGS)
-
- OBJECTS = \
- pixops.obj \
-@@ -50,16 +51,16 @@
- $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<
-
- clean::
-- del config.h
-- del *.exe
-- del *.obj
-- del *.dll
-- del *.lib
-- del *.err
-- del *.map
-- del *.sym
-- del *.exp
-- del *.lk1
-- del *.mk1
-- del *.pdb
-- del *.ilk
-+ rm config.h
-+ rm *.exe
-+ rm *.obj
-+ rm *.dll
-+ rm *.lib
-+ rm *.err
-+ rm *.map
-+ rm *.sym
-+ rm *.exp
-+ rm *.lk1
-+ rm *.mk1
-+ rm *.pdb
-+ rm *.ilk
---- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/pixops.c 2010-06-25 23:40:10.000000000 +0200
-+++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/pixops.c 2011-03-22 01:58:24.281250000 +0100
-@@ -21,7 +21,7 @@
- */
- #include "config.h"
- #include <math.h>
--#include <glib.h>
-+#include <glib-2.0\glib.h>
-
- #include "pixops.h"
- #include "pixops-internal.h"
---- misc/gdk-pixbuf-2.23.0/msvc_recommended_pragmas.h 2011-03-24 04:59:07.625000000 +0100
-+++ misc/build/gdk-pixbuf-2.23.0/msvc_recommended_pragmas.h 2011-03-22 01:58:24.359375000 +0100
-@@ -1 +1,31 @@
--dummy
-+#ifndef _MSC_VER
-+#pragma error "This header is for Microsoft VC only."
-+#endif /* _MSC_VER */
-+
-+/* Make MSVC more pedantic, this is a recommended pragma list
-+ * from _Win32_Programming_ by Rector and Newcomer.
-+ */
-+#pragma warning(error:4002) /* too many actual parameters for macro */
-+#pragma warning(error:4003) /* not enough actual parameters for macro */
-+#pragma warning(1:4010) /* single-line comment contains line-continuation character */
-+#pragma warning(error:4013) /* 'function' undefined; assuming extern returning int */
-+#pragma warning(1:4016) /* no function return type; using int as default */
-+#pragma warning(error:4020) /* too many actual parameters */
-+#pragma warning(error:4021) /* too few actual parameters */
-+#pragma warning(error:4027) /* function declared without formal parameter list */
-+#pragma warning(error:4029) /* declared formal parameter list different from definition */
-+#pragma warning(error:4033) /* 'function' must return a value */
-+#pragma warning(error:4035) /* 'function' : no return value */
-+#pragma warning(error:4045) /* array bounds overflow */
-+#pragma warning(error:4047) /* different levels of indirection */
-+#pragma warning(error:4049) /* terminating line number emission */
-+#pragma warning(error:4053) /* An expression of type void was used as an operand */
-+#pragma warning(error:4071) /* no function prototype given */
-+#pragma warning(disable:4101) /* unreferenced local variable */
-+#pragma warning(error:4150)
-+
-+#pragma warning(disable:4244) /* No possible loss of data warnings */
-+#pragma warning(disable:4305) /* No truncation from int to char warnings */
-+
-+/* work around Microsoft's premature attempt to deprecate the C-Library */
-+#pragma warning(disable:4996) /* This function or variable may be unsafe. */
diff --git a/gdk-pixbuf/gdk-pixbuf-2.23.0.patch b/gdk-pixbuf/gdk-pixbuf-2.23.0.patch
deleted file mode 100644
index fccd992da74f..000000000000
--- a/gdk-pixbuf/gdk-pixbuf-2.23.0.patch
+++ /dev/null
@@ -1,171 +0,0 @@
---- misc/gdk-pixbuf-2.23.0/configure 2010-12-23 15:18:11.000000000 +0100
-+++ misc/build/gdk-pixbuf-2.23.0/configure 2011-06-14 15:20:05.000000000 +0200
-@@ -16839,7 +16839,7 @@
-
-
-
--
-+if false; then
-
- if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
- if test -n "$ac_tool_prefix"; then
-@@ -17158,14 +17158,18 @@
-
-
- rm -f conf.glibtest
--
-+else
-+ GLIB_MKENUMS=glib-mkenums
-+ GLIB_GENMARSHAL=glib-genmarshal
-+ GOBJECT_QUERY=gobject-query
-+fi
-
- # See if it's safe to turn G_DISABLE_DEPRECATED on.
--GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.[^.]*\$//"`
--GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo 2.25.15 | sed "s/\.[^.]*\$//"`
--if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
-+#GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.[^.]*\$//"`
-+#GLIB_REQUIRED_VERSION_MAJOR_MINOR=`echo 2.25.15 | sed "s/\.[^.]*\$//"`
-+#if test "x$GLIB_VERSION_MAJOR_MINOR" = "x$GLIB_REQUIRED_VERSION_MAJOR_MINOR"; then
- CFLAGS="-DG_DISABLE_DEPRECATED $CFLAGS"
--fi
-+#fi
-
- CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"
-
-@@ -17801,7 +17805,7 @@
- for l in libpng libpng14 libpng12 libpng13 libpng10 ; do
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $l" >&5
- $as_echo_n "checking for $l... " >&6; }
-- if $PKG_CONFIG --exists $l ; then
-+ if false ; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
- $as_echo "yes" >&6; }
- PNG='png'
-@@ -18206,8 +18210,8 @@
- $as_echo_n "checking if gio can sniff png... " >&6; }
- gtk_save_LIBS="$LIBS"
- gtk_save_CFLAGS="$CFLAGS"
-- LIBS="`$PKG_CONFIG --libs gio-2.0`"
-- CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
-+ #LIBS="`$PKG_CONFIG --libs gio-2.0`"
-+ #CFLAGS="`$PKG_CONFIG --cflags gio-2.0`"
- if test "$cross_compiling" = yes; then :
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
- $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-@@ -18622,8 +18626,8 @@
- GDK_PIXBUF_PACKAGES="gmodule-no-export-2.0 gobject-2.0 gio-2.0"
- GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB $MEDIA_LIB"
- GDK_PIXBUF_EXTRA_CFLAGS=
--GDK_PIXBUF_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
--GDK_PIXBUF_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $PNG_DEP_CFLAGS_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS"
-+GDK_PIXBUF_DEP_LIBS="$GDK_PIXBUF_EXTRA_LIBS"
-+GDK_PIXBUF_DEP_CFLAGS="$GDK_PIXBUF_EXTRA_CFLAGS"
-
-
-
-@@ -18640,7 +18644,7 @@
- GDK_PIXBUF_XLIB_EXTRA_CFLAGS=
- GDK_PIXBUF_XLIB_EXTRA_LIBS=
-
--if $PKG_CONFIG --exists x11; then
-+if false; then
- if true; then
- USE_X11_TRUE=
- USE_X11_FALSE='#'
---- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/gdk-pixbuf-util.c
-+++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/gdk-pixbuf-util.c
-@@ -23,7 +23,9 @@
-
- #include "config.h"
- #include <string.h>
-+#ifdef ENABLE_NLS
- #include <libintl.h>
-+#endif
-
- #include "gdk-pixbuf-transform.h"
- #include "gdk-pixbuf-private.h"
-@@ -336,15 +338,19 @@
- const gchar *
- gdk_pixbuf_gettext (const gchar *msgid)
- {
-+#ifdef ENABLE_NLS
- static gsize gettext_initialized = FALSE;
-
- if (G_UNLIKELY (g_once_init_enter (&gettext_initialized))) {
- bindtextdomain (GETTEXT_PACKAGE, GDK_PIXBUF_LOCALEDIR);
- #ifdef HAVE_BIND_TEXTDOMAIN_CODESET
- bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- #endif
- g_once_init_leave (&gettext_initialized, TRUE);
- }
-
- return g_dgettext (GETTEXT_PACKAGE, msgid);
-+#else
-+ return msgid;
-+#endif
- }
-From: Maarten Bosmans <mkbosmans@gmail.com>
-Date: Mon, 24 Jan 2011 10:39:22 +0000
-Subject: Use png_jmpbuf macro
-
-This makes the png loader compatible with libpng 1.5
-
-diff --git a/gdk-pixbuf/io-png.c b/gdk-pixbuf/io-png.c
-index 79c81fd..76f3304 100644
---- misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/io-png.c
-+++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/io-png.c
-@@ -183,7 +183,7 @@ png_simple_error_callback(png_structp png_save_ptr,
- error_msg);
- }
-
-- longjmp (png_save_ptr->jmpbuf, 1);
-+ longjmp (png_jmpbuf (png_save_ptr), 1);
- }
-
- static void
-@@ -287,7 +287,7 @@ gdk_pixbuf__png_image_load (FILE *f, GError **error)
- return NULL;
- }
-
-- if (setjmp (png_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (png_ptr))) {
- g_free (rows);
-
- if (pixbuf)
-@@ -459,7 +459,7 @@ gdk_pixbuf__png_image_begin_load (GdkPixbufModuleSizeFunc size_func,
- return NULL;
- }
-
-- if (setjmp (lc->png_read_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (lc->png_read_ptr))) {
- if (lc->png_info_ptr)
- png_destroy_read_struct(&lc->png_read_ptr, NULL, NULL);
- g_free(lc);
-@@ -531,7 +531,7 @@ gdk_pixbuf__png_image_load_increment(gpointer context,
- lc->error = error;
-
- /* Invokes our callbacks as needed */
-- if (setjmp (lc->png_read_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (lc->png_read_ptr))) {
- lc->error = NULL;
- return FALSE;
- } else {
-@@ -769,7 +769,7 @@ png_error_callback(png_structp png_read_ptr,
- error_msg);
- }
-
-- longjmp (png_read_ptr->jmpbuf, 1);
-+ longjmp (png_jmpbuf (png_read_ptr), 1);
- }
-
- static void
-@@ -978,7 +978,7 @@ static gboolean real_save_png (GdkPixbuf *pixbuf,
- success = FALSE;
- goto cleanup;
- }
-- if (setjmp (png_ptr->jmpbuf)) {
-+ if (setjmp (png_jmpbuf (png_ptr))) {
- success = FALSE;
- goto cleanup;
- }
diff --git a/gdk-pixbuf/makefile.mk b/gdk-pixbuf/makefile.mk
deleted file mode 100644
index c2709ec6769c..000000000000
--- a/gdk-pixbuf/makefile.mk
+++ /dev/null
@@ -1,128 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=gdk-pixbuf
-TARGET=so_gdk-pixbuf
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(SYSTEM_GDKPIXBUF)" == "YES"
-all:
- @echo "An already available installation of gdk-pixbuf should exist on your system."
- @echo "Therefore the version provided here does not need to be built in addition."
-.ENDIF
-
-# --- Files --------------------------------------------------------
-
-GDKPIXBUFVERSION=2.23.0
-
-TARFILE_NAME=$(PRJNAME)-$(GDKPIXBUFVERSION)
-TARFILE_MD5=a7d6c5f2fe2d481149ed3ba807b5c043
-
-.IF "$(OS)"=="MACOSX"
-
-PATCH_FILES=gdk-pixbuf-2.23.0.patch
-
-LOADER_PATTERN:=-Wl,-dylib_file,@loader_path/REPLACEME:$(SOLARLIBDIR)/REPLACEME
-LOADER_LIBS:=glib-2.0.0 gmodule-2.0.0 gobject-2.0.0 gthread-2.0.0
-EXTRA_LINKFLAGS+=$(foreach,lib,$(LOADER_LIBS) $(subst,REPLACEME,lib$(lib).dylib $(LOADER_PATTERN)))
-
-CONFIGURE_DIR=
-CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) \
- BASE_DEPENDENCIES_CFLAGS="-I$(SOLARINCDIR)/external -I$(SOLARINCDIR)/external/glib-2.0" \
- BASE_DEPENDENCIES_LIBS=" " \
- GDK_PIXBUF_XLIB_DEP_CFLAGS="-I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external/glib-2.0" \
- GDK_PIXBUF_XLIB_DEP_LIBS=" " \
- ./configure --disable-dependency-tracking $(eq,$(VERBOSE),$(NULL) --enable-silent-rules --disable-silent-rules) \
- CPPFLAGS="$(EXTRA_CDEFS) -I$(SOLARINCDIR)/external -I$(SOLARINCDIR)/external/glib-2.0 -I$(SOLARINCDIR)/external/libpng -I$(SOLARINCDIR)/external/jpeg" \
- CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS)" \
- LDFLAGS="$(EXTRA_LINKFLAGS) -L$(SOLARLIBDIR) -lgobject-2.0 -lgio-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0" \
- --prefix=/@.__________________________________________________$(EXTRPATH) \
- --disable-nls \
- --disable-modules \
- --with-included-loaders=ani,icns,pcx,ras,tga,png,pnm,wbmp,xbm,xpm,qtif,bmp,gif,ico,jpeg \
- --disable-glibtest --without-libtiff --without-libjasper
-
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) gio_can_sniff=no
-.ENDIF
-
-BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) $(GNUMAKE)
-BUILD_DIR=$(CONFIGURE_DIR)
-
-OUT2LIB+=gdk-pixbuf/.libs/libgdk_pixbuf-2.0.0.dylib
-
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-animation.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-features.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-marshal.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-core.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-io.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-simple-anim.h
-OUT2INC+=gdk-pixbuf/gdk-pixdata.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-enum-types.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-loader.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-transform.h
-
-.ELIF "$(OS)"=="WNT"
-
-PATCH_FILES=gdk-pixbuf-2.23.0-win32.patch
-ADDITIONAL_FILES=config.h.win32 glib-mkenums.pl msvc_recommended_pragmas.h
-CONFIGURE_DIR=
-CONFIGURE_ACTION=
-BUILD_DIR=./gdk-pixbuf
-BUILD_ACTION=nmake -f makefile.msc
-
-OUT2LIB+=gdk-pixbuf/gdk_pixbuf-2.0.lib
-
-OUT2BIN+=gdk-pixbuf/libgdk_pixbuf-2.0-0.dll
-
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-animation.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-features.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-marshal.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-core.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-io.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-simple-anim.h
-OUT2INC+=gdk-pixbuf/gdk-pixdata.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-enum-types.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-loader.h
-OUT2INC+=gdk-pixbuf/gdk-pixbuf-transform.h
-
-.ELSE
-
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
diff --git a/gdk-pixbuf/prj/build.lst b/gdk-pixbuf/prj/build.lst
deleted file mode 100644
index db76c491a65a..000000000000
--- a/gdk-pixbuf/prj/build.lst
+++ /dev/null
@@ -1,3 +0,0 @@
-gp gdk-pixbuf : glib gettext jpeg LIBPNG:libpng soltools NULL
-gp gdk-pixbuf usr1 - all gp_mkout NULL
-gp gdk-pixbuf nmake - all gp_gdk-pixbuf NULL
diff --git a/gdk-pixbuf/prj/d.lst b/gdk-pixbuf/prj/d.lst
deleted file mode 100644
index a6dac87058e5..000000000000
--- a/gdk-pixbuf/prj/d.lst
+++ /dev/null
@@ -1,20 +0,0 @@
-mkdir: %_DEST%\inc\external
-mkdir: %_DEST%\inc\external\gdk-pixbuf-2.0
-mkdir: %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf
-
-..\%__SRC%\inc\gdk-pixbuf-animation.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-animation.h
-..\%__SRC%\inc\gdk-pixbuf-features.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-features.h
-..\%__SRC%\inc\gdk-pixbuf-marshal.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-marshal.h
-..\%__SRC%\inc\gdk-pixbuf.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf.h
-..\%__SRC%\inc\gdk-pixbuf-core.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-core.h
-..\%__SRC%\inc\gdk-pixbuf-io.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-io.h
-..\%__SRC%\inc\gdk-pixbuf-simple-anim.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-simple-anim.h
-..\%__SRC%\inc\gdk-pixdata.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixdata.h
-..\%__SRC%\inc\gdk-pixbuf-enum-types.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-enum-types.h
-..\%__SRC%\inc\gdk-pixbuf-loader.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-loader.h
-..\%__SRC%\inc\gdk-pixbuf-transform.h %_DEST%\inc\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-transform.h
-
-..\%__SRC%\lib\libgdk_pixbuf-2.0.0.dylib %_DEST%\lib\libgdk_pixbuf-2.0.0.dylib
-symlink: %_DEST%\lib\libgdk_pixbuf-2.0.0.dylib %_DEST%\lib\libgdk_pixbuf-2.0.dylib
-..\%__SRC%\bin\*.dll %_DEST%\bin
-..\%__SRC%\lib\gdk_pixbuf-2.0.lib %_DEST%\lib\gdk_pixbuf-2.0.lib
diff --git a/gettext/README b/gettext/README
deleted file mode 100644
index 94ff1002672b..000000000000
--- a/gettext/README
+++ /dev/null
@@ -1,5 +0,0 @@
-
-GNU `gettext' utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages.
-
-Seel Also [ http://www.gnu.org/software/gettext/manual/gettext.html ]
-
diff --git a/gettext/gettext-0.18.1.1.patch b/gettext/gettext-0.18.1.1.patch
deleted file mode 100644
index 016b65d8838b..000000000000
--- a/gettext/gettext-0.18.1.1.patch
+++ /dev/null
@@ -1,3639 +0,0 @@
---- misc/gettext-0.18.1.1/gettext-runtime/intl/makefile.mk Wed Aug 20 14:33:55 2008
-+++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/makefile.mk Wed Aug 20 14:26:42 2008
-@@ -1,1 +1,109 @@
--dummy
-+#*************************************************************************
-+#
-+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+#
-+# Copyright 2000, 2010 Oracle and/or its affiliates.
-+#
-+# OpenOffice.org - a multi-platform office productivity suite
-+#
-+# This file is part of OpenOffice.org.
-+#
-+# OpenOffice.org is free software: you can redistribute it and/or modify
-+# it under the terms of the GNU Lesser General Public License version 3
-+# only, as published by the Free Software Foundation.
-+#
-+# OpenOffice.org is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+# GNU Lesser General Public License version 3 for more details
-+# (a copy is included in the LICENSE file that accompanied this code).
-+#
-+# You should have received a copy of the GNU Lesser General Public License
-+# version 3 along with OpenOffice.org. If not, see
-+# <http://www.openoffice.org/license.html>
-+# for a copy of the LGPLv3 License.
-+#
-+#*************************************************************************
-+
-+PRJ=..$/..$/..$/..$/..$/..
-+PRJINC=..
-+PRJNAME=gettext
-+TARGET=intl
-+
-+#ENABLE_EXCEPTIONS=TRUE
-+VISIBILITY_HIDDEN=TRUE
-+EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
-+
-+# --- Settings ----------------------------------
-+
-+.INCLUDE : settings.mk
-+
-+CFLAGS+=-c -DLOCALEDIR=\"./share/locale\" -DLOCALE_ALIAS_PATH=\"./share/locale\" -DLIBDIR=\"./lib\"
-+CFLAGS+=-DBUILDING_LIBINTL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"./lib\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate
-+CFLAGS+=-DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -I. -I. -I..
-+
-+.IF "$(GUI)"=="WNT"
-+CFLAGS+=-DBUILDING_DLL -DDLL_EXPORT -DPIC
-+.ENDIF
-+
-+# --- Files -------------------------------------
-+
-+SLOFILES=\
-+ $(SLO)$/bindtextdom.obj \
-+ $(SLO)$/dcgettext.obj \
-+ $(SLO)$/dgettext.obj \
-+ $(SLO)$/gettext.obj \
-+ $(SLO)$/finddomain.obj \
-+ $(SLO)$/hash-string.obj \
-+ $(SLO)$/loadmsgcat.obj \
-+ $(SLO)$/localealias.obj \
-+ $(SLO)$/textdomain.obj \
-+ $(SLO)$/l10nflist.obj \
-+ $(SLO)$/explodename.obj \
-+ $(SLO)$/dcigettext.obj \
-+ $(SLO)$/dcngettext.obj \
-+ $(SLO)$/dngettext.obj \
-+ $(SLO)$/ngettext.obj \
-+ $(SLO)$/plural.obj \
-+ $(SLO)$/plural-exp.obj \
-+ $(SLO)$/localcharset.obj \
-+ $(SLO)$/threadlib.obj \
-+ $(SLO)$/lock.obj \
-+ $(SLO)$/relocatable.obj \
-+ $(SLO)$/langprefs.obj \
-+ $(SLO)$/localename.obj \
-+ $(SLO)$/log.obj \
-+ $(SLO)$/printf.obj \
-+ $(SLO)$/setlocale.obj \
-+ $(SLO)$/version.obj \
-+ $(SLO)$/osdep.obj \
-+ $(SLO)$/intl-compat.obj
-+
-+# --- Library -----------------------------------
-+
-+SHL1TARGET= $(TARGET)
-+SHL1OBJS=$(SLOFILES)
-+SHL1STDLIBS=\
-+ Advapi32.lib
-+
-+
-+SHL1DEPN=
-+#SHL1IMPLIB= i$(TARGET)
-+#SHL1USE_EXPORTS=name
-+
-+SHL1DEF= $(MISC)$/$(SHL1TARGET).def
-+
-+DEF1NAME= $(SHL1TARGET)
-+DEF1DEPN= $(MISC)$/$(SHL1TARGET).flt \
-+ $(SLB)$/$(TARGET).lib
-+DEFLIB1NAME=$(TARGET)
-+
-+# --- Targets ----------------------------------
-+
-+.INCLUDE : target.mk
-+
-+# --- filter file ------------------------------
-+
-+$(MISC)$/$(SHL1TARGET).flt: makefile.mk
-+ @echo CLEAR_THE_FILE > $@
-+
---- misc/gettext-0.18.1.1/gettext-runtime/intl/printf-parse.c 2010-06-06 14:49:57.000000000 +0200
-+++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/printf-parse.c 2011-03-09 11:51:02.615094200 +0100
-@@ -75,6 +74,9 @@
- # include "c-ctype.h"
- #endif
-
-+typedef __int64 intmax_t;
-+
-+
- #ifdef STATIC
- STATIC
- #endif
---- misc/gettext-0.18.1.1/gettext-runtime/config.h Wed Aug 20 14:33:55 2008
-+++ misc/build/gettext-0.18.1.1/gettext-runtime/config.h Wed Aug 20 14:26:42 2008
-@@ -1,1 +1,2560 @@
--dummy
-+#ifdef _WIN32
-+/* config.h. Generated from config.h.in by configure. */
-+/* config.h.in. Generated from configure.ac by autoheader. */
-+
-+/* Define if the compiler is building for multiple architectures of Apple
-+ platforms at once. */
-+/* #undef AA_APPLE_UNIVERSAL_BUILD */
-+
-+/* Define to the number of bits in type 'ptrdiff_t'. */
-+#define BITSIZEOF_PTRDIFF_T 32
-+
-+/* Define to the number of bits in type 'sig_atomic_t'. */
-+#define BITSIZEOF_SIG_ATOMIC_T 32
-+
-+/* Define to the number of bits in type 'size_t'. */
-+#define BITSIZEOF_SIZE_T 32
-+
-+/* Define to the number of bits in type 'wchar_t'. */
-+#define BITSIZEOF_WCHAR_T 16
-+
-+/* Define to the number of bits in type 'wint_t'. */
-+#define BITSIZEOF_WINT_T 16
-+
-+/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
-+ systems. This function is required for `alloca.c' support on those systems.
-+ */
-+/* #undef CRAY_STACKSEG_END */
-+
-+/* Define if mono is the preferred C# implementation. */
-+/* #undef CSHARP_CHOICE_MONO */
-+
-+/* Define if pnet is the preferred C# implementation. */
-+/* #undef CSHARP_CHOICE_PNET */
-+
-+/* Define to 1 if using `alloca.c'. */
-+/* #undef C_ALLOCA */
-+
-+/* Define to 1 if // is a file system root distinct from /. */
-+#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1
-+
-+/* Define to 1 if translation of program messages to the user's native
-+ language is requested. */
-+#define ENABLE_NLS 1
-+
-+/* Define to 1 if the package shall run at any location in the file system. */
-+/* #undef ENABLE_RELOCATABLE */
-+
-+/* Define on systems for which file names may have a so-called `drive letter'
-+ prefix, define this to compute the length of that prefix, including the
-+ colon. */
-+#define FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX 1
-+
-+/* Define if the backslash character may also serve as a file name component
-+ separator. */
-+#define FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR 1
-+
-+/* Define if a drive letter prefix denotes a relative path if it is not
-+ followed by a file name component separator. */
-+#define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 1
-+
-+/* Define to 1 if realpath() can malloc memory, always gives an absolute path,
-+ and handles trailing slash correctly. */
-+/* #undef FUNC_REALPATH_WORKS */
-+
-+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
-+ whether the gnulib module canonicalize-lgpl shall be considered present. */
-+#define GNULIB_CANONICALIZE_LGPL 1
-+
-+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
-+ whether the gnulib module fwriteerror shall be considered present. */
-+#define GNULIB_FWRITEERROR 1
-+
-+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
-+ whether the gnulib module sigpipe shall be considered present. */
-+#define GNULIB_SIGPIPE 1
-+
-+/* Define to 1 when the gnulib module canonicalize_file_name should be tested.
-+ */
-+#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1
-+
-+/* Define to 1 when the gnulib module environ should be tested. */
-+#define GNULIB_TEST_ENVIRON 1
-+
-+/* Define to 1 when the gnulib module getopt-gnu should be tested. */
-+#define GNULIB_TEST_GETOPT_GNU 1
-+
-+/* Define to 1 when the gnulib module lstat should be tested. */
-+#define GNULIB_TEST_LSTAT 1
-+
-+/* Define to 1 when the gnulib module malloc-posix should be tested. */
-+#define GNULIB_TEST_MALLOC_POSIX 1
-+
-+/* Define to 1 when the gnulib module mbrtowc should be tested. */
-+#define GNULIB_TEST_MBRTOWC 1
-+
-+/* Define to 1 when the gnulib module mbsinit should be tested. */
-+#define GNULIB_TEST_MBSINIT 1
-+
-+/* Define to 1 when the gnulib module mbslen should be tested. */
-+#define GNULIB_TEST_MBSLEN 1
-+
-+/* Define to 1 when the gnulib module mbsstr should be tested. */
-+#define GNULIB_TEST_MBSSTR 1
-+
-+/* Define to 1 when the gnulib module memchr should be tested. */
-+#define GNULIB_TEST_MEMCHR 1
-+
-+/* Define to 1 when the gnulib module readlink should be tested. */
-+#define GNULIB_TEST_READLINK 1
-+
-+/* Define to 1 when the gnulib module realpath should be tested. */
-+#define GNULIB_TEST_REALPATH 1
-+
-+/* Define to 1 when the gnulib module sigprocmask should be tested. */
-+#define GNULIB_TEST_SIGPROCMASK 1
-+
-+/* Define to 1 when the gnulib module stat should be tested. */
-+#define GNULIB_TEST_STAT 1
-+
-+/* Define to 1 when the gnulib module strerror should be tested. */
-+#define GNULIB_TEST_STRERROR 1
-+
-+/* Define to 1 when the gnulib module strnlen should be tested. */
-+#define GNULIB_TEST_STRNLEN 1
-+
-+/* Define to 1 when the gnulib module wcwidth should be tested. */
-+#define GNULIB_TEST_WCWIDTH 1
-+
-+/* Define to 1 if you have `alloca', as a function or macro. */
-+#define HAVE_ALLOCA 1
-+
-+/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-+ */
-+/* #undef HAVE_ALLOCA_H */
-+
-+/* Define to 1 if you have the `argz_count' function. */
-+/* #undef HAVE_ARGZ_COUNT */
-+
-+/* Define to 1 if you have the <argz.h> header file. */
-+/* #undef HAVE_ARGZ_H */
-+
-+/* Define to 1 if you have the `argz_next' function. */
-+/* #undef HAVE_ARGZ_NEXT */
-+
-+/* Define to 1 if you have the `argz_stringify' function. */
-+/* #undef HAVE_ARGZ_STRINGIFY */
-+
-+/* Define to 1 if you have the `asprintf' function. */
-+/* #undef HAVE_ASPRINTF */
-+
-+/* Define to 1 if you have the `atexit' function. */
-+#define HAVE_ATEXIT 1
-+
-+/* Define to 1 if you have the <bp-sym.h> header file. */
-+/* #undef HAVE_BP_SYM_H */
-+
-+/* Define to 1 if the compiler understands __builtin_expect. */
-+/* #undef HAVE_BUILTIN_EXPECT */
-+
-+/* Define to 1 if you have the `canonicalize_file_name' function. */
-+/* #undef HAVE_CANONICALIZE_FILE_NAME */
-+
-+/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
-+ CoreFoundation framework. */
-+/* #undef HAVE_CFLOCALECOPYCURRENT */
-+
-+/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
-+ the CoreFoundation framework. */
-+/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */
-+
-+/* Define if the GNU dcgettext() function is already present or preinstalled.
-+ */
-+/* #undef HAVE_DCGETTEXT */
-+
-+/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_CLEARERR_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_FEOF_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FERROR_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FFLUSH_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FGETS_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FPUTC_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FPUTS_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FREAD_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FWRITE_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_GETCHAR_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_GETC_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't.
-+ */
-+#define HAVE_DECL_GETENV 1
-+
-+/* Define to 1 if you have the declaration of `getopt_clip', and to 0 if you
-+ don't. */
-+/* #undef HAVE_DECL_GETOPT_CLIP */
-+
-+/* Define to 1 if you have the declaration of `optreset', and to 0 if you
-+ don't. */
-+/* #undef HAVE_DECL_OPTRESET */
-+
-+/* Define to 1 if you have the declaration of `program_invocation_name', and
-+ to 0 if you don't. */
-+#define HAVE_DECL_PROGRAM_INVOCATION_NAME 0
-+
-+/* Define to 1 if you have the declaration of `program_invocation_short_name',
-+ and to 0 if you don't. */
-+#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0
-+
-+/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_PUTCHAR_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_PUTC_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `strerror', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_STRERROR 1
-+
-+/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_STRERROR_R 0
-+
-+/* Define to 1 if you have the declaration of `strnlen', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_STRNLEN 1
-+
-+/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_WCWIDTH 0
-+
-+/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you
-+ don't. */
-+#define HAVE_DECL__SNPRINTF 1
-+
-+/* Define to 1 if you have the declaration of `_snwprintf', and to 0 if you
-+ don't. */
-+#define HAVE_DECL__SNWPRINTF 1
-+
-+/* Define to 1 if you have the <dlfcn.h> header file. */
-+/* #undef HAVE_DLFCN_H */
-+
-+/* Define if you have the declaration of environ. */
-+/* #undef HAVE_ENVIRON_DECL */
-+
-+/* Define to 1 if you have the <errno.h> header file. */
-+#define HAVE_ERRNO_H 1
-+
-+/* Define to 1 if you have the `fwprintf' function. */
-+#define HAVE_FWPRINTF 1
-+
-+/* Define to 1 if you have the `getcwd' function. */
-+#define HAVE_GETCWD 1
-+
-+/* Define to 1 if you have the `getegid' function. */
-+/* #undef HAVE_GETEGID */
-+
-+/* Define to 1 if you have the `geteuid' function. */
-+/* #undef HAVE_GETEUID */
-+
-+/* Define to 1 if you have the `getgid' function. */
-+/* #undef HAVE_GETGID */
-+
-+/* Define to 1 if you have the <getopt.h> header file. */
-+/* #undef HAVE_GETOPT_H */
-+
-+/* Define to 1 if you have the `getopt_long_only' function. */
-+/* #undef HAVE_GETOPT_LONG_ONLY */
-+
-+/* Define to 1 if you have the `getpagesize' function. */
-+/* #undef HAVE_GETPAGESIZE */
-+
-+/* Define if the GNU gettext() function is already present or preinstalled. */
-+/* #undef HAVE_GETTEXT */
-+
-+/* Define to 1 if you have the `getuid' function. */
-+/* #undef HAVE_GETUID */
-+
-+/* Define if you have the iconv() function and it works. */
-+/* #undef HAVE_ICONV */
-+
-+/* Define to 1 if you have the <iconv.h> header file. */
-+/* #undef HAVE_ICONV_H */
-+
-+/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
-+/* #undef HAVE_INTMAX_T */
-+#ifndef _MSC_VER
-+#define HAVE_INTMAX_T 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_INTMAX_T */
-+#endif /* _MSC_VER */
-+
-+
-+/* Define to 1 if you have the <inttypes.h> header file. */
-+/* #undef HAVE_INTTYPES_H */
-+#ifndef _MSC_VER
-+#define HAVE_INTTYPES_H 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_INTTYPES_H */
-+#endif /* _MSC_VER */
-+
-+
-+/* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
-+ declares uintmax_t. */
-+/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */
-+#ifndef _MSC_VER
-+#define HAVE_INTTYPES_H_WITH_UINTMAX 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */
-+#endif /* _MSC_VER */
-+
-+
-+/* Define to 1 if you have the `iswblank' function. */
-+/* #undef HAVE_ISWBLANK */
-+
-+/* Define to 1 if you have the `iswcntrl' function. */
-+#define HAVE_ISWCNTRL 1
-+
-+/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
-+/* #undef HAVE_LANGINFO_CODESET */
-+
-+/* Define if your <locale.h> file defines LC_MESSAGES. */
-+/* #undef HAVE_LC_MESSAGES */
-+
-+/* Define to 1 if you have the <limits.h> header file. */
-+#define HAVE_LIMITS_H 1
-+
-+/* Define to 1 if the system has the type `long long int'. */
-+#define HAVE_LONG_LONG_INT 1
-+
-+/* Define to 1 if you have the `lstat' function. */
-+/* #undef HAVE_LSTAT */
-+
-+/* Define to 1 if you have the <mach-o/dyld.h> header file. */
-+/* #undef HAVE_MACH_O_DYLD_H */
-+
-+/* Define if the 'malloc' function is POSIX compliant. */
-+/* #undef HAVE_MALLOC_POSIX */
-+
-+/* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including
-+ config.h and <sys/mman.h>. */
-+/* #undef HAVE_MAP_ANONYMOUS */
-+
-+/* Define to 1 if you have the `mbrtowc' function. */
-+#define HAVE_MBRTOWC 1
-+
-+/* Define to 1 if you have the `mbsinit' function. */
-+/* #undef HAVE_MBSINIT */
-+
-+/* Define to 1 if you have the `mbslen' function. */
-+/* #undef HAVE_MBSLEN */
-+
-+/* Define to 1 if <wchar.h> declares mbstate_t. */
-+#define HAVE_MBSTATE_T 1
-+
-+/* Define to 1 if you have the `memchr' function. */
-+#define HAVE_MEMCHR 1
-+
-+/* Define to 1 if you have the `memmove' function. */
-+#define HAVE_MEMMOVE 1
-+
-+/* Define to 1 if you have the <memory.h> header file. */
-+#define HAVE_MEMORY_H 1
-+
-+/* Define to 1 if you have the `mempcpy' function. */
-+/* #undef HAVE_MEMPCPY */
-+
-+/* Define to 1 if you have a working `mmap' system call. */
-+/* #undef HAVE_MMAP */
-+
-+/* Define to 1 if you have the `mprotect' function. */
-+/* #undef HAVE_MPROTECT */
-+
-+/* Define to 1 if you have the `munmap' function. */
-+/* #undef HAVE_MUNMAP */
-+
-+/* Define to 1 if you have the `newlocale' function. */
-+/* #undef HAVE_NEWLOCALE */
-+
-+/* Define to 1 if you have the `pathconf' function. */
-+/* #undef HAVE_PATHCONF */
-+
-+/* Define if your printf() function supports format strings with positions. */
-+/* #undef HAVE_POSIX_PRINTF */
-+
-+/* Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE. */
-+/* #undef HAVE_PTHREAD_MUTEX_RECURSIVE */
-+
-+/* Define if the POSIX multithreading library has read/write locks. */
-+/* #undef HAVE_PTHREAD_RWLOCK */
-+
-+/* Define to 1 if you have the `putenv' function. */
-+#define HAVE_PUTENV 1
-+
-+/* Define to 1 if you have the <random.h> header file. */
-+/* #undef HAVE_RANDOM_H */
-+
-+/* Define to 1 if atoll is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_ATOLL */
-+
-+/* Define to 1 if btowc is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_BTOWC 1
-+
-+/* Define to 1 if canonicalize_file_name is declared even after undefining
-+ macros. */
-+/* #undef HAVE_RAW_DECL_CANONICALIZE_FILE_NAME */
-+
-+/* Define to 1 if chown is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_CHOWN */
-+
-+/* Define to 1 if dprintf is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_DPRINTF */
-+
-+/* Define to 1 if dup2 is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_DUP2 1
-+
-+/* Define to 1 if dup3 is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_DUP3 */
-+
-+/* Define to 1 if endusershell is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_ENDUSERSHELL */
-+
-+/* Define to 1 if environ is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_ENVIRON */
-+
-+/* Define to 1 if euidaccess is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_EUIDACCESS */
-+
-+/* Define to 1 if faccessat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FACCESSAT */
-+
-+/* Define to 1 if fchdir is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FCHDIR */
-+
-+/* Define to 1 if fchmodat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FCHMODAT */
-+
-+/* Define to 1 if fchownat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FCHOWNAT */
-+
-+/* Define to 1 if fpurge is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FPURGE */
-+
-+/* Define to 1 if fseeko is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FSEEKO */
-+
-+/* Define to 1 if fstatat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FSTATAT */
-+
-+/* Define to 1 if fsync is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FSYNC */
-+
-+/* Define to 1 if ftello is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FTELLO */
-+
-+/* Define to 1 if ftruncate is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FTRUNCATE */
-+
-+/* Define to 1 if futimens is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FUTIMENS */
-+
-+/* Define to 1 if getcwd is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETCWD */
-+
-+/* Define to 1 if getdelim is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETDELIM */
-+
-+/* Define to 1 if getdomainname is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETDOMAINNAME */
-+
-+/* Define to 1 if getdtablesize is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETDTABLESIZE */
-+
-+/* Define to 1 if getgroups is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETGROUPS */
-+
-+/* Define to 1 if gethostname is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETHOSTNAME */
-+
-+/* Define to 1 if getline is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETLINE */
-+
-+/* Define to 1 if getloadavg is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETLOADAVG */
-+
-+/* Define to 1 if getlogin is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETLOGIN */
-+
-+/* Define to 1 if getlogin_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETLOGIN_R */
-+
-+/* Define to 1 if getpagesize is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETPAGESIZE */
-+
-+/* Define to 1 if getsubopt is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETSUBOPT */
-+
-+/* Define to 1 if getusershell is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETUSERSHELL */
-+
-+/* Define to 1 if grantpt is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GRANTPT */
-+
-+/* Define to 1 if initstat_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_INITSTAT_R */
-+
-+/* Define to 1 if lchmod is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_LCHMOD */
-+
-+/* Define to 1 if lchown is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_LCHOWN */
-+
-+/* Define to 1 if link is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_LINK */
-+
-+/* Define to 1 if linkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_LINKAT */
-+
-+/* Define to 1 if lseek is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_LSEEK 1
-+
-+/* Define to 1 if lstat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_LSTAT */
-+
-+/* Define to 1 if mbrlen is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBRLEN 1
-+
-+/* Define to 1 if mbrtowc is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBRTOWC 1
-+
-+/* Define to 1 if mbsinit is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBSINIT 1
-+
-+/* Define to 1 if mbsnrtowcs is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MBSNRTOWCS */
-+
-+/* Define to 1 if mbsrtowcs is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBSRTOWCS 1
-+
-+/* Define to 1 if memmem is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MEMMEM */
-+
-+/* Define to 1 if mempcpy is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MEMPCPY */
-+
-+/* Define to 1 if memrchr is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MEMRCHR */
-+
-+/* Define to 1 if mkdirat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKDIRAT */
-+
-+/* Define to 1 if mkdtemp is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKDTEMP */
-+
-+/* Define to 1 if mkfifo is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKFIFO */
-+
-+/* Define to 1 if mkfifoat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKFIFOAT */
-+
-+/* Define to 1 if mknod is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKNOD */
-+
-+/* Define to 1 if mknodat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKNODAT */
-+
-+/* Define to 1 if mkostemp is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKOSTEMP */
-+
-+/* Define to 1 if mkostemps is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKOSTEMPS */
-+
-+/* Define to 1 if mkstemp is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKSTEMP */
-+
-+/* Define to 1 if mkstemps is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKSTEMPS */
-+
-+/* Define to 1 if pipe2 is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_PIPE2 */
-+
-+/* Define to 1 if popen is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_POPEN */
-+
-+/* Define to 1 if pread is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_PREAD */
-+
-+/* Define to 1 if ptsname is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_PTSNAME */
-+
-+/* Define to 1 if pwrite is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_PWRITE */
-+
-+/* Define to 1 if random_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RANDOM_R */
-+
-+/* Define to 1 if rawmemchr is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RAWMEMCHR */
-+
-+/* Define to 1 if readlink is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_READLINK */
-+
-+/* Define to 1 if readlinkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_READLINKAT */
-+
-+/* Define to 1 if realpath is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_REALPATH */
-+
-+/* Define to 1 if renameat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RENAMEAT */
-+
-+/* Define to 1 if rmdir is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RMDIR */
-+
-+/* Define to 1 if rpmatch is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RPMATCH */
-+
-+/* Define to 1 if setenv is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SETENV */
-+
-+/* Define to 1 if setstate_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SETSTATE_R */
-+
-+/* Define to 1 if setusershell is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SETUSERSHELL */
-+
-+/* Define to 1 if sigaction is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGACTION */
-+
-+/* Define to 1 if sigaddset is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGADDSET */
-+
-+/* Define to 1 if sigdelset is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGDELSET */
-+
-+/* Define to 1 if sigemptyset is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGEMPTYSET */
-+
-+/* Define to 1 if sigfillset is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGFILLSET */
-+
-+/* Define to 1 if sigismember is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGISMEMBER */
-+
-+/* Define to 1 if sigpending is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGPENDING */
-+
-+/* Define to 1 if sigprocmask is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SIGPROCMASK */
-+
-+/* Define to 1 if sleep is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SLEEP */
-+
-+/* Define to 1 if snprintf is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SNPRINTF */
-+
-+/* Define to 1 if srandom_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SRANDOM_R */
-+
-+/* Define to 1 if stat is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STAT 1
-+
-+/* Define to 1 if stpcpy is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STPCPY */
-+
-+/* Define to 1 if stpncpy is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STPNCPY */
-+
-+/* Define to 1 if strcasestr is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRCASESTR */
-+
-+/* Define to 1 if strchrnul is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRCHRNUL */
-+
-+/* Define to 1 if strdup is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRDUP 1
-+
-+/* Define to 1 if strncat is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRNCAT 1
-+
-+/* Define to 1 if strndup is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRNDUP */
-+
-+/* Define to 1 if strnlen is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRNLEN 1
-+
-+/* Define to 1 if strpbrk is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRPBRK 1
-+
-+/* Define to 1 if strsep is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRSEP */
-+
-+/* Define to 1 if strsignal is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRSIGNAL */
-+
-+/* Define to 1 if strtod is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRTOD 1
-+
-+/* Define to 1 if strtok_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRTOK_R */
-+
-+/* Define to 1 if strtoll is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRTOLL */
-+
-+/* Define to 1 if strtoull is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRTOULL */
-+
-+/* Define to 1 if strverscmp is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRVERSCMP */
-+
-+/* Define to 1 if symlink is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SYMLINK */
-+
-+/* Define to 1 if symlinkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SYMLINKAT */
-+
-+/* Define to 1 if tmpfile is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_TMPFILE 1
-+
-+/* Define to 1 if ttyname_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_TTYNAME_R */
-+
-+/* Define to 1 if unlink is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_UNLINK 1
-+
-+/* Define to 1 if unlinkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_UNLINKAT */
-+
-+/* Define to 1 if unlockpt is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_UNLOCKPT */
-+
-+/* Define to 1 if unsetenv is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_UNSETENV */
-+
-+/* Define to 1 if usleep is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_USLEEP */
-+
-+/* Define to 1 if utimensat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_UTIMENSAT */
-+
-+/* Define to 1 if vdprintf is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_VDPRINTF */
-+
-+/* Define to 1 if vsnprintf is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_VSNPRINTF 1
-+
-+/* Define to 1 if wcrtomb is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCRTOMB 1
-+
-+/* Define to 1 if wcsnrtombs is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_WCSNRTOMBS */
-+
-+/* Define to 1 if wcsrtombs is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCSRTOMBS 1
-+
-+/* Define to 1 if wctob is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCTOB 1
-+
-+/* Define to 1 if wcwidth is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_WCWIDTH */
-+
-+/* Define to 1 if you have the `readlink' function. */
-+/* #undef HAVE_READLINK */
-+
-+/* Define to 1 if you have the `realpath' function. */
-+/* #undef HAVE_REALPATH */
-+
-+/* Define to 1 if you have the <search.h> header file. */
-+#define HAVE_SEARCH_H 1
-+
-+/* Define to 1 if you have the `setenv' function. */
-+/* #undef HAVE_SETENV */
-+
-+/* Define to 1 if you have the `setlocale' function. */
-+#define HAVE_SETLOCALE 1
-+
-+/* Define to 1 if you have the <signal.h> header file. */
-+#define HAVE_SIGNAL_H 1
-+
-+/* Define to 1 if 'sig_atomic_t' is a signed integer type. */
-+#define HAVE_SIGNED_SIG_ATOMIC_T 1
-+
-+/* Define to 1 if 'wchar_t' is a signed integer type. */
-+/* #undef HAVE_SIGNED_WCHAR_T */
-+
-+/* Define to 1 if 'wint_t' is a signed integer type. */
-+/* #undef HAVE_SIGNED_WINT_T */
-+
-+/* Define to 1 if the system has the type `sigset_t'. */
-+/* #undef HAVE_SIGSET_T */
-+
-+/* Define to 1 if you have the `snprintf' function. */
-+/* #undef HAVE_SNPRINTF */
-+
-+/* Define to 1 if stdbool.h conforms to C99. */
-+/* #undef HAVE_STDBOOL_H */
-+
-+/* Define to 1 if you have the <stddef.h> header file. */
-+#define HAVE_STDDEF_H 1
-+
-+/* Define to 1 if you have the <stdint.h> header file. */
-+/* #undef HAVE_STDINT_H */
-+
-+/* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
-+ uintmax_t. */
-+/* #undef HAVE_STDINT_H_WITH_UINTMAX */
-+
-+/* Define to 1 if you have the <stdio.h> header file. */
-+#define HAVE_STDIO_H 1
-+
-+/* Define to 1 if you have the <stdlib.h> header file. */
-+#define HAVE_STDLIB_H 1
-+
-+/* Define to 1 if you have the `stpcpy' function. */
-+/* #undef HAVE_STPCPY */
-+
-+/* Define to 1 if you have the `strcasecmp' function. */
-+/* #undef HAVE_STRCASECMP */
-+
-+/* Define to 1 if you have the `strdup' function. */
-+#define HAVE_STRDUP 1
-+
-+/* Define to 1 if you have the `strerror_r' function. */
-+/* #undef HAVE_STRERROR_R */
-+
-+/* Define to 1 if you have the <strings.h> header file. */
-+/* #undef HAVE_STRINGS_H */
-+
-+/* Define to 1 if you have the <string.h> header file. */
-+#define HAVE_STRING_H 1
-+
-+/* Define to 1 if you have the `strnlen' function. */
-+#define HAVE_STRNLEN 1
-+
-+/* Define to 1 if you have the `strtol' function. */
-+#define HAVE_STRTOL 1
-+
-+/* Define to 1 if you have the `strtoul' function. */
-+#define HAVE_STRTOUL 1
-+
-+/* Define to 1 if the system has the type `struct random_data'. */
-+/* #undef HAVE_STRUCT_RANDOM_DATA */
-+
-+/* Define to 1 if you have the <sys/bitypes.h> header file. */
-+/* #undef HAVE_SYS_BITYPES_H */
-+
-+/* Define to 1 if you have the <sys/inttypes.h> header file. */
-+/* #undef HAVE_SYS_INTTYPES_H */
-+
-+/* Define to 1 if you have the <sys/mman.h> header file. */
-+/* #undef HAVE_SYS_MMAN_H */
-+
-+/* Define to 1 if you have the <sys/param.h> header file. */
-+/* #undef HAVE_SYS_PARAM_H */
-+
-+/* Define to 1 if you have the <sys/socket.h> header file. */
-+/* #undef HAVE_SYS_SOCKET_H */
-+
-+/* Define to 1 if you have the <sys/stat.h> header file. */
-+#define HAVE_SYS_STAT_H 1
-+
-+/* Define to 1 if you have the <sys/time.h> header file. */
-+/* #undef HAVE_SYS_TIME_H */
-+
-+/* Define to 1 if you have the <sys/types.h> header file. */
-+#define HAVE_SYS_TYPES_H 1
-+
-+/* Define to 1 if you have the <time.h> header file. */
-+#define HAVE_TIME_H 1
-+
-+/* Define to 1 if you have the `tsearch' function. */
-+/* #undef HAVE_TSEARCH */
-+
-+/* Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>. */
-+/* #undef HAVE_UINTMAX_T */
-+
-+/* Define to 1 if you have the <unistd.h> header file. */
-+#define HAVE_UNISTD_H 1
-+
-+/* Define to 1 if the system has the type `unsigned long long int'. */
-+#define HAVE_UNSIGNED_LONG_LONG_INT 1
-+
-+/* Define to 1 if you have the `uselocale' function. */
-+/* #undef HAVE_USELOCALE */
-+
-+/* Define to 1 or 0, depending whether the compiler supports simple visibility
-+ declarations. */
-+#define HAVE_VISIBILITY 0
-+
-+/* Define to 1 if you have the <wchar.h> header file. */
-+#define HAVE_WCHAR_H 1
-+
-+/* Define if you have the 'wchar_t' type. */
-+#define HAVE_WCHAR_T 1
-+
-+/* Define to 1 if you have the `wcrtomb' function. */
-+#define HAVE_WCRTOMB 1
-+
-+/* Define to 1 if you have the `wcslen' function. */
-+#define HAVE_WCSLEN 1
-+
-+/* Define to 1 if you have the `wcsnlen' function. */
-+#define HAVE_WCSNLEN 1
-+
-+/* Define to 1 if you have the <wctype.h> header file. */
-+#define HAVE_WCTYPE_H 1
-+
-+/* Define to 1 if you have the `wcwidth' function. */
-+/* #undef HAVE_WCWIDTH */
-+
-+/* Define to 1 if you have the <winsock2.h> header file. */
-+#define HAVE_WINSOCK2_H 1
-+
-+/* Define if you have the 'wint_t' type. */
-+#define HAVE_WINT_T 1
-+
-+/* Define to 1 if O_NOATIME works. */
-+#define HAVE_WORKING_O_NOATIME 0
-+
-+/* Define to 1 if O_NOFOLLOW works. */
-+#define HAVE_WORKING_O_NOFOLLOW 0
-+
-+/* Define to 1 if the system has the type `_Bool'. */
-+/* #undef HAVE__BOOL */
-+
-+/* Define to 1 if you have the `_NSGetExecutablePath' function. */
-+/* #undef HAVE__NSGETEXECUTABLEPATH */
-+
-+/* Define to 1 if you have the `__fsetlocking' function. */
-+/* #undef HAVE___FSETLOCKING */
-+
-+/* Define as const if the declaration of iconv() needs const. */
-+/* #undef ICONV_CONST */
-+
-+/* Define to a symbolic name denoting the flavor of iconv_open()
-+ implementation. */
-+/* #undef ICONV_FLAVOR */
-+
-+/* Define to the value of ${prefix}, as a string. */
-+#define INSTALLPREFIX "."
-+
-+/* Define if integer division by zero raises signal SIGFPE. */
-+#define INTDIV0_RAISES_SIGFPE 0
-+
-+#if FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR
-+# define ISSLASH(C) ((C) == '/' || (C) == '\\')
-+#else
-+# define ISSLASH(C) ((C) == '/')
-+#endif
-+
-+/* Define to 1 if `lstat' dereferences a symlink specified with a trailing
-+ slash. */
-+/* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */
-+
-+/* Define to the sub-directory in which libtool stores uninstalled libraries.
-+ */
-+#define LT_OBJDIR ".libs/"
-+
-+/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */
-+#define MALLOC_0_IS_NONNULL 1
-+
-+/* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */
-+/* #undef MAP_ANONYMOUS */
-+
-+/* Define if the mbrtowc function has the NULL string argument bug. */
-+/* #undef MBRTOWC_NULL_ARG_BUG */
-+
-+/* Define if the mbrtowc function does not return 0 for a NUL character. */
-+/* #undef MBRTOWC_NUL_RETVAL_BUG */
-+
-+/* Define if the mbrtowc function returns a wrong return value. */
-+/* #undef MBRTOWC_RETVAL_BUG */
-+
-+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
-+#define NO_MINUS_C_MINUS_O 1
-+
-+/* Name of package */
-+#define PACKAGE "gettext-runtime"
-+
-+/* Define to the address where bug reports for this package should be sent. */
-+#define PACKAGE_BUGREPORT ""
-+
-+/* Define to the full name of this package. */
-+#define PACKAGE_NAME ""
-+
-+/* Define to the full name and version of this package. */
-+#define PACKAGE_STRING ""
-+
-+/* Define to the one symbol short name of this package. */
-+#define PACKAGE_TARNAME ""
-+
-+/* Define to the home page for this package. */
-+#define PACKAGE_URL ""
-+
-+/* Define to the version of this package. */
-+#define PACKAGE_VERSION ""
-+
-+/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
-+/* #undef PRI_MACROS_BROKEN */
-+
-+/* Define if the pthread_in_use() detection is hard. */
-+/* #undef PTHREAD_IN_USE_DETECTION_HARD */
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'ptrdiff_t'. */
-+#define PTRDIFF_T_SUFFIX
-+
-+/* Define to 1 if readlink fails to recognize a trailing slash. */
-+/* #undef READLINK_TRAILING_SLASH_BUG */
-+
-+/* Define to 1 if stat needs help when passed a directory name with a trailing
-+ slash */
-+#define REPLACE_FUNC_STAT_DIR 1
-+
-+/* Define to 1 if stat needs help when passed a file name with a trailing
-+ slash */
-+/* #undef REPLACE_FUNC_STAT_FILE */
-+
-+/* Define this to 1 if strerror is broken. */
-+#define REPLACE_STRERROR 1
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'sig_atomic_t'. */
-+#define SIG_ATOMIC_T_SUFFIX
-+
-+/* Define as the maximum value of type 'size_t', if the system doesn't define
-+ it. */
-+#ifndef SIZE_MAX
-+/* # undef SIZE_MAX */
-+#endif
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'size_t'. */
-+#define SIZE_T_SUFFIX u
-+
-+/* If using the C implementation of alloca, define if you know the
-+ direction of stack growth for your system; otherwise it will be
-+ automatically deduced at runtime.
-+ STACK_DIRECTION > 0 => grows toward higher addresses
-+ STACK_DIRECTION < 0 => grows toward lower addresses
-+ STACK_DIRECTION = 0 => direction of growth unknown */
-+/* #undef STACK_DIRECTION */
-+
-+/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
-+/* #undef STAT_MACROS_BROKEN */
-+
-+/* Define to 1 if you have the ANSI C header files. */
-+#define STDC_HEADERS 1
-+
-+/* Define to 1 if strerror_r returns char *. */
-+/* #undef STRERROR_R_CHAR_P */
-+
-+/* Define to the prefix of C symbols at the assembler and linker level, either
-+ an underscore or empty. */
-+#define USER_LABEL_PREFIX
-+
-+/* Define if the POSIX multithreading library can be used. */
-+/* #undef USE_POSIX_THREADS */
-+
-+/* Define if references to the POSIX multithreading library should be made
-+ weak. */
-+/* #undef USE_POSIX_THREADS_WEAK */
-+
-+/* Define if the GNU Pth multithreading library can be used. */
-+/* #undef USE_PTH_THREADS */
-+
-+/* Define if references to the GNU Pth multithreading library should be made
-+ weak. */
-+/* #undef USE_PTH_THREADS_WEAK */
-+
-+/* Define if the old Solaris multithreading library can be used. */
-+/* #undef USE_SOLARIS_THREADS */
-+
-+/* Define if references to the old Solaris multithreading library should be
-+ made weak. */
-+/* #undef USE_SOLARIS_THREADS_WEAK */
-+
-+/* Define to 1 if you want getc etc. to use unlocked I/O if available.
-+ Unlocked I/O can improve performance in unithreaded apps, but it is not
-+ safe for multithreaded apps. */
-+#define USE_UNLOCKED_IO 1
-+
-+/* Define if the Win32 multithreading API can be used. */
-+/* #undef USE_WIN32_THREADS */
-+
-+/* Version number of package */
-+#define VERSION "0.18.1"
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'wchar_t'. */
-+#define WCHAR_T_SUFFIX
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'wint_t'. */
-+#define WINT_T_SUFFIX
-+
-+/* Define to 1 if on MINIX. */
-+/* #undef _MINIX */
-+
-+/* Define to 2 if the system does not provide POSIX.1 features except with
-+ this defined. */
-+/* #undef _POSIX_1_SOURCE */
-+
-+/* Define to 1 if you need to in order for `stat' and other things to work. */
-+/* #undef _POSIX_SOURCE */
-+
-+/* Define to 500 only on HP-UX. */
-+/* #undef _XOPEN_SOURCE */
-+
-+/* Enable extensions on AIX 3, Interix. */
-+#ifndef _ALL_SOURCE
-+# define _ALL_SOURCE 1
-+#endif
-+/* Enable GNU extensions on systems that have them. */
-+#ifndef _GNU_SOURCE
-+# define _GNU_SOURCE 1
-+#endif
-+/* Enable threading extensions on Solaris. */
-+#ifndef _POSIX_PTHREAD_SEMANTICS
-+# define _POSIX_PTHREAD_SEMANTICS 1
-+#endif
-+/* Enable extensions on HP NonStop. */
-+#ifndef _TANDEM_SOURCE
-+# define _TANDEM_SOURCE 1
-+#endif
-+/* Enable general extensions on Solaris. */
-+#ifndef __EXTENSIONS__
-+# define __EXTENSIONS__ 1
-+#endif
-+
-+
-+/* Define to rpl_ if the getopt replacement functions and variables should be
-+ used. */
-+#define __GETOPT_PREFIX rpl_
-+
-+/* Define to `int' if <sys/types.h> doesn't define. */
-+#define gid_t int
-+
-+/* Define to `__inline__' or `__inline' if that's what the C compiler
-+ calls it, or to nothing if 'inline' is not supported under any name. */
-+#ifndef __cplusplus
-+#define inline __inline
-+#endif
-+
-+/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
-+ the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
-+ earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
-+ __APPLE__ && __MACH__ test for MacOS X.
-+ __APPLE_CC__ tests for the Apple compiler and its version.
-+ __STDC_VERSION__ tests for the C99 mode. */
-+#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
-+# define __GNUC_STDC_INLINE__ 1
-+#endif
-+
-+/* Define to a type if <wchar.h> does not define. */
-+/* #undef mbstate_t */
-+
-+/* Define to the type of st_nlink in struct stat, or a supertype. */
-+#define nlink_t int
-+
-+/* Define as the type of the result of subtracting two pointers, if the system
-+ doesn't define it. */
-+/* #undef ptrdiff_t */
-+
-+/* Define to the equivalent of the C99 'restrict' keyword, or to
-+ nothing if this is not supported. Do not define if restrict is
-+ supported directly. */
-+#define restrict /**/
-+/* Work around a bug in Sun C++: it does not support _Restrict or
-+ __restrict__, even though the corresponding Sun C compiler ends up with
-+ "#define restrict _Restrict" or "#define restrict __restrict__" in the
-+ previous line. Perhaps some future version of Sun C++ will work with
-+ restrict; if so, hopefully it defines __RESTRICT like Sun C does. */
-+#if defined __SUNPRO_CC && !defined __RESTRICT
-+# define _Restrict
-+# define __restrict__
-+#endif
-+
-+/* Define to `unsigned int' if <sys/types.h> does not define. */
-+/* #undef size_t */
-+
-+/* Define as a signed type of the same size as size_t. */
-+#define ssize_t int
-+
-+/* Define to `int' if <sys/types.h> doesn't define. */
-+#define uid_t int
-+
-+/* Define to unsigned long or unsigned long long if <stdint.h> and
-+ <inttypes.h> don't define. */
-+#define uintmax_t unsigned long long
-+
-+/* Define as a marker that can be attached to declarations that might not
-+ be used. This helps to reduce warnings, such as from
-+ GCC -Wunused-parameter. */
-+#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-+# define _GL_UNUSED __attribute__ ((__unused__))
-+#else
-+# define _GL_UNUSED
-+#endif
-+/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
-+ is a misnomer outside of parameter lists. */
-+#define _UNUSED_PARAMETER_ _GL_UNUSED
-+
-+
-+
-+#define __libc_lock_t gl_lock_t
-+#define __libc_lock_define gl_lock_define
-+#define __libc_lock_define_initialized gl_lock_define_initialized
-+#define __libc_lock_init gl_lock_init
-+#define __libc_lock_lock gl_lock_lock
-+#define __libc_lock_unlock gl_lock_unlock
-+#define __libc_lock_recursive_t gl_recursive_lock_t
-+#define __libc_lock_define_recursive gl_recursive_lock_define
-+#define __libc_lock_define_initialized_recursive gl_recursive_lock_define_initialized
-+#define __libc_lock_init_recursive gl_recursive_lock_init
-+#define __libc_lock_lock_recursive gl_recursive_lock_lock
-+#define __libc_lock_unlock_recursive gl_recursive_lock_unlock
-+#define glthread_in_use libintl_thread_in_use
-+#define glthread_lock_init_func libintl_lock_init_func
-+#define glthread_lock_lock_func libintl_lock_lock_func
-+#define glthread_lock_unlock_func libintl_lock_unlock_func
-+#define glthread_lock_destroy_func libintl_lock_destroy_func
-+#define glthread_rwlock_init_multithreaded libintl_rwlock_init_multithreaded
-+#define glthread_rwlock_init_func libintl_rwlock_init_func
-+#define glthread_rwlock_rdlock_multithreaded libintl_rwlock_rdlock_multithreaded
-+#define glthread_rwlock_rdlock_func libintl_rwlock_rdlock_func
-+#define glthread_rwlock_wrlock_multithreaded libintl_rwlock_wrlock_multithreaded
-+#define glthread_rwlock_wrlock_func libintl_rwlock_wrlock_func
-+#define glthread_rwlock_unlock_multithreaded libintl_rwlock_unlock_multithreaded
-+#define glthread_rwlock_unlock_func libintl_rwlock_unlock_func
-+#define glthread_rwlock_destroy_multithreaded libintl_rwlock_destroy_multithreaded
-+#define glthread_rwlock_destroy_func libintl_rwlock_destroy_func
-+#define glthread_recursive_lock_init_multithreaded libintl_recursive_lock_init_multithreaded
-+#define glthread_recursive_lock_init_func libintl_recursive_lock_init_func
-+#define glthread_recursive_lock_lock_multithreaded libintl_recursive_lock_lock_multithreaded
-+#define glthread_recursive_lock_lock_func libintl_recursive_lock_lock_func
-+#define glthread_recursive_lock_unlock_multithreaded libintl_recursive_lock_unlock_multithreaded
-+#define glthread_recursive_lock_unlock_func libintl_recursive_lock_unlock_func
-+#define glthread_recursive_lock_destroy_multithreaded libintl_recursive_lock_destroy_multithreaded
-+#define glthread_recursive_lock_destroy_func libintl_recursive_lock_destroy_func
-+#define glthread_once_func libintl_once_func
-+#define glthread_once_singlethreaded libintl_once_singlethreaded
-+#define glthread_once_multithreaded libintl_once_multithreaded
-+
-+
-+
-+/* On Windows, variables that may be in a DLL must be marked specially. */
-+#if (defined _MSC_VER && defined _DLL) && !defined IN_RELOCWRAPPER
-+# define DLL_VARIABLE __declspec (dllimport)
-+#else
-+# define DLL_VARIABLE
-+#endif
-+
-+/* Extra OS/2 (emx+gcc) defines. */
-+#ifdef __EMX__
-+# include "intl/os2compat.h"
-+#endif
-+
-+#elif defined (__APPLE__)
-+/* config.h. Generated from config.h.in by configure. */
-+/* config.h.in. Generated from configure.ac by autoheader. */
-+
-+/* Define if the compiler is building for multiple architectures of Apple
-+ platforms at once. */
-+/* #undef AA_APPLE_UNIVERSAL_BUILD */
-+
-+/* Define to the number of bits in type 'ptrdiff_t'. */
-+#define BITSIZEOF_PTRDIFF_T 32
-+
-+/* Define to the number of bits in type 'sig_atomic_t'. */
-+#define BITSIZEOF_SIG_ATOMIC_T 32
-+
-+/* Define to the number of bits in type 'size_t'. */
-+#define BITSIZEOF_SIZE_T 32
-+
-+/* Define to the number of bits in type 'wchar_t'. */
-+#define BITSIZEOF_WCHAR_T 32
-+
-+/* Define to the number of bits in type 'wint_t'. */
-+#define BITSIZEOF_WINT_T 32
-+
-+/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
-+ systems. This function is required for `alloca.c' support on those systems.
-+ */
-+/* #undef CRAY_STACKSEG_END */
-+
-+/* Define if mono is the preferred C# implementation. */
-+/* #undef CSHARP_CHOICE_MONO */
-+
-+/* Define if pnet is the preferred C# implementation. */
-+/* #undef CSHARP_CHOICE_PNET */
-+
-+/* Define to 1 if using `alloca.c'. */
-+/* #undef C_ALLOCA */
-+
-+/* Define to 1 if // is a file system root distinct from /. */
-+/* #undef DOUBLE_SLASH_IS_DISTINCT_ROOT */
-+
-+/* Define to 1 if translation of program messages to the user's native
-+ language is requested. */
-+#define ENABLE_NLS 1
-+
-+/* Define to 1 if the package shall run at any location in the file system. */
-+/* #undef ENABLE_RELOCATABLE */
-+
-+/* Define on systems for which file names may have a so-called `drive letter'
-+ prefix, define this to compute the length of that prefix, including the
-+ colon. */
-+#define FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX 0
-+
-+/* Define if the backslash character may also serve as a file name component
-+ separator. */
-+#define FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR 0
-+
-+/* Define if a drive letter prefix denotes a relative path if it is not
-+ followed by a file name component separator. */
-+#define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 0
-+
-+/* Define to 1 if realpath() can malloc memory, always gives an absolute path,
-+ and handles trailing slash correctly. */
-+/* #undef FUNC_REALPATH_WORKS */
-+
-+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
-+ whether the gnulib module canonicalize-lgpl shall be considered present. */
-+#define GNULIB_CANONICALIZE_LGPL 1
-+
-+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
-+ whether the gnulib module fwriteerror shall be considered present. */
-+#define GNULIB_FWRITEERROR 1
-+
-+/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
-+ whether the gnulib module sigpipe shall be considered present. */
-+#define GNULIB_SIGPIPE 1
-+
-+/* Define to 1 when the gnulib module canonicalize_file_name should be tested.
-+ */
-+#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1
-+
-+/* Define to 1 when the gnulib module environ should be tested. */
-+#define GNULIB_TEST_ENVIRON 1
-+
-+/* Define to 1 when the gnulib module getopt-gnu should be tested. */
-+#define GNULIB_TEST_GETOPT_GNU 1
-+
-+/* Define to 1 when the gnulib module lstat should be tested. */
-+#define GNULIB_TEST_LSTAT 1
-+
-+/* Define to 1 when the gnulib module malloc-posix should be tested. */
-+#define GNULIB_TEST_MALLOC_POSIX 1
-+
-+/* Define to 1 when the gnulib module mbrtowc should be tested. */
-+#define GNULIB_TEST_MBRTOWC 1
-+
-+/* Define to 1 when the gnulib module mbsinit should be tested. */
-+#define GNULIB_TEST_MBSINIT 1
-+
-+/* Define to 1 when the gnulib module mbslen should be tested. */
-+#define GNULIB_TEST_MBSLEN 1
-+
-+/* Define to 1 when the gnulib module mbsstr should be tested. */
-+#define GNULIB_TEST_MBSSTR 1
-+
-+/* Define to 1 when the gnulib module memchr should be tested. */
-+#define GNULIB_TEST_MEMCHR 1
-+
-+/* Define to 1 when the gnulib module readlink should be tested. */
-+#define GNULIB_TEST_READLINK 1
-+
-+/* Define to 1 when the gnulib module realpath should be tested. */
-+#define GNULIB_TEST_REALPATH 1
-+
-+/* Define to 1 when the gnulib module sigprocmask should be tested. */
-+#define GNULIB_TEST_SIGPROCMASK 1
-+
-+/* Define to 1 when the gnulib module stat should be tested. */
-+#define GNULIB_TEST_STAT 1
-+
-+/* Define to 1 when the gnulib module strerror should be tested. */
-+#define GNULIB_TEST_STRERROR 1
-+
-+/* Define to 1 when the gnulib module strnlen should be tested. */
-+#define GNULIB_TEST_STRNLEN 1
-+
-+/* Define to 1 when the gnulib module wcwidth should be tested. */
-+#define GNULIB_TEST_WCWIDTH 1
-+
-+/* Define to 1 if you have `alloca', as a function or macro. */
-+#define HAVE_ALLOCA 1
-+
-+/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-+ */
-+#define HAVE_ALLOCA_H 1
-+
-+/* Define to 1 if you have the `argz_count' function. */
-+/* #undef HAVE_ARGZ_COUNT */
-+
-+/* Define to 1 if you have the <argz.h> header file. */
-+/* #undef HAVE_ARGZ_H */
-+
-+/* Define to 1 if you have the `argz_next' function. */
-+/* #undef HAVE_ARGZ_NEXT */
-+
-+/* Define to 1 if you have the `argz_stringify' function. */
-+/* #undef HAVE_ARGZ_STRINGIFY */
-+
-+/* Define to 1 if you have the `asprintf' function. */
-+#define HAVE_ASPRINTF 1
-+
-+/* Define to 1 if you have the `atexit' function. */
-+#define HAVE_ATEXIT 1
-+
-+/* Define to 1 if you have the <bp-sym.h> header file. */
-+/* #undef HAVE_BP_SYM_H */
-+
-+/* Define to 1 if the compiler understands __builtin_expect. */
-+#define HAVE_BUILTIN_EXPECT 1
-+
-+/* Define to 1 if you have the `canonicalize_file_name' function. */
-+/* #undef HAVE_CANONICALIZE_FILE_NAME */
-+
-+/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
-+ CoreFoundation framework. */
-+#define HAVE_CFLOCALECOPYCURRENT 1
-+
-+/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
-+ the CoreFoundation framework. */
-+#define HAVE_CFPREFERENCESCOPYAPPVALUE 1
-+
-+/* Define if the GNU dcgettext() function is already present or preinstalled.
-+ */
-+/* #undef HAVE_DCGETTEXT */
-+
-+/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_CLEARERR_UNLOCKED 1
-+
-+/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_FEOF_UNLOCKED 1
-+
-+/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FERROR_UNLOCKED 1
-+
-+/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FFLUSH_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FGETS_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FPUTC_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FPUTS_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FREAD_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_FWRITE_UNLOCKED 0
-+
-+/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_GETCHAR_UNLOCKED 1
-+
-+/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_GETC_UNLOCKED 1
-+
-+/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't.
-+ */
-+#define HAVE_DECL_GETENV 1
-+
-+/* Define to 1 if you have the declaration of `getopt_clip', and to 0 if you
-+ don't. */
-+/* #undef HAVE_DECL_GETOPT_CLIP */
-+
-+/* Define to 1 if you have the declaration of `optreset', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_OPTRESET 1
-+
-+/* Define to 1 if you have the declaration of `program_invocation_name', and
-+ to 0 if you don't. */
-+#define HAVE_DECL_PROGRAM_INVOCATION_NAME 0
-+
-+/* Define to 1 if you have the declaration of `program_invocation_short_name',
-+ and to 0 if you don't. */
-+#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0
-+
-+/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if
-+ you don't. */
-+#define HAVE_DECL_PUTCHAR_UNLOCKED 1
-+
-+/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_PUTC_UNLOCKED 1
-+
-+/* Define to 1 if you have the declaration of `strerror', and to 0 if you
-+ don't. */
-+/* #undef HAVE_DECL_STRERROR */
-+
-+/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_STRERROR_R 1
-+
-+/* Define to 1 if you have the declaration of `strnlen', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_STRNLEN 0
-+
-+/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you
-+ don't. */
-+#define HAVE_DECL_WCWIDTH 1
-+
-+/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you
-+ don't. */
-+#define HAVE_DECL__SNPRINTF 0
-+
-+/* Define to 1 if you have the declaration of `_snwprintf', and to 0 if you
-+ don't. */
-+#define HAVE_DECL__SNWPRINTF 0
-+
-+/* Define to 1 if you have the <dlfcn.h> header file. */
-+#define HAVE_DLFCN_H 1
-+
-+/* Define if you have the declaration of environ. */
-+/* #undef HAVE_ENVIRON_DECL */
-+
-+/* Define to 1 if you have the <errno.h> header file. */
-+#define HAVE_ERRNO_H 1
-+
-+/* Define to 1 if you have the `fwprintf' function. */
-+#define HAVE_FWPRINTF 1
-+
-+/* Define to 1 if you have the `getcwd' function. */
-+#define HAVE_GETCWD 1
-+
-+/* Define to 1 if you have the `getegid' function. */
-+#define HAVE_GETEGID 1
-+
-+/* Define to 1 if you have the `geteuid' function. */
-+#define HAVE_GETEUID 1
-+
-+/* Define to 1 if you have the `getgid' function. */
-+#define HAVE_GETGID 1
-+
-+/* Define to 1 if you have the <getopt.h> header file. */
-+#define HAVE_GETOPT_H 1
-+
-+/* Define to 1 if you have the `getopt_long_only' function. */
-+#define HAVE_GETOPT_LONG_ONLY 1
-+
-+/* Define to 1 if you have the `getpagesize' function. */
-+#define HAVE_GETPAGESIZE 1
-+
-+/* Define if the GNU gettext() function is already present or preinstalled. */
-+/* #undef HAVE_GETTEXT */
-+
-+/* Define to 1 if you have the `getuid' function. */
-+#define HAVE_GETUID 1
-+
-+/* Define if you have the iconv() function and it works. */
-+#define HAVE_ICONV 1
-+
-+/* Define to 1 if you have the <iconv.h> header file. */
-+#define HAVE_ICONV_H 1
-+
-+/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
-+#define HAVE_INTMAX_T 1
-+
-+/* Define to 1 if you have the <inttypes.h> header file. */
-+#define HAVE_INTTYPES_H 1
-+
-+/* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
-+ declares uintmax_t. */
-+#define HAVE_INTTYPES_H_WITH_UINTMAX 1
-+
-+/* Define to 1 if you have the `iswblank' function. */
-+#define HAVE_ISWBLANK 1
-+
-+/* Define to 1 if you have the `iswcntrl' function. */
-+#define HAVE_ISWCNTRL 1
-+
-+/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
-+#define HAVE_LANGINFO_CODESET 1
-+
-+/* Define if your <locale.h> file defines LC_MESSAGES. */
-+#define HAVE_LC_MESSAGES 1
-+
-+/* Define to 1 if you have the <limits.h> header file. */
-+#define HAVE_LIMITS_H 1
-+
-+/* Define to 1 if the system has the type `long long int'. */
-+#define HAVE_LONG_LONG_INT 1
-+
-+/* Define to 1 if you have the `lstat' function. */
-+#define HAVE_LSTAT 1
-+
-+/* Define to 1 if you have the <mach-o/dyld.h> header file. */
-+/* #undef HAVE_MACH_O_DYLD_H */
-+
-+/* Define if the 'malloc' function is POSIX compliant. */
-+#define HAVE_MALLOC_POSIX 1
-+
-+/* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including
-+ config.h and <sys/mman.h>. */
-+#define HAVE_MAP_ANONYMOUS 1
-+
-+/* Define to 1 if you have the `mbrtowc' function. */
-+#define HAVE_MBRTOWC 1
-+
-+/* Define to 1 if you have the `mbsinit' function. */
-+#define HAVE_MBSINIT 1
-+
-+/* Define to 1 if you have the `mbslen' function. */
-+/* #undef HAVE_MBSLEN */
-+
-+/* Define to 1 if <wchar.h> declares mbstate_t. */
-+#define HAVE_MBSTATE_T 1
-+
-+/* Define to 1 if you have the `memchr' function. */
-+#define HAVE_MEMCHR 1
-+
-+/* Define to 1 if you have the `memmove' function. */
-+#define HAVE_MEMMOVE 1
-+
-+/* Define to 1 if you have the <memory.h> header file. */
-+#define HAVE_MEMORY_H 1
-+
-+/* Define to 1 if you have the `mempcpy' function. */
-+/* #undef HAVE_MEMPCPY */
-+
-+/* Define to 1 if you have a working `mmap' system call. */
-+#define HAVE_MMAP 1
-+
-+/* Define to 1 if you have the `mprotect' function. */
-+#define HAVE_MPROTECT 1
-+
-+/* Define to 1 if you have the `munmap' function. */
-+#define HAVE_MUNMAP 1
-+
-+/* Define to 1 if you have the `newlocale' function. */
-+#define HAVE_NEWLOCALE 1
-+
-+/* Define to 1 if you have the `pathconf' function. */
-+#define HAVE_PATHCONF 1
-+
-+/* Define if your printf() function supports format strings with positions. */
-+#define HAVE_POSIX_PRINTF 1
-+
-+/* Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE. */
-+#define HAVE_PTHREAD_MUTEX_RECURSIVE 1
-+
-+/* Define if the POSIX multithreading library has read/write locks. */
-+#define HAVE_PTHREAD_RWLOCK 1
-+
-+/* Define to 1 if you have the `putenv' function. */
-+#define HAVE_PUTENV 1
-+
-+/* Define to 1 if you have the <random.h> header file. */
-+/* #undef HAVE_RANDOM_H */
-+
-+/* Define to 1 if atoll is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_ATOLL 1
-+
-+/* Define to 1 if btowc is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_BTOWC 1
-+
-+/* Define to 1 if canonicalize_file_name is declared even after undefining
-+ macros. */
-+/* #undef HAVE_RAW_DECL_CANONICALIZE_FILE_NAME */
-+
-+/* Define to 1 if chown is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_CHOWN 1
-+
-+/* Define to 1 if dprintf is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_DPRINTF */
-+
-+/* Define to 1 if dup2 is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_DUP2 1
-+
-+/* Define to 1 if dup3 is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_DUP3 */
-+
-+/* Define to 1 if endusershell is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_ENDUSERSHELL 1
-+
-+/* Define to 1 if environ is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_ENVIRON */
-+
-+/* Define to 1 if euidaccess is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_EUIDACCESS */
-+
-+/* Define to 1 if faccessat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FACCESSAT */
-+
-+/* Define to 1 if fchdir is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_FCHDIR 1
-+
-+/* Define to 1 if fchmodat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FCHMODAT */
-+
-+/* Define to 1 if fchownat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FCHOWNAT */
-+
-+/* Define to 1 if fpurge is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_FPURGE 1
-+
-+/* Define to 1 if fseeko is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_FSEEKO 1
-+
-+/* Define to 1 if fstatat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FSTATAT */
-+
-+/* Define to 1 if fsync is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_FSYNC 1
-+
-+/* Define to 1 if ftello is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_FTELLO 1
-+
-+/* Define to 1 if ftruncate is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_FTRUNCATE 1
-+
-+/* Define to 1 if futimens is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_FUTIMENS */
-+
-+/* Define to 1 if getcwd is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETCWD 1
-+
-+/* Define to 1 if getdelim is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETDELIM */
-+
-+/* Define to 1 if getdomainname is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETDOMAINNAME 1
-+
-+/* Define to 1 if getdtablesize is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETDTABLESIZE 1
-+
-+/* Define to 1 if getgroups is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETGROUPS 1
-+
-+/* Define to 1 if gethostname is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETHOSTNAME 1
-+
-+/* Define to 1 if getline is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_GETLINE */
-+
-+/* Define to 1 if getloadavg is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETLOADAVG 1
-+
-+/* Define to 1 if getlogin is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETLOGIN 1
-+
-+/* Define to 1 if getlogin_r is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETLOGIN_R 1
-+
-+/* Define to 1 if getpagesize is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETPAGESIZE 1
-+
-+/* Define to 1 if getsubopt is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETSUBOPT 1
-+
-+/* Define to 1 if getusershell is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GETUSERSHELL 1
-+
-+/* Define to 1 if grantpt is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_GRANTPT 1
-+
-+/* Define to 1 if initstat_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_INITSTAT_R */
-+
-+/* Define to 1 if lchmod is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_LCHMOD */
-+
-+/* Define to 1 if lchown is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_LCHOWN 1
-+
-+/* Define to 1 if link is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_LINK 1
-+
-+/* Define to 1 if linkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_LINKAT */
-+
-+/* Define to 1 if lseek is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_LSEEK 1
-+
-+/* Define to 1 if lstat is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_LSTAT 1
-+
-+/* Define to 1 if mbrlen is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBRLEN 1
-+
-+/* Define to 1 if mbrtowc is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBRTOWC 1
-+
-+/* Define to 1 if mbsinit is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBSINIT 1
-+
-+/* Define to 1 if mbsnrtowcs is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBSNRTOWCS 1
-+
-+/* Define to 1 if mbsrtowcs is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MBSRTOWCS 1
-+
-+/* Define to 1 if memmem is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MEMMEM */
-+
-+/* Define to 1 if mempcpy is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MEMPCPY */
-+
-+/* Define to 1 if memrchr is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MEMRCHR */
-+
-+/* Define to 1 if mkdirat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKDIRAT */
-+
-+/* Define to 1 if mkdtemp is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKDTEMP */
-+
-+/* Define to 1 if mkfifo is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MKFIFO 1
-+
-+/* Define to 1 if mkfifoat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKFIFOAT */
-+
-+/* Define to 1 if mknod is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MKNOD 1
-+
-+/* Define to 1 if mknodat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKNODAT */
-+
-+/* Define to 1 if mkostemp is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKOSTEMP */
-+
-+/* Define to 1 if mkostemps is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKOSTEMPS */
-+
-+/* Define to 1 if mkstemp is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_MKSTEMP 1
-+
-+/* Define to 1 if mkstemps is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_MKSTEMPS */
-+
-+/* Define to 1 if pipe2 is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_PIPE2 */
-+
-+/* Define to 1 if popen is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_POPEN 1
-+
-+/* Define to 1 if pread is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_PREAD 1
-+
-+/* Define to 1 if ptsname is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_PTSNAME 1
-+
-+/* Define to 1 if pwrite is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_PWRITE 1
-+
-+/* Define to 1 if random_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RANDOM_R */
-+
-+/* Define to 1 if rawmemchr is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RAWMEMCHR */
-+
-+/* Define to 1 if readlink is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_READLINK 1
-+
-+/* Define to 1 if readlinkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_READLINKAT */
-+
-+/* Define to 1 if realpath is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_REALPATH 1
-+
-+/* Define to 1 if renameat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RENAMEAT */
-+
-+/* Define to 1 if rmdir is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_RMDIR 1
-+
-+/* Define to 1 if rpmatch is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_RPMATCH */
-+
-+/* Define to 1 if setenv is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SETENV 1
-+
-+/* Define to 1 if setstate_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SETSTATE_R */
-+
-+/* Define to 1 if setusershell is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SETUSERSHELL 1
-+
-+/* Define to 1 if sigaction is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGACTION 1
-+
-+/* Define to 1 if sigaddset is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGADDSET 1
-+
-+/* Define to 1 if sigdelset is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGDELSET 1
-+
-+/* Define to 1 if sigemptyset is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGEMPTYSET 1
-+
-+/* Define to 1 if sigfillset is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGFILLSET 1
-+
-+/* Define to 1 if sigismember is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGISMEMBER 1
-+
-+/* Define to 1 if sigpending is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGPENDING 1
-+
-+/* Define to 1 if sigprocmask is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SIGPROCMASK 1
-+
-+/* Define to 1 if sleep is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SLEEP 1
-+
-+/* Define to 1 if snprintf is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SNPRINTF 1
-+
-+/* Define to 1 if srandom_r is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SRANDOM_R */
-+
-+/* Define to 1 if stat is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STAT 1
-+
-+/* Define to 1 if stpcpy is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STPCPY 1
-+
-+/* Define to 1 if stpncpy is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STPNCPY */
-+
-+/* Define to 1 if strcasestr is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRCASESTR 1
-+
-+/* Define to 1 if strchrnul is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRCHRNUL */
-+
-+/* Define to 1 if strdup is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRDUP 1
-+
-+/* Define to 1 if strncat is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRNCAT 1
-+
-+/* Define to 1 if strndup is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRNDUP */
-+
-+/* Define to 1 if strnlen is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRNLEN */
-+
-+/* Define to 1 if strpbrk is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRPBRK 1
-+
-+/* Define to 1 if strsep is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRSEP 1
-+
-+/* Define to 1 if strsignal is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRSIGNAL 1
-+
-+/* Define to 1 if strtod is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRTOD 1
-+
-+/* Define to 1 if strtok_r is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRTOK_R 1
-+
-+/* Define to 1 if strtoll is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRTOLL 1
-+
-+/* Define to 1 if strtoull is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_STRTOULL 1
-+
-+/* Define to 1 if strverscmp is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_STRVERSCMP */
-+
-+/* Define to 1 if symlink is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_SYMLINK 1
-+
-+/* Define to 1 if symlinkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_SYMLINKAT */
-+
-+/* Define to 1 if tmpfile is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_TMPFILE 1
-+
-+/* Define to 1 if ttyname_r is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_TTYNAME_R 1
-+
-+/* Define to 1 if unlink is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_UNLINK 1
-+
-+/* Define to 1 if unlinkat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_UNLINKAT */
-+
-+/* Define to 1 if unlockpt is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_UNLOCKPT 1
-+
-+/* Define to 1 if unsetenv is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_UNSETENV 1
-+
-+/* Define to 1 if usleep is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_USLEEP 1
-+
-+/* Define to 1 if utimensat is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_UTIMENSAT */
-+
-+/* Define to 1 if vdprintf is declared even after undefining macros. */
-+/* #undef HAVE_RAW_DECL_VDPRINTF */
-+
-+/* Define to 1 if vsnprintf is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_VSNPRINTF 1
-+
-+/* Define to 1 if wcrtomb is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCRTOMB 1
-+
-+/* Define to 1 if wcsnrtombs is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCSNRTOMBS 1
-+
-+/* Define to 1 if wcsrtombs is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCSRTOMBS 1
-+
-+/* Define to 1 if wctob is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCTOB 1
-+
-+/* Define to 1 if wcwidth is declared even after undefining macros. */
-+#define HAVE_RAW_DECL_WCWIDTH 1
-+
-+/* Define to 1 if you have the `readlink' function. */
-+#define HAVE_READLINK 1
-+
-+/* Define to 1 if you have the `realpath' function. */
-+#define HAVE_REALPATH 1
-+
-+/* Define to 1 if you have the <search.h> header file. */
-+#define HAVE_SEARCH_H 1
-+
-+/* Define to 1 if you have the `setenv' function. */
-+#define HAVE_SETENV 1
-+
-+/* Define to 1 if you have the `setlocale' function. */
-+#define HAVE_SETLOCALE 1
-+
-+/* Define to 1 if you have the <signal.h> header file. */
-+#define HAVE_SIGNAL_H 1
-+
-+/* Define to 1 if 'sig_atomic_t' is a signed integer type. */
-+#define HAVE_SIGNED_SIG_ATOMIC_T 1
-+
-+/* Define to 1 if 'wchar_t' is a signed integer type. */
-+#define HAVE_SIGNED_WCHAR_T 1
-+
-+/* Define to 1 if 'wint_t' is a signed integer type. */
-+#define HAVE_SIGNED_WINT_T 1
-+
-+/* Define to 1 if the system has the type `sigset_t'. */
-+/* #undef HAVE_SIGSET_T */
-+
-+/* Define to 1 if you have the `snprintf' function. */
-+#define HAVE_SNPRINTF 1
-+
-+/* Define to 1 if stdbool.h conforms to C99. */
-+#define HAVE_STDBOOL_H 1
-+
-+/* Define to 1 if you have the <stddef.h> header file. */
-+#define HAVE_STDDEF_H 1
-+
-+/* Define to 1 if you have the <stdint.h> header file. */
-+#define HAVE_STDINT_H 1
-+
-+/* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
-+ uintmax_t. */
-+#define HAVE_STDINT_H_WITH_UINTMAX 1
-+
-+/* Define to 1 if you have the <stdio.h> header file. */
-+#define HAVE_STDIO_H 1
-+
-+/* Define to 1 if you have the <stdlib.h> header file. */
-+#define HAVE_STDLIB_H 1
-+
-+/* Define to 1 if you have the `stpcpy' function. */
-+#define HAVE_STPCPY 1
-+
-+/* Define to 1 if you have the `strcasecmp' function. */
-+#define HAVE_STRCASECMP 1
-+
-+/* Define to 1 if you have the `strdup' function. */
-+#define HAVE_STRDUP 1
-+
-+/* Define to 1 if you have the `strerror_r' function. */
-+#define HAVE_STRERROR_R 1
-+
-+/* Define to 1 if you have the <strings.h> header file. */
-+#define HAVE_STRINGS_H 1
-+
-+/* Define to 1 if you have the <string.h> header file. */
-+#define HAVE_STRING_H 1
-+
-+/* Define to 1 if you have the `strnlen' function. */
-+/* #undef HAVE_STRNLEN */
-+
-+/* Define to 1 if you have the `strtol' function. */
-+#define HAVE_STRTOL 1
-+
-+/* Define to 1 if you have the `strtoul' function. */
-+#define HAVE_STRTOUL 1
-+
-+/* Define to 1 if the system has the type `struct random_data'. */
-+/* #undef HAVE_STRUCT_RANDOM_DATA */
-+
-+/* Define to 1 if you have the <sys/bitypes.h> header file. */
-+/* #undef HAVE_SYS_BITYPES_H */
-+
-+/* Define to 1 if you have the <sys/inttypes.h> header file. */
-+/* #undef HAVE_SYS_INTTYPES_H */
-+
-+/* Define to 1 if you have the <sys/mman.h> header file. */
-+#define HAVE_SYS_MMAN_H 1
-+
-+/* Define to 1 if you have the <sys/param.h> header file. */
-+#define HAVE_SYS_PARAM_H 1
-+
-+/* Define to 1 if you have the <sys/socket.h> header file. */
-+#define HAVE_SYS_SOCKET_H 1
-+
-+/* Define to 1 if you have the <sys/stat.h> header file. */
-+#define HAVE_SYS_STAT_H 1
-+
-+/* Define to 1 if you have the <sys/time.h> header file. */
-+#define HAVE_SYS_TIME_H 1
-+
-+/* Define to 1 if you have the <sys/types.h> header file. */
-+#define HAVE_SYS_TYPES_H 1
-+
-+/* Define to 1 if you have the <time.h> header file. */
-+#define HAVE_TIME_H 1
-+
-+/* Define to 1 if you have the `tsearch' function. */
-+#define HAVE_TSEARCH 1
-+
-+/* Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>. */
-+#define HAVE_UINTMAX_T 1
-+
-+/* Define to 1 if you have the <unistd.h> header file. */
-+#define HAVE_UNISTD_H 1
-+
-+/* Define to 1 if the system has the type `unsigned long long int'. */
-+#define HAVE_UNSIGNED_LONG_LONG_INT 1
-+
-+/* Define to 1 if you have the `uselocale' function. */
-+#define HAVE_USELOCALE 1
-+
-+/* Define to 1 or 0, depending whether the compiler supports simple visibility
-+ declarations. */
-+#define HAVE_VISIBILITY 1
-+
-+/* Define to 1 if you have the <wchar.h> header file. */
-+#define HAVE_WCHAR_H 1
-+
-+/* Define if you have the 'wchar_t' type. */
-+#define HAVE_WCHAR_T 1
-+
-+/* Define to 1 if you have the `wcrtomb' function. */
-+#define HAVE_WCRTOMB 1
-+
-+/* Define to 1 if you have the `wcslen' function. */
-+#define HAVE_WCSLEN 1
-+
-+/* Define to 1 if you have the `wcsnlen' function. */
-+/* #undef HAVE_WCSNLEN */
-+
-+/* Define to 1 if you have the <wctype.h> header file. */
-+#define HAVE_WCTYPE_H 1
-+
-+/* Define to 1 if you have the `wcwidth' function. */
-+#define HAVE_WCWIDTH 1
-+
-+/* Define to 1 if you have the <winsock2.h> header file. */
-+/* #undef HAVE_WINSOCK2_H */
-+
-+/* Define if you have the 'wint_t' type. */
-+#define HAVE_WINT_T 1
-+
-+/* Define to 1 if O_NOATIME works. */
-+#define HAVE_WORKING_O_NOATIME 0
-+
-+/* Define to 1 if O_NOFOLLOW works. */
-+#define HAVE_WORKING_O_NOFOLLOW 1
-+
-+/* Define to 1 if the system has the type `_Bool'. */
-+#define HAVE__BOOL 1
-+
-+/* Define to 1 if you have the `_NSGetExecutablePath' function. */
-+/* #undef HAVE__NSGETEXECUTABLEPATH */
-+
-+/* Define to 1 if you have the `__fsetlocking' function. */
-+/* #undef HAVE___FSETLOCKING */
-+
-+/* Define as const if the declaration of iconv() needs const. */
-+#define ICONV_CONST const
-+
-+/* Define to a symbolic name denoting the flavor of iconv_open()
-+ implementation. */
-+/* #undef ICONV_FLAVOR */
-+
-+/* Define to the value of ${prefix}, as a string. */
-+#define INSTALLPREFIX "/Users/tml/lo-macosx/gettext/./unxmacxi.pro/misc"
-+
-+/* Define if integer division by zero raises signal SIGFPE. */
-+#define INTDIV0_RAISES_SIGFPE 1
-+
-+#if FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR
-+# define ISSLASH(C) ((C) == '/' || (C) == '\\')
-+#else
-+# define ISSLASH(C) ((C) == '/')
-+#endif
-+
-+/* Define to 1 if `lstat' dereferences a symlink specified with a trailing
-+ slash. */
-+/* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */
-+
-+/* Define to the sub-directory in which libtool stores uninstalled libraries.
-+ */
-+#define LT_OBJDIR ".libs/"
-+
-+/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */
-+#define MALLOC_0_IS_NONNULL 1
-+
-+/* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */
-+#define MAP_ANONYMOUS MAP_ANON
-+
-+/* Define if the mbrtowc function has the NULL string argument bug. */
-+/* #undef MBRTOWC_NULL_ARG_BUG */
-+
-+/* Define if the mbrtowc function does not return 0 for a NUL character. */
-+/* #undef MBRTOWC_NUL_RETVAL_BUG */
-+
-+/* Define if the mbrtowc function returns a wrong return value. */
-+/* #undef MBRTOWC_RETVAL_BUG */
-+
-+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
-+/* #undef NO_MINUS_C_MINUS_O */
-+
-+/* Name of package */
-+#define PACKAGE "gettext-runtime"
-+
-+/* Define to the address where bug reports for this package should be sent. */
-+#define PACKAGE_BUGREPORT ""
-+
-+/* Define to the full name of this package. */
-+#define PACKAGE_NAME ""
-+
-+/* Define to the full name and version of this package. */
-+#define PACKAGE_STRING ""
-+
-+/* Define to the one symbol short name of this package. */
-+#define PACKAGE_TARNAME ""
-+
-+/* Define to the home page for this package. */
-+#define PACKAGE_URL ""
-+
-+/* Define to the version of this package. */
-+#define PACKAGE_VERSION ""
-+
-+/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
-+/* #undef PRI_MACROS_BROKEN */
-+
-+/* Define if the pthread_in_use() detection is hard. */
-+/* #undef PTHREAD_IN_USE_DETECTION_HARD */
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'ptrdiff_t'. */
-+#define PTRDIFF_T_SUFFIX
-+
-+/* Define to 1 if readlink fails to recognize a trailing slash. */
-+#define READLINK_TRAILING_SLASH_BUG 1
-+
-+/* Define to 1 if stat needs help when passed a directory name with a trailing
-+ slash */
-+/* #undef REPLACE_FUNC_STAT_DIR */
-+
-+/* Define to 1 if stat needs help when passed a file name with a trailing
-+ slash */
-+#define REPLACE_FUNC_STAT_FILE 1
-+
-+/* Define this to 1 if strerror is broken. */
-+/* #undef REPLACE_STRERROR */
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'sig_atomic_t'. */
-+#define SIG_ATOMIC_T_SUFFIX
-+
-+/* Define as the maximum value of type 'size_t', if the system doesn't define
-+ it. */
-+#ifndef SIZE_MAX
-+/* # undef SIZE_MAX */
-+#endif
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'size_t'. */
-+#define SIZE_T_SUFFIX ul
-+
-+/* If using the C implementation of alloca, define if you know the
-+ direction of stack growth for your system; otherwise it will be
-+ automatically deduced at runtime.
-+ STACK_DIRECTION > 0 => grows toward higher addresses
-+ STACK_DIRECTION < 0 => grows toward lower addresses
-+ STACK_DIRECTION = 0 => direction of growth unknown */
-+/* #undef STACK_DIRECTION */
-+
-+/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
-+/* #undef STAT_MACROS_BROKEN */
-+
-+/* Define to 1 if you have the ANSI C header files. */
-+#define STDC_HEADERS 1
-+
-+/* Define to 1 if strerror_r returns char *. */
-+/* #undef STRERROR_R_CHAR_P */
-+
-+/* Define to the prefix of C symbols at the assembler and linker level, either
-+ an underscore or empty. */
-+#define USER_LABEL_PREFIX _
-+
-+/* Define if the POSIX multithreading library can be used. */
-+#define USE_POSIX_THREADS 1
-+
-+/* Define if references to the POSIX multithreading library should be made
-+ weak. */
-+/* #undef USE_POSIX_THREADS_WEAK */
-+
-+/* Define if the GNU Pth multithreading library can be used. */
-+/* #undef USE_PTH_THREADS */
-+
-+/* Define if references to the GNU Pth multithreading library should be made
-+ weak. */
-+/* #undef USE_PTH_THREADS_WEAK */
-+
-+/* Define if the old Solaris multithreading library can be used. */
-+/* #undef USE_SOLARIS_THREADS */
-+
-+/* Define if references to the old Solaris multithreading library should be
-+ made weak. */
-+/* #undef USE_SOLARIS_THREADS_WEAK */
-+
-+/* Define to 1 if you want getc etc. to use unlocked I/O if available.
-+ Unlocked I/O can improve performance in unithreaded apps, but it is not
-+ safe for multithreaded apps. */
-+#define USE_UNLOCKED_IO 1
-+
-+/* Define if the Win32 multithreading API can be used. */
-+/* #undef USE_WIN32_THREADS */
-+
-+/* Version number of package */
-+#define VERSION "0.18.1"
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'wchar_t'. */
-+#define WCHAR_T_SUFFIX
-+
-+/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
-+ 'wint_t'. */
-+#define WINT_T_SUFFIX
-+
-+/* Define to 1 if on MINIX. */
-+/* #undef _MINIX */
-+
-+/* Define to 2 if the system does not provide POSIX.1 features except with
-+ this defined. */
-+/* #undef _POSIX_1_SOURCE */
-+
-+/* Define to 1 if you need to in order for `stat' and other things to work. */
-+/* #undef _POSIX_SOURCE */
-+
-+/* Define to 500 only on HP-UX. */
-+/* #undef _XOPEN_SOURCE */
-+
-+/* Enable extensions on AIX 3, Interix. */
-+#ifndef _ALL_SOURCE
-+# define _ALL_SOURCE 1
-+#endif
-+/* Enable GNU extensions on systems that have them. */
-+#ifndef _GNU_SOURCE
-+# define _GNU_SOURCE 1
-+#endif
-+/* Enable threading extensions on Solaris. */
-+#ifndef _POSIX_PTHREAD_SEMANTICS
-+# define _POSIX_PTHREAD_SEMANTICS 1
-+#endif
-+/* Enable extensions on HP NonStop. */
-+#ifndef _TANDEM_SOURCE
-+# define _TANDEM_SOURCE 1
-+#endif
-+/* Enable general extensions on Solaris. */
-+#ifndef __EXTENSIONS__
-+# define __EXTENSIONS__ 1
-+#endif
-+
-+
-+/* Define to rpl_ if the getopt replacement functions and variables should be
-+ used. */
-+#define __GETOPT_PREFIX rpl_
-+
-+/* Define to `int' if <sys/types.h> doesn't define. */
-+/* #undef gid_t */
-+
-+/* Define to `__inline__' or `__inline' if that's what the C compiler
-+ calls it, or to nothing if 'inline' is not supported under any name. */
-+#ifndef __cplusplus
-+/* #undef inline */
-+#endif
-+
-+/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
-+ the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
-+ earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
-+ __APPLE__ && __MACH__ test for MacOS X.
-+ __APPLE_CC__ tests for the Apple compiler and its version.
-+ __STDC_VERSION__ tests for the C99 mode. */
-+#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
-+# define __GNUC_STDC_INLINE__ 1
-+#endif
-+
-+/* Define to a type if <wchar.h> does not define. */
-+/* #undef mbstate_t */
-+
-+/* Define to the type of st_nlink in struct stat, or a supertype. */
-+/* #undef nlink_t */
-+
-+/* Define as the type of the result of subtracting two pointers, if the system
-+ doesn't define it. */
-+/* #undef ptrdiff_t */
-+
-+/* Define to the equivalent of the C99 'restrict' keyword, or to
-+ nothing if this is not supported. Do not define if restrict is
-+ supported directly. */
-+#define restrict __restrict
-+/* Work around a bug in Sun C++: it does not support _Restrict or
-+ __restrict__, even though the corresponding Sun C compiler ends up with
-+ "#define restrict _Restrict" or "#define restrict __restrict__" in the
-+ previous line. Perhaps some future version of Sun C++ will work with
-+ restrict; if so, hopefully it defines __RESTRICT like Sun C does. */
-+#if defined __SUNPRO_CC && !defined __RESTRICT
-+# define _Restrict
-+# define __restrict__
-+#endif
-+
-+/* Define to `unsigned int' if <sys/types.h> does not define. */
-+/* #undef size_t */
-+
-+/* Define as a signed type of the same size as size_t. */
-+/* #undef ssize_t */
-+
-+/* Define to `int' if <sys/types.h> doesn't define. */
-+/* #undef uid_t */
-+
-+/* Define to unsigned long or unsigned long long if <stdint.h> and
-+ <inttypes.h> don't define. */
-+/* #undef uintmax_t */
-+
-+/* Define as a marker that can be attached to declarations that might not
-+ be used. This helps to reduce warnings, such as from
-+ GCC -Wunused-parameter. */
-+#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
-+# define _GL_UNUSED __attribute__ ((__unused__))
-+#else
-+# define _GL_UNUSED
-+#endif
-+/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
-+ is a misnomer outside of parameter lists. */
-+#define _UNUSED_PARAMETER_ _GL_UNUSED
-+
-+
-+
-+#define __libc_lock_t gl_lock_t
-+#define __libc_lock_define gl_lock_define
-+#define __libc_lock_define_initialized gl_lock_define_initialized
-+#define __libc_lock_init gl_lock_init
-+#define __libc_lock_lock gl_lock_lock
-+#define __libc_lock_unlock gl_lock_unlock
-+#define __libc_lock_recursive_t gl_recursive_lock_t
-+#define __libc_lock_define_recursive gl_recursive_lock_define
-+#define __libc_lock_define_initialized_recursive gl_recursive_lock_define_initialized
-+#define __libc_lock_init_recursive gl_recursive_lock_init
-+#define __libc_lock_lock_recursive gl_recursive_lock_lock
-+#define __libc_lock_unlock_recursive gl_recursive_lock_unlock
-+#define glthread_in_use libintl_thread_in_use
-+#define glthread_lock_init_func libintl_lock_init_func
-+#define glthread_lock_lock_func libintl_lock_lock_func
-+#define glthread_lock_unlock_func libintl_lock_unlock_func
-+#define glthread_lock_destroy_func libintl_lock_destroy_func
-+#define glthread_rwlock_init_multithreaded libintl_rwlock_init_multithreaded
-+#define glthread_rwlock_init_func libintl_rwlock_init_func
-+#define glthread_rwlock_rdlock_multithreaded libintl_rwlock_rdlock_multithreaded
-+#define glthread_rwlock_rdlock_func libintl_rwlock_rdlock_func
-+#define glthread_rwlock_wrlock_multithreaded libintl_rwlock_wrlock_multithreaded
-+#define glthread_rwlock_wrlock_func libintl_rwlock_wrlock_func
-+#define glthread_rwlock_unlock_multithreaded libintl_rwlock_unlock_multithreaded
-+#define glthread_rwlock_unlock_func libintl_rwlock_unlock_func
-+#define glthread_rwlock_destroy_multithreaded libintl_rwlock_destroy_multithreaded
-+#define glthread_rwlock_destroy_func libintl_rwlock_destroy_func
-+#define glthread_recursive_lock_init_multithreaded libintl_recursive_lock_init_multithreaded
-+#define glthread_recursive_lock_init_func libintl_recursive_lock_init_func
-+#define glthread_recursive_lock_lock_multithreaded libintl_recursive_lock_lock_multithreaded
-+#define glthread_recursive_lock_lock_func libintl_recursive_lock_lock_func
-+#define glthread_recursive_lock_unlock_multithreaded libintl_recursive_lock_unlock_multithreaded
-+#define glthread_recursive_lock_unlock_func libintl_recursive_lock_unlock_func
-+#define glthread_recursive_lock_destroy_multithreaded libintl_recursive_lock_destroy_multithreaded
-+#define glthread_recursive_lock_destroy_func libintl_recursive_lock_destroy_func
-+#define glthread_once_func libintl_once_func
-+#define glthread_once_singlethreaded libintl_once_singlethreaded
-+#define glthread_once_multithreaded libintl_once_multithreaded
-+
-+
-+
-+/* On Windows, variables that may be in a DLL must be marked specially. */
-+#if (defined _MSC_VER && defined _DLL) && !defined IN_RELOCWRAPPER
-+# define DLL_VARIABLE __declspec (dllimport)
-+#else
-+# define DLL_VARIABLE
-+#endif
-+
-+/* Extra OS/2 (emx+gcc) defines. */
-+#ifdef __EMX__
-+# include "intl/os2compat.h"
-+#endif
-+#endif
---- misc/gettext-0.18.1.1/gettext-runtime/intl/libgnuintl.h Wed Aug 20 14:33:55 2008
-+++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/libgnuintl.h Wed Aug 20 14:26:42 2008
-@@ -1,1 +1,477 @@
--dummy
-+/* Message catalogs for internationalization.
-+ Copyright (C) 1995-1997, 2000-2010 Free Software Foundation, Inc.
-+
-+ This program is free software; you can redistribute it and/or modify it
-+ under the terms of the GNU Library General Public License as published
-+ by the Free Software Foundation; either version 2, or (at your option)
-+ any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Library General Public License for more details.
-+
-+ You should have received a copy of the GNU Library General Public
-+ License along with this program; if not, write to the Free Software
-+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
-+ USA. */
-+
-+#ifndef _LIBINTL_H
-+#define _LIBINTL_H 1
-+
-+#if 0 && BUILDING_LIBINTL
-+#define LIBINTL_DLL_EXPORTED __attribute__((__visibility__("default")))
-+#elif defined _MSC_VER && BUILDING_DLL
-+# define LIBINTL_DLL_EXPORTED __declspec(dllexport)
-+#else
-+#define LIBINTL_DLL_EXPORTED
-+#endif
-+
-+#include <locale.h>
-+#if (defined __APPLE__ && defined __MACH__)
-+# include <xlocale.h>
-+#endif
-+
-+/* The LC_MESSAGES locale category is the category used by the functions
-+ gettext() and dgettext(). It is specified in POSIX, but not in ANSI C.
-+ On systems that don't define it, use an arbitrary value instead.
-+ On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)
-+ then includes <libintl.h> (i.e. this file!) and then only defines
-+ LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES
-+ in this case. */
-+#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))
-+# define LC_MESSAGES 1729
-+#endif
-+
-+/* We define an additional symbol to signal that we use the GNU
-+ implementation of gettext. */
-+#define __USE_GNU_GETTEXT 1
-+
-+/* Provide information about the supported file formats. Returns the
-+ maximum minor revision number supported for a given major revision. */
-+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
-+ ((major) == 0 || (major) == 1 ? 1 : -1)
-+
-+/* Resolve a platform specific conflict on DJGPP. GNU gettext takes
-+ precedence over _conio_gettext. */
-+#ifdef __DJGPP__
-+# undef gettext
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+
-+/* Version number: (major<<16) + (minor<<8) + subminor */
-+#define LIBINTL_VERSION 0x001201
-+extern LIBINTL_DLL_EXPORTED
-+#ifdef _WIN32
-+ __declspec (dllimport)
-+#endif
-+ int libintl_version;
-+
-+
-+/* We redirect the functions to those prefixed with "libintl_". This is
-+ necessary, because some systems define gettext/textdomain/... in the C
-+ library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).
-+ If we used the unprefixed names, there would be cases where the
-+ definition in the C library would override the one in the libintl.so
-+ shared library. Recall that on ELF systems, the symbols are looked
-+ up in the following order:
-+ 1. in the executable,
-+ 2. in the shared libraries specified on the link command line, in order,
-+ 3. in the dependencies of the shared libraries specified on the link
-+ command line,
-+ 4. in the dlopen()ed shared libraries, in the order in which they were
-+ dlopen()ed.
-+ The definition in the C library would override the one in libintl.so if
-+ either
-+ * -lc is given on the link command line and -lintl isn't, or
-+ * -lc is given on the link command line before -lintl, or
-+ * libintl.so is a dependency of a dlopen()ed shared library but not
-+ linked to the executable at link time.
-+ Since Solaris gettext() behaves differently than GNU gettext(), this
-+ would be unacceptable.
-+
-+ The redirection happens by default through macros in C, so that &gettext
-+ is independent of the compilation unit, but through inline functions in
-+ C++, in order not to interfere with the name mangling of class fields or
-+ class methods called 'gettext'. */
-+
-+/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.
-+ If he doesn't, we choose the method. A third possible method is
-+ _INTL_REDIRECT_ASM, supported only by GCC. */
-+#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)
-+# if defined __GNUC__ && __GNUC__ >= 2 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1) && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus)
-+# define _INTL_REDIRECT_ASM
-+# else
-+# ifdef __cplusplus
-+# define _INTL_REDIRECT_INLINE
-+# else
-+# define _INTL_REDIRECT_MACROS
-+# endif
-+# endif
-+#endif
-+/* Auxiliary macros. */
-+#ifdef _INTL_REDIRECT_ASM
-+# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))
-+# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring
-+# define _INTL_STRINGIFY(prefix) #prefix
-+#else
-+# define _INTL_ASM(cname)
-+#endif
-+
-+/* _INTL_MAY_RETURN_STRING_ARG(n) declares that the given function may return
-+ its n-th argument literally. This enables GCC to warn for example about
-+ printf (gettext ("foo %y")). */
-+#if defined __GNUC__ && __GNUC__ >= 3 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1 && defined __cplusplus)
-+# define _INTL_MAY_RETURN_STRING_ARG(n) __attribute__ ((__format_arg__ (n)))
-+#else
-+# define _INTL_MAY_RETURN_STRING_ARG(n)
-+#endif
-+
-+/* Look up MSGID in the current default message catalog for the current
-+ LC_MESSAGES locale. If not found, returns MSGID itself (the default
-+ text). */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_gettext (const char *__msgid)
-+ _INTL_MAY_RETURN_STRING_ARG (1);
-+static inline char *gettext (const char *__msgid)
-+{
-+ return libintl_gettext (__msgid);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define gettext libintl_gettext
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *gettext (const char *__msgid)
-+ _INTL_ASM (libintl_gettext)
-+ _INTL_MAY_RETURN_STRING_ARG (1);
-+#endif
-+
-+/* Look up MSGID in the DOMAINNAME message catalog for the current
-+ LC_MESSAGES locale. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_dgettext (const char *__domainname, const char *__msgid)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+static inline char *dgettext (const char *__domainname, const char *__msgid)
-+{
-+ return libintl_dgettext (__domainname, __msgid);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dgettext libintl_dgettext
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *dgettext (const char *__domainname, const char *__msgid)
-+ _INTL_ASM (libintl_dgettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+#endif
-+
-+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
-+ locale. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_dcgettext (const char *__domainname, const char *__msgid,
-+ int __category)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+static inline char *dcgettext (const char *__domainname, const char *__msgid,
-+ int __category)
-+{
-+ return libintl_dcgettext (__domainname, __msgid, __category);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dcgettext libintl_dcgettext
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *dcgettext (const char *__domainname, const char *__msgid,
-+ int __category)
-+ _INTL_ASM (libintl_dcgettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+#endif
-+
-+
-+/* Similar to `gettext' but select the plural form corresponding to the
-+ number N. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_ngettext (const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
-+static inline char *ngettext (const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+{
-+ return libintl_ngettext (__msgid1, __msgid2, __n);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define ngettext libintl_ngettext
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *ngettext (const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+ _INTL_ASM (libintl_ngettext)
-+ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
-+#endif
-+
-+/* Similar to `dgettext' but select the plural form corresponding to the
-+ number N. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_dngettext (const char *__domainname, const char *__msgid1,
-+ const char *__msgid2, unsigned long int __n)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+static inline char *dngettext (const char *__domainname, const char *__msgid1,
-+ const char *__msgid2, unsigned long int __n)
-+{
-+ return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dngettext libintl_dngettext
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *dngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+ _INTL_ASM (libintl_dngettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+#endif
-+
-+/* Similar to `dcgettext' but select the plural form corresponding to the
-+ number N. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_dcngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n, int __category)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+static inline char *dcngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n, int __category)
-+{
-+ return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dcngettext libintl_dcngettext
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *dcngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n, int __category)
-+ _INTL_ASM (libintl_dcngettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+#endif
-+
-+
-+
-+/* Set the current default message catalog to DOMAINNAME.
-+ If DOMAINNAME is null, return the current default.
-+ If DOMAINNAME is "", reset to the default of "messages". */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_textdomain (const char *__domainname);
-+static inline char *textdomain (const char *__domainname)
-+{
-+ return libintl_textdomain (__domainname);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define textdomain libintl_textdomain
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *textdomain (const char *__domainname)
-+ _INTL_ASM (libintl_textdomain);
-+#endif
-+
-+/* Specify that the DOMAINNAME message catalog will be found
-+ in DIRNAME rather than in the system locale data base. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_bindtextdomain (const char *__domainname,
-+ const char *__dirname);
-+static inline char *bindtextdomain (const char *__domainname,
-+ const char *__dirname)
-+{
-+ return libintl_bindtextdomain (__domainname, __dirname);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define bindtextdomain libintl_bindtextdomain
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *bindtextdomain (const char *__domainname, const char *__dirname)
-+ _INTL_ASM (libintl_bindtextdomain);
-+#endif
-+
-+/* Specify the character encoding in which the messages from the
-+ DOMAINNAME message catalog will be returned. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern LIBINTL_DLL_EXPORTED char *libintl_bind_textdomain_codeset (const char *__domainname,
-+ const char *__codeset);
-+static inline char *bind_textdomain_codeset (const char *__domainname,
-+ const char *__codeset)
-+{
-+ return libintl_bind_textdomain_codeset (__domainname, __codeset);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define bind_textdomain_codeset libintl_bind_textdomain_codeset
-+#endif
-+extern LIBINTL_DLL_EXPORTED char *bind_textdomain_codeset (const char *__domainname,
-+ const char *__codeset)
-+ _INTL_ASM (libintl_bind_textdomain_codeset);
-+#endif
-+
-+
-+
-+/* Support for format strings with positions in *printf(), following the
-+ POSIX/XSI specification.
-+ Note: These replacements for the *printf() functions are visible only
-+ in source files that #include <libintl.h> or #include "gettext.h".
-+ Packages that use *printf() in source files that don't refer to _()
-+ or gettext() but for which the format string could be the return value
-+ of _() or gettext() need to add this #include. Oh well. */
-+
-+#if !(defined __APPLE__ && defined __MACH__)
-+
-+#include <stdio.h>
-+#include <stddef.h>
-+
-+/* Get va_list. */
-+#if (defined __STDC__ && __STDC__) || defined __cplusplus || defined _MSC_VER
-+# include <stdarg.h>
-+#else
-+# include <varargs.h>
-+#endif
-+
-+#if !(defined fprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef fprintf
-+#define fprintf libintl_fprintf
-+extern LIBINTL_DLL_EXPORTED int fprintf (FILE *, const char *, ...);
-+#endif
-+#if !(defined vfprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vfprintf
-+#define vfprintf libintl_vfprintf
-+extern LIBINTL_DLL_EXPORTED int vfprintf (FILE *, const char *, va_list);
-+#endif
-+
-+#if !(defined printf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef printf
-+#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__
-+/* Don't break __attribute__((format(printf,M,N))).
-+ This redefinition is only possible because the libc in NetBSD, Cygwin,
-+ mingw does not have a function __printf__.
-+ Alternatively, we could have done this redirection only when compiling with
-+ __GNUC__, together with a symbol redirection:
-+ extern LIBINTL_DLL_EXPORTED int printf (const char *, ...)
-+ __asm__ (#__USER_LABEL_PREFIX__ "libintl_printf");
-+ But doing it now would introduce a binary incompatibility with already
-+ distributed versions of libintl on these systems. */
-+# define libintl_printf __printf__
-+#endif
-+#define printf libintl_printf
-+extern LIBINTL_DLL_EXPORTED int printf (const char *, ...);
-+#endif
-+#if !(defined vprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vprintf
-+#define vprintf libintl_vprintf
-+extern LIBINTL_DLL_EXPORTED int vprintf (const char *, va_list);
-+#endif
-+
-+#if !(defined sprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef sprintf
-+#define sprintf libintl_sprintf
-+extern LIBINTL_DLL_EXPORTED int sprintf (char *, const char *, ...);
-+#endif
-+#if !(defined vsprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vsprintf
-+#define vsprintf libintl_vsprintf
-+extern LIBINTL_DLL_EXPORTED int vsprintf (char *, const char *, va_list);
-+#endif
-+
-+#if 0
-+
-+#if !(defined snprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef snprintf
-+#define snprintf libintl_snprintf
-+extern LIBINTL_DLL_EXPORTED int snprintf (char *, size_t, const char *, ...);
-+#endif
-+#if !(defined vsnprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vsnprintf
-+#define vsnprintf libintl_vsnprintf
-+extern LIBINTL_DLL_EXPORTED int vsnprintf (char *, size_t, const char *, va_list);
-+#endif
-+
-+#endif
-+
-+#if 0
-+
-+#if !(defined asprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef asprintf
-+#define asprintf libintl_asprintf
-+extern LIBINTL_DLL_EXPORTED int asprintf (char **, const char *, ...);
-+#endif
-+#if !(defined vasprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vasprintf
-+#define vasprintf libintl_vasprintf
-+extern LIBINTL_DLL_EXPORTED int vasprintf (char **, const char *, va_list);
-+#endif
-+
-+#endif
-+
-+#if 0
-+
-+#undef fwprintf
-+#define fwprintf libintl_fwprintf
-+extern LIBINTL_DLL_EXPORTED int fwprintf (FILE *, const wchar_t *, ...);
-+#undef vfwprintf
-+#define vfwprintf libintl_vfwprintf
-+extern LIBINTL_DLL_EXPORTED int vfwprintf (FILE *, const wchar_t *, va_list);
-+
-+#undef wprintf
-+#define wprintf libintl_wprintf
-+extern LIBINTL_DLL_EXPORTED int wprintf (const wchar_t *, ...);
-+#undef vwprintf
-+#define vwprintf libintl_vwprintf
-+extern LIBINTL_DLL_EXPORTED int vwprintf (const wchar_t *, va_list);
-+
-+#undef swprintf
-+#define swprintf libintl_swprintf
-+extern LIBINTL_DLL_EXPORTED int swprintf (wchar_t *, size_t, const wchar_t *, ...);
-+#undef vswprintf
-+#define vswprintf libintl_vswprintf
-+extern LIBINTL_DLL_EXPORTED int vswprintf (wchar_t *, size_t, const wchar_t *, va_list);
-+
-+#endif
-+
-+#endif
-+
-+
-+/* Support for the locale chosen by the user. */
-+#if (defined __APPLE__ && defined __MACH__) || defined _WIN32 || defined __WIN32__ || defined __CYGWIN__
-+
-+#undef setlocale
-+#define setlocale libintl_setlocale
-+extern LIBINTL_DLL_EXPORTED char *setlocale (int, const char *);
-+
-+#if (defined __APPLE__ && defined __MACH__)
-+
-+#undef newlocale
-+#define newlocale libintl_newlocale
-+extern LIBINTL_DLL_EXPORTED locale_t newlocale (int, const char *, locale_t);
-+
-+#endif
-+
-+#endif
-+
-+
-+/* Support for relocatable packages. */
-+
-+/* Sets the original and the current installation prefix of the package.
-+ Relocation simply replaces a pathname starting with the original prefix
-+ by the corresponding pathname with the current prefix instead. Both
-+ prefixes should be directory names without trailing slash (i.e. use ""
-+ instead of "/"). */
-+#define libintl_set_relocation_prefix libintl_set_relocation_prefix
-+extern LIBINTL_DLL_EXPORTED void
-+ libintl_set_relocation_prefix (const char *orig_prefix,
-+ const char *curr_prefix);
-+
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+
-+#endif /* libintl.h */
-+
---- misc/gettext-0.18.1.1/gettext-runtime/intl/libintl.h Wed Aug 20 14:33:55 2008
-+++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/libintl.h Wed Aug 20 14:26:42 2008
-@@ -1 +1,465 @@
--dummy
-+/* Message catalogs for internationalization.
-+ Copyright (C) 1995-1997, 2000-2010 Free Software Foundation, Inc.
-+
-+ This program is free software; you can redistribute it and/or modify it
-+ under the terms of the GNU Library General Public License as published
-+ by the Free Software Foundation; either version 2, or (at your option)
-+ any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Library General Public License for more details.
-+
-+ You should have received a copy of the GNU Library General Public
-+ License along with this program; if not, write to the Free Software
-+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
-+ USA. */
-+
-+#ifndef _LIBINTL_H
-+#define _LIBINTL_H 1
-+
-+#include <locale.h>
-+#if (defined __APPLE__ && defined __MACH__)
-+# include <xlocale.h>
-+#endif
-+
-+/* The LC_MESSAGES locale category is the category used by the functions
-+ gettext() and dgettext(). It is specified in POSIX, but not in ANSI C.
-+ On systems that don't define it, use an arbitrary value instead.
-+ On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)
-+ then includes <libintl.h> (i.e. this file!) and then only defines
-+ LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES
-+ in this case. */
-+#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))
-+# define LC_MESSAGES 1729
-+#endif
-+
-+/* We define an additional symbol to signal that we use the GNU
-+ implementation of gettext. */
-+#define __USE_GNU_GETTEXT 1
-+
-+/* Provide information about the supported file formats. Returns the
-+ maximum minor revision number supported for a given major revision. */
-+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
-+ ((major) == 0 || (major) == 1 ? 1 : -1)
-+
-+/* Resolve a platform specific conflict on DJGPP. GNU gettext takes
-+ precedence over _conio_gettext. */
-+#ifdef __DJGPP__
-+# undef gettext
-+#endif
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif
-+
-+
-+/* Version number: (major<<16) + (minor<<8) + subminor */
-+#define LIBINTL_VERSION 0x001201
-+extern int libintl_version;
-+
-+
-+/* We redirect the functions to those prefixed with "libintl_". This is
-+ necessary, because some systems define gettext/textdomain/... in the C
-+ library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).
-+ If we used the unprefixed names, there would be cases where the
-+ definition in the C library would override the one in the libintl.so
-+ shared library. Recall that on ELF systems, the symbols are looked
-+ up in the following order:
-+ 1. in the executable,
-+ 2. in the shared libraries specified on the link command line, in order,
-+ 3. in the dependencies of the shared libraries specified on the link
-+ command line,
-+ 4. in the dlopen()ed shared libraries, in the order in which they were
-+ dlopen()ed.
-+ The definition in the C library would override the one in libintl.so if
-+ either
-+ * -lc is given on the link command line and -lintl isn't, or
-+ * -lc is given on the link command line before -lintl, or
-+ * libintl.so is a dependency of a dlopen()ed shared library but not
-+ linked to the executable at link time.
-+ Since Solaris gettext() behaves differently than GNU gettext(), this
-+ would be unacceptable.
-+
-+ The redirection happens by default through macros in C, so that &gettext
-+ is independent of the compilation unit, but through inline functions in
-+ C++, in order not to interfere with the name mangling of class fields or
-+ class methods called 'gettext'. */
-+
-+/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.
-+ If he doesn't, we choose the method. A third possible method is
-+ _INTL_REDIRECT_ASM, supported only by GCC. */
-+#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)
-+# if defined __GNUC__ && __GNUC__ >= 2 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1) && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus)
-+# define _INTL_REDIRECT_ASM
-+# else
-+# ifdef __cplusplus
-+# define _INTL_REDIRECT_INLINE
-+# else
-+# define _INTL_REDIRECT_MACROS
-+# endif
-+# endif
-+#endif
-+/* Auxiliary macros. */
-+#ifdef _INTL_REDIRECT_ASM
-+# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))
-+# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring
-+# define _INTL_STRINGIFY(prefix) #prefix
-+#else
-+# define _INTL_ASM(cname)
-+#endif
-+
-+/* _INTL_MAY_RETURN_STRING_ARG(n) declares that the given function may return
-+ its n-th argument literally. This enables GCC to warn for example about
-+ printf (gettext ("foo %y")). */
-+#if defined __GNUC__ && __GNUC__ >= 3 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1 && defined __cplusplus)
-+# define _INTL_MAY_RETURN_STRING_ARG(n) __attribute__ ((__format_arg__ (n)))
-+#else
-+# define _INTL_MAY_RETURN_STRING_ARG(n)
-+#endif
-+
-+/* Look up MSGID in the current default message catalog for the current
-+ LC_MESSAGES locale. If not found, returns MSGID itself (the default
-+ text). */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_gettext (const char *__msgid)
-+ _INTL_MAY_RETURN_STRING_ARG (1);
-+static inline char *gettext (const char *__msgid)
-+{
-+ return libintl_gettext (__msgid);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define gettext libintl_gettext
-+#endif
-+extern char *gettext (const char *__msgid)
-+ _INTL_ASM (libintl_gettext)
-+ _INTL_MAY_RETURN_STRING_ARG (1);
-+#endif
-+
-+/* Look up MSGID in the DOMAINNAME message catalog for the current
-+ LC_MESSAGES locale. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_dgettext (const char *__domainname, const char *__msgid)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+static inline char *dgettext (const char *__domainname, const char *__msgid)
-+{
-+ return libintl_dgettext (__domainname, __msgid);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dgettext libintl_dgettext
-+#endif
-+extern char *dgettext (const char *__domainname, const char *__msgid)
-+ _INTL_ASM (libintl_dgettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+#endif
-+
-+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
-+ locale. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_dcgettext (const char *__domainname, const char *__msgid,
-+ int __category)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+static inline char *dcgettext (const char *__domainname, const char *__msgid,
-+ int __category)
-+{
-+ return libintl_dcgettext (__domainname, __msgid, __category);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dcgettext libintl_dcgettext
-+#endif
-+extern char *dcgettext (const char *__domainname, const char *__msgid,
-+ int __category)
-+ _INTL_ASM (libintl_dcgettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2);
-+#endif
-+
-+
-+/* Similar to `gettext' but select the plural form corresponding to the
-+ number N. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_ngettext (const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
-+static inline char *ngettext (const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+{
-+ return libintl_ngettext (__msgid1, __msgid2, __n);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define ngettext libintl_ngettext
-+#endif
-+extern char *ngettext (const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+ _INTL_ASM (libintl_ngettext)
-+ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
-+#endif
-+
-+/* Similar to `dgettext' but select the plural form corresponding to the
-+ number N. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_dngettext (const char *__domainname, const char *__msgid1,
-+ const char *__msgid2, unsigned long int __n)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+static inline char *dngettext (const char *__domainname, const char *__msgid1,
-+ const char *__msgid2, unsigned long int __n)
-+{
-+ return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dngettext libintl_dngettext
-+#endif
-+extern char *dngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n)
-+ _INTL_ASM (libintl_dngettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+#endif
-+
-+/* Similar to `dcgettext' but select the plural form corresponding to the
-+ number N. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_dcngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n, int __category)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+static inline char *dcngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n, int __category)
-+{
-+ return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define dcngettext libintl_dcngettext
-+#endif
-+extern char *dcngettext (const char *__domainname,
-+ const char *__msgid1, const char *__msgid2,
-+ unsigned long int __n, int __category)
-+ _INTL_ASM (libintl_dcngettext)
-+ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
-+#endif
-+
-+
-+
-+/* Set the current default message catalog to DOMAINNAME.
-+ If DOMAINNAME is null, return the current default.
-+ If DOMAINNAME is "", reset to the default of "messages". */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_textdomain (const char *__domainname);
-+static inline char *textdomain (const char *__domainname)
-+{
-+ return libintl_textdomain (__domainname);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define textdomain libintl_textdomain
-+#endif
-+extern char *textdomain (const char *__domainname)
-+ _INTL_ASM (libintl_textdomain);
-+#endif
-+
-+/* Specify that the DOMAINNAME message catalog will be found
-+ in DIRNAME rather than in the system locale data base. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_bindtextdomain (const char *__domainname,
-+ const char *__dirname);
-+static inline char *bindtextdomain (const char *__domainname,
-+ const char *__dirname)
-+{
-+ return libintl_bindtextdomain (__domainname, __dirname);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define bindtextdomain libintl_bindtextdomain
-+#endif
-+extern char *bindtextdomain (const char *__domainname, const char *__dirname)
-+ _INTL_ASM (libintl_bindtextdomain);
-+#endif
-+
-+/* Specify the character encoding in which the messages from the
-+ DOMAINNAME message catalog will be returned. */
-+#ifdef _INTL_REDIRECT_INLINE
-+extern char *libintl_bind_textdomain_codeset (const char *__domainname,
-+ const char *__codeset);
-+static inline char *bind_textdomain_codeset (const char *__domainname,
-+ const char *__codeset)
-+{
-+ return libintl_bind_textdomain_codeset (__domainname, __codeset);
-+}
-+#else
-+#ifdef _INTL_REDIRECT_MACROS
-+# define bind_textdomain_codeset libintl_bind_textdomain_codeset
-+#endif
-+extern char *bind_textdomain_codeset (const char *__domainname,
-+ const char *__codeset)
-+ _INTL_ASM (libintl_bind_textdomain_codeset);
-+#endif
-+
-+
-+
-+/* Support for format strings with positions in *printf(), following the
-+ POSIX/XSI specification.
-+ Note: These replacements for the *printf() functions are visible only
-+ in source files that #include <libintl.h> or #include "gettext.h".
-+ Packages that use *printf() in source files that don't refer to _()
-+ or gettext() but for which the format string could be the return value
-+ of _() or gettext() need to add this #include. Oh well. */
-+
-+#if !(defined __APPLE__ && defined __MACH__)
-+
-+#include <stdio.h>
-+#include <stddef.h>
-+
-+/* Get va_list. */
-+#if (defined __STDC__ && __STDC__) || defined __cplusplus || defined _MSC_VER
-+# include <stdarg.h>
-+#else
-+# include <varargs.h>
-+#endif
-+
-+#if !(defined fprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef fprintf
-+#define fprintf libintl_fprintf
-+extern int fprintf (FILE *, const char *, ...);
-+#endif
-+#if !(defined vfprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vfprintf
-+#define vfprintf libintl_vfprintf
-+extern int vfprintf (FILE *, const char *, va_list);
-+#endif
-+
-+#if !(defined printf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef printf
-+#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__
-+/* Don't break __attribute__((format(printf,M,N))).
-+ This redefinition is only possible because the libc in NetBSD, Cygwin,
-+ mingw does not have a function __printf__.
-+ Alternatively, we could have done this redirection only when compiling with
-+ __GNUC__, together with a symbol redirection:
-+ extern int printf (const char *, ...)
-+ __asm__ (#__USER_LABEL_PREFIX__ "libintl_printf");
-+ But doing it now would introduce a binary incompatibility with already
-+ distributed versions of libintl on these systems. */
-+# define libintl_printf __printf__
-+#endif
-+#define printf libintl_printf
-+extern int printf (const char *, ...);
-+#endif
-+#if !(defined vprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vprintf
-+#define vprintf libintl_vprintf
-+extern int vprintf (const char *, va_list);
-+#endif
-+
-+#if !(defined sprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef sprintf
-+#define sprintf libintl_sprintf
-+extern int sprintf (char *, const char *, ...);
-+#endif
-+#if !(defined vsprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vsprintf
-+#define vsprintf libintl_vsprintf
-+extern int vsprintf (char *, const char *, va_list);
-+#endif
-+
-+#if 0
-+
-+#if !(defined snprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef snprintf
-+#define snprintf libintl_snprintf
-+extern int snprintf (char *, size_t, const char *, ...);
-+#endif
-+#if !(defined vsnprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vsnprintf
-+#define vsnprintf libintl_vsnprintf
-+extern int vsnprintf (char *, size_t, const char *, va_list);
-+#endif
-+
-+#endif
-+
-+#if 0
-+
-+#if !(defined asprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef asprintf
-+#define asprintf libintl_asprintf
-+extern int asprintf (char **, const char *, ...);
-+#endif
-+#if !(defined vasprintf && defined _GL_STDIO_H) /* don't override gnulib */
-+#undef vasprintf
-+#define vasprintf libintl_vasprintf
-+extern int vasprintf (char **, const char *, va_list);
-+#endif
-+
-+#endif
-+
-+#if 0
-+
-+#undef fwprintf
-+#define fwprintf libintl_fwprintf
-+extern int fwprintf (FILE *, const wchar_t *, ...);
-+#undef vfwprintf
-+#define vfwprintf libintl_vfwprintf
-+extern int vfwprintf (FILE *, const wchar_t *, va_list);
-+
-+#undef wprintf
-+#define wprintf libintl_wprintf
-+extern int wprintf (const wchar_t *, ...);
-+#undef vwprintf
-+#define vwprintf libintl_vwprintf
-+extern int vwprintf (const wchar_t *, va_list);
-+
-+#undef swprintf
-+#define swprintf libintl_swprintf
-+extern int swprintf (wchar_t *, size_t, const wchar_t *, ...);
-+#undef vswprintf
-+#define vswprintf libintl_vswprintf
-+extern int vswprintf (wchar_t *, size_t, const wchar_t *, va_list);
-+
-+#endif
-+
-+#endif
-+
-+
-+/* Support for the locale chosen by the user. */
-+#if (defined __APPLE__ && defined __MACH__) || defined _WIN32 || defined __WIN32__ || defined __CYGWIN__
-+
-+#undef setlocale
-+#define setlocale libintl_setlocale
-+extern char *setlocale (int, const char *);
-+
-+#if (defined __APPLE__ && defined __MACH__)
-+
-+#undef newlocale
-+#define newlocale libintl_newlocale
-+extern locale_t newlocale (int, const char *, locale_t);
-+
-+#endif
-+
-+#endif
-+
-+
-+/* Support for relocatable packages. */
-+
-+/* Sets the original and the current installation prefix of the package.
-+ Relocation simply replaces a pathname starting with the original prefix
-+ by the corresponding pathname with the current prefix instead. Both
-+ prefixes should be directory names without trailing slash (i.e. use ""
-+ instead of "/"). */
-+#define libintl_set_relocation_prefix libintl_set_relocation_prefix
-+extern void
-+ libintl_set_relocation_prefix (const char *orig_prefix,
-+ const char *curr_prefix);
-+
-+
-+#ifdef __cplusplus
-+}
-+#endif
-+
-+#endif /* libintl.h */
-+
diff --git a/gettext/gettext-0.18.1.1.stpncpy.patch b/gettext/gettext-0.18.1.1.stpncpy.patch
deleted file mode 100644
index a9400867a53e..000000000000
--- a/gettext/gettext-0.18.1.1.stpncpy.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- misc/gettext-0.18.1.1/gettext-tools/configure 2010-06-06 22:12:20.000000000 +0200
-+++ misc/build/gettext-0.18.1.1/gettext-tools/configure 2011-08-12 22:46:06.000000000 +0200
-@@ -40606,7 +40606,9 @@
- #include <stdlib.h>
- #include <string.h> /* for strcpy */
- /* The stpncpy prototype is missing in <string.h> on AIX 4. */
-+#if !defined stpncpy /* see <https://savannah.gnu.org/bugs/index.php?33999> */
- extern char *stpncpy (char *dest, const char *src, size_t n);
-+#endif
- int main () {
- const char *src = "Hello";
- char dest[10];
diff --git a/gettext/makefile.mk b/gettext/makefile.mk
deleted file mode 100644
index 270ac6cc769e..000000000000
--- a/gettext/makefile.mk
+++ /dev/null
@@ -1,129 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=gettext
-TARGET=so_gettext
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(SYSTEM_GETTEXT)" == "YES"
-all:
- @echo "An already available installation of gettext should exist on your system."
- @echo "Therefore the version provided here does not need to be built in addition."
-.ENDIF
-
-# --- Files --------------------------------------------------------
-
-GETTEXTVERSION=0.18.1.1
-
-TARFILE_NAME=$(PRJNAME)-$(GETTEXTVERSION)
-TARFILE_MD5=3dd55b952826d2b32f51308f2f91aa89
-
-# see <https://savannah.gnu.org/bugs/index.php?33999>
-PATCH_FILES=gettext-0.18.1.1.stpncpy.patch
-
-
-.IF "$(OS)"=="MACOSX"
-
-CONFIGURE_DIR=
-CONFIGURE_ACTION=./configure --prefix=/@.__________________________________________________$(EXTRPATH) $(eq,$(VERBOSE),$(NULL) --enable-silent-rules --disable-silent-rules)
-CONFIGURE_FLAGS=--disable-dependeny-tracking --disable-acl --disable-curses --without-emacs --without-git --disable-java
-CONFIGURE_FLAGS+=CPPFLAGS="$(EXTRA_CDEFS)" CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS)" CXXFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS)"
-
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+= --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-.ENDIF
-
-BUILD_ACTION=$(GNUMAKE)
-BUILD_DIR=$(CONFIGURE_DIR)
-
-OUT2LIB+=gettext-tools/intl/.libs/libintl.*.dylib
-OUT2LIB+=gettext-runtime/libasprintf/.libs/libasprintf.*.dylib
-OUT2LIB+=gettext-tools/gnulib-lib/.libs/libgettextlib-*.dylib
-OUT2LIB+=gettext-tools/src/.libs/libgettextsrc-*.dylib
-OUT2LIB+=gettext-tools/libgettextpo/.libs/libgettextpo.*.dylib
-
-OUT2INC+=gettext-tools/intl/libintl.h
-OUT2INC+=gettext-runtime/libasprintf/autosprintf.h
-OUT2INC+=gettext-tools/libgettextpo/gettext-po.h
-
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgattrib
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgcat
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgcmp
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgcomm
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgconv
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgen
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgexec
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgfilter
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgfmt
-OUT2BIN_NONE+=gettext-tools/src/.libs/msggrep
-OUT2BIN_NONE+=gettext-tools/src/.libs/msginit
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgmerge
-OUT2BIN_NONE+=gettext-tools/src/.libs/msgunfmt
-OUT2BIN_NONE+=gettext-tools/src/.libs/msguniq
-OUT2BIN_NONE+=gettext-tools/src/.libs/urlget
-OUT2BIN_NONE+=gettext-tools/src/.libs/xgettext
-
-.ELIF "$(OS)"=="IOS"
-
-BUILD_DIR=gettext-runtime/intl
-BUILD_ACTION=dmake
-.IF "$(VERBOSE)"!=""
-BUILD_ACTION+=VERBOSE=t
-.ENDIF
-PATCH_FILES=gettext-0.18.1.1.patch
-ADDITIONAL_FILES=\
- gettext-runtime/intl/makefile.mk \
- gettext-runtime/intl/libgnuintl.h \
- gettext-runtime/intl/libintl.h \
- gettext-runtime/config.h
-OUT2INC+=gettext-runtime/intl/libintl.h
-
-.ELIF "$(OS)"=="WNT"
-
-BUILD_DIR=gettext-runtime/intl
-BUILD_ACTION=dmake
-PATCH_FILES=gettext-0.18.1.1.patch
-ADDITIONAL_FILES=\
- gettext-runtime/intl/makefile.mk \
- gettext-runtime/intl/libgnuintl.h \
- gettext-runtime/intl/libintl.h \
- gettext-runtime/config.h
-OUT2INC+=gettext-runtime/intl/libintl.h
-.ELSE
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
-
diff --git a/gettext/prj/build.lst b/gettext/prj/build.lst
deleted file mode 100644
index cf38e63c826f..000000000000
--- a/gettext/prj/build.lst
+++ /dev/null
@@ -1,3 +0,0 @@
-gt gettext : sal soltools NULL
-gt gettext usr1 - all gt_mkout NULL
-gt gettext nmake - all gt_gettext NULL
diff --git a/gettext/prj/d.lst b/gettext/prj/d.lst
deleted file mode 100644
index 811b4b1c60fb..000000000000
--- a/gettext/prj/d.lst
+++ /dev/null
@@ -1,31 +0,0 @@
-mkdir: %_DEST%\inc\external
-..\%__SRC%\inc\*.h %_DEST%\inc\external\*.h
-..\%__SRC%\lib\libasprintf.0.dylib %_DEST%\lib\libasprintf.0.dylib
-symlink: %_DEST%\lib\libasprintf.0.dylib %_DEST%\lib\libasprintf.dylib
-..\%__SRC%\lib\libgettextpo.0.dylib %_DEST%\lib\libgettextpo.0.dylib
-symlink: %_DEST%\lib\libgettextpo.0.dylib %_DEST%\lib\libgettextpo.dylib
-..\%__SRC%\lib\libgettextsrc-0.18.1.dylib %_DEST%\lib\libgettextsrc-0.18.1.dylib
-symlink: %_DEST%\lib\libgettextsrc-0.18.1.dylib %_DEST%\lib\libgettextsrc.dylib
-..\%__SRC%\lib\libintl.8.dylib %_DEST%\lib\libintl.8.dylib
-symlink: %_DEST%\lib\libintl.8.dylib %_DEST%\lib\libintl.dylib
-..\%__SRC%\lib\libgettextlib-0.18.1.dylib %_DEST%\lib\libgettextlib-0.18.1.dylib
-symlink: %_DEST%\lib\libgettextlib-0.18.1.dylib %_DEST%\lib\libgettextlib.dylib
-..\%__SRC%\lib\libintl.a %_DEST%\lib\libintl.a
-..\%__SRC%\bin\*.dll %_DEST%\bin
-..\%__SRC%\bin\msgattrib %_DEST%\bin\msgattrib
-..\%__SRC%\bin\msgcat %_DEST%\bin\msgcat
-..\%__SRC%\bin\msgcmp %_DEST%\bin\msgcmp
-..\%__SRC%\bin\msgcomm %_DEST%\bin\msgcomm
-..\%__SRC%\bin\msgconv %_DEST%\bin\msgconv
-..\%__SRC%\bin\msgen %_DEST%\bin\msgen
-..\%__SRC%\bin\msgexec %_DEST%\bin\msgexec
-..\%__SRC%\bin\msgfilter %_DEST%\bin\msgfilter
-..\%__SRC%\bin\msgfmt %_DEST%\bin\msgfmt
-..\%__SRC%\bin\msggrep %_DEST%\bin\msggrep
-..\%__SRC%\bin\msginit %_DEST%\bin\msginit
-..\%__SRC%\bin\msgmerge %_DEST%\bin\msgmerge
-..\%__SRC%\bin\msgunfmt %_DEST%\bin\msgunfmt
-..\%__SRC%\bin\msguniq %_DEST%\bin\msguniq
-..\%__SRC%\bin\urlget %_DEST%\bin\urlget
-..\%__SRC%\bin\xgettext %_DEST%\bin\xgettext
-..\%__SRC%\lib\iintl_t1.lib %_DEST%\lib\intl.lib
diff --git a/gettext/prj/dmake b/gettext/prj/dmake
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/gettext/prj/dmake
+++ /dev/null
diff --git a/glib/README b/glib/README
deleted file mode 100644
index 80272cbc9193..000000000000
--- a/glib/README
+++ /dev/null
@@ -1,4 +0,0 @@
-GLib is a general-purpose utility library, which provides many useful data types, macros,
-type conversions, string utilities, file utilities, a main loop abstraction, and so on.
-
-From [ http://www.gtk.org/api/2.6/glib/glib.html ] \ No newline at end of file
diff --git a/glib/glib-2.28.1-win32-2.patch b/glib/glib-2.28.1-win32-2.patch
deleted file mode 100644
index ee4b868f6b1a..000000000000
--- a/glib/glib-2.28.1-win32-2.patch
+++ /dev/null
@@ -1,553 +0,0 @@
---- misc/glib-2.28.1/build/win32/make.msc 2011-04-01 16:52:15.676157900 +0200
-+++ misc/build/glib-2.28.1/build/win32/make.msc 2011-04-01 16:52:02.168385300 +0200
-@@ -55,7 +55,7 @@
- BABL_LIBS = $(BABL)\babl\babl-1.0.lib
-
- # force inclusion of the _right_ cairoversion.h even when using without installation
--CAIRO_CFLAGS = -FI $(CAIRO)\cairo-version.h -I $(CAIRO)\src -I $(CAIRO)
-+CAIRO_CFLAGS = -I $(CAIRO)\src -I $(CAIRO)
- CAIRO_LIBS = $(CAIRO)\src\libcairo.lib
-
- DIRENT_CFLAGS = -I ..\build\win32\dirent
---- misc/glib-2.28.1/gobject/glib-mkenums 2011-04-01 16:52:15.155128100 +0200
-+++ misc/build/glib-2.28.1/gobject/glib-mkenums 2011-04-01 16:51:30.994602300 +0200
-@@ -1 +1,538 @@
--dummy
-+#! perl.exe
-+
-+use warnings;
-+use File::Basename;
-+use Safe;
-+
-+# glib-mkenums.pl
-+# Information about the current enumeration
-+my $flags; # Is enumeration a bitmask?
-+my $option_underscore_name; # Overriden underscore variant of the enum name
-+ # for example to fix the cases we don't get the
-+ # mixed-case -> underscorized transform right.
-+my $option_lowercase_name; # DEPRECATED. A lower case name to use as part
-+ # of the *_get_type() function, instead of the
-+ # one that we guess. For instance, when an enum
-+ # uses abnormal capitalization and we can not
-+ # guess where to put the underscores.
-+my $seenbitshift; # Have we seen bitshift operators?
-+my $enum_prefix; # Prefix for this enumeration
-+my $enumname; # Name for this enumeration
-+my $enumshort; # $enumname without prefix
-+my $enumname_prefix; # prefix of $enumname
-+my $enumindex = 0; # Global enum counter
-+my $firstenum = 1; # Is this the first enumeration per file?
-+my @entries; # [ $name, $val ] for each entry
-+my $sandbox = Safe->new; # sandbox for safe evaluation of expressions
-+
-+sub parse_trigraph {
-+ my $opts = shift;
-+ my @opts;
-+
-+ for $opt (split /\s*,\s*/, $opts) {
-+ $opt =~ s/^\s*//;
-+ $opt =~ s/\s*$//;
-+ my ($key,$val) = $opt =~ /(\w+)(?:=(.+))?/;
-+ defined $val or $val = 1;
-+ push @opts, $key, $val;
-+ }
-+ @opts;
-+}
-+sub parse_entries {
-+ my $file = shift;
-+ my $file_name = shift;
-+ my $looking_for_name = 0;
-+
-+ while (<$file>) {
-+ # read lines until we have no open comments
-+ while (m@/\*([^*]|\*(?!/))*$@) {
-+ my $new;
-+ defined ($new = <$file>) || die "Unmatched comment in $ARGV";
-+ $_ .= $new;
-+ }
-+ # strip comments w/o options
-+ s@/\*(?!<)
-+ ([^*]+|\*(?!/))*
-+ \*/@@gx;
-+
-+ # strip newlines
-+ s@\n@ @;
-+
-+ # skip empty lines
-+ next if m@^\s*$@;
-+
-+ if ($looking_for_name) {
-+ if (/^\s*(\w+)/) {
-+ $enumname = $1;
-+ return 1;
-+ }
-+ }
-+
-+ # Handle include files
-+ if (/^\#include\s*<([^>]*)>/ ) {
-+ my $file= "../$1";
-+ open NEWFILE, $file or die "Cannot open include file $file: $!\n";
-+
-+ if (parse_entries (\*NEWFILE, $NEWFILE)) {
-+ return 1;
-+ } else {
-+ next;
-+ }
-+ }
-+
-+ if (/^\s*\}\s*(\w+)/) {
-+ $enumname = $1;
-+ $enumindex++;
-+ return 1;
-+ }
-+
-+ if (/^\s*\}/) {
-+ $enumindex++;
-+ $looking_for_name = 1;
-+ next;
-+ }
-+
-+ if (m@^\s*
-+ (\w+)\s* # name
-+ (?:=( # value
-+ \s*\w+\s*\(.*\)\s* # macro with multiple args
-+ | # OR
-+ (?:[^,/]|/(?!\*))* # anything but a comma or comment
-+ ))?,?\s*
-+ (?:/\*< # options
-+ (([^*]|\*(?!/))*)
-+ >\s*\*/)?,?
-+ \s*$
-+ @x) {
-+ my ($name, $value, $options) = ($1,$2,$3);
-+
-+ if (!defined $flags && defined $value && $value =~ /<</) {
-+ $seenbitshift = 1;
-+ }
-+
-+ if (defined $options) {
-+ my %options = parse_trigraph($options);
-+ if (!defined $options{skip}) {
-+ push @entries, [ $name, $value, $options{nick} ];
-+ }
-+ } else {
-+ push @entries, [ $name, $value ];
-+ }
-+ } elsif (m@^\s*\#@) {
-+ # ignore preprocessor directives
-+ } else {
-+ print STDERR "$0: $file_name:$.: Failed to parse `$_'\n";
-+ }
-+ }
-+
-+ return 0;
-+}
-+
-+sub version {
-+ print "glib-mkenums version glib-@GLIB_VERSION@\n";
-+ print "glib-mkenums comes with ABSOLUTELY NO WARRANTY.\n";
-+ print "You may redistribute copies of glib-mkenums under the terms of\n";
-+ print "the GNU General Public License which can be found in the\n";
-+ print "GLib source package. Sources, examples and contact\n";
-+ print "information are available at http://www.gtk.org\n";
-+ exit 0;
-+}
-+sub usage {
-+ print "Usage:\n";
-+ print " glib-mkenums [OPTION...] [FILES...]\n\n";
-+ print "Help Options:\n";
-+ print " -h, --help Show this help message\n\n";
-+ print "Utility Options:\n";
-+ print " --fhead <text> Output file header\n";
-+ print " --fprod <text> Per input file production\n";
-+ print " --ftail <text> Output file trailer\n";
-+ print " --eprod <text> Per enum text (produced prior to value itarations)\n";
-+ print " --vhead <text> Value header, produced before iterating over enum values\n";
-+ print " --vprod <text> Value text, produced for each enum value\n";
-+ print " --vtail <text> Value tail, produced after iterating over enum values\n";
-+ print " --comments <text> Comment structure\n";
-+ print " --template file Template file\n";
-+ print " -v, --version Print version informations\n\n";
-+ print "Production text substitutions:\n";
-+ print " \@EnumName\@ PrefixTheXEnum\n";
-+ print " \@enum_name\@ prefix_the_xenum\n";
-+ print " \@ENUMNAME\@ PREFIX_THE_XENUM\n";
-+ print " \@ENUMSHORT\@ THE_XENUM\n";
-+ print " \@ENUMPREFIX\@ PREFIX\n";
-+ print " \@VALUENAME\@ PREFIX_THE_XVALUE\n";
-+ print " \@valuenick\@ the-xvalue\n";
-+ print " \@valuenum\@ the integer value (limited support, Since: 2.26)\n";
-+ print " \@type\@ either enum or flags\n";
-+ print " \@Type\@ either Enum or Flags\n";
-+ print " \@TYPE\@ either ENUM or FLAGS\n";
-+ print " \@filename\@ name of current input file\n";
-+ print " \@basename\@ base name of the current input file (Since: 2.22)\n";
-+ exit 0;
-+}
-+
-+# production variables:
-+my $fhead = ""; # output file header
-+my $fprod = ""; # per input file production
-+my $ftail = ""; # output file trailer
-+my $eprod = ""; # per enum text (produced prior to value itarations)
-+my $vhead = ""; # value header, produced before iterating over enum values
-+my $vprod = ""; # value text, produced for each enum value
-+my $vtail = ""; # value tail, produced after iterating over enum values
-+my $comment_tmpl = ""; # comment template
-+
-+sub read_template_file {
-+ my ($file) = @_;
-+ my %tmpl = ('file-header', $fhead,
-+ 'file-production', $fprod,
-+ 'file-tail', $ftail,
-+ 'enumeration-production', $eprod,
-+ 'value-header', $vhead,
-+ 'value-production', $vprod,
-+ 'value-tail', $vtail,
-+ 'comment', $comment_tmpl);
-+ my $in = 'junk';
-+ open (FILE, $file) || die "Can't open $file: $!\n";
-+ while (<FILE>) {
-+ if (/^\/\*\*\*\s+(BEGIN|END)\s+([\w-]+)\s+\*\*\*\//) {
-+ if (($in eq 'junk') && ($1 eq 'BEGIN') && (exists($tmpl{$2}))) {
-+ $in = $2;
-+ next;
-+ }
-+ elsif (($in eq $2) && ($1 eq 'END') && (exists($tmpl{$2}))) {
-+ $in = 'junk';
-+ next;
-+ } else {
-+ die "Malformed template file $file\n";
-+ }
-+ }
-+ if (!($in eq 'junk')) {
-+ $tmpl{$in} .= $_;
-+ }
-+ }
-+ close (FILE);
-+ if (!($in eq 'junk')) {
-+ die "Malformed template file $file\n";
-+ }
-+ $fhead = $tmpl{'file-header'};
-+ $fprod = $tmpl{'file-production'};
-+ $ftail = $tmpl{'file-tail'};
-+ $eprod = $tmpl{'enumeration-production'};
-+ $vhead = $tmpl{'value-header'};
-+ $vprod = $tmpl{'value-production'};
-+ $vtail = $tmpl{'value-tail'};
-+ $comment_tmpl = $tmpl{'comment'};
-+
-+ # default to C-style comments
-+ $comment_tmpl = "/* \@comment\@ */" if $comment_tmpl eq "";
-+}
-+
-+if (!defined $ARGV[0]) {
-+ usage;
-+}
-+while ($_=$ARGV[0],/^-/) {
-+ shift;
-+ last if /^--$/;
-+ if (/^--template$/) { read_template_file (shift); }
-+ elsif (/^--fhead$/) { $fhead = $fhead . shift }
-+ elsif (/^--fprod$/) { $fprod = $fprod . shift }
-+ elsif (/^--ftail$/) { $ftail = $ftail . shift }
-+ elsif (/^--eprod$/) { $eprod = $eprod . shift }
-+ elsif (/^--vhead$/) { $vhead = $vhead . shift }
-+ elsif (/^--vprod$/) { $vprod = $vprod . shift }
-+ elsif (/^--vtail$/) { $vtail = $vtail . shift }
-+ elsif (/^--comments$/) { $comment_tmpl = shift }
-+ elsif (/^--help$/ || /^-h$/ || /^-\?$/) { usage; }
-+ elsif (/^--version$/ || /^-v$/) { version; }
-+ else { usage; }
-+ last if not defined($ARGV[0]);
-+}
-+
-+# put auto-generation comment
-+{
-+ my $comment = $comment_tmpl;
-+ $comment =~ s/\@comment\@/Generated data (by glib-mkenums)/;
-+ print "\n" . $comment . "\n\n";
-+}
-+
-+if (length($fhead)) {
-+ my $prod = $fhead;
-+ my $base = basename ($ARGV[0]);
-+
-+ $prod =~ s/\@filename\@/$ARGV[0]/g;
-+ $prod =~ s/\@basename\@/$base/g;
-+ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
-+ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
-+ chomp ($prod);
-+
-+ print "$prod\n";
-+}
-+
-+while (<>) {
-+ if (eof) {
-+ close (ARGV); # reset line numbering
-+ $firstenum = 1; # Flag to print filename at next enum
-+ }
-+
-+ # read lines until we have no open comments
-+ while (m@/\*([^*]|\*(?!/))*$@) {
-+ my $new;
-+ defined ($new = <>) || die "Unmatched comment in $ARGV";
-+ $_ .= $new;
-+ }
-+ # strip comments w/o options
-+ s@/\*(?!<)
-+ ([^*]+|\*(?!/))*
-+ \*/@@gx;
-+
-+ if (m@^\s*typedef\s+enum\s*
-+ ({)?\s*
-+ (?:/\*<
-+ (([^*]|\*(?!/))*)
-+ >\s*\*/)?
-+ \s*({)?
-+ @x) {
-+ if (defined $2) {
-+ my %options = parse_trigraph ($2);
-+ next if defined $options{skip};
-+ $enum_prefix = $options{prefix};
-+ $flags = $options{flags};
-+ $option_lowercase_name = $options{lowercase_name};
-+ $option_underscore_name = $options{underscore_name};
-+ } else {
-+ $enum_prefix = undef;
-+ $flags = undef;
-+ $option_lowercase_name = undef;
-+ $option_underscore_name = undef;
-+ }
-+ if (defined $option_lowercase_name) {
-+ if (defined $option_underscore_name) {
-+ print STDERR "$0: $ARGV:$.: lowercase_name overriden with underscore_name\n";
-+ $option_lowercase_name = undef;
-+ } else {
-+ print STDERR "$0: $ARGV:$.: lowercase_name is deprecated, use underscore_name\n";
-+ }
-+ }
-+ # Didn't have trailing '{' look on next lines
-+ if (!defined $1 && !defined $4) {
-+ while (<>) {
-+ if (s/^\s*\{//) {
-+ last;
-+ }
-+ }
-+ }
-+
-+ $seenbitshift = 0;
-+ @entries = ();
-+
-+ # Now parse the entries
-+ parse_entries (\*ARGV, $ARGV);
-+
-+ # figure out if this was a flags or enums enumeration
-+ if (!defined $flags) {
-+ $flags = $seenbitshift;
-+ }
-+
-+ # Autogenerate a prefix
-+ if (!defined $enum_prefix) {
-+ for (@entries) {
-+ my $nick = $_->[2];
-+ if (!defined $nick) {
-+ my $name = $_->[0];
-+ if (defined $enum_prefix) {
-+ my $tmp = ~ ($name ^ $enum_prefix);
-+ ($tmp) = $tmp =~ /(^\xff*)/;
-+ $enum_prefix = $enum_prefix & $tmp;
-+ } else {
-+ $enum_prefix = $name;
-+ }
-+ }
-+ }
-+ if (!defined $enum_prefix) {
-+ $enum_prefix = "";
-+ } else {
-+ # Trim so that it ends in an underscore
-+ $enum_prefix =~ s/_[^_]*$/_/;
-+ }
-+ } else {
-+ # canonicalize user defined prefixes
-+ $enum_prefix = uc($enum_prefix);
-+ $enum_prefix =~ s/-/_/g;
-+ $enum_prefix =~ s/(.*)([^_])$/$1$2_/;
-+ }
-+
-+ for $entry (@entries) {
-+ my ($name,$num,$nick) = @{$entry};
-+ if (!defined $nick) {
-+ ($nick = $name) =~ s/^$enum_prefix//;
-+ $nick =~ tr/_/-/;
-+ $nick = lc($nick);
-+ @{$entry} = ($name, $num, $nick);
-+ }
-+ }
-+
-+
-+ # Spit out the output
-+ if (defined $option_underscore_name) {
-+ $enumlong = uc $option_underscore_name;
-+ $enumsym = lc $option_underscore_name;
-+ $enumshort = $enumlong;
-+ $enumshort =~ s/^[A-Z][A-Z0-9]*_//;
-+
-+ $enumname_prefix = $enumlong;
-+ $enumname_prefix =~ s/$enumshort$//;
-+ } else {
-+ # enumname is e.g. GMatchType
-+ $enspace = $enumname;
-+ $enspace =~ s/^([A-Z][a-z]*).*$/$1/;
-+
-+ $enumshort = $enumname;
-+ $enumshort =~ s/^[A-Z][a-z]*//;
-+ $enumshort =~ s/([^A-Z])([A-Z])/$1_$2/g;
-+ $enumshort =~ s/([A-Z][A-Z])([A-Z][0-9a-z])/$1_$2/g;
-+ $enumshort = uc($enumshort);
-+
-+ $enumname_prefix = $enumname;
-+ $enumname_prefix =~ s/^([A-Z][a-z]*).*$/$1/;
-+ $enumname_prefix = uc($enumname_prefix);
-+
-+ $enumlong = uc($enspace) . "_" . $enumshort;
-+ $enumsym = lc($enspace) . "_" . lc($enumshort);
-+
-+ if (defined($option_lowercase_name)) {
-+ $enumsym = $option_lowercase_name;
-+ }
-+ }
-+
-+ if ($firstenum) {
-+ $firstenum = 0;
-+
-+ if (length($fprod)) {
-+ my $prod = $fprod;
-+ my $base = basename ($ARGV);
-+
-+ $prod =~ s/\@filename\@/$ARGV/g;
-+ $prod =~ s/\@basename\@/$base/g;
-+ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
-+ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
-+ chomp ($prod);
-+
-+ print "$prod\n";
-+ }
-+ }
-+
-+ if (length($eprod)) {
-+ my $prod = $eprod;
-+
-+ $prod =~ s/\@enum_name\@/$enumsym/g;
-+ $prod =~ s/\@EnumName\@/$enumname/g;
-+ $prod =~ s/\@ENUMSHORT\@/$enumshort/g;
-+ $prod =~ s/\@ENUMNAME\@/$enumlong/g;
-+ $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g;
-+ if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; }
-+ if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; }
-+ if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; }
-+ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
-+ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
-+ chomp ($prod);
-+
-+ print "$prod\n";
-+ }
-+
-+ if (length($vhead)) {
-+ my $prod = $vhead;
-+
-+ $prod =~ s/\@enum_name\@/$enumsym/g;
-+ $prod =~ s/\@EnumName\@/$enumname/g;
-+ $prod =~ s/\@ENUMSHORT\@/$enumshort/g;
-+ $prod =~ s/\@ENUMNAME\@/$enumlong/g;
-+ $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g;
-+ if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; }
-+ if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; }
-+ if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; }
-+ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
-+ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
-+ chomp ($prod);
-+
-+ print "$prod\n";
-+ }
-+
-+ if (length($vprod)) {
-+ my $prod = $vprod;
-+ my $next_num = 0;
-+
-+ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
-+ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
-+ for (@entries) {
-+ my ($name,$num,$nick) = @{$_};
-+ my $tmp_prod = $prod;
-+
-+ if ($prod =~ /\@valuenum\@/) {
-+ # only attempt to eval the value if it is requested
-+ # this prevents us from throwing errors otherwise
-+ if (defined $num) {
-+ # use sandboxed perl evaluation as a reasonable
-+ # approximation to C constant folding
-+ $num = $sandbox->reval ($num);
-+
-+ # make sure it parsed to an integer
-+ if (!defined $num or $num !~ /^-?\d+$/) {
-+ die "Unable to parse enum value '$num'";
-+ }
-+ } else {
-+ $num = $next_num;
-+ }
-+
-+ $tmp_prod =~ s/\@valuenum\@/$num/g;
-+ $next_num = $num + 1;
-+ }
-+
-+ $tmp_prod =~ s/\@VALUENAME\@/$name/g;
-+ $tmp_prod =~ s/\@valuenick\@/$nick/g;
-+ if ($flags) { $tmp_prod =~ s/\@type\@/flags/g; } else { $tmp_prod =~ s/\@type\@/enum/g; }
-+ if ($flags) { $tmp_prod =~ s/\@Type\@/Flags/g; } else { $tmp_prod =~ s/\@Type\@/Enum/g; }
-+ if ($flags) { $tmp_prod =~ s/\@TYPE\@/FLAGS/g; } else { $tmp_prod =~ s/\@TYPE\@/ENUM/g; }
-+ chomp ($tmp_prod);
-+
-+ print "$tmp_prod\n";
-+ }
-+ }
-+
-+ if (length($vtail)) {
-+ my $prod = $vtail;
-+
-+ $prod =~ s/\@enum_name\@/$enumsym/g;
-+ $prod =~ s/\@EnumName\@/$enumname/g;
-+ $prod =~ s/\@ENUMSHORT\@/$enumshort/g;
-+ $prod =~ s/\@ENUMNAME\@/$enumlong/g;
-+ $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g;
-+ if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; }
-+ if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; }
-+ if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; }
-+ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
-+ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
-+ chomp ($prod);
-+
-+ print "$prod\n";
-+ }
-+ }
-+}
-+
-+if (length($ftail)) {
-+ my $prod = $ftail;
-+ my $base = basename ($ARGV);
-+
-+ $prod =~ s/\@filename\@/$ARGV/g;
-+ $prod =~ s/\@basename\@/$base/g;
-+ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
-+ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
-+ chomp ($prod);
-+
-+ print "$prod\n";
-+}
-+
-+# put auto-generation comment
-+{
-+ my $comment = $comment_tmpl;
-+ $comment =~ s/\@comment\@/Generated data ends here/;
-+ print "\n" . $comment . "\n\n";
-+}
diff --git a/glib/glib-2.28.1-win32.patch b/glib/glib-2.28.1-win32.patch
deleted file mode 100644
index 7cfd09bea7e1..000000000000
--- a/glib/glib-2.28.1-win32.patch
+++ /dev/null
@@ -1,1994 +0,0 @@
---- misc/glib-2.28.1/build/win32/dirent/makefile.msc 2009-04-01 01:04:20.000000000 +0200
-+++ misc/build/glib-2.28.1/build/win32/dirent/makefile.msc 2011-03-04 09:06:56.391118000 +0100
-@@ -1,10 +1,10 @@
- TOP = ..\..\..\..
-
--!INCLUDE $(TOP)\glib\build\win32\make.msc
-+!INCLUDE ..\make.msc
-
- dirent_OBJECTS = dirent.obj wdirent.obj
-
--INCLUDES = -I.
-+INCLUDES = -I. $(SOLARINC)
-
- all : dirent.lib
-
-@@ -12,5 +12,5 @@
- lib /out:dirent.lib /nodefaultlib $(dirent_OBJECTS)
-
- clean::
-- del /f $(dirent_OBJECTS)
-- del /f dirent.lib
-+ rm /f $(dirent_OBJECTS)
-+ rm /f dirent.lib
---- misc/glib-2.28.1/build/win32/make.msc 2009-08-29 04:52:21.000000000 +0200
-+++ misc/build/glib-2.28.1/build/win32/make.msc 2011-03-04 12:36:27.513145100 +0100
-@@ -35,7 +35,7 @@
- XSLTPROC = d:\gnome-0\xsltproc
-
- # paths and version numbers
--!INCLUDE $(TOP)\glib\build\win32\module.defs
-+!INCLUDE module.defs
-
- ################
- # CFLAGS and LIBS for the packages in module.defs.
-@@ -58,8 +58,8 @@
- CAIRO_CFLAGS = -FI $(CAIRO)\cairo-version.h -I $(CAIRO)\src -I $(CAIRO)
- CAIRO_LIBS = $(CAIRO)\src\libcairo.lib
-
--DIRENT_CFLAGS = -I $(GLIB)\build\win32\dirent
--DIRENT_LIBS = $(GLIB)\build\win32\dirent\dirent.lib
-+DIRENT_CFLAGS = -I ..\build\win32\dirent
-+DIRENT_LIBS = ..\build\win32\dirent\dirent.lib
-
- !IFNDEF EXIF
- EXIF_CFLAGS = -I $(DEVTOP)\include
-@@ -92,7 +92,7 @@
- # overide definition to use it as callable path
- GLIB = $(TOP)\glib
-
--GLIB_CFLAGS = -I $(GLIB) -I $(GLIB)\glib -I $(GLIB)\gmodule $(INTL_CFLAGS)
-+GLIB_CFLAGS = -I $(GLIB) -I $(GLIB)\glib -I $(GLIB)\gmodule $(INTL_CFLAGS) $(SOLARINC)
- GLIB_LIBS = $(GLIB)\glib\glib-$(GLIB_VER).lib $(GLIB)\gmodule\gmodule-$(GLIB_VER).lib $(GLIB)\gobject\gobject-$(GLIB_VER).lib $(GLIB)\gio\gio-$(GLIB_VER).lib
- GTHREAD_LIBS = $(GLIB)\gthread\gthread-$(GLIB_VER).lib
-
-@@ -126,11 +126,11 @@
- LIBART_LIBS = $(LIBART)\art_lgpl_2.lib
-
- !IFNDEF INTL
--INTL_CFLAGS = -I $(DEVTOP)\include
--INTL_LIBS = $(DEVTOP)\lib\intl.lib
-+INTL_CFLAGS = -I $(OUTDIR)\inc\external
-+INTL_LIBS = $(OUTDIR)/lib/intl.lib
- !ELSE
--INTL_CFLAGS = -I $(INTL)
--INTL_LIBS = $(INTL)\intl.lib
-+INTL_CFLAGS = -I $(OUTDIR)\inc\external
-+INTL_LIBS = $(OUTDIR)/lib/intl.lib
- !ENDIF
-
- !IFDEF LCMS
-@@ -199,10 +199,10 @@
-
- !IFDEF ZLIB
- ZLIB_CFLAGS = -I $(ZLIB)
--ZLIB_LIBS = $(ZLIB)\projects\visualc6\Win32_LIB_Release\zlib.lib
-+ZLIB_LIBS = $(OUTDIR)\lib\zlib.lib
- !ELSE
--ZLIB_CFLAGS = -I $(DEVTOP)\include
--ZLIB_LIBS = $(DEVTOP)\lib\zdll.lib
-+ZLIB_CFLAGS = -I $(OUTDIR)\inc\external\zlib
-+ZLIB_LIBS = $(OUTDIR)\lib\zlib.lib
- !ENDIF
-
- ################
---- misc/glib-2.28.1/gio/gzlibcompressor.c 2011-02-11 16:23:12.000000000 +0100
-+++ misc/build/glib-2.28.1/gio/gzlibcompressor.c 2011-03-07 10:33:19.559189800 +0100
-@@ -25,7 +25,7 @@
- #include "gzlibcompressor.h"
-
- #include <errno.h>
--#include <zlib.h>
-+#include <zlib/zlib.h>
- #include <string.h>
-
- #include "gfileinfo.h"
-@@ -64,8 +64,10 @@
-
- GZlibCompressorFormat format;
- int level;
-+#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
- z_stream zstream;
- gz_header gzheader;
-+#endif
- GFileInfo *file_info;
- };
-
-@@ -73,7 +75,7 @@
- g_zlib_compressor_set_gzheader (GZlibCompressor *compressor)
- {
- /* On win32, these functions were not exported before 1.2.4 */
--#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
-+#if (!defined (G_OS_WIN32) && ! defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
- const gchar *filename;
-
- if (compressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP ||
---- misc/glib-2.28.1/gio/gzlibdecompressor.c 2011-03-07 09:13:41.324890400 +0100
-+++ misc/build/glib-2.28.1/gio/gzlibdecompressor.c 2011-03-04 11:28:39.712480200 +0100
-@@ -25,7 +25,7 @@
- #include "gzlibdecompressor.h"
-
- #include <errno.h>
--#include <zlib.h>
-+#include <zlib/zlib.h>
- #include <string.h>
-
- #include "gfileinfo.h"
-@@ -76,7 +76,7 @@
- g_zlib_decompressor_set_gzheader (GZlibDecompressor *decompressor)
- {
- /* On win32, these functions were not exported before 1.2.4 */
--#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
-+#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
- if (decompressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP)
- return;
-
-@@ -376,7 +376,7 @@
- *bytes_read = inbuf_size - decompressor->zstream.avail_in;
- *bytes_written = outbuf_size - decompressor->zstream.avail_out;
-
--#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
-+#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
- if (decompressor->header_data != NULL &&
- decompressor->header_data->gzheader.done == 1)
- {
---- misc/glib-2.28.1/gio/makefile.msc 2011-02-11 16:23:12.000000000 +0100
-+++ misc/build/glib-2.28.1/gio/makefile.msc 2011-03-04 12:43:54.423706900 +0100
-@@ -3,9 +3,9 @@
- PRJ_TOP = ..
- PACKAGE = gio
- PKG_VER = 2.0
--!INCLUDE $(TOP)\glib\build\win32\make.msc
-+!INCLUDE ..\build\win32\make.msc
-
--SUBDIRS = win32
-+SUBDIRS = win32 gvdb
-
- sub-all:
- for %d in ($(SUBDIRS)) do nmake -nologo -f makefile.msc sub-one THIS=%d
-@@ -18,13 +18,15 @@
- INCLUDES = \
- -FImsvc_recommended_pragmas.h \
- -I .. -I ..\glib -I ..\gmodule -I . \
-- $(INTL_CFLAGS)
-+ $(INTL_CFLAGS) \
-+ $(SOLARINC) \
-
- DEFINES = \
- -DG_LOG_DOMAIN=\"GLib-GIO\" \
- -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
- -DGIO_COMPILATION
-
-+
- appinfo_sources = \
- gwin32appinfo.c gwin32appinfo.h
-
-@@ -75,19 +77,50 @@
- $(NULL)
-
- OBJECTS = \
-+ gaction.obj \
-+ gactiongroup.obj \
- gappinfo.obj \
-+ gapplication.obj \
-+ gapplicationcommandline.obj \
-+ gapplicationimpl-dbus.obj \
- gasynchelper.obj \
- gasyncinitable.obj \
- gasyncresult.obj \
- gbufferedinputstream.obj \
- gbufferedoutputstream.obj \
- gcancellable.obj \
-+ gcharsetconverter.obj \
- gcontenttype.obj \
-+ gconverter.obj \
-+ gconverterinputstream.obj \
-+ gconverteroutputstream.obj \
-+ gcredentials.obj \
- gdatainputstream.obj \
- gdataoutputstream.obj \
-+ gdbusaddress.obj \
-+ gdbusauth.obj \
-+ gdbusauthmechanism.obj \
-+ gdbusauthmechanismanon.obj \
-+ gdbusauthmechanismexternal.obj \
-+ gdbusauthmechanismsha1.obj \
-+ gdbusauthobserver.obj \
-+ gdbusconnection.obj \
-+ gdbuserror.obj \
-+ gdbusintrospection.obj \
-+ gdbusmessage.obj \
-+ gdbusmethodinvocation.obj \
-+ gdbusnameowning.obj \
-+ gdbusnamewatching.obj \
-+ gdbusprivate.obj \
-+ gdbusproxy.obj \
-+ gdbusserver.obj \
-+ gdbusutils.obj \
-+ gdelayedsettingsbackend.obj \
- # gdesktopappinfo.obj \
- gdrive.obj \
- gdummyfile.obj \
-+ gdummyproxyresolver.obj \
-+ gdummytlsbackend.obj \
- gemblem.obj \
- gemblemedicon.obj \
- gfile.obj \
-@@ -112,20 +145,39 @@
- giomodule.obj \
- gioscheduler.obj \
- giostream.obj \
-+ gkeyfilesettingsbackend.obj \
- gloadableicon.obj \
- glocalfileiostream.obj \
- gmemoryinputstream.obj \
- gmemoryoutputstream.obj \
-+ gmemorysettingsbackend.obj \
- gmount.obj \
- gmountoperation.obj \
- gnativevolumemonitor.obj \
- gnetworkaddress.obj \
- gnetworkservice.obj \
-+ gnullsettingsbackend.obj \
- goutputstream.obj \
-+ gpermission.obj \
-+ gpollableinputstream.obj \
-+ gpollableoutputstream.obj \
- gpollfilemonitor.obj \
-+ gproxy.obj\
-+ gproxyaddress.obj \
-+ gproxyaddressenumerator.obj \
-+ gproxyresolver.obj \
-+ gregistrysettingsbackend.obj \
- gresolver.obj \
-+ gsettings-mapping.obj \
-+ gsettings-tool.obj \
-+ gsettings.obj \
-+ gsettingsbackend.obj \
-+ gsettingsschema.obj \
- gseekable.obj \
-+ gsimpleaction.obj \
-+ gsimpleactiongroup.obj \
- gsimpleasyncresult.obj \
-+ gsimplepermission.obj \
- gsocket.obj \
- gsocketaddress.obj \
- gsocketaddressenumerator.obj \
-@@ -135,13 +187,22 @@
- gsocketcontrolmessage.obj \
- gsocketlistener.obj \
- gsocketservice.obj \
-+ gsocks4aproxy.obj \
-+ gsocks4proxy.obj \
-+ gsocks5proxy.obj \
- gsocketinputstream.obj \
- gsocketoutputstream.obj \
- gsrvtarget.obj \
- gtcpconnection.obj \
-+ gtcpwrapperconnection.obj \
- gthreadedresolver.obj \
- gthreadedsocketservice.obj \
- gthemedicon.obj \
-+ gtlsbackend.obj \
-+ gtlscertificate.obj \
-+ gtlsclientconnection.obj \
-+ gtlsconnection.obj \
-+ gtlsserverconnection.obj \
- gunionvolumemonitor.obj \
- gvfs.obj \
- gvolume.obj \
-@@ -156,11 +217,15 @@
- glocalfilemonitor.obj \
- glocaldirectorymonitor.obj \
- gwin32appinfo.obj \
-+ gwin32outputstream.obj \
- \
- gio-marshal.obj \
-+ gwin32inputstream.obj \
- gwin32mount.obj \
- gwin32volumemonitor.obj \
-- gwin32resolver.obj
-+ gwin32resolver.obj \
-+ gzlibdecompressor.obj \
-+ gzlibcompressor.obj
-
- libgio_2_0_la_LIBADD = \
- $(top_builddir)/glib/libglib-2.0.la \
-@@ -190,14 +255,14 @@
-
- gio-marshal.h: gio-marshal.list
- $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --header >> xgen-gwmh \
-- && copy /y xgen-gwmh gio-marshal.h \
-- && del xgen-gwmh xgen-gwmh~
-+ && cp xgen-gwmh gio-marshal.h \
-+ && rm xgen-gwmh xgen-gwmh~
-
- gio-marshal.c: gio-marshal.h
- echo #include "gio-marshal.h" >> xgen-gwmc \
- && $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --body >> xgen-gwmc \
-- && copy xgen-gwmc gio-marshal.c \
-- && del xgen-gwmc xgen-gwmc~
-+ && cp xgen-gwmc gio-marshal.c \
-+ && rm xgen-gwmc xgen-gwmc~
-
- local_sources = \
- glocaldirectorymonitor.c \
-@@ -228,11 +293,11 @@
- gio-marshal.c \
- gioenumtypes.h \
- gioenumtypes.c \
-- libgio-$(PKG_VER)-0.dll
-+ giolo.dll
-
-
- $(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32
-- copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
-+ cp $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
-
- gioenumtypes.h: $(gio_headers) gioenumtypes.h.template
- $(PERL) ..\gobject\glib-mkenums --template gioenumtypes.h.template $(gio_headers) > gioenumtypes.h
-@@ -245,14 +310,14 @@
- RESOURCE = $(PACKAGE).res
-
- $(PACKAGE).res : $(PACKAGE).rc
-- rc -DBUILDNUMBER=0 -r -fo $(PACKAGE).res $(PACKAGE).rc
-+ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo $(PACKAGE).res $(PACKAGE).rc
-
--libgio-$(PKG_VER)-0.dll : $(OBJECTS) win32\giowin32.lib $(PACKAGE).def $(RESOURCE)
-- $(CC) $(CFLAGS) -LD -Felibgio-$(PKG_VER)-0.dll $(OBJECTS) $(RESOURCE) \
-+giolo.dll : $(OBJECTS) win32\giowin32.lib gvdb\giogvdb.lib $(PACKAGE).def $(RESOURCE)
-+ $(CC) $(CFLAGS) -LD -Fe$@ $(OBJECTS) $(RESOURCE) \
- ..\glib\glib-2.0.lib ..\gobject\gobject-2.0.lib ..\gmodule\gmodule-2.0.lib \
-- win32\giowin32.lib \
-- $(INTL_LIBS) \
-- kernel32.lib user32.lib advapi32.lib shell32.lib wsock32.lib ws2_32.lib dnsapi.lib mpr.lib $(LDFLAGS) \
-+ win32\giowin32.lib gvdb\giogvdb.lib \
-+ $(INTL_LIBS) $(ZLIB_LIBS) \
-+ kernel32.lib user32.lib advapi32.lib shell32.lib wsock32.lib shlwapi.lib ws2_32.lib dnsapi.lib mpr.lib $(LDFLAGS) \
- /implib:gio-2.0.lib /def:$(PACKAGE).def
-
- .c.obj :
---- misc/glib-2.28.1/glib/gatomic.c 2011-02-11 16:23:12.000000000 +0100
-+++ misc/build/glib-2.28.1/glib/gatomic.c 2011-02-25 15:51:45.000000000 +0100
-@@ -28,6 +28,7 @@
- #endif
-
- #include "gatomic.h"
-+#include "gthread.h"
- #include "gthreadprivate.h"
-
- /**
---- misc/glib-2.28.1/glib/gnulib/makefile.msc 2009-04-01 01:04:20.000000000 +0200
-+++ misc/build/glib-2.28.1/glib/gnulib/makefile.msc 2011-03-04 08:37:50.624265900 +0100
-@@ -1,7 +1,7 @@
- TOP = ..\..\..
- !INCLUDE ..\..\build\win32\make.msc
-
--INCLUDES = -I ..\.. -I ..
-+INCLUDES = -I ..\.. -I .. $(SOLARINC)
- DEFINES = -DHAVE_CONFIG_H -DHAVE_LONG_LONG_FORMAT
-
- OBJECTS = \
---- misc/glib-2.28.1/glib/makefile.msc 2011-02-18 16:34:53.000000000 +0100
-+++ misc/build/glib-2.28.1/glib/makefile.msc 2011-03-07 11:41:13.874227300 +0100
-@@ -7,7 +7,7 @@
-
- ################################################################
-
--INCLUDES = -FImsvc_recommended_pragmas.h -I . -I ..
-+INCLUDES = -FImsvc_recommended_pragmas.h -I . -I .. $(SOLARINC)
- DEFINES = \
- -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=\"GLib\" \
- -DG_ENABLE_DEBUG -DPCRE_STATIC -DG_DISABLE_DEPRECATED \
-@@ -17,13 +17,11 @@
-
- all : \
- ..\config.h \
-- ..\glibconfig.h \
-+ glibconfig.h \
- gnulib\gnulib.lib \
- pcre\pcre.lib \
-- libglib-2.0-0.dll \
-+ gliblo.dll \
-- glib-2.28s.lib \
-- gspawn-win32-helper.exe \
-- gspawn-win32-helper-console.exe \
-+ glib-2.28s.lib
-
-
- gnulib\gnulib.lib :
-@@ -37,37 +35,40 @@
- cd ..
-
- glib_OBJECTS = \
-- garray.obj \
-- gasyncqueue.obj \
-- gatomic.obj \
-- gbacktrace.obj \
-- gbase64.obj \
-+ garray.obj \
-+ gasyncqueue.obj \
-+ gatomic.obj \
-+ gbacktrace.obj \
-+ gbase64.obj \
-+ gbitlock.obj \
- gbookmarkfile.obj \
-+ gbuffer.obj \
- gcache.obj \
-- gchecksum.obj \
-- gcompletion.obj \
-+ gchecksum.obj \
- gconvert.obj \
-+ gcompletion.obj \
- gdataset.obj \
- gdate.obj \
-+ gdatetime.obj \
- gdir.obj \
- gerror.obj \
- gfileutils.obj \
- ghash.obj \
-- ghostutils.obj \
- ghook.obj \
-+ ghostutils.obj \
- giochannel.obj \
- giowin32.obj \
-- gpoll.obj \
- gkeyfile.obj \
- glist.obj \
- gmain.obj \
-- gmappedfile.obj \
-+ gmappedfile.obj \
- gmarkup.obj \
- gmem.obj \
- gmessages.obj \
- gnode.obj \
- goption.obj \
- gpattern.obj \
-+ gpoll.obj \
- gprimes.obj \
- gprintf.obj \
- gqsort.obj \
-@@ -88,22 +89,29 @@
- gthread.obj \
- gthreadpool.obj \
- gtimer.obj \
-+ gtimezone.obj \
- gtree.obj \
- gunibreak.obj \
- gunicollate.obj \
- gunidecomp.obj \
- guniprop.obj \
- gurifuncs.obj \
-- gutf8.obj \
-- gutils.obj \
-- gwin32.obj \
-+ gutf8.obj \
-+ gutils.obj \
-+ gvariant-core.obj \
-+ gvariant-parser.obj \
-+ gvariant-serialiser.obj \
-+ gvariant.obj \
-+ gvarianttype.obj \
-+ gvarianttypeinfo.obj \
-+ gwin32.obj \
- localcharset.obj
-
--..\glibconfig.h: ..\glibconfig.h.win32
-- copy ..\glibconfig.h.win32 ..\glibconfig.h
-+glibconfig.h: glibconfig.h.win32
-+ cp glibconfig.h.win32 glibconfig.h
-
- ..\config.h: ..\config.h.win32
-- copy ..\config.h.win32 ..\config.h
-+ cp ..\config.h.win32 ..\config.h
-
- localcharset.obj : libcharset\localcharset.c
- $(CC) $(CFLAGS) -DLIBDIR=\".\" -c libcharset\localcharset.c
-@@ -115,7 +123,7 @@
- -DG_GNUC_PRINTF=;G_GNUC_PRINTF -DG_GNUC_FORMAT=;G_GNUC_FORMAT glib.symbols >> glib.def
-
- glib.res : glib.rc
-- rc -DBUILDNUMBER=0 -r -fo glib.res glib.rc
-+ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo glib.res glib.rc
-
- ################ glib
-
-@@ -124,20 +132,14 @@
- glib-2.28s.lib : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib
- lib /out:glib-2.28s.lib $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib
-
--libglib-2.0-0.dll : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib glib.def glib.res
-+gliblo.dll : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib glib.def glib.res
- $(CC) $(CFLAGS) -LD -Fe$@ $(glib_OBJECTS) glib.res $(INTL_LIBS) \
- gnulib\gnulib.lib pcre\pcre.lib $(DIRENT_LIBS) user32.lib advapi32.lib shell32.lib wsock32.lib ole32.lib ws2_32.lib \
- $(LDFLAGS) /implib:glib-2.0.lib /def:glib.def
-
--gspawn-win32-helper.exe : gspawn-win32-helper.c libglib-2.0-0.dll
-- $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:windows user32.lib
--
--gspawn-win32-helper-console.exe : gspawn-win32-helper.c libglib-2.0-0.dll
-- $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:console user32.lib
--
- ################ other stuff
-
- clean::
-- del ..\config.h
-- del ..\glibconfig.h
-+ rm ..\config.h
-+ rm glibconfig.h
-
---- misc/glib-2.28.1/glib/pcre/makefile.msc 2010-06-20 06:35:47.000000000 +0200
-+++ misc/build/glib-2.28.1/glib/pcre/makefile.msc 2011-03-04 09:06:02.748049800 +0100
-@@ -3,7 +3,8 @@
-
- INCLUDES = \
- -I ..\.. \
-- -I ..
-+ -I .. \
-+ $(SOLARINC)
-
- DEFINES = \
- -DPCRE_STATIC \
-@@ -18,10 +19,24 @@
- -DMAX_NAME_COUNT=10000 \
- -DMAX_DUPLENGTH=30000 \
- -DLINK_SIZE=2 \
-- -DEBCDIC=0 \
- -DPOSIX_MALLOC_THRESHOLD=10
-
- OBJECTS = \
-+ pcre_chartables.obj \
-+ pcre_compile.obj \
-+ pcre_config.obj \
-+ pcre_dfa_exec.obj \
-+ pcre_exec.obj \
-+ pcre_fullinfo.obj \
-+ pcre_get.obj \
-+ pcre_globals.obj \
-+ pcre_newline.obj \
-+ pcre_ord2utf8.obj \
-+ pcre_study.obj \
-+ pcre_tables.obj \
-+ pcre_try_flipped.obj \
-+ pcre_ucp_searchfuncs.obj \
-+ pcre_xclass.obj \
-
-
- all : pcre.lib
---- misc/glib-2.28.1/gmodule/makefile.msc 2011-02-18 16:34:58.000000000 +0100
-+++ misc/build/glib-2.28.1/gmodule/makefile.msc 2011-03-04 08:43:06.896355600 +0100
-@@ -7,12 +7,12 @@
-
- ################################################################
-
--INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib
-+INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib $(SOLARINC)
- DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GModule\"
-
- all : \
- gmoduleconf.h \
-- libgmodule-2.0-0.dll
-+ gmodulelo.dll
-
- gmodule_OBJECTS = \
- gmodule.obj
-@@ -16,22 +16,22 @@
-
- gmodule_OBJECTS = \
- gmodule.obj
--gmodule.def: gmodule.symbols
-- echo EXPORTS > gmodule.def
-- cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
-- -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
-- -DG_GNUC_PRINTF=;G_GNUC_PRINTF gmodule.symbols >> gmodule.def
--
-+gmodule.def: gmodule.symbols
-+ echo EXPORTS > gmodule.def
-+ cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
-+ -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
-+ -DG_GNUC_PRINTF=;G_GNUC_PRINTF gmodule.symbols >> gmodule.def
-+
-
- gmoduleconf.h: gmoduleconf.h.win32
-- copy gmoduleconf.h.win32 gmoduleconf.h
-+ cp gmoduleconf.h.win32 gmoduleconf.h
-
- gmodule.res : gmodule.rc
-- rc -DBUILDNUMBER=0 -r -fo gmodule.res gmodule.rc
-+ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo gmodule.res gmodule.rc
-
--libgmodule-2.0-0.dll : $(gmodule_OBJECTS) gmodule.def gmodule.res
-+gmodulelo.dll : $(gmodule_OBJECTS) gmodule.def gmodule.res
- $(CC) $(CFLAGS) -LD -Fe$@ $(gmodule_OBJECTS) gmodule.res \
- ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gmodule-2.0.lib /def:gmodule.def
-
- clean::
-- del gmoduleconf.h
-+ rm gmoduleconf.h
---- misc/glib-2.28.1/gobject/makefile.msc 2011-02-18 16:35:05.000000000 +0100
-+++ misc/build/glib-2.28.1/gobject/makefile.msc 2011-03-04 12:33:52.399273100 +0100
---- misc/glib-2.28.1/gobject/makefile.msc 2011-02-18 16:35:05.000000000 +0100
-+++ misc/build/glib-2.28.1/gobject/makefile.msc 2011-03-09 09:29:52.712284300 +0100
-@@ -7,23 +7,22 @@
-
- ################################################################
-
--INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib
-+INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib $(SOLARINC)
- DEFINES = -DHAVE_CONFIG_H -DGOBJECT_COMPILATION -DG_LOG_DOMAIN=\"GLib-GObject\" \
- -DG_ENABLE_DEBUG
- # -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS
- # -DG_DISABLE_CAST_CHECKS
-
- all : \
- glib-genmarshal.exe \
- gmarshal.h \
-- gmarshal.c \
- gmarshal.strings \
-- gobject-query.exe \
-- libgobject-2.0-0.dll \
-+ gobjectlo.dll \
- gobject-2.28s.lib \
-- testgobject.exe
-
- gobject_OBJECTS = \
-+ gatomicarray.obj \
-+ gbinding.obj \
- gboxed.obj \
- gclosure.obj \
- genums.obj \
-@@ -47,21 +49,18 @@
- -DG_GNUC_PRINTF=;G_GNUC_PRINTF gobject.symbols >> gobject.def
-
- gobject.res : gobject.rc
-- rc -DBUILDNUMBER=0 -r -fo gobject.res gobject.rc
-+ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo gobject.res gobject.rc
-
- gmarshal.h : gmarshal.list glib-genmarshal.exe
- echo #ifndef __G_MARSHAL_H__ > xgen-gmh
- echo #define __G_MARSHAL_H__ >> xgen-gmh
- glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --header >> xgen-gmh
- echo #endif /* __G_MARSHAL_H__ */ >> xgen-gmh
-- copy xgen-gmh gmarshal.h
--
--gmarshal.c: gmarshal.list gmarshal.h glib-genmarshal.exe
-- glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --body > gmarshal.c
-+ cp xgen-gmh gmarshal.h
-
--libgobject-2.0-0.dll : $(gobject_OBJECTS) gobject.def gobject.res
-+gobjectlo.dll : $(gobject_OBJECTS) gobject.def gobject.res
- $(CC) $(CFLAGS) -Fm -LD -Fe$@ $(gobject_OBJECTS) gobject.res \
-- ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gobject-2.0.lib /def:gobject.def || del $@
-+ ..\glib\glib-2.0.lib ..\gthread\gthread-2.0.lib $(LDFLAGS) /implib:gobject-2.0.lib /def:gobject.def || rm $@
-
- gobject-2.28s.lib : $(gobject_OBJECTS)
- lib /out:$@ $(gobject_OBJECTS)
---- misc/glib-2.28.1/gthread/makefile.msc 2011-02-18 16:35:00.000000000 +0100
-+++ misc/build/glib-2.28.1/gthread/makefile.msc 2011-03-04 08:43:06.900355800 +0100
-@@ -7,10 +7,10 @@
-
- ################################################################
-
--INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib
-+INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib $(SOLARINC)
- DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GThread\"
- all : \
-- libgthread-2.0-0.dll
-+ gthreadlo.dll
-
- gthread_OBJECTS = \
- gthread-impl.obj
-@@ -19,8 +19,8 @@
- $(CC) -c $(CFLAGS) gthread-impl.c
-
- gthread.res : gthread.rc
-- rc -DBUILDNUMBER=0 -r -fo gthread.res gthread.rc
-+ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo gthread.res gthread.rc
-
--libgthread-2.0-0.dll : $(gthread_OBJECTS) gthread.def gthread.res
-+gthreadlo.dll : $(gthread_OBJECTS) gthread.def gthread.res
- $(CC) $(CFLAGS) -LD -Fe$@ $(gthread_OBJECTS) gthread.res \
- ..\glib\glib-2.0.lib $(DEPCLIBS) user32.lib $(LDFLAGS) /implib:gthread-2.0.lib /def:gthread.def
---- misc/glib-2.28.1/makefile.msc 2009-04-01 01:04:20.000000000 +0200
-+++ misc/build/glib-2.28.1/makefile.msc 2011-03-04 09:11:06.663432800 +0100
-@@ -1,7 +1,7 @@
- ## Makefile for building the GLib dlls with Microsoft C
- ## Use: nmake -f makefile.msc
-
--PARTS = glib gmodule gthread gobject gio tests
-+PARTS = "build\win32\dirent" glib gmodule gthread gobject gio tests
-
- all : \
- config.h \
-@@ -22,7 +22,7 @@
- @cd ..
-
- config.h: config.h.win32
-- copy config.h.win32 config.h
-+ cp config.h.win32 config.h
-
--glibconfig.h: glibconfig.h.win32
-- copy glibconfig.h.win32 glibconfig.h
-+glibconfig.h: glib/glibconfig.h.win32
-+ cp glib/glibconfig.h.win32 glib/glibconfig.h
---- misc/glib-2.28.1/tests/makefile.msc 2011-02-18 16:35:43.000000000 +0100
-+++ misc/build/glib-2.28.1/tests/makefile.msc 2011-03-04 08:33:02.079762100 +0100
-@@ -7,7 +7,7 @@
-
- ################################################################
-
--INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I ..\glib -I ..\gmodule
-+INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I ..\glib -I ..\gmodule $(SOLARINC)
- DEFINES = -DHAVE_CONFIG_H -DENABLE_REGEX
-
- NONAUTOMATIC_TESTS = \
-@@ -79,7 +79,7 @@
- libmoduletestplugin_a.dll \
- libmoduletestplugin_b.dll
-
--all : $(TESTS) $(NONAUTOMATIC_TESTS) $(DLLS)
-+all :
-
- .c.exe :
- $(CC) $(CFLAGS) -c $<
---- misc/glib-2.28.1/glib/glibconfig.h Wed Aug 20 14:33:55 2008
-+++ misc/build/glib-2.28.1/glib/glibconfig.h Wed Aug 20 14:26:42 2008
-@@ -1 +1,285 @@
--dummy
-+/* glibconfig.h.win32.in. Originally merged from two versions of
-+ * glibconfig.h, generated by the GLib configure script, for gcc and
-+ * MSVC.
-+ */
-+
-+/* glibconfig.h
-+ *
-+ * This is a generated file. Please modify 'glibconfig.h.win32.in'
-+ */
-+
-+#ifndef __G_LIBCONFIG_H__
-+#define __G_LIBCONFIG_H__
-+
-+#include <glib/gmacros.h>
-+
-+#include <limits.h>
-+#include <float.h>
-+
-+G_BEGIN_DECLS
-+
-+#define G_MINFLOAT FLT_MIN
-+#define G_MAXFLOAT FLT_MAX
-+#define G_MINDOUBLE DBL_MIN
-+#define G_MAXDOUBLE DBL_MAX
-+#define G_MINSHORT SHRT_MIN
-+#define G_MAXSHORT SHRT_MAX
-+#define G_MAXUSHORT USHRT_MAX
-+#define G_MININT INT_MIN
-+#define G_MAXINT INT_MAX
-+#define G_MAXUINT UINT_MAX
-+#define G_MINLONG LONG_MIN
-+#define G_MAXLONG LONG_MAX
-+#define G_MAXULONG ULONG_MAX
-+
-+typedef signed char gint8;
-+typedef unsigned char guint8;
-+typedef signed short gint16;
-+typedef unsigned short guint16;
-+#define G_GINT16_MODIFIER "h"
-+#define G_GINT16_FORMAT "hi"
-+#define G_GUINT16_FORMAT "hu"
-+typedef signed int gint32;
-+typedef unsigned int guint32;
-+#define G_GINT32_MODIFIER ""
-+#define G_GINT32_FORMAT "i"
-+#define G_GUINT32_FORMAT "u"
-+#define G_HAVE_GINT64 1 /* deprecated, always true */
-+
-+#ifndef _MSC_VER
-+G_GNUC_EXTENSION typedef signed long long gint64;
-+G_GNUC_EXTENSION typedef unsigned long long guint64;
-+#else /* _MSC_VER */
-+typedef signed __int64 gint64;
-+typedef unsigned __int64 guint64;
-+#endif /* _MSC_VER */
-+
-+#ifndef _MSC_VER
-+#define G_GINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##LL))
-+#else /* _MSC_VER */
-+#define G_GINT64_CONSTANT(val) (val##i64)
-+#endif /* _MSC_VER */
-+#ifndef _MSC_VER
-+#define G_GUINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##ULL))
-+#else /* _MSC_VER */
-+#define G_GUINT64_CONSTANT(val) (val##Ui64)
-+#endif /* _MSC_VER */
-+#define G_GINT64_MODIFIER "I64"
-+#define G_GINT64_FORMAT "I64i"
-+#define G_GUINT64_FORMAT "I64u"
-+
-+#if defined(_WIN64) || defined(_M_X64) || defined(_M_AMD64)
-+
-+#define GLIB_SIZEOF_VOID_P 8
-+#define GLIB_SIZEOF_LONG 4
-+#define GLIB_SIZEOF_SIZE_T 8
-+
-+typedef signed long long gssize;
-+typedef unsigned long long gsize;
-+#define G_GSIZE_MODIFIER "I64"
-+#define G_GSSIZE_FORMAT "I64d"
-+#define G_GSIZE_FORMAT "I64u"
-+
-+#define G_MAXSIZE G_MAXUINT64
-+#define G_MINSSIZE G_MININT64
-+#define G_MAXSSIZE G_MAXINT64
-+
-+#else
-+
-+#define GLIB_SIZEOF_VOID_P 4
-+#define GLIB_SIZEOF_LONG 4
-+#define GLIB_SIZEOF_SIZE_T 4
-+
-+typedef signed int gssize;
-+typedef unsigned int gsize;
-+#define G_GSIZE_MODIFIER ""
-+#define G_GSSIZE_FORMAT "i"
-+#define G_GSIZE_FORMAT "u"
-+
-+#define G_MAXSIZE G_MAXUINT
-+#define G_MINSSIZE G_MININT
-+#define G_MAXSSIZE G_MAXINT
-+
-+#endif
-+
-+typedef gint64 goffset;
-+#define G_MINOFFSET G_MININT64
-+#define G_MAXOFFSET G_MAXINT64
-+
-+#define G_GOFFSET_MODIFIER G_GINT64_MODIFIER
-+#define G_GOFFSET_FORMAT G_GINT64_FORMAT
-+#define G_GOFFSET_CONSTANT(val) G_GINT64_CONSTANT(val)
-+
-+
-+#ifndef _WIN64
-+
-+#define GPOINTER_TO_INT(p) ((gint) (p))
-+#define GPOINTER_TO_UINT(p) ((guint) (p))
-+
-+#define GINT_TO_POINTER(i) ((gpointer) (i))
-+#define GUINT_TO_POINTER(u) ((gpointer) (u))
-+
-+typedef signed int gintptr;
-+typedef unsigned int guintptr;
-+
-+#define G_GINTPTR_MODIFIER ""
-+#define G_GINTPTR_FORMAT "i"
-+#define G_GUINTPTR_FORMAT "u"
-+
-+#else
-+
-+#define GPOINTER_TO_INT(p) ((gint) (gint64) (p))
-+#define GPOINTER_TO_UINT(p) ((guint) (guint64) (p))
-+
-+#define GINT_TO_POINTER(i) ((gpointer) (gint64) (i))
-+#define GUINT_TO_POINTER(u) ((gpointer) (guint64) (u))
-+
-+#ifndef _MSC_VER
-+typedef signed long long gintptr;
-+typedef unsigned long long guintptr;
-+#else
-+typedef signed __int64 gintptr;
-+typedef unsigned __int64 guintptr;
-+#endif
-+
-+#define G_GINTPTR_MODIFIER "I64"
-+#define G_GINTPTR_FORMAT "I64i"
-+#define G_GUINTPTR_FORMAT "I64u"
-+
-+#endif
-+
-+#ifdef NeXT /* @#%@! NeXTStep */
-+# define g_ATEXIT(proc) (!atexit (proc))
-+#else
-+# define g_ATEXIT(proc) (atexit (proc))
-+#endif
-+
-+#define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END
-+
-+#define GLIB_MAJOR_VERSION 2
-+#define GLIB_MINOR_VERSION 28
-+#define GLIB_MICRO_VERSION 1
-+
-+#define G_OS_WIN32
-+#define G_PLATFORM_WIN32
-+
-+
-+#ifndef _MSC_VER
-+#define G_VA_COPY va_copy
-+#endif /* not _MSC_VER */
-+
-+#ifdef __cplusplus
-+#define G_HAVE_INLINE 1
-+#else /* !__cplusplus */
-+#ifndef _MSC_VER
-+#define G_HAVE_INLINE 1
-+#endif /* _MSC_VER */
-+#define G_HAVE___INLINE 1
-+#if !defined(_MSC_VER) && !defined(__DMC__)
-+#define G_HAVE___INLINE__ 1
-+#endif /* !_MSC_VER and !__DMC__ */
-+#endif /* !__cplusplus */
-+
-+#define G_CAN_INLINE 1
-+
-+#ifndef _MSC_VER
-+#define G_HAVE_ISO_VARARGS 1
-+
-+/* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi
-+ * is passed ISO vararg support is turned off, and there is no work
-+ * around to turn it on, so we unconditionally turn it off.
-+ */
-+#if __GNUC__ == 2 && __GNUC_MINOR__ == 95
-+# undef G_HAVE_ISO_VARARGS
-+#endif
-+
-+#define G_HAVE_GNUC_VARARGS 1
-+#else /* _MSC_VER */
-+/* varargs macros available since msvc8 (vs2005) */
-+# if _MSC_VER >= 1400
-+# define G_HAVE_ISO_VARARGS 1
-+# endif
-+#endif /* not _MSC_VER */
-+#define G_HAVE_GROWING_STACK 0
-+
-+#define G_GNUC_INTERNAL
-+
-+#define G_THREADS_ENABLED
-+#define G_THREADS_IMPL_WIN32
-+typedef struct _GMutex* GStaticMutex;
-+#define G_STATIC_MUTEX_INIT NULL
-+#define g_static_mutex_get_mutex(mutex) \
-+ (g_static_mutex_get_mutex_impl_shortcut (mutex))
-+/* This represents a system thread as used by the implementation. An
-+ * alien implementaion, as loaded by g_thread_init can only count on
-+ * "sizeof (gpointer)" bytes to store their info. We however need more
-+ * for some of our native implementations. */
-+typedef union _GSystemThread GSystemThread;
-+union _GSystemThread
-+{
-+#ifndef _WIN64
-+ char data[4];
-+#else
-+ char data[8];
-+#endif
-+ double dummy_double;
-+ void *dummy_pointer;
-+ long dummy_long;
-+};
-+
-+#define GINT16_TO_LE(val) ((gint16) (val))
-+#define GUINT16_TO_LE(val) ((guint16) (val))
-+#define GINT16_TO_BE(val) ((gint16) GUINT16_SWAP_LE_BE (val))
-+#define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
-+#define GINT32_TO_LE(val) ((gint32) (val))
-+#define GUINT32_TO_LE(val) ((guint32) (val))
-+#define GINT32_TO_BE(val) ((gint32) GUINT32_SWAP_LE_BE (val))
-+#define GUINT32_TO_BE(val) (GUINT32_SWAP_LE_BE (val))
-+#define GINT64_TO_LE(val) ((gint64) (val))
-+#define GUINT64_TO_LE(val) ((guint64) (val))
-+#define GINT64_TO_BE(val) ((gint64) GUINT64_SWAP_LE_BE (val))
-+#define GUINT64_TO_BE(val) (GUINT64_SWAP_LE_BE (val))
-+#define GLONG_TO_LE(val) ((glong) GINT32_TO_LE (val))
-+#define GULONG_TO_LE(val) ((gulong) GUINT32_TO_LE (val))
-+#define GLONG_TO_BE(val) ((glong) GINT32_TO_BE (val))
-+#define GULONG_TO_BE(val) ((gulong) GUINT32_TO_BE (val))
-+#define GINT_TO_LE(val) ((gint) GINT32_TO_LE (val))
-+#define GUINT_TO_LE(val) ((guint) GUINT32_TO_LE (val))
-+#define GINT_TO_BE(val) ((gint) GINT32_TO_BE (val))
-+#define GUINT_TO_BE(val) ((guint) GUINT32_TO_BE (val))
-+#define GSIZE_TO_LE(val) ((gsize) GUINT32_TO_LE (val))
-+#define GSSIZE_TO_LE(val) ((gssize) GINT32_TO_LE (val))
-+#define GSIZE_TO_BE(val) ((gsize) GUINT32_TO_BE (val))
-+#define GSSIZE_TO_BE(val) ((gssize) GINT32_TO_BE (val))
-+#define G_BYTE_ORDER G_LITTLE_ENDIAN
-+
-+#define GLIB_SYSDEF_POLLIN =1
-+#define GLIB_SYSDEF_POLLOUT =4
-+#define GLIB_SYSDEF_POLLPRI =2
-+#define GLIB_SYSDEF_POLLHUP =16
-+#define GLIB_SYSDEF_POLLERR =8
-+#define GLIB_SYSDEF_POLLNVAL =32
-+
-+#define G_MODULE_SUFFIX "dll"
-+
-+/* A GPid is an abstraction for a process "handle". It is *not* an
-+ * abstraction for a process identifier in general. GPid is used in
-+ * GLib only for descendant processes spawned with the g_spawn*
-+ * functions. On POSIX there is no "process handle" concept as such,
-+ * but on Windows a GPid is a handle to a process, a kind of pointer,
-+ * not a process identifier.
-+ */
-+typedef void * GPid;
-+
-+#define GLIB_SYSDEF_AF_UNIX 1
-+#define GLIB_SYSDEF_AF_INET 2
-+#define GLIB_SYSDEF_AF_INET6 23
-+
-+#define GLIB_SYSDEF_MSG_OOB 1
-+#define GLIB_SYSDEF_MSG_PEEK 2
-+#define GLIB_SYSDEF_MSG_DONTROUTE 4
-+
-+G_END_DECLS
-+
-+#endif /* GLIBCONFIG_H */
-+
---- misc/glib-2.28.1/gmodule/gmoduleconf.h Wed Aug 20 14:33:55 2008
-+++ misc/build/glib-2.28.1/gmodule/gmoduleconf.h Wed Aug 20 14:26:42 2008
-@@ -1 +1,45 @@
--dummy
-+/* GMODULE - GLIB wrapper code for dynamic module loading
-+ * Copyright (C) 1998 Tim Janik
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Lesser General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ * Lesser General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Lesser General Public
-+ * License along with this library; if not, write to the
-+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+ * Boston, MA 02111-1307, USA.
-+ */
-+#ifndef __G_MODULE_CONF_H__
-+#define __G_MODULE_CONF_H__
-+
-+
-+#ifdef __cplusplus
-+extern "C" {
-+#endif /* __cplusplus */
-+
-+
-+#define G_MODULE_IMPL_NONE 0
-+#define G_MODULE_IMPL_DL 1
-+#define G_MODULE_IMPL_DLD 2
-+#define G_MODULE_IMPL_WIN32 3
-+#define G_MODULE_IMPL_OS2 4
-+#define G_MODULE_IMPL_BEOS 5
-+#define G_MODULE_IMPL_DYLD 6
-+
-+#define G_MODULE_IMPL G_MODULE_IMPL_WIN32
-+#undef G_MODULE_HAVE_DLERROR
-+
-+#ifdef __cplusplus
-+}
-+#endif /* __cplusplus */
-+
-+
-+#endif /* __G_MODULE_CONF_H__ */
-+
---- misc/glib-2.28.1/config.h Wed Aug 20 14:33:55 2008
-+++ misc/build/glib-2.28.1/config.h Wed Aug 20 14:26:42 2008
-@@ -1 +1,834 @@
--dummy
-+/* config.h.win32.in Merged from two versions generated by configure for gcc and MSVC. */
-+/* config.h. Generated by configure. */
-+/* config.h.in. Generated from configure.ac by autoheader. */
-+
-+/* Define if building universal (internal helper macro) */
-+/* #undef AC_APPLE_UNIVERSAL_BUILD */
-+
-+/* define if asm blocks can use numeric local labels */
-+/* #undef ASM_NUMERIC_LABELS */
-+
-+/* poll doesn't work on devices */
-+#define BROKEN_POLL 1
-+
-+/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
-+ systems. This function is required for `alloca.c' support on those systems.
-+ */
-+/* #undef CRAY_STACKSEG_END */
-+
-+/* Define to 1 if using `alloca.c'. */
-+/* #undef C_ALLOCA */
-+
-+/* Whether to disable memory pools */
-+/* #undef DISABLE_MEM_POOLS */
-+
-+/* Whether to enable GC friendliness by default */
-+/* #undef ENABLE_GC_FRIENDLY_DEFAULT */
-+
-+/* always defined to indicate that i18n is enabled */
-+#define ENABLE_NLS 1
-+
-+/* include GRegex */
-+#define ENABLE_REGEX /**/
-+
-+/* Define the gettext package to be used */
-+#define GETTEXT_PACKAGE "glib20"
-+
-+/* Define to the GLIB binary age */
-+#define GLIB_BINARY_AGE 2801
-+
-+/* Byte contents of gmutex */
-+/* #undef GLIB_BYTE_CONTENTS_GMUTEX */
-+
-+/* Define to the GLIB interface age */
-+#define GLIB_INTERFACE_AGE 1
-+
-+/* Define the location where the catalogs will be installed */
-+#define GLIB_LOCALE_DIR "NONE/share/locale"
-+
-+/* Define to the GLIB major version */
-+#define GLIB_MAJOR_VERSION 2
-+
-+/* Define to the GLIB micro version */
-+#define GLIB_MICRO_VERSION 1
-+
-+/* Define to the GLIB minor version */
-+#define GLIB_MINOR_VERSION 28
-+
-+/* The size of gmutex, as computed by sizeof. */
-+/* #undef GLIB_SIZEOF_GMUTEX */
-+
-+/* The size of system_thread, as computed by sizeof. */
-+#define GLIB_SIZEOF_SYSTEM_THREAD 4
-+
-+/* alpha atomic implementation */
-+/* #undef G_ATOMIC_ALPHA */
-+
-+/* arm atomic implementation */
-+/* #undef G_ATOMIC_ARM */
-+
-+/* cris atomic implementation */
-+/* #undef G_ATOMIC_CRIS */
-+
-+/* crisv32 atomic implementation */
-+/* #undef G_ATOMIC_CRISV32 */
-+
-+/* i486 atomic implementation */
-+#ifndef _MSC_VER
-+#define G_ATOMIC_I486 1
-+#endif /* _MSC_VER */
-+
-+/* ia64 atomic implementation */
-+/* #undef G_ATOMIC_IA64 */
-+
-+/* powerpc atomic implementation */
-+/* #undef G_ATOMIC_POWERPC */
-+
-+/* s390 atomic implementation */
-+/* #undef G_ATOMIC_S390 */
-+
-+/* sparcv9 atomic implementation */
-+/* #undef G_ATOMIC_SPARCV9 */
-+
-+/* x86_64 atomic implementation */
-+/* #undef G_ATOMIC_X86_64 */
-+
-+/* Have inline keyword */
-+#ifndef _MSC_VER
-+#define G_HAVE_INLINE 1
-+#else /* _MSC_VER */
-+/* #undef G_HAVE_INLINE */
-+#endif /* _MSC_VER */
-+
-+/* Have __inline keyword */
-+#define G_HAVE___INLINE 1
-+
-+/* Have __inline__ keyword */
-+#if !defined(_MSC_VER) && !defined(__DMC__)
-+#define G_HAVE___INLINE__ 1
-+#else /* _MSC_VER or __DMC__ */
-+/* #undef G_HAVE___INLINE__ */
-+#endif /* _MSC_VER or __DMC__ */
-+
-+/* Source file containing theread implementation */
-+#define G_THREAD_SOURCE "gthread-win32.c"
-+
-+/* A 'va_copy' style function */
-+#ifndef _MSC_VER
-+#define G_VA_COPY va_copy
-+#else /* _MSC_VER */
-+/* #undef G_VA_COPY */
-+#endif /* _MSC_VER */
-+
-+/* 'va_lists' cannot be copies as values */
-+/* #undef G_VA_COPY_AS_ARRAY */
-+
-+/* Define to 1 if you have `alloca', as a function or macro. */
-+#define HAVE_ALLOCA 1
-+
-+/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
-+ */
-+/* #undef HAVE_ALLOCA_H */
-+
-+/* Define to 1 if you have the <arpa/nameser_compat.h> header file. */
-+/* #undef HAVE_ARPA_NAMESER_COMPAT_H */
-+
-+/* Define to 1 if you have the `atexit' function. */
-+#define HAVE_ATEXIT 1
-+
-+/* Define to 1 if you have the <attr/xattr.h> header file. */
-+/* #undef HAVE_ATTR_XATTR_H */
-+
-+/* Define to 1 if you have the `bind_textdomain_codeset' function. */
-+#define HAVE_BIND_TEXTDOMAIN_CODESET 1
-+
-+/* Define if you have a version of the snprintf function with semantics as
-+ specified by the ISO C99 standard. */
-+/* #undef HAVE_C99_SNPRINTF */
-+
-+/* Define if you have a version of the vsnprintf function with semantics as
-+ specified by the ISO C99 standard. */
-+/* #undef HAVE_C99_VSNPRINTF */
-+
-+/* define to 1 if Carbon is available */
-+/* #undef HAVE_CARBON */
-+
-+/* Define to 1 if you have the `chown' function. */
-+/* #undef HAVE_CHOWN */
-+
-+/* Define to 1 if you have the `clock_gettime' function. */
-+/* #undef HAVE_CLOCK_GETTIME */
-+
-+/* Have nl_langinfo (CODESET) */
-+/* #undef HAVE_CODESET */
-+
-+/* Define to 1 if you have the <crt_externs.h> header file. */
-+/* #undef HAVE_CRT_EXTERNS_H */
-+
-+/* Define if dbus-1 is available */
-+/* #undef HAVE_DBUS1 */
-+
-+/* Define to 1 if you have the `dcgettext' function. */
-+#define HAVE_DCGETTEXT 1
-+
-+/* Define to 1 if you have the <dirent.h> header file. */
-+#ifndef _MSC_VER
-+#define HAVE_DIRENT_H 1
-+#else
-+/* #undef HAVE_DIRENT_H */
-+#endif
-+
-+/* Define to 1 if you have the <dlfcn.h> header file. */
-+/* #undef HAVE_DLFCN_H */
-+
-+/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
-+/* #undef HAVE_DOPRNT */
-+
-+/* define for working do while(0) macros */
-+#define HAVE_DOWHILE_MACROS 1
-+
-+/* Define to 1 if you have the `endmntent' function. */
-+/* #undef HAVE_ENDMNTENT */
-+
-+/* Define to 1 if you have the `endservent' function. */
-+/* #undef HAVE_ENDSERVENT */
-+
-+/* Define if we have FAM */
-+/* #undef HAVE_FAM */
-+
-+/* Define to 1 if you have the <fam.h> header file. */
-+/* #undef HAVE_FAM_H */
-+
-+/* Define if we have FAMNoExists in fam */
-+/* #undef HAVE_FAM_NO_EXISTS */
-+
-+/* Define to 1 if you have the `fchmod' function. */
-+/* #undef HAVE_FCHMOD */
-+
-+/* Define to 1 if you have the `fchown' function. */
-+/* #undef HAVE_FCHOWN */
-+
-+/* Define to 1 if you have the `fdwalk' function. */
-+/* #undef HAVE_FDWALK */
-+
-+/* Define to 1 if you have the <float.h> header file. */
-+#define HAVE_FLOAT_H 1
-+
-+/* Define to 1 if you have the <fstab.h> header file. */
-+/* #undef HAVE_FSTAB_H */
-+
-+/* Define to 1 if you have the `fsync' function. */
-+/* #undef HAVE_FSYNC */
-+
-+/* we have the futex(2) system call */
-+/* #undef HAVE_FUTEX */
-+
-+/* Define to 1 if you have the `getcwd' function. */
-+#define HAVE_GETCWD 1
-+
-+/* Define to 1 if you have the `getc_unlocked' function. */
-+/* #undef HAVE_GETC_UNLOCKED */
-+
-+/* Define to 1 if you have the `getgrgid' function. */
-+/* #undef HAVE_GETGRGID */
-+
-+/* Define to 1 if you have the `getmntent_r' function. */
-+/* #undef HAVE_GETMNTENT_R */
-+
-+/* Define to 1 if you have the `getmntinfo' function. */
-+/* #undef HAVE_GETMNTINFO */
-+
-+/* Define to 1 if you have the `getprotobyname_r' function. */
-+/* #undef HAVE_GETPROTOBYNAME_R */
-+
-+/* Define to 1 if you have the `getpwuid' function. */
-+/* #undef HAVE_GETPWUID */
-+
-+/* Define if the GNU gettext() function is already present or preinstalled. */
-+#define HAVE_GETTEXT 1
-+
-+/* Define to 1 if you have the `gmtime_r' function. */
-+/* #undef HAVE_GMTIME_R */
-+
-+/* define to use system printf */
-+/* #undef HAVE_GOOD_PRINTF */
-+
-+/* Define to 1 if you have the <grp.h> header file. */
-+/* #undef HAVE_GRP_H */
-+
-+/* Define to 1 if you have the `hasmntopt' function. */
-+/* #undef HAVE_HASMNTOPT */
-+
-+/* Define to 1 if you have the `inotify_init1' function. */
-+/* #undef HAVE_INOTIFY_INIT1 */
-+
-+/* define to support printing 64-bit integers with format I64 */
-+#define HAVE_INT64_AND_I64 1
-+
-+/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
-+#ifndef _MSC_VER
-+#define HAVE_INTMAX_T 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_INTMAX_T */
-+#endif /* _MSC_VER */
-+
-+/* Define to 1 if you have the <inttypes.h> header file. */
-+#ifndef _MSC_VER
-+#define HAVE_INTTYPES_H 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_INTTYPES_H */
-+#endif /* _MSC_VER */
-+
-+/* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
-+ declares uintmax_t. */
-+#ifndef _MSC_VER
-+#define HAVE_INTTYPES_H_WITH_UINTMAX 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */
-+#endif /* _MSC_VER */
-+
-+/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
-+/* #undef HAVE_LANGINFO_CODESET */
-+
-+/* Define to 1 if you have the `lchmod' function. */
-+/* #undef HAVE_LCHMOD */
-+
-+/* Define to 1 if you have the `lchown' function. */
-+/* #undef HAVE_LCHOWN */
-+
-+/* Define if your <locale.h> file defines LC_MESSAGES. */
-+/* #undef HAVE_LC_MESSAGES */
-+
-+/* Define to 1 if you have the <limits.h> header file. */
-+#define HAVE_LIMITS_H 1
-+
-+/* Define to 1 if you have the `link' function. */
-+/* #undef HAVE_LINK */
-+
-+/* Define to 1 if you have the <locale.h> header file. */
-+#define HAVE_LOCALE_H 1
-+
-+/* Define to 1 if you have the `localtime_r' function. */
-+/* #undef HAVE_LOCALTIME_R */
-+
-+/* Define if you have the 'long double' type. */
-+#define HAVE_LONG_DOUBLE 1
-+
-+/* Define if you have the 'long long' type. */
-+#ifndef _MSC_VER
-+#define HAVE_LONG_LONG 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_LONG_LONG */
-+#endif /* _MSC_VER */
-+
-+/* define if system printf can print long long */
-+#define HAVE_LONG_LONG_FORMAT 1
-+
-+/* Define to 1 if you have the `lstat' function. */
-+/* #undef HAVE_LSTAT */
-+
-+/* Define to 1 if you have the <malloc.h> header file. */
-+#define HAVE_MALLOC_H 1
-+
-+/* Define to 1 if you have the `memalign' function. */
-+/* #undef HAVE_MEMALIGN */
-+
-+/* Define to 1 if you have the `memmem' function. */
-+/* #undef HAVE_MEMMEM */
-+
-+/* Define to 1 if you have the `memmove' function. */
-+#define HAVE_MEMMOVE 1
-+
-+/* Define to 1 if you have the <memory.h> header file. */
-+#define HAVE_MEMORY_H 1
-+
-+/* Define to 1 if you have the `mmap' function. */
-+/* #undef HAVE_MMAP */
-+
-+/* Define to 1 if you have the <mntent.h> header file. */
-+/* #undef HAVE_MNTENT_H */
-+
-+/* Have a monotonic clock */
-+/* #undef HAVE_MONOTONIC_CLOCK */
-+
-+/* Define to 1 if you have the `nanosleep' function. */
-+/* #undef HAVE_NANOSLEEP */
-+
-+/* Define to 1 if you have the <netdb.h> header file. */
-+/* #undef HAVE_NETDB_H */
-+
-+/* Have non-POSIX function getgrgid_r */
-+/* #undef HAVE_NONPOSIX_GETGRGID_R */
-+
-+/* Have non-POSIX function getpwuid_r */
-+/* #undef HAVE_NONPOSIX_GETPWUID_R */
-+
-+/* Define to 1 if you have the `nsleep' function. */
-+/* #undef HAVE_NSLEEP */
-+
-+/* Define to 1 if you have the `on_exit' function. */
-+/* #undef HAVE_ON_EXIT */
-+
-+/* Define to 1 if you have the `pipe2' function. */
-+/* #undef HAVE_PIPE2 */
-+
-+/* Define to 1 if you have the `poll' function. */
-+/* #undef HAVE_POLL */
-+
-+/* Have POSIX function getgrgid_r */
-+/* #undef HAVE_POSIX_GETGRGID_R */
-+
-+/* Have POSIX function getpwuid_r */
-+/* #undef HAVE_POSIX_GETPWUID_R */
-+
-+/* Define to 1 if you have the `posix_memalign' function. */
-+/* #undef HAVE_POSIX_MEMALIGN */
-+
-+/* Have function pthread_attr_setstacksize */
-+/* #undef HAVE_PTHREAD_ATTR_SETSTACKSIZE */
-+
-+/* Define to 1 if the system has the type `ptrdiff_t'. */
-+#define HAVE_PTRDIFF_T 1
-+
-+/* Define to 1 if you have the <pwd.h> header file. */
-+/* #undef HAVE_PWD_H */
-+
-+/* Define to 1 if you have the `readlink' function. */
-+/* #undef HAVE_READLINK */
-+
-+/* Define to 1 if you have the <sched.h> header file. */
-+/* #undef HAVE_SCHED_H */
-+
-+/* Define to 1 if libselinux is available */
-+/* #undef HAVE_SELINUX */
-+
-+/* Define to 1 if you have the <selinux/selinux.h> header file. */
-+/* #undef HAVE_SELINUX_SELINUX_H */
-+
-+/* Define to 1 if you have the `setenv' function. */
-+/* #undef HAVE_SETENV */
-+
-+/* Define to 1 if you have the `setlocale' function. */
-+#define HAVE_SETLOCALE 1
-+
-+/* Define to 1 if you have the `setmntent' function. */
-+/* #undef HAVE_SETMNTENT */
-+
-+/* Define to 1 if you have the `setresuid' function. */
-+/* #undef HAVE_SETRESUID */
-+
-+/* Define to 1 if you have the `setreuid' function. */
-+/* #undef HAVE_SETREUID */
-+
-+/* Define to 1 if you have the `snprintf' function. */
-+#ifndef _MSC_VER
-+#define HAVE_SNPRINTF 1
-+#ifdef __DMC__
-+#define snprintf _snprintf
-+#endif
-+#else /* _MSC_VER */
-+/* #undef HAVE_SNPRINTF */
-+#endif /* _MSC_VER */
-+
-+/* Define to 1 if you have the `splice' function. */
-+/* #undef HAVE_SPLICE */
-+
-+/* Define to 1 if you have the `statfs' function. */
-+/* #undef HAVE_STATFS */
-+
-+/* Define to 1 if you have the `statvfs' function. */
-+/* #undef HAVE_STATVFS */
-+
-+/* Define to 1 if you have the <stddef.h> header file. */
-+#define HAVE_STDDEF_H 1
-+
-+/* Define to 1 if you have the <stdint.h> header file. */
-+#ifndef _MSC_VER
-+#define HAVE_STDINT_H 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_STDINT_H */
-+#endif /* _MSC_VER */
-+
-+/* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
-+ uintmax_t. */
-+#ifndef _MSC_VER
-+#define HAVE_STDINT_H_WITH_UINTMAX 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_STDINT_H_WITH_UINTMAX */
-+#endif /* _MSC_VER */
-+
-+/* Define to 1 if you have the <stdlib.h> header file. */
-+#define HAVE_STDLIB_H 1
-+
-+/* Define to 1 if you have the `stpcpy' function. */
-+/* #undef HAVE_STPCPY */
-+
-+/* Define to 1 if you have the `strcasecmp' function. */
-+#if !defined(_MSC_VER) && !defined(__DMC__)
-+#define HAVE_STRCASECMP 1
-+#else /* _MSC_VER or __DMC__ */
-+/* #undef HAVE_STRCASECMP */
-+#endif /* _MSC_VER or __DMC__ */
-+
-+/* Define to 1 if you have the `strerror' function. */
-+#define HAVE_STRERROR 1
-+
-+/* Define to 1 if you have the <strings.h> header file. */
-+#if !defined(_MSC_VER) && !defined(__DMC__)
-+#define HAVE_STRINGS_H 1
-+#else /* _MSC_VER or __DMC__ */
-+/* #undef HAVE_STRINGS_H */
-+#endif /* _MSC_VER or __DMC__ */
-+
-+/* Define to 1 if you have the <string.h> header file. */
-+#define HAVE_STRING_H 1
-+
-+/* Have functions strlcpy and strlcat */
-+/* #undef HAVE_STRLCPY */
-+
-+/* Define to 1 if you have the `strncasecmp' function. */
-+#if !defined(_MSC_VER) && !defined(__DMC__)
-+#define HAVE_STRNCASECMP 1
-+#else /* _MSC_VER or __DMC__ */
-+/* #undef HAVE_STRNCASECMP */
-+#endif /* _MSC_VER or __DMC__ */
-+
-+/* Define to 1 if you have the `strndup' function. */
-+/* #undef HAVE_STRNDUP */
-+
-+/* Define to 1 if you have the `strsignal' function. */
-+/* #undef HAVE_STRSIGNAL */
-+
-+/* Define to 1 if `f_bavail' is member of `struct statfs'. */
-+/* #undef HAVE_STRUCT_STATFS_F_BAVAIL */
-+
-+/* Define to 1 if `f_fstypename' is member of `struct statfs'. */
-+/* #undef HAVE_STRUCT_STATFS_F_FSTYPENAME */
-+
-+/* Define to 1 if `f_basetype' is member of `struct statvfs'. */
-+/* #undef HAVE_STRUCT_STATVFS_F_BASETYPE */
-+
-+/* Define to 1 if `st_atimensec' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_ATIMENSEC */
-+
-+/* Define to 1 if `st_atim.tv_nsec' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC */
-+
-+/* Define to 1 if `st_blksize' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */
-+
-+/* Define to 1 if `st_blocks' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_BLOCKS */
-+
-+/* Define to 1 if `st_ctimensec' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_CTIMENSEC */
-+
-+/* Define to 1 if `st_ctim.tv_nsec' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_CTIM_TV_NSEC */
-+
-+/* Define to 1 if `st_mtimensec' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_MTIMENSEC */
-+
-+/* Define to 1 if `st_mtim.tv_nsec' is member of `struct stat'. */
-+/* #undef HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC */
-+
-+/* Define to 1 if you have the `symlink' function. */
-+/* #undef HAVE_SYMLINK */
-+
-+/* Define to 1 if you have the <sys/inotify.h> header file. */
-+/* #undef HAVE_SYS_INOTIFY_H */
-+
-+/* Define to 1 if you have the <sys/mntctl.h> header file. */
-+/* #undef HAVE_SYS_MNTCTL_H */
-+
-+/* Define to 1 if you have the <sys/mnttab.h> header file. */
-+/* #undef HAVE_SYS_MNTTAB_H */
-+
-+/* Define to 1 if you have the <sys/mount.h> header file. */
-+/* #undef HAVE_SYS_MOUNT_H */
-+
-+/* Define to 1 if you have the <sys/param.h> header file. */
-+#if !defined(_MSC_VER) && !defined(__DMC__)
-+#define HAVE_SYS_PARAM_H 1
-+#else /* _MSC_VER or __DMC__ */
-+/* #undef HAVE_SYS_PARAM_H */
-+#endif /* _MSC_VER or __DMC__ */
-+
-+/* Define to 1 if you have the <sys/poll.h> header file. */
-+/* #undef HAVE_SYS_POLL_H */
-+
-+/* Define to 1 if you have the <sys/prctl.h> header file. */
-+/* #undef HAVE_SYS_PRCTL_H */
-+
-+/* Define to 1 if you have the <sys/resource.h> header file. */
-+/* #undef HAVE_SYS_RESOURCE_H */
-+
-+/* found fd_set in sys/select.h */
-+/* #undef HAVE_SYS_SELECT_H */
-+
-+/* Define to 1 if you have the <sys/statfs.h> header file. */
-+/* #undef HAVE_SYS_STATFS_H */
-+
-+/* Define to 1 if you have the <sys/statvfs.h> header file. */
-+/* #undef HAVE_SYS_STATVFS_H */
-+
-+/* Define to 1 if you have the <sys/stat.h> header file. */
-+#define HAVE_SYS_STAT_H 1
-+
-+/* Define to 1 if you have the <sys/sysctl.h> header file. */
-+/* #undef HAVE_SYS_SYSCTL_H */
-+
-+/* Define to 1 if you have the <sys/times.h> header file. */
-+/* #undef HAVE_SYS_TIMES_H */
-+
-+/* Define to 1 if you have the <sys/time.h> header file. */
-+#ifndef _MSC_VER
-+#define HAVE_SYS_TIME_H 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_SYS_TIME_H */
-+#endif /* _MSC_VER */
-+
-+/* Define to 1 if you have the <sys/types.h> header file. */
-+#define HAVE_SYS_TYPES_H 1
-+
-+/* Define to 1 if you have the <sys/uio.h> header file. */
-+/* #undef HAVE_SYS_UIO_H */
-+
-+/* Define to 1 if you have the <sys/vfstab.h> header file. */
-+/* #undef HAVE_SYS_VFSTAB_H */
-+
-+/* Define to 1 if you have the <sys/vfs.h> header file. */
-+/* #undef HAVE_SYS_VFS_H */
-+
-+/* Define to 1 if you have the <sys/vmount.h> header file. */
-+/* #undef HAVE_SYS_VMOUNT_H */
-+
-+/* Define to 1 if you have the <sys/wait.h> header file. */
-+/* #undef HAVE_SYS_WAIT_H */
-+
-+/* Define to 1 if you have the <sys/xattr.h> header file. */
-+/* #undef HAVE_SYS_XATTR_H */
-+
-+/* Define to 1 if you have the `timegm' function. */
-+/* #undef HAVE_TIMEGM */
-+
-+/* Define to 1 if you have the <unistd.h> header file. */
-+#ifndef _MSC_VER
-+#define HAVE_UNISTD_H 1
-+#else /* _MSC_VER */
-+/* #undef HAVE_UNISTD_H */
-+#endif /* _MSC_VER */
-+
-+/* Define if your printf function family supports positional parameters as
-+ specified by Unix98. */
-+/* #undef HAVE_UNIX98_PRINTF */
-+
-+/* Define to 1 if you have the `unsetenv' function. */
-+/* #undef HAVE_UNSETENV */
-+
-+/* Define to 1 if you have the `utimes' function. */
-+/* #undef HAVE_UTIMES */
-+
-+/* Define to 1 if you have the `valloc' function. */
-+/* #undef HAVE_VALLOC */
-+
-+/* Define to 1 if you have the <values.h> header file. */
-+#if !defined(_MSC_VER) && !defined(__DMC__)
-+#define HAVE_VALUES_H 1
-+#else /* _MSC_VER or __DMC__ */
-+/* #undef HAVE_VALUES_H */
-+#endif /* _MSC_VER or __DMC__ */
-+
-+/* Define to 1 if you have the `vasprintf' function. */
-+#define HAVE_VASPRINTF 1
-+
-+/* Define to 1 if you have the `vprintf' function. */
-+#define HAVE_VPRINTF 1
-+
-+/* Define to 1 if you have the `vsnprintf' function. */
-+#ifndef _MSC_VER
-+#define HAVE_VSNPRINTF 1
-+#ifdef __DMC__
-+#define vsnprintf _vsnprintf
-+#endif
-+#else /* _MSC_VER */
-+/* #undef HAVE_VSNPRINTF */
-+#endif /* _MSC_VER */
-+
-+/* Define if you have the 'wchar_t' type. */
-+#define HAVE_WCHAR_T 1
-+
-+/* Define to 1 if you have the `wcslen' function. */
-+#define HAVE_WCSLEN 1
-+
-+/* Define if you have the 'wint_t' type. */
-+#define HAVE_WINT_T 1
-+
-+/* Have a working bcopy */
-+/* #undef HAVE_WORKING_BCOPY */
-+
-+/* Define to 1 if you have the <wspiapi.h> header file. */
-+#ifndef _MSC_VER
-+/* #undef HAVE_WSPIAPI_H */
-+#else
-+#define HAVE_WSPIAPI_H 1
-+#endif
-+
-+/* Define to 1 if xattr is available */
-+/* #undef HAVE_XATTR */
-+
-+/* Define to 1 if xattr API uses XATTR_NOFOLLOW */
-+/* #undef HAVE_XATTR_NOFOLLOW */
-+
-+/* Define to 1 if you have the `_NSGetEnviron' function. */
-+/* #undef HAVE__NSGETENVIRON */
-+
-+/* Define to the sub-directory in which libtool stores uninstalled libraries.
-+ */
-+#define LT_OBJDIR ".libs/"
-+
-+/* Do we cache iconv descriptors */
-+#define NEED_ICONV_CACHE 1
-+
-+/* didn't find fd_set */
-+#define NO_FD_SET 1
-+
-+/* Define to 1 if your C compiler doesn't accept -c and -o together. */
-+/* #undef NO_MINUS_C_MINUS_O */
-+
-+/* global 'sys_errlist' not found */
-+#define NO_SYS_ERRLIST 1
-+
-+/* global 'sys_siglist' not found */
-+#define NO_SYS_SIGLIST 1
-+
-+/* global 'sys_siglist' not declared */
-+#define NO_SYS_SIGLIST_DECL 1
-+
-+/* Define to the address where bug reports for this package should be sent. */
-+#define PACKAGE_BUGREPORT "http://bugzilla.gnome.org/enter_bug.cgi?product=glib"
-+
-+/* Define to the full name of this package. */
-+#define PACKAGE_NAME "glib"
-+
-+/* Define to the full name and version of this package. */
-+#define PACKAGE_STRING "glib 2.28.1"
-+
-+/* Define to the one symbol short name of this package. */
-+#define PACKAGE_TARNAME "glib"
-+
-+/* Define to the version of this package. */
-+#define PACKAGE_VERSION "2.28.1"
-+
-+/* Maximum POSIX RT priority */
-+/* #undef POSIX_MAX_PRIORITY */
-+
-+/* define if posix_memalign() can allocate any size */
-+/* #undef POSIX_MEMALIGN_WITH_COMPLIANT_ALLOCS */
-+
-+/* Minimum POSIX RT priority */
-+/* #undef POSIX_MIN_PRIORITY */
-+
-+/* The POSIX RT yield function */
-+/* #undef POSIX_YIELD_FUNC */
-+
-+/* whether realloc (NULL,) works */
-+#define REALLOC_0_WORKS 1
-+
-+/* Define if you have correct malloc prototypes */
-+#ifndef _MSC_VER
-+#define SANE_MALLOC_PROTOS 1
-+#else /* _MSC_VER */
-+/* #undef SANE_MALLOC_PROTOS */
-+#endif /* _MSC_VER */
-+
-+/* The size of `char', as computed by sizeof. */
-+#define SIZEOF_CHAR 1
-+
-+/* The size of `int', as computed by sizeof. */
-+#define SIZEOF_INT 4
-+
-+/* The size of `long', as computed by sizeof. */
-+#define SIZEOF_LONG 4
-+
-+/* The size of `long long', as computed by sizeof. */
-+#ifndef _MSC_VER
-+#define SIZEOF_LONG_LONG 8
-+#else /* _MSC_VER */
-+#define SIZEOF_LONG_LONG 0
-+#endif /* _MSC_VER */
-+
-+/* The size of `short', as computed by sizeof. */
-+#define SIZEOF_SHORT 2
-+
-+/* The size of `size_t', as computed by sizeof. */
-+#define SIZEOF_SIZE_T 4
-+
-+/* The size of `void *', as computed by sizeof. */
-+#define SIZEOF_VOID_P 4
-+
-+/* The size of `__int64', as computed by sizeof. */
-+#define SIZEOF___INT64 8
-+
-+/* If using the C implementation of alloca, define if you know the
-+ direction of stack growth for your system; otherwise it will be
-+ automatically deduced at runtime.
-+ STACK_DIRECTION > 0 => grows toward higher addresses
-+ STACK_DIRECTION < 0 => grows toward lower addresses
-+ STACK_DIRECTION = 0 => direction of growth unknown */
-+/* #undef STACK_DIRECTION */
-+
-+/* Number of arguments to statfs() */
-+/* #undef STATFS_ARGS */
-+
-+/* Define to 1 if you have the ANSI C header files. */
-+#define STDC_HEADERS 1
-+
-+/* Using GNU libiconv */
-+/* #undef USE_LIBICONV_GNU */
-+
-+/* Using a native implementation of iconv in a separate library */
-+#define USE_LIBICONV_NATIVE 1
-+
-+/* using the system-supplied PCRE library */
-+/* #undef USE_SYSTEM_PCRE */
-+
-+/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
-+ significant byte first (like Motorola and SPARC, unlike Intel). */
-+#if defined AC_APPLE_UNIVERSAL_BUILD
-+# if defined __BIG_ENDIAN__
-+# define WORDS_BIGENDIAN 1
-+# endif
-+#else
-+# ifndef WORDS_BIGENDIAN
-+/* # undef WORDS_BIGENDIAN */
-+# endif
-+#endif
-+
-+/* Number of bits in a file offset, on hosts where this is settable. */
-+/* #undef _FILE_OFFSET_BITS */
-+
-+/* Define for large files, on AIX-style hosts. */
-+/* #undef _LARGE_FILES */
-+
-+/* Needed to get declarations for msg_control and msg_controllen on Solaris */
-+/* #undef _XOPEN_SOURCE */
-+
-+/* Needed to get declarations for msg_control and msg_controllen on Solaris */
-+/* #undef _XOPEN_SOURCE_EXTENDED */
-+
-+/* Needed to get declarations for msg_control and msg_controllen on Solaris */
-+/* #undef __EXTENSIONS__ */
-+
-+/* Define to empty if `const' does not conform to ANSI C. */
-+/* #undef const */
-+
-+/* Define to long or long long if <inttypes.h> and <stdint.h> don't define. */
-+/* #undef intmax_t */
-+
-+/* Define to empty if the C compiler doesn't support this keyword. */
-+/* #undef signed */
-+
-+/* Define to `unsigned int' if <sys/types.h> does not define. */
-+/* #undef size_t */
-+
---- misc/glib-2.28.1/gio/gvdb/makefile.msc Wed Aug 20 14:33:55 2008
-+++ misc/build/glib-2.28.1/gio/gvdb/makefile.msc Wed Aug 20 14:26:42 2008
-@@ -1 +1,24 @@
--dummy
-+TOP = ..\..\..
-+
-+!INCLUDE ..\..\build\win32\make.msc
-+
-+INCLUDES = \
-+ -FImsvc_recommended_pragmas.h \
-+ -I .. -I ..\..\glib -I ..\..\gmodule -I . -I ..\.. \
-+ $(INTL_CFLAGS) \
-+ $(SOLARINC)
-+
-+DEFINES = \
-+ -DG_LOG_DOMAIN=\"GLib-GIO\" \
-+ -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
-+ -DGIO_COMPILATION
-+
-+OBJECTS = \
-+ gvdb-reader.obj \
-+ gvdb-builder.obj
-+
-+all : giogvdb.lib
-+
-+giogvdb.lib : $(OBJECTS)
-+ lib -out:giogvdb.lib $(OBJECTS)
-+
---- misc/glib-2.28.1/gio/win32/makefile.msc Wed Aug 20 14:33:55 2008
-+++ misc/build/glib-2.28.1/gio/win32/makefile.msc Wed Aug 20 14:26:42 2008
-@@ -1 +1,27 @@
--dummy
-+TOP = ..\..\..
-+
-+!INCLUDE ..\..\build\win32\make.msc
-+
-+INCLUDES = \
-+ -FImsvc_recommended_pragmas.h \
-+ -I .. -I ..\..\glib -I ..\..\gmodule -I . -I ..\.. \
-+ $(INTL_CFLAGS) \
-+ $(SOLARINC)
-+
-+DEFINES = \
-+ -DG_LOG_DOMAIN=\"GLib-GIO\" \
-+ -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
-+ -DGIO_COMPILATION
-+
-+OBJECTS = \
-+ gwin32directorymonitor.obj \
-+ gwinhttpfile.obj \
-+ gwinhttpfileinputstream.obj \
-+ gwinhttpfileoutputstream.obj \
-+ gwinhttpvfs.obj \
-+
-+all : giowin32.lib
-+
-+giowin32.lib : $(OBJECTS)
-+ lib -out:giowin32.lib $(OBJECTS)
-+
---- misc/glib-2.28.1/gobject/gmarshal.c Wed Aug 20 14:33:55 2008
-+++ misc/build/glib-2.28.1/gobject/gmarshal.c Wed Aug 20 14:26:42 2008
-@@ -1,4 +1,13 @@
-+#include "config.h"
-
-+#include "gsourceclosure.h"
-+#include "gboxed.h"
-+#include "genums.h"
-+#include "gmarshal.h"
-+#include "gvalue.h"
-+#include "gvaluetypes.h"
-+#include "gparam.h"
-+#include "gobject.h"
-
- #ifdef G_ENABLE_DEBUG
- #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
diff --git a/glib/glib-2.28.1.noise.patch b/glib/glib-2.28.1.noise.patch
deleted file mode 100644
index f42b08a97a64..000000000000
--- a/glib/glib-2.28.1.noise.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- misc/glib-2.28.1/gio/tests/Makefile.in 2011-02-18 16:22:00.000000000 +0100
-+++ misc/build/glib-2.28.1/gio/tests/Makefile.in 2011-06-10 16:37:05.000000000 +0200
-@@ -1020,7 +1020,9 @@
- proxy_LDADD = $(progs_ldadd) \
- $(top_builddir)/gthread/libgthread-2.0.la
-
-+ifneq ($(MSGFMT),)
- MISC_STUFF = test.mo
-+endif
- DISTCLEANFILES = \
- applications/mimeinfo.cache \
- org.gtk.test.enums.xml \
diff --git a/glib/glib-2.28.1.patch b/glib/glib-2.28.1.patch
deleted file mode 100644
index 49a6faa9c2a5..000000000000
--- a/glib/glib-2.28.1.patch
+++ /dev/null
@@ -1,153 +0,0 @@
---- misc/glib-2.28.1/gio/gzlibcompressor.c 2011-02-11 16:23:12.000000000 +0100
-+++ misc/build/glib-2.28.1/gio/gzlibcompressor.c 2011-02-25 15:59:17.000000000 +0100
-@@ -73,7 +73,7 @@
- g_zlib_compressor_set_gzheader (GZlibCompressor *compressor)
- {
- /* On win32, these functions were not exported before 1.2.4 */
--#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
-+#if (!defined (G_OS_WIN32) && ! defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
- const gchar *filename;
-
- if (compressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP ||
---- misc/glib-2.28.1/gio/gzlibdecompressor.c 2011-02-11 16:23:12.000000000 +0100
-+++ misc/build/glib-2.28.1/gio/gzlibdecompressor.c 2011-02-25 16:00:43.000000000 +0100
-@@ -76,7 +76,7 @@
- g_zlib_decompressor_set_gzheader (GZlibDecompressor *decompressor)
- {
- /* On win32, these functions were not exported before 1.2.4 */
--#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
-+#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
- if (decompressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP)
- return;
-
-@@ -376,7 +376,7 @@
- *bytes_read = inbuf_size - decompressor->zstream.avail_in;
- *bytes_written = outbuf_size - decompressor->zstream.avail_out;
-
--#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
-+#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
- if (decompressor->header_data != NULL &&
- decompressor->header_data->gzheader.done == 1)
- {
---- misc/glib-2.28.1/glib/gatomic.c 2011-02-11 16:23:12.000000000 +0100
-+++ misc/build/glib-2.28.1/glib/gatomic.c 2011-02-25 15:51:45.000000000 +0100
-@@ -28,6 +28,7 @@
- #endif
-
- #include "gatomic.h"
-+#include "gthread.h"
- #include "gthreadprivate.h"
-
- /**
---- misc/glib-2.28.1/glib/gconvert.c
-+++ misc/build/glib-2.28.1/glib/gconvert.c
-@@ -58,13 +58,6 @@
-
- #include "glibintl.h"
-
--#if defined(USE_LIBICONV_GNU) && !defined (_LIBICONV_H)
--#error GNU libiconv in use but included iconv.h not from libiconv
--#endif
--#if !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)
--#error GNU libiconv not in use but included iconv.h is from libiconv
--#endif
--
-
- /**
- * SECTION:conversions
-
---- misc/glib-2.28.1/configure
-+++ misc/build/glib-2.28.1/configure
-@@ -7097,6 +7097,7 @@
- fi
-
-
-+if false; then
- # Need suitable python path for greport
-
-
-@@ -7325,6 +7326,7 @@
-
-
-
-+fi
-
-
-
-@@ -7988,6 +7988,7 @@
- CONFIG_STATUS_DEPENDENCIES='$(top_srcdir)/po/LINGUAS'
-
-
-+ if false; then
- for ac_header in locale.h
- do :
- ac_fn_c_check_header_mongrel "$LINENO" "locale.h" "ac_cv_header_locale_h" "$ac_includes_default"
-@@ -8701,6 +8701,8 @@
-
- LIBS="$INTLLIBS $LIBS"
-
-+fi
-+
- GETTEXT_PACKAGE=glib20
-
-
---- misc/glib-2.28.1/Makefile.in
-+++ misc/build/glib-2.28.1/Makefile.in
-@@ -422,7 +422,7 @@
- gio-2.0-uninstalled.pc.in gio-unix-2.0-uninstalled.pc.in
- TEST_PROGS =
- ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS}
--SUBDIRS = . m4macros glib gmodule gthread gobject gio tests po docs
-+SUBDIRS = . m4macros glib gmodule gthread gobject gio tests
- DIST_SUBDIRS = $(SUBDIRS) build
- bin_SCRIPTS = glib-gettextize
- AM_CPPFLAGS = \
---- misc/glib-2.28.1/glib/gi18n.h
-+++ misc/build/glib-2.28.1/glib/gi18n.h
-@@ -20,15 +20,10 @@
- #ifndef __G_I18N_H__
- #define __G_I18N_H__
-
--#include <glib.h>
--
--#include <libintl.h>
--#include <string.h>
--
--#define _(String) gettext (String)
--#define Q_(String) g_dpgettext (NULL, String, 0)
--#define N_(String) (String)
--#define C_(Context,String) g_dpgettext (NULL, Context "\004" String, strlen (Context) + 1)
-+#define _(String) (String)
-+#define Q_(String) (String)
-+#define N_(String) (String)
-+#define C_(Context,String) (String)
- #define NC_(Context, String) (String)
-
- #endif /* __G_I18N_H__ */
---- misc/glib-2.28.1/gio/tests/gsettings.c
-+++ misc/build/glib-2.28.1/gio/tests/gsettings.c
-@@ -1,7 +1,9 @@
-+#include "config.h"
-+
- #include <stdlib.h>
- #include <locale.h>
--#include <libintl.h>
- #include <gio/gio.h>
-+#include "glibintl.h"
- #include <gstdio.h>
- #define G_SETTINGS_ENABLE_BACKEND
- #include <gio/gsettingsbackend.h>
---- misc/glib-2.28.1/gio/tests/gschema-compile.c
-+++ misc/build/glib-2.28.1/gio/tests/gschema-compile.c
-@@ -1,8 +1,10 @@
-+#include "config.h"
-+
- #include <stdlib.h>
- #include <unistd.h>
- #include <locale.h>
--#include <libintl.h>
- #include <gio/gio.h>
-+#include "glibintl.h"
- #include <gstdio.h>
-
- typedef struct {
diff --git a/glib/makefile.mk b/glib/makefile.mk
deleted file mode 100644
index b81cc53d3547..000000000000
--- a/glib/makefile.mk
+++ /dev/null
@@ -1,390 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=glib
-TARGET=so_glib
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(SYSTEM_GLIB)" == "YES"
-all:
- @echo "An already available installation of glib should exist on your system."
- @echo "Therefore the version provided here does not need to be built in addition."
-.ENDIF
-
-# --- Files --------------------------------------------------------
-
-GLIBVERSION=2.28.1
-
-TARFILE_NAME=$(PRJNAME)-$(GLIBVERSION)
-TARFILE_MD5=9f6e85e1e38490c3956f4415bcd33e6e
-
-
-.IF "$(OS)"!="WNT"
-PATCH_FILES=glib-2.28.1.patch glib-2.28.1.noise.patch
-
-.IF "$(OS)"=="IOS"
-CONFIGURE_FLAGS= \
- glib_cv_stack_grows=no \
- glib_cv_uscore=yes \
- ac_cv_func_posix_getpwuid_r=yes \
- ac_cv_func_posix_getgrgid_r=yes \
- ac_cv_func__NSGetEnviron=no \
- --disable-shared
-FRAMEWORK=-framework CoreFoundation
-.ELSE
-CONFIGURE_FLAGS=--disable-static
-.ENDIF
-
-.IF "$(OS)"=="MACOSX" && "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+= \
- glib_cv_stack_grows=no \
- glib_cv_uscore=yes \
- ac_cv_func_posix_getpwuid_r=yes \
- ac_cv_func_posix_getgrgid_r=yes \
- ac_cv_func__NSGetEnviron=yes
-.ENDIF
-
-.IF "$(OS)" == "MACOSX"
-CONFIGURE_FLAGS += \
- --prefix=/@.__________________________________________________$(EXTRPATH)
-.ELSE
-CONFIGURE_FLAGS+=--prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC)
-.END
-
-CONFIGURE_FLAGS+=--disable-fam
-CONFIGURE_FLAGS+=CPPFLAGS="$(ARCH_FLAGS) $(EXTRA_CDEFS) -DBUILD_OS_APPLEOSX"
-CONFIGURE_FLAGS+=CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS) -I$(SOLARINCDIR)$/external"
-CONFIGURE_FLAGS+=LDFLAGS="-L$(SOLARLIBDIR) $(EXTRA_LINKFLAGS) $(FRAMEWORK)"
-
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-.ENDIF
-
-CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) ./configure
-
-.IF "$(VERBOSE)"!=""
-VFLAG=V=1
-.ENDIF
-
-BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) $(GNUMAKE) $(VFLAG) -j$(MAXPROCESS)
-
-.IF "$(OS)"!="IOS"
-
-.IF "$(OS)" == "MACOSX"
-my_ext = .0$(DLLPOST)
-.ELSE
-my_ext = $(DLLPOST).0
-.END
-
-OUT2LIB+=gio/.libs/libgio-2.0$(my_ext)
-OUT2LIB+=glib/.libs/libglib-2.0$(my_ext)
-OUT2LIB+=gmodule/.libs/libgmodule-2.0$(my_ext)
-OUT2LIB+=gobject/.libs/libgobject-2.0$(my_ext)
-OUT2LIB+=gthread/.libs/libgthread-2.0$(my_ext)
-
-OUT2BIN_NONE+=gobject/glib-mkenums
-OUT2BIN_NONE+=gobject/.libs/glib-genmarshal
-OUT2BIN_NONE+=gio/.libs/glib-compile-schemas
-
-.ELSE
-
-OUT2LIB+=gio/.libs/libgio-2.0.a
-OUT2LIB+=glib/.libs/libglib-2.0.a
-OUT2LIB+=gmodule/.libs/libgmodule-2.0.a
-OUT2LIB+=gobject/.libs/libgobject-2.0.a
-OUT2LIB+=gthread/.libs/libgthread-2.0.a
-
-.ENDIF
-
-.ELSE
-
-CONVERTFILES=gobject/gmarshal.c
-
-PATCH_FILES=glib-2.28.1-win32.patch glib-2.28.1-win32-2.patch
-
-CONFIGURE_ACTION=
-
-ADDITIONAL_FILES= config.h \
- gio/gvdb/makefile.msc \
- gio/win32/makefile.msc \
- glib/glibconfig.h \
- gmodule/gmoduleconf.h \
- gobject/glib-mkenums
-
-BUILD_ACTION=nmake -f makefile.msc
-
-OUT2BIN+=gio$/giolo.dll
-OUT2BIN+=glib$/gliblo.dll
-OUT2BIN+=gmodule$/gmodulelo.dll
-OUT2BIN+=gobject$/gobjectlo.dll
-OUT2BIN+=gthread$/gthreadlo.dll
-OUT2BIN+=gobject$/glib-mkenums
-OUT2BIN+=gobject$/glib-genmarshal.exe
-
-OUT2LIB+=build/win32/dirent/dirent.lib
-OUT2LIB+=gio/gio-2.0.lib
-OUT2LIB+=gio/gvdb/giogvdb.lib
-OUT2LIB+=gio/win32/giowin32.lib
-OUT2LIB+=glib/glib-2.0.lib
-OUT2LIB+=glib/glib-2.28s.lib
-OUT2LIB+=glib/gnulib/gnulib.lib
-OUT2LIB+=glib/pcre/pcre.lib
-OUT2LIB+=gmodule/gmodule-2.0.lib
-OUT2LIB+=gobject/glib-genmarshal.lib
-OUT2LIB+=gobject/gobject-2.0.lib
-OUT2LIB+=gthread/gthread-2.0.lib
-
-.IF "$(OS)"=="WNT"
-OUT2INC+=build$/win32$/dirent/dirent.h
-.ENDIF
-OUT2INC+=build$/win32$/make.msc
-OUT2INC+=build$/win32$/module.defs
-
-.ENDIF
-
-OUT2INC+=glib/glib.h
-OUT2INC+=glib/glib-object.h
-OUT2INC+=glib/glibconfig.h
-OUT2INC+=gmodule/gmodule.h
-
-OUT2INC+=gio/gdesktopappinfo.h
-OUT2INC+=gio/gunixcredentialsmessage.h
-OUT2INC+=gio/gunixinputstream.h
-OUT2INC+=gio/gunixsocketaddress.h
-OUT2INC+=gio/gfiledescriptorbased.h
-OUT2INC+=gio/gunixfdlist.h
-OUT2INC+=gio/gunixmounts.h
-OUT2INC+=gio/gunixconnection.h
-OUT2INC+=gio/gunixfdmessage.h
-OUT2INC+=gio/gunixoutputstream.h
-
-
-OUT2INC+=gio/gaction.h
-OUT2INC+=gio/gfileicon.h
-OUT2INC+=gio/gproxyaddressenumerator.h
-OUT2INC+=gio/gactiongroup.h
-OUT2INC+=gio/gfileinfo.h
-OUT2INC+=gio/gproxyresolver.h
-OUT2INC+=gio/gappinfo.h
-OUT2INC+=gio/gfileinputstream.h
-OUT2INC+=gio/gresolver.h
-OUT2INC+=gio/gapplication.h
-OUT2INC+=gio/gfileiostream.h
-OUT2INC+=gio/gseekable.h
-OUT2INC+=gio/gapplicationcommandline.h
-OUT2INC+=gio/gfilemonitor.h
-OUT2INC+=gio/gsettings.h
-OUT2INC+=gio/gasyncinitable.h
-OUT2INC+=gio/gfilenamecompleter.h
-OUT2INC+=gio/gsettingsbackend.h
-OUT2INC+=gio/gasyncresult.h
-OUT2INC+=gio/gfileoutputstream.h
-OUT2INC+=gio/gsimpleaction.h
-OUT2INC+=gio/gbufferedinputstream.h
-OUT2INC+=gio/gfilterinputstream.h
-OUT2INC+=gio/gsimpleactiongroup.h
-OUT2INC+=gio/gbufferedoutputstream.h
-OUT2INC+=gio/gfilteroutputstream.h
-OUT2INC+=gio/gsimpleasyncresult.h
-OUT2INC+=gio/gcancellable.h
-OUT2INC+=gio/gicon.h
-OUT2INC+=gio/gsimplepermission.h
-OUT2INC+=gio/gcharsetconverter.h
-OUT2INC+=gio/ginetaddress.h
-OUT2INC+=gio/gsocket.h
-OUT2INC+=gio/gcontenttype.h
-OUT2INC+=gio/ginetsocketaddress.h
-OUT2INC+=gio/gsocketaddress.h
-OUT2INC+=gio/gconverter.h
-OUT2INC+=gio/ginitable.h
-OUT2INC+=gio/gsocketaddressenumerator.h
-OUT2INC+=gio/gconverterinputstream.h
-OUT2INC+=gio/ginputstream.h
-OUT2INC+=gio/gsocketclient.h
-OUT2INC+=gio/gconverteroutputstream.h
-OUT2INC+=gio/gio.h
-OUT2INC+=gio/gsocketconnectable.h
-OUT2INC+=gio/gcredentials.h
-OUT2INC+=gio/gioenums.h
-OUT2INC+=gio/gsocketconnection.h
-OUT2INC+=gio/gdatainputstream.h
-OUT2INC+=gio/gioenumtypes.h
-OUT2INC+=gio/gsocketcontrolmessage.h
-OUT2INC+=gio/gdataoutputstream.h
-OUT2INC+=gio/gioerror.h
-OUT2INC+=gio/gsocketlistener.h
-OUT2INC+=gio/gdbusaddress.h
-OUT2INC+=gio/giomodule.h
-OUT2INC+=gio/gsocketservice.h
-OUT2INC+=gio/gdbusauthobserver.h
-OUT2INC+=gio/gioscheduler.h
-OUT2INC+=gio/gsrvtarget.h
-OUT2INC+=gio/gdbusconnection.h
-OUT2INC+=gio/giostream.h
-OUT2INC+=gio/gtcpconnection.h
-OUT2INC+=gio/gdbuserror.h
-OUT2INC+=gio/giotypes.h
-OUT2INC+=gio/gtcpwrapperconnection.h
-OUT2INC+=gio/gdbusintrospection.h
-OUT2INC+=gio/gloadableicon.h
-OUT2INC+=gio/gthemedicon.h
-OUT2INC+=gio/gdbusmessage.h
-OUT2INC+=gio/gmemoryinputstream.h
-OUT2INC+=gio/gthreadedsocketservice.h
-OUT2INC+=gio/gdbusmethodinvocation.h
-OUT2INC+=gio/gmemoryoutputstream.h
-OUT2INC+=gio/gtlsbackend.h
-OUT2INC+=gio/gdbusnameowning.h
-OUT2INC+=gio/gmount.h
-OUT2INC+=gio/gtlscertificate.h
-OUT2INC+=gio/gdbusnamewatching.h
-OUT2INC+=gio/gmountoperation.h
-OUT2INC+=gio/gtlsclientconnection.h
-OUT2INC+=gio/gdbusproxy.h
-OUT2INC+=gio/gnativevolumemonitor.h
-OUT2INC+=gio/gtlsconnection.h
-OUT2INC+=gio/gdbusserver.h
-OUT2INC+=gio/gnetworkaddress.h
-OUT2INC+=gio/gtlsserverconnection.h
-OUT2INC+=gio/gdbusutils.h
-OUT2INC+=gio/gnetworkservice.h
-OUT2INC+=gio/gvfs.h
-OUT2INC+=gio/gdrive.h
-OUT2INC+=gio/goutputstream.h
-OUT2INC+=gio/gvolume.h
-OUT2INC+=gio/gemblem.h
-OUT2INC+=gio/gpermission.h
-OUT2INC+=gio/gvolumemonitor.h
-OUT2INC+=gio/gemblemedicon.h
-OUT2INC+=gio/gpollableinputstream.h
-OUT2INC+=gio/gzlibcompressor.h
-OUT2INC+=gio/gfile.h
-OUT2INC+=gio/gpollableoutputstream.h
-OUT2INC+=gio/gzlibdecompressor.h
-OUT2INC+=gio/gfileattribute.h
-OUT2INC+=gio/gproxy.h
-OUT2INC+=gio/gfileenumerator.h
-OUT2INC+=gio/gproxyaddress.h
-
-OUT2INC+=glib/galloca.h
-OUT2INC+=glib/gconvert.h
-OUT2INC+=glib/gi18n.h
-OUT2INC+=glib/goption.h
-OUT2INC+=glib/gscanner.h
-OUT2INC+=glib/gthreadpool.h
-OUT2INC+=glib/garray.h
-OUT2INC+=glib/gdataset.h
-OUT2INC+=glib/giochannel.h
-OUT2INC+=glib/gpattern.h
-OUT2INC+=glib/gsequence.h
-OUT2INC+=glib/gtimer.h
-OUT2INC+=glib/gasyncqueue.h
-OUT2INC+=glib/gdate.h
-OUT2INC+=glib/gkeyfile.h
-OUT2INC+=glib/gpoll.h
-OUT2INC+=glib/gshell.h
-OUT2INC+=glib/gtimezone.h
-OUT2INC+=glib/gatomic.h
-OUT2INC+=glib/gdatetime.h
-OUT2INC+=glib/glist.h
-OUT2INC+=glib/gprimes.h
-OUT2INC+=glib/gslice.h
-OUT2INC+=glib/gtree.h
-OUT2INC+=glib/gbacktrace.h
-OUT2INC+=glib/gdir.h
-OUT2INC+=glib/gmacros.h
-OUT2INC+=glib/gprintf.h
-OUT2INC+=glib/gslist.h
-OUT2INC+=glib/gtypes.h
-OUT2INC+=glib/gbase64.h
-OUT2INC+=glib/gerror.h
-OUT2INC+=glib/gmain.h
-OUT2INC+=glib/gqsort.h
-OUT2INC+=glib/gspawn.h
-OUT2INC+=glib/gunicode.h
-OUT2INC+=glib/gbitlock.h
-OUT2INC+=glib/gfileutils.h
-OUT2INC+=glib/gmappedfile.h
-OUT2INC+=glib/gquark.h
-OUT2INC+=glib/gstdio.h
-OUT2INC+=glib/gurifuncs.h
-OUT2INC+=glib/gbookmarkfile.h
-OUT2INC+=glib/ghash.h
-OUT2INC+=glib/gmarkup.h
-OUT2INC+=glib/gqueue.h
-OUT2INC+=glib/gstrfuncs.h
-OUT2INC+=glib/gutils.h
-OUT2INC+=glib/gcache.h
-OUT2INC+=glib/ghook.h
-OUT2INC+=glib/gmem.h
-OUT2INC+=glib/grand.h
-OUT2INC+=glib/gstring.h
-OUT2INC+=glib/gvariant.h
-OUT2INC+=glib/gchecksum.h
-OUT2INC+=glib/ghostutils.h
-OUT2INC+=glib/gmessages.h
-OUT2INC+=glib/gregex.h
-OUT2INC+=glib/gtestutils.h
-OUT2INC+=glib/gvarianttype.h
-OUT2INC+=glib/gcompletion.h
-OUT2INC+=glib/gi18n-lib.h
-OUT2INC+=glib/gnode.h
-OUT2INC+=glib/grel.h
-OUT2INC+=glib/gthread.h
-OUT2INC+=glib/gwin32.h
-
-
-OUT2INC+=gobject/gbinding.h
-OUT2INC+=gobject/gmarshal.h
-OUT2INC+=gobject/gparamspecs.h
-OUT2INC+=gobject/gtypemodule.h
-OUT2INC+=gobject/gvaluecollector.h
-OUT2INC+=gobject/gboxed.h
-OUT2INC+=gobject/gobject.h
-OUT2INC+=gobject/gsignal.h
-OUT2INC+=gobject/gtypeplugin.h
-OUT2INC+=gobject/gvaluetypes.h
-OUT2INC+=gobject/gclosure.h
-OUT2INC+=gobject/gobjectnotifyqueue.c
-OUT2INC+=gobject/gsourceclosure.h
-OUT2INC+=gobject/gvalue.h
-OUT2INC+=gobject/genums.h
-OUT2INC+=gobject/gparam.h
-OUT2INC+=gobject/gtype.h
-OUT2INC+=gobject/gvaluearray.h
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
-
diff --git a/glib/prj/build.lst b/glib/prj/build.lst
deleted file mode 100644
index 8a8aa32f8ca2..000000000000
--- a/glib/prj/build.lst
+++ /dev/null
@@ -1,3 +0,0 @@
-gl glib : gettext ZLIB:zlib NULL
-gl glib usr1 - all gl_mkout NULL
-gl glib nmake - all gl_glib NULL
diff --git a/glib/prj/d.lst b/glib/prj/d.lst
deleted file mode 100644
index cb207230b716..000000000000
--- a/glib/prj/d.lst
+++ /dev/null
@@ -1,252 +0,0 @@
-mkdir: %_DEST%\inc\external
-..\%__SRC%\lib\libgio-2.0.0.dylib %_DEST%\lib\libgio-2.0.0.dylib
-symlink: %_DEST%\lib\libgio-2.0.0.dylib %_DEST%\lib\libgio-2.0.dylib
-..\%__SRC%\lib\libgmodule-2.0.0.dylib %_DEST%\lib\libgmodule-2.0.0.dylib
-symlink: %_DEST%\lib\libgmodule-2.0.0.dylib %_DEST%\lib\libgmodule-2.0.dylib
-..\%__SRC%\lib\libgthread-2.0.0.dylib %_DEST%\lib\libgthread-2.0.0.dylib
-symlink: %_DEST%\lib\libgthread-2.0.0.dylib %_DEST%\lib\libgthread-2.0.dylib
-..\%__SRC%\lib\libglib-2.0.0.dylib %_DEST%\lib\libglib-2.0.0.dylib
-symlink: %_DEST%\lib\libglib-2.0.0.dylib %_DEST%\lib\libglib-2.0.dylib
-..\%__SRC%\lib\libgobject-2.0.0.dylib %_DEST%\lib\libgobject-2.0.0.dylib
-symlink: %_DEST%\lib\libgobject-2.0.0.dylib %_DEST%\lib\libgobject-2.0.dylib
-..\%__SRC%\lib\libgio-2.0.so.0 %_DEST%\lib\libgio-2.0.so.0
-symlink: %_DEST%\lib\libgio-2.0.so.0 %_DEST%\lib\libgio-2.0.so
-..\%__SRC%\lib\libgmodule-2.0.so.0 %_DEST%\lib\libgmodule-2.0.so.0
-symlink: %_DEST%\lib\libgmodule-2.0.so.0 %_DEST%\lib\libgmodule-2.0.so
-..\%__SRC%\lib\libgthread-2.0.so.0 %_DEST%\lib\libgthread-2.0.so.0
-symlink: %_DEST%\lib\libgthread-2.0.so.0 %_DEST%\lib\libgthread-2.0.so
-..\%__SRC%\lib\libglib-2.0.so.0 %_DEST%\lib\libglib-2.0.so.0
-symlink: %_DEST%\lib\libglib-2.0.so.0 %_DEST%\lib\libglib-2.0.so
-..\%__SRC%\lib\libgobject-2.0.so.0 %_DEST%\lib\libgobject-2.0.so.0
-symlink: %_DEST%\lib\libgobject-2.0.so.0 %_DEST%\lib\libgobject-2.0.so
-..\%__SRC%\bin\*.dll %_DEST%\bin
-..\%__SRC%\bin\glib-mkenums %_DEST%\bin\glib-mkenums
-..\%__SRC%\bin\glib-genmarshal %_DEST%\bin\glib-genmarshal
-..\%__SRC%\bin\glib-genmarshal.exe %_DEST%\bin\glib-genmarshal.exe
-..\%__SRC%\bin\glib-compile-schemas %_DEST%\bin\glib-compile-schemas
-..\%__SRC%\lib\gio-2.0.lib %_DEST%\lib\gio-2.0.lib
-..\%__SRC%\lib\gmodule-2.0.lib %_DEST%\lib\gmodule-2.0.lib
-..\%__SRC%\lib\gthread-2.0.lib %_DEST%\lib\gthread-2.0.lib
-..\%__SRC%\lib\glib-2.0.lib %_DEST%\lib\glib-2.0.lib
-..\%__SRC%\lib\gobject-2.0.lib %_DEST%\lib\gobject-2.0.lib
-..\%__SRC%\lib\dirent.lib %_DEST%\lib\dirent.lib
-
-mkdir: %_DEST%\inc\external\gio-unix-2.0
-mkdir: %_DEST%\inc\external\gio-unix-2.0\gio
-..\%__SRC%\inc\gdesktopappinfo.h %_DEST%\inc\external\gio-unix-2.0\gio\gdesktopappinfo.h
-..\%__SRC%\inc\gunixcredentialsmessage.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixcredentialsmessage.h
-..\%__SRC%\inc\gunixinputstream.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixinputstream.h
-..\%__SRC%\inc\gunixsocketaddress.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixsocketaddress.h
-..\%__SRC%\inc\gfiledescriptorbased.h %_DEST%\inc\external\gio-unix-2.0\gio\gfiledescriptorbased.h
-..\%__SRC%\inc\gunixfdlist.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixfdlist.h
-..\%__SRC%\inc\gunixmounts.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixmounts.h
-..\%__SRC%\inc\gunixconnection.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixconnection.h
-..\%__SRC%\inc\gunixfdmessage.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixfdmessage.h
-..\%__SRC%\inc\gunixoutputstream.h %_DEST%\inc\external\gio-unix-2.0\gio\gunixoutputstream.h
-
-mkdir: %_DEST%\inc\external\glib-2.0
-..\%__SRC%\inc\glib-object.h %_DEST%\inc\external\glib-2.0\glib-object.h
-..\%__SRC%\inc\glib.h %_DEST%\inc\external\glib-2.0\glib.h
-..\%__SRC%\inc\glibconfig.h %_DEST%\inc\external\glib-2.0\glibconfig.h
-..\%__SRC%\inc\gmodule.h %_DEST%\inc\external\glib-2.0\gmodule.h
-..\%__SRC%\inc\make.msc %_DEST%\inc\external\glib-2.0\make.msc
-..\%__SRC%\inc\module.defs %_DEST%\inc\external\glib-2.0\module.defs
-..\%__SRC%\inc\dirent.h %_DEST%\inc\external\glib-2.0\dirent.h
-
-mkdir: %_DEST%\inc\external\glib-2.0\gio
-..\%__SRC%\inc\gaction.h %_DEST%\inc\external\glib-2.0\gio\gaction.h
-..\%__SRC%\inc\gfileicon.h %_DEST%\inc\external\glib-2.0\gio\gfileicon.h
-..\%__SRC%\inc\gproxyaddressenumerator.h %_DEST%\inc\external\glib-2.0\gio\gproxyaddressenumerator.h
-..\%__SRC%\inc\gactiongroup.h %_DEST%\inc\external\glib-2.0\gio\gactiongroup.h
-..\%__SRC%\inc\gfileinfo.h %_DEST%\inc\external\glib-2.0\gio\gfileinfo.h
-..\%__SRC%\inc\gproxyresolver.h %_DEST%\inc\external\glib-2.0\gio\gproxyresolver.h
-..\%__SRC%\inc\gappinfo.h %_DEST%\inc\external\glib-2.0\gio\gappinfo.h
-..\%__SRC%\inc\gfileinputstream.h %_DEST%\inc\external\glib-2.0\gio\gfileinputstream.h
-..\%__SRC%\inc\gresolver.h %_DEST%\inc\external\glib-2.0\gio\gresolver.h
-..\%__SRC%\inc\gapplication.h %_DEST%\inc\external\glib-2.0\gio\gapplication.h
-..\%__SRC%\inc\gfileiostream.h %_DEST%\inc\external\glib-2.0\gio\gfileiostream.h
-..\%__SRC%\inc\gseekable.h %_DEST%\inc\external\glib-2.0\gio\gseekable.h
-..\%__SRC%\inc\gapplicationcommandline.h %_DEST%\inc\external\glib-2.0\gio\gapplicationcommandline.h
-..\%__SRC%\inc\gfilemonitor.h %_DEST%\inc\external\glib-2.0\gio\gfilemonitor.h
-..\%__SRC%\inc\gsettings.h %_DEST%\inc\external\glib-2.0\gio\gsettings.h
-..\%__SRC%\inc\gasyncinitable.h %_DEST%\inc\external\glib-2.0\gio\gasyncinitable.h
-..\%__SRC%\inc\gfilenamecompleter.h %_DEST%\inc\external\glib-2.0\gio\gfilenamecompleter.h
-..\%__SRC%\inc\gsettingsbackend.h %_DEST%\inc\external\glib-2.0\gio\gsettingsbackend.h
-..\%__SRC%\inc\gasyncresult.h %_DEST%\inc\external\glib-2.0\gio\gasyncresult.h
-..\%__SRC%\inc\gfileoutputstream.h %_DEST%\inc\external\glib-2.0\gio\gfileoutputstream.h
-..\%__SRC%\inc\gsimpleaction.h %_DEST%\inc\external\glib-2.0\gio\gsimpleaction.h
-..\%__SRC%\inc\gbufferedinputstream.h %_DEST%\inc\external\glib-2.0\gio\gbufferedinputstream.h
-..\%__SRC%\inc\gfilterinputstream.h %_DEST%\inc\external\glib-2.0\gio\gfilterinputstream.h
-..\%__SRC%\inc\gsimpleactiongroup.h %_DEST%\inc\external\glib-2.0\gio\gsimpleactiongroup.h
-..\%__SRC%\inc\gbufferedoutputstream.h %_DEST%\inc\external\glib-2.0\gio\gbufferedoutputstream.h
-..\%__SRC%\inc\gfilteroutputstream.h %_DEST%\inc\external\glib-2.0\gio\gfilteroutputstream.h
-..\%__SRC%\inc\gsimpleasyncresult.h %_DEST%\inc\external\glib-2.0\gio\gsimpleasyncresult.h
-..\%__SRC%\inc\gcancellable.h %_DEST%\inc\external\glib-2.0\gio\gcancellable.h
-..\%__SRC%\inc\gicon.h %_DEST%\inc\external\glib-2.0\gio\gicon.h
-..\%__SRC%\inc\gsimplepermission.h %_DEST%\inc\external\glib-2.0\gio\gsimplepermission.h
-..\%__SRC%\inc\gcharsetconverter.h %_DEST%\inc\external\glib-2.0\gio\gcharsetconverter.h
-..\%__SRC%\inc\ginetaddress.h %_DEST%\inc\external\glib-2.0\gio\ginetaddress.h
-..\%__SRC%\inc\gsocket.h %_DEST%\inc\external\glib-2.0\gio\gsocket.h
-..\%__SRC%\inc\gcontenttype.h %_DEST%\inc\external\glib-2.0\gio\gcontenttype.h
-..\%__SRC%\inc\ginetsocketaddress.h %_DEST%\inc\external\glib-2.0\gio\ginetsocketaddress.h
-..\%__SRC%\inc\gsocketaddress.h %_DEST%\inc\external\glib-2.0\gio\gsocketaddress.h
-..\%__SRC%\inc\gconverter.h %_DEST%\inc\external\glib-2.0\gio\gconverter.h
-..\%__SRC%\inc\ginitable.h %_DEST%\inc\external\glib-2.0\gio\ginitable.h
-..\%__SRC%\inc\gsocketaddressenumerator.h %_DEST%\inc\external\glib-2.0\gio\gsocketaddressenumerator.h
-..\%__SRC%\inc\gconverterinputstream.h %_DEST%\inc\external\glib-2.0\gio\gconverterinputstream.h
-..\%__SRC%\inc\ginputstream.h %_DEST%\inc\external\glib-2.0\gio\ginputstream.h
-..\%__SRC%\inc\gsocketclient.h %_DEST%\inc\external\glib-2.0\gio\gsocketclient.h
-..\%__SRC%\inc\gconverteroutputstream.h %_DEST%\inc\external\glib-2.0\gio\gconverteroutputstream.h
-..\%__SRC%\inc\gio.h %_DEST%\inc\external\glib-2.0\gio\gio.h
-..\%__SRC%\inc\gsocketconnectable.h %_DEST%\inc\external\glib-2.0\gio\gsocketconnectable.h
-..\%__SRC%\inc\gcredentials.h %_DEST%\inc\external\glib-2.0\gio\gcredentials.h
-..\%__SRC%\inc\gioenums.h %_DEST%\inc\external\glib-2.0\gio\gioenums.h
-..\%__SRC%\inc\gsocketconnection.h %_DEST%\inc\external\glib-2.0\gio\gsocketconnection.h
-..\%__SRC%\inc\gdatainputstream.h %_DEST%\inc\external\glib-2.0\gio\gdatainputstream.h
-..\%__SRC%\inc\gioenumtypes.h %_DEST%\inc\external\glib-2.0\gio\gioenumtypes.h
-..\%__SRC%\inc\gsocketcontrolmessage.h %_DEST%\inc\external\glib-2.0\gio\gsocketcontrolmessage.h
-..\%__SRC%\inc\gdataoutputstream.h %_DEST%\inc\external\glib-2.0\gio\gdataoutputstream.h
-..\%__SRC%\inc\gioerror.h %_DEST%\inc\external\glib-2.0\gio\gioerror.h
-..\%__SRC%\inc\gsocketlistener.h %_DEST%\inc\external\glib-2.0\gio\gsocketlistener.h
-..\%__SRC%\inc\gdbusaddress.h %_DEST%\inc\external\glib-2.0\gio\gdbusaddress.h
-..\%__SRC%\inc\giomodule.h %_DEST%\inc\external\glib-2.0\gio\giomodule.h
-..\%__SRC%\inc\gsocketservice.h %_DEST%\inc\external\glib-2.0\gio\gsocketservice.h
-..\%__SRC%\inc\gdbusauthobserver.h %_DEST%\inc\external\glib-2.0\gio\gdbusauthobserver.h
-..\%__SRC%\inc\gioscheduler.h %_DEST%\inc\external\glib-2.0\gio\gioscheduler.h
-..\%__SRC%\inc\gsrvtarget.h %_DEST%\inc\external\glib-2.0\gio\gsrvtarget.h
-..\%__SRC%\inc\gdbusconnection.h %_DEST%\inc\external\glib-2.0\gio\gdbusconnection.h
-..\%__SRC%\inc\giostream.h %_DEST%\inc\external\glib-2.0\gio\giostream.h
-..\%__SRC%\inc\gtcpconnection.h %_DEST%\inc\external\glib-2.0\gio\gtcpconnection.h
-..\%__SRC%\inc\gdbuserror.h %_DEST%\inc\external\glib-2.0\gio\gdbuserror.h
-..\%__SRC%\inc\giotypes.h %_DEST%\inc\external\glib-2.0\gio\giotypes.h
-..\%__SRC%\inc\gtcpwrapperconnection.h %_DEST%\inc\external\glib-2.0\gio\gtcpwrapperconnection.h
-..\%__SRC%\inc\gdbusintrospection.h %_DEST%\inc\external\glib-2.0\gio\gdbusintrospection.h
-..\%__SRC%\inc\gloadableicon.h %_DEST%\inc\external\glib-2.0\gio\gloadableicon.h
-..\%__SRC%\inc\gthemedicon.h %_DEST%\inc\external\glib-2.0\gio\gthemedicon.h
-..\%__SRC%\inc\gdbusmessage.h %_DEST%\inc\external\glib-2.0\gio\gdbusmessage.h
-..\%__SRC%\inc\gmemoryinputstream.h %_DEST%\inc\external\glib-2.0\gio\gmemoryinputstream.h
-..\%__SRC%\inc\gthreadedsocketservice.h %_DEST%\inc\external\glib-2.0\gio\gthreadedsocketservice.h
-..\%__SRC%\inc\gdbusmethodinvocation.h %_DEST%\inc\external\glib-2.0\gio\gdbusmethodinvocation.h
-..\%__SRC%\inc\gmemoryoutputstream.h %_DEST%\inc\external\glib-2.0\gio\gmemoryoutputstream.h
-..\%__SRC%\inc\gtlsbackend.h %_DEST%\inc\external\glib-2.0\gio\gtlsbackend.h
-..\%__SRC%\inc\gdbusnameowning.h %_DEST%\inc\external\glib-2.0\gio\gdbusnameowning.h
-..\%__SRC%\inc\gmount.h %_DEST%\inc\external\glib-2.0\gio\gmount.h
-..\%__SRC%\inc\gtlscertificate.h %_DEST%\inc\external\glib-2.0\gio\gtlscertificate.h
-..\%__SRC%\inc\gdbusnamewatching.h %_DEST%\inc\external\glib-2.0\gio\gdbusnamewatching.h
-..\%__SRC%\inc\gmountoperation.h %_DEST%\inc\external\glib-2.0\gio\gmountoperation.h
-..\%__SRC%\inc\gtlsclientconnection.h %_DEST%\inc\external\glib-2.0\gio\gtlsclientconnection.h
-..\%__SRC%\inc\gdbusproxy.h %_DEST%\inc\external\glib-2.0\gio\gdbusproxy.h
-..\%__SRC%\inc\gnativevolumemonitor.h %_DEST%\inc\external\glib-2.0\gio\gnativevolumemonitor.h
-..\%__SRC%\inc\gtlsconnection.h %_DEST%\inc\external\glib-2.0\gio\gtlsconnection.h
-..\%__SRC%\inc\gdbusserver.h %_DEST%\inc\external\glib-2.0\gio\gdbusserver.h
-..\%__SRC%\inc\gnetworkaddress.h %_DEST%\inc\external\glib-2.0\gio\gnetworkaddress.h
-..\%__SRC%\inc\gtlsserverconnection.h %_DEST%\inc\external\glib-2.0\gio\gtlsserverconnection.h
-..\%__SRC%\inc\gdbusutils.h %_DEST%\inc\external\glib-2.0\gio\gdbusutils.h
-..\%__SRC%\inc\gnetworkservice.h %_DEST%\inc\external\glib-2.0\gio\gnetworkservice.h
-..\%__SRC%\inc\gvfs.h %_DEST%\inc\external\glib-2.0\gio\gvfs.h
-..\%__SRC%\inc\gdrive.h %_DEST%\inc\external\glib-2.0\gio\gdrive.h
-..\%__SRC%\inc\goutputstream.h %_DEST%\inc\external\glib-2.0\gio\goutputstream.h
-..\%__SRC%\inc\gvolume.h %_DEST%\inc\external\glib-2.0\gio\gvolume.h
-..\%__SRC%\inc\gemblem.h %_DEST%\inc\external\glib-2.0\gio\gemblem.h
-..\%__SRC%\inc\gpermission.h %_DEST%\inc\external\glib-2.0\gio\gpermission.h
-..\%__SRC%\inc\gvolumemonitor.h %_DEST%\inc\external\glib-2.0\gio\gvolumemonitor.h
-..\%__SRC%\inc\gemblemedicon.h %_DEST%\inc\external\glib-2.0\gio\gemblemedicon.h
-..\%__SRC%\inc\gpollableinputstream.h %_DEST%\inc\external\glib-2.0\gio\gpollableinputstream.h
-..\%__SRC%\inc\gzlibcompressor.h %_DEST%\inc\external\glib-2.0\gio\gzlibcompressor.h
-..\%__SRC%\inc\gfile.h %_DEST%\inc\external\glib-2.0\gio\gfile.h
-..\%__SRC%\inc\gpollableoutputstream.h %_DEST%\inc\external\glib-2.0\gio\gpollableoutputstream.h
-..\%__SRC%\inc\gzlibdecompressor.h %_DEST%\inc\external\glib-2.0\gio\gzlibdecompressor.h
-..\%__SRC%\inc\gfileattribute.h %_DEST%\inc\external\glib-2.0\gio\gfileattribute.h
-..\%__SRC%\inc\gproxy.h %_DEST%\inc\external\glib-2.0\gio\gproxy.h
-..\%__SRC%\inc\gfileenumerator.h %_DEST%\inc\external\glib-2.0\gio\gfileenumerator.h
-..\%__SRC%\inc\gproxyaddress.h %_DEST%\inc\external\glib-2.0\gio\gproxyaddress.h
-
-mkdir: %_DEST%\inc\external\glib-2.0\glib
-
-..\%__SRC%\inc\galloca.h %_DEST%\inc\external\glib-2.0\glib\galloca.h
-..\%__SRC%\inc\gconvert.h %_DEST%\inc\external\glib-2.0\glib\gconvert.h
-..\%__SRC%\inc\gi18n.h %_DEST%\inc\external\glib-2.0\glib\gi18n.h
-..\%__SRC%\inc\goption.h %_DEST%\inc\external\glib-2.0\glib\goption.h
-..\%__SRC%\inc\gscanner.h %_DEST%\inc\external\glib-2.0\glib\gscanner.h
-..\%__SRC%\inc\gthreadpool.h %_DEST%\inc\external\glib-2.0\glib\gthreadpool.h
-..\%__SRC%\inc\garray.h %_DEST%\inc\external\glib-2.0\glib\garray.h
-..\%__SRC%\inc\gdataset.h %_DEST%\inc\external\glib-2.0\glib\gdataset.h
-..\%__SRC%\inc\giochannel.h %_DEST%\inc\external\glib-2.0\glib\giochannel.h
-..\%__SRC%\inc\gpattern.h %_DEST%\inc\external\glib-2.0\glib\gpattern.h
-..\%__SRC%\inc\gsequence.h %_DEST%\inc\external\glib-2.0\glib\gsequence.h
-..\%__SRC%\inc\gtimer.h %_DEST%\inc\external\glib-2.0\glib\gtimer.h
-..\%__SRC%\inc\gasyncqueue.h %_DEST%\inc\external\glib-2.0\glib\gasyncqueue.h
-..\%__SRC%\inc\gdate.h %_DEST%\inc\external\glib-2.0\glib\gdate.h
-..\%__SRC%\inc\gkeyfile.h %_DEST%\inc\external\glib-2.0\glib\gkeyfile.h
-..\%__SRC%\inc\gpoll.h %_DEST%\inc\external\glib-2.0\glib\gpoll.h
-..\%__SRC%\inc\gshell.h %_DEST%\inc\external\glib-2.0\glib\gshell.h
-..\%__SRC%\inc\gtimezone.h %_DEST%\inc\external\glib-2.0\glib\gtimezone.h
-..\%__SRC%\inc\gatomic.h %_DEST%\inc\external\glib-2.0\glib\gatomic.h
-..\%__SRC%\inc\gdatetime.h %_DEST%\inc\external\glib-2.0\glib\gdatetime.h
-..\%__SRC%\inc\glist.h %_DEST%\inc\external\glib-2.0\glib\glist.h
-..\%__SRC%\inc\gprimes.h %_DEST%\inc\external\glib-2.0\glib\gprimes.h
-..\%__SRC%\inc\gslice.h %_DEST%\inc\external\glib-2.0\glib\gslice.h
-..\%__SRC%\inc\gtree.h %_DEST%\inc\external\glib-2.0\glib\gtree.h
-..\%__SRC%\inc\gbacktrace.h %_DEST%\inc\external\glib-2.0\glib\gbacktrace.h
-..\%__SRC%\inc\gdir.h %_DEST%\inc\external\glib-2.0\glib\gdir.h
-..\%__SRC%\inc\gmacros.h %_DEST%\inc\external\glib-2.0\glib\gmacros.h
-..\%__SRC%\inc\gprintf.h %_DEST%\inc\external\glib-2.0\glib\gprintf.h
-..\%__SRC%\inc\gslist.h %_DEST%\inc\external\glib-2.0\glib\gslist.h
-..\%__SRC%\inc\gtypes.h %_DEST%\inc\external\glib-2.0\glib\gtypes.h
-..\%__SRC%\inc\gbase64.h %_DEST%\inc\external\glib-2.0\glib\gbase64.h
-..\%__SRC%\inc\gerror.h %_DEST%\inc\external\glib-2.0\glib\gerror.h
-..\%__SRC%\inc\gmain.h %_DEST%\inc\external\glib-2.0\glib\gmain.h
-..\%__SRC%\inc\gqsort.h %_DEST%\inc\external\glib-2.0\glib\gqsort.h
-..\%__SRC%\inc\gspawn.h %_DEST%\inc\external\glib-2.0\glib\gspawn.h
-..\%__SRC%\inc\gunicode.h %_DEST%\inc\external\glib-2.0\glib\gunicode.h
-..\%__SRC%\inc\gbitlock.h %_DEST%\inc\external\glib-2.0\glib\gbitlock.h
-..\%__SRC%\inc\gfileutils.h %_DEST%\inc\external\glib-2.0\glib\gfileutils.h
-..\%__SRC%\inc\gmappedfile.h %_DEST%\inc\external\glib-2.0\glib\gmappedfile.h
-..\%__SRC%\inc\gquark.h %_DEST%\inc\external\glib-2.0\glib\gquark.h
-..\%__SRC%\inc\gstdio.h %_DEST%\inc\external\glib-2.0\glib\gstdio.h
-..\%__SRC%\inc\gurifuncs.h %_DEST%\inc\external\glib-2.0\glib\gurifuncs.h
-..\%__SRC%\inc\gbookmarkfile.h %_DEST%\inc\external\glib-2.0\glib\gbookmarkfile.h
-..\%__SRC%\inc\ghash.h %_DEST%\inc\external\glib-2.0\glib\ghash.h
-..\%__SRC%\inc\gmarkup.h %_DEST%\inc\external\glib-2.0\glib\gmarkup.h
-..\%__SRC%\inc\gqueue.h %_DEST%\inc\external\glib-2.0\glib\gqueue.h
-..\%__SRC%\inc\gstrfuncs.h %_DEST%\inc\external\glib-2.0\glib\gstrfuncs.h
-..\%__SRC%\inc\gutils.h %_DEST%\inc\external\glib-2.0\glib\gutils.h
-..\%__SRC%\inc\gcache.h %_DEST%\inc\external\glib-2.0\glib\gcache.h
-..\%__SRC%\inc\ghook.h %_DEST%\inc\external\glib-2.0\glib\ghook.h
-..\%__SRC%\inc\gmem.h %_DEST%\inc\external\glib-2.0\glib\gmem.h
-..\%__SRC%\inc\grand.h %_DEST%\inc\external\glib-2.0\glib\grand.h
-..\%__SRC%\inc\gstring.h %_DEST%\inc\external\glib-2.0\glib\gstring.h
-..\%__SRC%\inc\gvariant.h %_DEST%\inc\external\glib-2.0\glib\gvariant.h
-..\%__SRC%\inc\gchecksum.h %_DEST%\inc\external\glib-2.0\glib\gchecksum.h
-..\%__SRC%\inc\ghostutils.h %_DEST%\inc\external\glib-2.0\glib\ghostutils.h
-..\%__SRC%\inc\gmessages.h %_DEST%\inc\external\glib-2.0\glib\gmessages.h
-..\%__SRC%\inc\gregex.h %_DEST%\inc\external\glib-2.0\glib\gregex.h
-..\%__SRC%\inc\gtestutils.h %_DEST%\inc\external\glib-2.0\glib\gtestutils.h
-..\%__SRC%\inc\gvarianttype.h %_DEST%\inc\external\glib-2.0\glib\gvarianttype.h
-..\%__SRC%\inc\gcompletion.h %_DEST%\inc\external\glib-2.0\glib\gcompletion.h
-..\%__SRC%\inc\gi18n-lib.h %_DEST%\inc\external\glib-2.0\glib\gi18n-lib.h
-..\%__SRC%\inc\gnode.h %_DEST%\inc\external\glib-2.0\glib\gnode.h
-..\%__SRC%\inc\grel.h %_DEST%\inc\external\glib-2.0\glib\grel.h
-..\%__SRC%\inc\gthread.h %_DEST%\inc\external\glib-2.0\glib\gthread.h
-..\%__SRC%\inc\gwin32.h %_DEST%\inc\external\glib-2.0\glib\gwin32.h
-
-mkdir: %_DEST%\inc\external\glib-2.0\gobject
-..\%__SRC%\inc\gbinding.h %_DEST%\inc\external\glib-2.0\gobject\gbinding.h
-..\%__SRC%\inc\gmarshal.h %_DEST%\inc\external\glib-2.0\gobject\gmarshal.h
-..\%__SRC%\inc\gparamspecs.h %_DEST%\inc\external\glib-2.0\gobject\gparamspecs.h
-..\%__SRC%\inc\gtypemodule.h %_DEST%\inc\external\glib-2.0\gobject\gtypemodule.h
-..\%__SRC%\inc\gvaluecollector.h %_DEST%\inc\external\glib-2.0\gobject\gvaluecollector.h
-..\%__SRC%\inc\gboxed.h %_DEST%\inc\external\glib-2.0\gobject\gboxed.h
-..\%__SRC%\inc\gobject.h %_DEST%\inc\external\glib-2.0\gobject\gobject.h
-..\%__SRC%\inc\gsignal.h %_DEST%\inc\external\glib-2.0\gobject\gsignal.h
-..\%__SRC%\inc\gtypeplugin.h %_DEST%\inc\external\glib-2.0\gobject\gtypeplugin.h
-..\%__SRC%\inc\gvaluetypes.h %_DEST%\inc\external\glib-2.0\gobject\gvaluetypes.h
-..\%__SRC%\inc\gclosure.h %_DEST%\inc\external\glib-2.0\gobject\gclosure.h
-..\%__SRC%\inc\gobjectnotifyqueue.c %_DEST%\inc\external\glib-2.0\gobject\gobjectnotifyqueue.c
-..\%__SRC%\inc\gsourceclosure.h %_DEST%\inc\external\glib-2.0\gobject\gsourceclosure.h
-..\%__SRC%\inc\gvalue.h %_DEST%\inc\external\glib-2.0\gobject\gvalue.h
-..\%__SRC%\inc\genums.h %_DEST%\inc\external\glib-2.0\gobject\genums.h
-..\%__SRC%\inc\gparam.h %_DEST%\inc\external\glib-2.0\gobject\gparam.h
-..\%__SRC%\inc\gtype.h %_DEST%\inc\external\glib-2.0\gobject\gtype.h
-..\%__SRC%\inc\gvaluearray.h %_DEST%\inc\external\glib-2.0\gobject\gvaluearray.h
-
diff --git a/glib/prj/dmake b/glib/prj/dmake
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/glib/prj/dmake
+++ /dev/null
diff --git a/graphite/Makefile b/graphite/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/graphite/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/graphite/Module_graphite.mk b/graphite/Module_graphite.mk
new file mode 100644
index 000000000000..2791eff83c78
--- /dev/null
+++ b/graphite/Module_graphite.mk
@@ -0,0 +1,21 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,graphite))
+
+ifeq ($(SYSTEM_GRAPHITE),NO)
+
+$(eval $(call gb_Module_add_targets,graphite,\
+ StaticLibrary_graphite \
+ UnpackedTarball_graphite \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/graphite/StaticLibrary_graphite.mk b/graphite/StaticLibrary_graphite.mk
new file mode 100644
index 000000000000..e02272cdac6a
--- /dev/null
+++ b/graphite/StaticLibrary_graphite.mk
@@ -0,0 +1,68 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,graphite))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,graphite,graphite))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,graphite))
+
+$(eval $(call gb_StaticLibrary_set_include,graphite,\
+ -I$(call gb_UnpackedTarball_get_dir,graphite/include) \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_StaticLibrary_add_defs,graphite,\
+ -DDISABLE_TRACING \
+ -DGR2_STATIC \
+))
+
+ifeq ($(COM),GCC)
+$(eval $(call gb_StaticLibrary_add_cxxflags,graphite,\
+ -fpermissive \
+))
+endif
+
+$(eval $(call gb_StaticLibrary_set_generated_cxx_suffix,graphite,cpp))
+
+$(eval $(call gb_StaticLibrary_add_generated_cxxobjects,graphite,\
+ UnpackedTarball/graphite/src/$(if $(filter GCC,$(COM)),direct,call)_machine \
+ UnpackedTarball/graphite/src/gr_char_info \
+ UnpackedTarball/graphite/src/gr_face \
+ UnpackedTarball/graphite/src/gr_features \
+ UnpackedTarball/graphite/src/gr_font \
+ UnpackedTarball/graphite/src/gr_logging \
+ UnpackedTarball/graphite/src/gr_segment \
+ UnpackedTarball/graphite/src/gr_slot \
+ UnpackedTarball/graphite/src/json \
+ UnpackedTarball/graphite/src/Bidi \
+ UnpackedTarball/graphite/src/CachedFace \
+ UnpackedTarball/graphite/src/CmapCache \
+ UnpackedTarball/graphite/src/Code \
+ UnpackedTarball/graphite/src/Face \
+ UnpackedTarball/graphite/src/FeatureMap \
+ UnpackedTarball/graphite/src/FileFace \
+ UnpackedTarball/graphite/src/Font \
+ UnpackedTarball/graphite/src/GlyphCache \
+ UnpackedTarball/graphite/src/GlyphFace \
+ UnpackedTarball/graphite/src/Justifier \
+ UnpackedTarball/graphite/src/NameTable \
+ UnpackedTarball/graphite/src/Pass \
+ UnpackedTarball/graphite/src/SegCache \
+ UnpackedTarball/graphite/src/SegCacheEntry \
+ UnpackedTarball/graphite/src/SegCacheStore \
+ UnpackedTarball/graphite/src/Segment \
+ UnpackedTarball/graphite/src/Silf \
+ UnpackedTarball/graphite/src/Slot \
+ UnpackedTarball/graphite/src/Sparse \
+ UnpackedTarball/graphite/src/TtfUtil \
+ UnpackedTarball/graphite/src/UtfCodec \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/graphite/UnpackedTarball_graphite.mk b/graphite/UnpackedTarball_graphite.mk
new file mode 100644
index 000000000000..53b73b197922
--- /dev/null
+++ b/graphite/UnpackedTarball_graphite.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,graphite))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,graphite,$(GRAPHITE_TARBALL)))
+
+# http://projects.palaso.org/issues/1030
+$(eval $(call gb_UnpackedTarball_add_patches,graphite,\
+ graphite/graphite2.patch \
+ graphite/graphite2.issue1030.patch.1 \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/graphite/graphite-2.3.1_debug.patch b/graphite/graphite-2.3.1_debug.patch
deleted file mode 100644
index 583fac711e2b..000000000000
--- a/graphite/graphite-2.3.1_debug.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- misc/silgraphite-2.3.1/engine/src/segment/SegmentAux.cpp 2008-08-21 16:24:32.000000000 +0200
-+++ misc/build/silgraphite-2.3.1/engine/src/segment/SegmentAux.cpp 2011-02-21 13:22:23.159834368 +0100
-@@ -247,7 +247,9 @@
- GlyphSetIterator::reference GlyphSetIterator::operator*() const
- {
- assert(m_pseg != 0);
-- assert(m_vit != std::vector<int>::const_iterator());
-+ // #i116227# the check below is well meant but breaks itself when using stlport with debug facilities
-+ // a valid iterator cannot be compared to an empty one in that case
-+ // assert(m_vit != std::vector<int>::const_iterator());
- // in the case of a non-contiguous list
- return m_pseg->m_prgginf[(*m_vit) - m_pseg->m_isloutGinf0];
- }
diff --git a/graphite/graphite2.issue1030.patch.1 b/graphite/graphite2.issue1030.patch.1
new file mode 100644
index 000000000000..2bfe1a1a12fc
--- /dev/null
+++ b/graphite/graphite2.issue1030.patch.1
@@ -0,0 +1,12 @@
+diff -up workdir/wntgcci.pro/UnpackedTarball/graphite/src/gr_logging.cpp.dt workdir/wntgcci.pro/UnpackedTarball/graphite/src/gr_logging.cpp
+--- graphite/src/gr_logging.cpp.dt 2012-10-31 07:40:57.527381144 +0100
++++ graphite/src/gr_logging.cpp 2012-10-31 07:40:59.522333851 +0100
+@@ -33,7 +33,7 @@ of the License or (at your option) any l
+ #include "inc/Segment.h"
+
+ #if defined _WIN32
+-#include "Windows.h"
++#include "windows.h"
+ #endif
+
+ using namespace graphite2;
diff --git a/graphite/graphite2.placementnew.patch b/graphite/graphite2.placementnew.patch
deleted file mode 100644
index 47b50a24fdf9..000000000000
--- a/graphite/graphite2.placementnew.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- misc/graphite2-1.0.2/src/GlyphFace.cpp 2011-08-23 11:37:11.971472000 +0100
-+++ misc/build/graphite2-1.0.2/src/GlyphFace.cpp 2011-08-23 11:38:13.979750400 +0100
-@@ -25,6 +25,7 @@
- of the License or (at your option) any later version.
- */
- #include <iterator>
-+#include <new>
- #include "GlyphFace.h"
- #include "XmlTraceLog.h"
- #include "GlyphFaceCache.h"
diff --git a/graphite/graphite_make.patch b/graphite/graphite_make.patch
deleted file mode 100644
index 7b1339f4d800..000000000000
--- a/graphite/graphite_make.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- misc/build/graphite2-1.2.0/src/makefile.mk Fri Mar 4 10:20:30 2011 +0700
-+++ misc/build/graphite2-1.2.0/src/makefile.mk Fri Mar 4 10:20:30 2011 +0700
-@@ -1,1 +1,38 @@
--dummy
-+EXTERNAL_WARNINGS_NOT_ERRORS := TRUE
-+
-+PRJ=..$/..$/..$/..$/..
-+
-+PRJNAME=libgraphite2_off
-+TARGET=graphite2_off
-+ENABLE_EXCEPTIONS=FALSE
-+LIBTARGET=NO
-+
-+.INCLUDE : settings.mk
-+
-+CFLAGS+=-DDISABLE_TRACING -I../include -DGR2_STATIC
-+.IF "$(debug)" == ""
-+CFLAGS+=-O3 -DNDEBUG
-+.ENDIF
-+
-+.IF "$(WORDS_BIGENDIAN)" == "yes"
-+CFLAGS += -DWORDS_BIGENDIAN
-+.ENDIF
-+
-+_NS := GR2
-+
-+GR2_MACHINE=call
-+.IF "$(COM)"=="GCC"
-+GR2_MACHINE=direct
-+CFLAGSCXX+=-fpermissive
-+.ENDIF
-+
-+.INCLUDE : files.mk
-+
-+SLOFILES= $(foreach,i,$(GR2_SOURCES:b) $(SLO)/$i.obj)
-+
-+LIB1ARCHIV=$(LB)$/lib$(TARGET).a
-+LIB1TARGET=$(SLB)$/$(TARGET).lib
-+LIB1OBJFILES=$(SLOFILES)
-+OUT2INC=../include/graphite2
-+
-+.INCLUDE : target.mk
diff --git a/graphite/makefile.mk b/graphite/makefile.mk
deleted file mode 100644
index 639f64bab43c..000000000000
--- a/graphite/makefile.mk
+++ /dev/null
@@ -1,73 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-# TODO: enable warnings again when external module compiles without warnings on all platforms
-EXTERNAL_WARNINGS_NOT_ERRORS := TRUE
-
-PRJ=.
-
-PRJNAME=graphite
-TARGET=libgraphite
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(SYSTEM_GRAPHITE)" == "YES"
-all:
- @echo "An already available installation of graphite2 should exist on your system."
- @echo "Therefore the version provided here does not need to be built in addition."
-.ENDIF
-
-# --- Files --------------------------------------------------------
-.IF "$(ENABLE_GRAPHITE)"=="TRUE"
-TARFILE_NAME=graphite2-1.2.0
-TARFILE_MD5=f5ef3f7f10fa8c3542c6a085a233080b
-PATCH_FILES= graphite2.patch \
- graphite_make.patch
-
-ADDITIONAL_FILES= \
- src/makefile.mk
-
-# convert line-endings to avoid problems when patching
-CONVERTFILES=
-
-BUILD_DIR=src
-BUILD_ACTION=dmake $(MFLAGS) $(CALLMACROS)
-
-OUT2INC_SUBDIR=graphite2
-OUT2INC=include/graphite2/Font.h \
- include/graphite2/Segment.h \
- include/graphite2/Types.h
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
-
diff --git a/graphite/prj/d.lst b/graphite/prj/d.lst
index 4add1c1483c6..e69de29bb2d1 100644
--- a/graphite/prj/d.lst
+++ b/graphite/prj/d.lst
@@ -1,12 +0,0 @@
-mkdir: %_DEST%\inc\graphite2
-..\%__SRC%\inc\graphite2\*.h %_DEST%\inc\graphite2\*.h
-
-..\%__SRC%\lib\*.so.* %_DEST%\lib\*.so.*
-..\%__SRC%\lib\*.dylib %_DEST%\lib\*.dylib
-..\%__SRC%\lib\*.a %_DEST%\lib\*.a
-..\%__SRC%\slb\*.lib %_DEST%\lib\*.lib
-..\%__SRC%\bin\*.dll %_DEST%\bin\*.dll
-..\%__SRC%\bin\*.pdb %_DEST%\bin\*.pdb
-
-linklib: libgraphite2.so.*.*.*
-linklib: libgraphite2.dylib.*.*.*
diff --git a/graphite/prj/dmake b/graphite/prj/dmake
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/graphite/prj/dmake
+++ /dev/null
diff --git a/helpcompiler/Library_helplinker.mk b/helpcompiler/Library_helplinker.mk
index 405ad80d4fa4..d22693d1b228 100644
--- a/helpcompiler/Library_helplinker.mk
+++ b/helpcompiler/Library_helplinker.mk
@@ -46,7 +46,7 @@ $(eval $(call gb_Library_use_libraries,helplinker,\
))
$(eval $(call gb_Library_use_externals,helplinker,\
- expat_utf8 \
+ expat_utf16 \
libxslt \
libxml2 \
clucene \
diff --git a/helpcontent2 b/helpcontent2
new file mode 160000
+Subproject 23d7515757534fca7d50e1201745586adde4b8f
diff --git a/hsqldb/UnpackedTarball_hsqldb.mk b/hsqldb/UnpackedTarball_hsqldb.mk
index 186b4914845b..af7883427e10 100644
--- a/hsqldb/UnpackedTarball_hsqldb.mk
+++ b/hsqldb/UnpackedTarball_hsqldb.mk
@@ -7,11 +7,9 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-include $(SRCDIR)/hsqldb/version.mk
-
$(eval $(call gb_UnpackedTarball_UnpackedTarball,hsqldb))
-$(eval $(call gb_UnpackedTarball_set_tarball,hsqldb,17410483b5b5f267aa18b7e00b65e6e0-hsqldb_$(HSQLDB_VERSION).zip))
+$(eval $(call gb_UnpackedTarball_set_tarball,hsqldb,$(HSQLDB_TARBALL)))
$(eval $(call gb_UnpackedTarball_fix_end_of_line,hsqldb,\
build/build.xml \
diff --git a/hsqldb/prj/build.lst b/hsqldb/prj/build.lst
index a7c06234df7f..256db680c56c 100644
--- a/hsqldb/prj/build.lst
+++ b/hsqldb/prj/build.lst
@@ -1,2 +1,2 @@
hs hsqldb : solenv NULL
-hs hsqldb nmake - all hs_mkout NULL
+hs hsqldb\prj nmake - all hs_prj NULL
diff --git a/hsqldb/version.mk b/hsqldb/version.mk
deleted file mode 100644
index 36ab376a2846..000000000000
--- a/hsqldb/version.mk
+++ /dev/null
@@ -1,6 +0,0 @@
-# when you want to change the HSQLDB version, you must update the d.lst
-# in the HSQLDB_thon project accordingly !!!
-HSQLDB_MAJOR=1
-HSQLDB_MINOR=8
-HSQLDB_MICRO=0
-HSQLDB_VERSION=$(HSQLDB_MAJOR)_$(HSQLDB_MINOR)_$(HSQLDB_MICRO)
diff --git a/hunspell/ExternalPackage_hunspell.mk b/hunspell/ExternalPackage_hunspell.mk
new file mode 100644
index 000000000000..1cabd1973dd2
--- /dev/null
+++ b/hunspell/ExternalPackage_hunspell.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,hunspell,hunspell))
+
+ifneq ($(COM),MSC)
+
+$(eval $(call gb_ExternalPackage_use_external_project,hunspell,hunspell))
+
+$(eval $(call gb_ExternalPackage_add_file,hunspell,lib/libhunspell.a,src/hunspell/.libs/libhunspell-1.3.a))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/hunspell/ExternalProject_hunspell.mk b/hunspell/ExternalProject_hunspell.mk
new file mode 100644
index 000000000000..aab825cfd8aa
--- /dev/null
+++ b/hunspell/ExternalProject_hunspell.mk
@@ -0,0 +1,28 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,hunspell))
+
+$(eval $(call gb_ExternalProject_use_unpacked,hunspell,hunspell))
+
+$(eval $(call gb_ExternalProject_register_targets,hunspell,\
+ build \
+))
+
+$(call gb_ExternalProject_get_state_target,hunspell,build):
+ cd $(EXTERNAL_WORKDIR) \
+ && LIBS="$(gb_STDLIBS) $(LIBS)" ./configure --disable-shared --disable-nls --with-pic \
+ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM))\
+ $(if $(filter AIX,$(OS)),CFLAGS="-D_LINUX_SOURCE_COMPAT") \
+ $(if $(filter C53,$(COM)),CFLAGS="-xc99=none") \
+ $(if $(filter-out WNTGCC,$(GUI)$(COM)),,LDFLAGS="-Wl,--enable-runtime-pseudo-reloc-v2") \
+ && $(MAKE) \
+ && touch $@
+
+# vim: set noet sw=4 ts=4:
diff --git a/hunspell/Makefile b/hunspell/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/hunspell/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/hunspell/Module_hunspell.mk b/hunspell/Module_hunspell.mk
new file mode 100644
index 000000000000..357873c878de
--- /dev/null
+++ b/hunspell/Module_hunspell.mk
@@ -0,0 +1,28 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,hunspell))
+
+ifeq ($(SYSTEM_HUNSPELL),NO)
+$(eval $(call gb_Module_add_targets,hunspell,\
+ UnpackedTarball_hunspell \
+ ExternalPackage_hunspell \
+))
+ifeq ($(COM),MSC)
+$(eval $(call gb_Module_add_targets,hunspell,\
+ StaticLibrary_hunspell \
+))
+else
+$(eval $(call gb_Module_add_targets,hunspell,\
+ ExternalProject_hunspell \
+))
+endif
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/hunspell/StaticLibrary_hunspell.mk b/hunspell/StaticLibrary_hunspell.mk
new file mode 100644
index 000000000000..dba22998f217
--- /dev/null
+++ b/hunspell/StaticLibrary_hunspell.mk
@@ -0,0 +1,35 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,hunspell))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,hunspell,hunspell))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,hunspell))
+
+$(eval $(call gb_StaticLibrary_add_defs,hunspell,\
+ -DHUNSPELL_STATIC \
+ -DOPENOFFICEORG \
+))
+
+$(eval $(call gb_StaticLibrary_add_generated_cxxobjects,hunspell,\
+ UnpackedTarball/hunspell/src/hunspell/affentry \
+ UnpackedTarball/hunspell/src/hunspell/affixmgr \
+ UnpackedTarball/hunspell/src/hunspell/dictmgr \
+ UnpackedTarball/hunspell/src/hunspell/csutil \
+ UnpackedTarball/hunspell/src/hunspell/hashmgr \
+ UnpackedTarball/hunspell/src/hunspell/suggestmgr \
+ UnpackedTarball/hunspell/src/hunspell/phonet \
+ UnpackedTarball/hunspell/src/hunspell/hunzip \
+ UnpackedTarball/hunspell/src/hunspell/filemgr \
+ UnpackedTarball/hunspell/src/hunspell/replist \
+ UnpackedTarball/hunspell/src/hunspell/hunspell \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/hunspell/UnpackedTarball_hunspell.mk b/hunspell/UnpackedTarball_hunspell.mk
new file mode 100644
index 000000000000..9ba9dc309a46
--- /dev/null
+++ b/hunspell/UnpackedTarball_hunspell.mk
@@ -0,0 +1,30 @@
+ -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,hunspell))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,hunspell,$(HUNSPELL_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_add_patches,hunspell,\
+ hunspell/hunspell-twoaffixcompound.patch \
+ hunspell/hunspell-solaris.patch \
+ hunspell/hunspell-1.3.2-overflow.patch \
+ hunspell/hunspell-android.patch \
+ hunspell/hunspell-1.3.2-nullptr.patch \
+ hunspell/hunspell-1.3.2-literal.patch \
+ hunspell/hunspell-1.3.2-compound.patch \
+))
+
+ifeq ($(COM),MSC)
+$(eval $(call gb_UnpackedTarball_set_post_action,hunspell,\
+ touch src/hunspell/config.h \
+))
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/hunspell/hunspell-static.patch b/hunspell/hunspell-static.patch
deleted file mode 100644
index daab90ce9a75..000000000000
--- a/hunspell/hunspell-static.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- misc/hunspell-1.3.2/src/hunspell/makefile.mk 2010-06-17 15:56:41.000000000 +0200
-+++ misc/build/hunspell-1.3.2/src/hunspell/makefile.mk 2011-02-10 20:47:22.000000000 +0100
-@@ -39,7 +39,7 @@
-
- # --- Files --------------------------------------------------------
-
--CFLAGS+=-I..$/..$/
-+CFLAGS+=-I..$/..$/ -DHUNSPELL_STATIC
- CDEFS+=-DOPENOFFICEORG
-
- SLOFILES= \
diff --git a/hunspell/hunspell-wntconfig.patch b/hunspell/hunspell-wntconfig.patch
deleted file mode 100644
index cc353b1a2118..000000000000
--- a/hunspell/hunspell-wntconfig.patch
+++ /dev/null
@@ -1,4 +0,0 @@
---- misc/hunspell-1.3.2/config.h 2010-02-25 14:38:38.000000000 +0000
-+++ misc/build/hunspell-1.3.2/config.h 2010-02-25 14:38:42.000000000 +0000
-@@ -1 +0,0 @@
--dummy
diff --git a/hunspell/makefile.mk b/hunspell/makefile.mk
deleted file mode 100644
index 16721d763f2b..000000000000
--- a/hunspell/makefile.mk
+++ /dev/null
@@ -1,118 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=hunspell
-TARGET=hunspell
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-TARFILE_NAME=hunspell-1.3.2
-TARFILE_MD5=3121aaf3e13e5d88dfff13fb4a5f1ab8
-ADDITIONAL_FILES+=config.h
-
-# hunspell-1.3.2-nullptr.patch, hunspell-1.3.2-literal.patch: reported upstream
-# as <https://sourceforge.net/tracker/?func=detail&aid=3557292&group_id=143754&
-# atid=756395> "Some C++11 related fixes"
-PATCH_FILES=\
- hunspell-twoaffixcompound.patch \
- hunspell-static.patch \
- hunspell-wntconfig.patch \
- hunspell-solaris.patch \
- hunspell-1.3.2-overflow.patch \
- hunspell-android.patch \
- hunspell-1.3.2-nullptr.patch \
- hunspell-1.3.2-literal.patch \
- hunspell-1.3.2-compound.patch
-
-.IF "$(GUI)"=="UNX"
-
-#relative to CONFIGURE_DIR
-CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) configure
-CONFIGURE_FLAGS= --disable-shared --disable-nls --with-pic
-.IF "$(COMNAME)"=="sunpro5"
-CONFIGURE_FLAGS+= CFLAGS=-xc99=none
-.ENDIF # "$(COMNAME)"=="sunpro5"
-
-.IF "$(OS)"=="AIX"
-CONFIGURE_FLAGS+= CFLAGS=-D_LINUX_SOURCE_COMPAT
-.ELIF "$(OS)" == "MACOSX"
-CONFIGURE_FLAGS += \
- --prefix=/@.__________________________________________________$(EXTRPATH)
-.END
-
-.IF "$(SYSBASE)"!=""
-.IF "$(EXTRA_CFLAGS)"!=""
-CONFIGURE_FLAGS+= CFLAGS="$(EXTRA_CFLAGS)" CXXFLAGS="$(EXTRA_CFLAGS)"
-.ENDIF # "$(EXTRA_CFLAGS)"!=""
-.ELIF "$(OS)"=="MACOSX" # "$(SYSBASE)"!=""
-CONFIGURE_FLAGS+=CPPFLAGS="$(EXTRA_CDEFS)"
-.ENDIF
-
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) LIBS="$(STDLIBCUIMT)"
-.ENDIF
-
-BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS)
-
-OUT2LIB=$(BUILD_DIR)$/src$/hunspell$/.libs$/libhunspell-1.3.a
-
-.ENDIF # "$(GUI)"=="UNX"
-
-
-.IF "$(GUI)"=="WNT"
-.IF "$(COM)"=="GCC"
-CONFIGURE_ACTION=configure
-
-CONFIGURE_FLAGS= --disable-shared --disable-nls --with-pic LDFLAGS=-Wl,--enable-runtime-pseudo-reloc-v2
-
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-.ENDIF
-
-BUILD_ACTION=make
-OUT2LIB=$(BUILD_DIR)$/src$/hunspell$/.libs$/libhunspell-1.3.a
-.ELSE
-BUILD_ACTION=cd src/hunspell && dmake
-.ENDIF
-.ENDIF # "$(GUI)"=="WNT"
-
-OUT2INC= \
- $(BUILD_DIR)$/src$/hunspell$/*.hxx \
- $(BUILD_DIR)$/src$/hunspell$/*.h
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
-
diff --git a/hunspell/prj/d.lst b/hunspell/prj/d.lst
index da3b58c94567..e69de29bb2d1 100644
--- a/hunspell/prj/d.lst
+++ b/hunspell/prj/d.lst
@@ -1,6 +0,0 @@
-..\%__SRC%\lib\lib*.* %_DEST%\lib\lib*.*
-..\%__SRC%\slb\libhunspell.lib %_DEST%\lib\libhunspell.lib
-
-mkdir: %_DEST%\inc\hunspell
-..\%__SRC%\inc\*.hxx %_DEST%\inc\hunspell\*.hxx
-..\%__SRC%\inc\*.h %_DEST%\inc\hunspell\*.h
diff --git a/hunspell/prj/dmake b/hunspell/prj/dmake
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/hunspell/prj/dmake
+++ /dev/null
diff --git a/hwpfilter/qa/cppunit/test_hwpfilter.cxx b/hwpfilter/qa/cppunit/test_hwpfilter.cxx
index 18b6ebf91783..88a09a0d6671 100644
--- a/hwpfilter/qa/cppunit/test_hwpfilter.cxx
+++ b/hwpfilter/qa/cppunit/test_hwpfilter.cxx
@@ -45,7 +45,11 @@ namespace
{
public:
virtual void setUp();
- virtual bool load(const rtl::OUString &, const rtl::OUString &rURL, const rtl::OUString &);
+
+ virtual bool load(const rtl::OUString &,
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int);
+
void test();
CPPUNIT_TEST_SUITE(HwpFilterTest);
@@ -66,7 +70,8 @@ namespace
}
bool HwpFilterTest::load(const rtl::OUString &,
- const rtl::OUString &rURL, const rtl::OUString &)
+ const rtl::OUString &rURL, const rtl::OUString &,
+ unsigned int, unsigned int, unsigned int)
{
uno::Sequence< beans::PropertyValue > aDescriptor(1);
aDescriptor[0].Name = rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("URL"));
diff --git a/hwpfilter/source/drawing.h b/hwpfilter/source/drawing.h
index 00d922512f24..dfc31bf57237 100644
--- a/hwpfilter/source/drawing.h
+++ b/hwpfilter/source/drawing.h
@@ -652,11 +652,6 @@ HWPDrawingObject::HWPDrawingObject()
HWPDrawingObject::~HWPDrawingObject()
{
-#if 0
- if (hdo->property.pictype == PICTYP_EMBED)
- RemoveEmbeddedPic(hdo->property.szPatternFile);
- hdo->property.szPatternFile[0] = 0;
-#endif
if (child)
delete child;
diff --git a/hyphen/ExternalPackage_hyphen.mk b/hyphen/ExternalPackage_hyphen.mk
new file mode 100644
index 000000000000..cae07649ff85
--- /dev/null
+++ b/hyphen/ExternalPackage_hyphen.mk
@@ -0,0 +1,28 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalPackage_ExternalPackage,hyphen,hyphen))
+
+ifneq ($(COM),MSC)
+
+$(eval $(call gb_ExternalPackage_use_external_project,hyphen,hyphen))
+
+ifeq ($(SYSTEM_HYPH),NO)
+$(eval $(call gb_ExternalPackage_add_file,hyphen,lib/libhyphen.a,.libs/libhyphen.a))
+endif
+
+endif
+
+ifeq ($(WITH_MYSPELL_DICTS),YES)
+$(eval $(call gb_ExternalPackage_add_files,hyphen,bin,\
+ hyph_en_US.dic \
+))
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/hyphen/ExternalProject_hyphen.mk b/hyphen/ExternalProject_hyphen.mk
new file mode 100644
index 000000000000..474e7b2bd033
--- /dev/null
+++ b/hyphen/ExternalProject_hyphen.mk
@@ -0,0 +1,30 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,hyphen))
+
+$(eval $(call gb_ExternalProject_use_unpacked,hyphen,hyphen))
+
+$(eval $(call gb_ExternalProject_use_package,hyphen,hunspell))
+
+$(eval $(call gb_ExternalProject_register_targets,hyphen,\
+ build \
+))
+
+$(call gb_ExternalProject_get_state_target,hyphen,build):
+ cd $(EXTERNAL_WORKDIR) \
+ && ./configure --disable-shared \
+ $(if $(filter-out IOS,$(OS)),--with-pic) \
+ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) gio_can_sniff=no) \
+ $(if $(filter C52U,$(COM)$(CPU)),CFLAGS="-m64") \
+ && $(MAKE) \
+ $(if $(filter YESYES,$(SYSTEM_HYPH)$(WITH_MYSPELL_DICTS)),hyph_en_US.dic) \
+ && touch $@
+
+# vim: set noet sw=4 ts=4:
diff --git a/hyphen/Makefile b/hyphen/Makefile
new file mode 100644
index 000000000000..ccb1c85a04da
--- /dev/null
+++ b/hyphen/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/hyphen/Module_hyphen.mk b/hyphen/Module_hyphen.mk
new file mode 100644
index 000000000000..2ab3245d17a3
--- /dev/null
+++ b/hyphen/Module_hyphen.mk
@@ -0,0 +1,32 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,hyphen))
+
+ifneq ($(or $(filter NO,$(SYSTEM_HYPH)),$(filter TRUE,$(WITH_MYSPELL_DICTS))),)
+$(eval $(call gb_Module_add_targets,hyphen,\
+ UnpackedTarball_hyphen \
+ ExternalPackage_hyphen \
+))
+ifeq ($(COM),MSC)
+
+ifeq ($(SYSTEM_HYPH),NO)
+$(eval $(call gb_Module_add_targets,hyphen,\
+ StaticLibrary_hyphen \
+))
+endif
+
+else
+$(eval $(call gb_Module_add_targets,hyphen,\
+ ExternalProject_hyphen \
+))
+endif
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/hyphen/StaticLibrary_hyphen.mk b/hyphen/StaticLibrary_hyphen.mk
new file mode 100644
index 000000000000..81eddf17d850
--- /dev/null
+++ b/hyphen/StaticLibrary_hyphen.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,hyphen))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,hyphen,hyphen))
+
+$(eval $(call gb_StaticLibrary_set_warnings_not_errors,hyphen))
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,hyphen,\
+ UnpackedTarball/hyphen/hyphen \
+ UnpackedTarball/hyphen/hnjalloc \
+))
+
+
+# vim: set noet sw=4 ts=4:
diff --git a/hyphen/UnpackedTarball_hyphen.mk b/hyphen/UnpackedTarball_hyphen.mk
new file mode 100644
index 000000000000..58049e92b5fe
--- /dev/null
+++ b/hyphen/UnpackedTarball_hyphen.mk
@@ -0,0 +1,22 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,hyphen))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,hyphen,$(HYPHEN_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_add_patches,hyphen,\
+ hyphen/hyphen-lenwaswrong.patch \
+ hyphen/hyphen-fdo43931.patch \
+ hyphen/hyphen-android.patch \
+ hyphen/hyphen-rhmin.patch \
+ hyphen/hyphen-build.patch \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/hyphen/hyphen-build.patch b/hyphen/hyphen-build.patch
index 7b8ceaa47d29..6df2bb680cdb 100644
--- a/hyphen/hyphen-build.patch
+++ b/hyphen/hyphen-build.patch
@@ -36,35 +36,3 @@
clean-local:
rm -rf hyphen.us* hyph_en_US.dic
---- misc/hyphen-2.8.4/makefile.mk 2010-12-02 10:35:40.265625000 +0100
-+++ misc/build/hyphen-2.8.4/makefile.mk 2010-12-02 10:25:45.750000000 +0100
-@@ -1 +1,28 @@
--dummy
-+PRJ = ..$/..$/..$/..
-+
-+PRJNAME = hyphen
-+TARGET = hyphen
-+CFLAGSCALL=gsd
-+
-+USE_DEFFILE=TRUE
-+EXTERNAL_WARNINGS_NOT_ERRORS := TRUE
-+UWINAPILIB=
-+
-+.INCLUDE : settings.mk
-+
-+# --- Files --------------------------------------------------------
-+
-+# !! not to be compiled because those belong to a stand alone programs: !!
-+# $(SLO)$/createfp.obj\
-+# $(SLO)$/testtextcat.obj
-+
-+SLOFILES= \
-+ $(SLO)$/hyphen.obj\
-+ $(SLO)$/hnjalloc.obj
-+
-+# --- Targets ------------------------------------------------------
-+
-+ALL: ALLTAR
-+
-+.INCLUDE : target.mk
-+
diff --git a/hyphen/makefile.mk b/hyphen/makefile.mk
deleted file mode 100644
index bfbd320dfc0a..000000000000
--- a/hyphen/makefile.mk
+++ /dev/null
@@ -1,113 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=.
-
-PRJNAME=hyphen
-TARGET=hyphen
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-TARFILE_NAME=hyphen-2.8.4
-TARFILE_MD5=a2f6010987e1c601274ab5d63b72c944
-
-ADDITIONAL_FILES += makefile.mk
-
-PATCH_FILES= \
- hyphen-build.patch \
- hyphen-android.patch \
- hyphen-fdo43931.patch \
- hyphen-lenwaswrong.patch \
- hyphen-rhmin.patch
-
-.IF "$(GUI)"=="UNX"
-CONFIGURE_DIR=$(BUILD_DIR)
-
-#relative to CONFIGURE_DIR
-# still needed also in system-hyphen case as it creates the makefile
-CONFIGURE_ACTION=configure
-CONFIGURE_FLAGS=--disable-shared
-
-.IF "$(OS)"!="IOS"
-CONFIGURE_FLAGS+= --with-pic
-.ENDIF
-
-.IF "$(COM)"=="C52" && "$(CPU)"=="U"
-LCL_CONFIGURE_CFLAGS+=-m64
-.ENDIF
-
-.IF "$(SYSBASE)"!=""
-.IF "$(EXTRA_CFLAGS)"!=""
-LCL_CONFIGURE_CFLAGS+=$(EXTRA_CFLAGS)
-CONFIGURE_FLAGS+=CXXFLAGS="$(EXTRA_CFLAGS)"
-.ENDIF # "$(EXTRA_CFLAGS)"!=""
-.ELIF "$(OS)"=="MACOSX" # "$(SYSBASE)"!=""
-CONFIGURE_FLAGS+=CPPFLAGS="$(EXTRA_CDEFS)"
-.ENDIF
-
-.IF "$(LCL_CONFIGURE_CFLAGS)"!=""
-CONFIGURE_FLAGS+=CFLAGS='$(LCL_CONFIGURE_CFLAGS)'
-.ENDIF
-
-.IF "$(SYSTEM_HYPH)" == "YES" && "$(WITH_MYSPELL_DICTS)" == "YES"
-BUILD_ACTION=make hyph_en_US.dic
-.ELIF "$(SYSTEM_HYPH)" == "YES" && "$(WITH_MYSPELL_DICTS)" != "YES"
-@all:
- echo "Nothing to do here."
-.ELSE
-BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS)
-OUT2INC += hyphen.h
-.ENDIF
-
-.ENDIF # "$(GUI)"=="UNX"
-
-.IF "$(GUI)"=="WNT"
-.IF "$(COM)"=="GCC"
-CONFIGURE_ACTION=configure
-CONFIGURE_FLAGS= --disable-shared --with-pic
-
-BUILD_ACTION=make
-
-.ELSE
-BUILD_ACTION=dmake
-.ENDIF # "$(COM)"=="GCC"
-OUT2INC += hyphen.h
-.ENDIF # "$(GUI)"=="WNT"
-
-.IF "$(CROSS_COMPILING)"=="YES"
-CONFIGURE_FLAGS+= --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : set_ext.mk
-.INCLUDE : target.mk
-.INCLUDE : tg_ext.mk
diff --git a/hyphen/prj/d.lst b/hyphen/prj/d.lst
index 0588179ef9b7..e69de29bb2d1 100644
--- a/hyphen/prj/d.lst
+++ b/hyphen/prj/d.lst
@@ -1,5 +0,0 @@
-..\%__SRC%\slb\hyphen.lib %_DEST%\lib\hyphen.lib
-
-..\%__SRC%\inc\hyphen.h %_DEST%\inc\hyphen.h
-..\%__SRC%\misc\build\hyphen-2.8.4\.libs\libhyphen.a %_DEST%\lib\libhyphen.a
-..\%__SRC%\misc\build\hyphen-2.8.4\hyph_en_US.dic %_DEST%\bin\hyph_en_US.dic
diff --git a/hyphen/prj/dmake b/hyphen/prj/dmake
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/hyphen/prj/dmake
+++ /dev/null
diff --git a/i18npool/CppunitTest_i18npool_test_languagetag.mk b/i18npool/CppunitTest_i18npool_test_languagetag.mk
index 610791cedbae..c6493303111a 100644
--- a/i18npool/CppunitTest_i18npool_test_languagetag.mk
+++ b/i18npool/CppunitTest_i18npool_test_languagetag.mk
@@ -26,7 +26,6 @@ $(eval $(call gb_CppunitTest_use_libraries,i18npool_test_languagetag,\
ifeq ($(ENABLE_LIBLANGTAG),YES)
$(eval $(call gb_CppunitTest_use_externals,i18npool_test_languagetag,\
liblangtag \
- glib \
libxml2 \
))
$(eval $(call gb_CppunitTest_add_defs,i18npool_test_languagetag,-DENABLE_LIBLANGTAG))
diff --git a/i18npool/Library_i18nisolang1.mk b/i18npool/Library_i18nisolang1.mk
index d38a2384fecc..3864c6eac574 100644
--- a/i18npool/Library_i18nisolang1.mk
+++ b/i18npool/Library_i18nisolang1.mk
@@ -59,9 +59,13 @@ $(eval $(call gb_Library_add_exception_objects,i18nisolang1,\
ifeq ($(ENABLE_LIBLANGTAG),YES)
$(eval $(call gb_Library_add_defs,i18nisolang1,-DENABLE_LIBLANGTAG))
-$(eval $(call gb_Library_use_external,i18nisolang1,glib))
$(eval $(call gb_Library_use_external,i18nisolang1,liblangtag))
$(eval $(call gb_Library_use_external,i18nisolang1,libxml2))
+$(eval $(call gb_Library_use_system_win32_libs,i18nisolang1,\
+ $(if $(filter $(COM),MSC), \
+ kernel32 \
+ ) \
+))
endif
# vim: set noet sw=4 ts=4:
diff --git a/i18npool/Library_i18nsearch.mk b/i18npool/Library_i18nsearch.mk
index d4499c8cade1..b587e13f52c2 100644
--- a/i18npool/Library_i18nsearch.mk
+++ b/i18npool/Library_i18nsearch.mk
@@ -39,6 +39,7 @@ $(eval $(call gb_Library_set_include,i18nsearch,\
$(eval $(call gb_Library_use_sdk_api,i18nsearch))
$(eval $(call gb_Library_use_libraries,i18nsearch,\
+ comphelper \
cppu \
cppuhelper \
i18nregexp \
diff --git a/i18npool/README b/i18npool/README
index 237e17ff68b7..86f72d1babe2 100644
--- a/i18npool/README
+++ b/i18npool/README
@@ -1,3 +1,6 @@
-Internationalisation (i18npool) framework ensures that the suite is adaptable to the requirements of different
-native languages, their local settings and customs, etc without source code modification
-or recompilation. \ No newline at end of file
+Internationalisation (i18npool) framework ensures that the suite is adaptable to the requirements of different
+native languages, their local settings and customs, etc without source code modification.
+
+Specifically for locale data documentation please see i18npool/source/localedata/data/locale.dtd
+
+See also [http://wiki.documentfoundation.org/Category:I18n]
diff --git a/i18npool/inc/defaultnumberingprovider.hxx b/i18npool/inc/defaultnumberingprovider.hxx
index a67ac1e3e072..53f56e5158dd 100644
--- a/i18npool/inc/defaultnumberingprovider.hxx
+++ b/i18npool/inc/defaultnumberingprovider.hxx
@@ -45,7 +45,7 @@ class DefaultNumberingProvider : public cppu::WeakImplHelper4
void impl_loadTranslit();
public:
DefaultNumberingProvider(
- const com::sun::star::uno::Reference < com::sun::star::lang::XMultiServiceFactory >& xMSF );
+ const com::sun::star::uno::Reference < com::sun::star::uno::XComponentContext >& rxContext );
~DefaultNumberingProvider();
//XDefaultNumberingProvider
@@ -85,7 +85,7 @@ public:
virtual com::sun::star::uno::Sequence< rtl::OUString > SAL_CALL getSupportedServiceNames(void)
throw( com::sun::star::uno::RuntimeException );
private:
- com::sun::star::uno::Reference < com::sun::star::lang::XMultiServiceFactory > xSMgr;
+ com::sun::star::uno::Reference < com::sun::star::uno::XComponentContext > m_xContext;
com::sun::star::uno::Reference < com::sun::star::container::XHierarchicalNameAccess > xHierarchicalNameAccess;
TransliterationImpl* translit;
rtl::OUString SAL_CALL makeNumberingIdentifier( sal_Int16 index )
diff --git a/i18npool/inc/i18npool/lang.h b/i18npool/inc/i18npool/lang.h
index 825efac9b9c7..127fee824603 100644
--- a/i18npool/inc/i18npool/lang.h
+++ b/i18npool/inc/i18npool/lang.h
@@ -535,6 +535,15 @@ typedef unsigned short LanguageType;
#define LANGUAGE_USER_ENGLISH_MALAWI 0x8809 /* makeLangID( 0x22, getPrimaryLanguage( LANGUAGE_ENGLISH_UK)) */
#define LANGUAGE_USER_ERZYA 0x066C
#define LANGUAGE_USER_MARI_MEADOW 0x066D
+#define LANGUAGE_USER_KHANTY 0x066E
+#define LANGUAGE_USER_LIVONIAN 0x066F
+#define LANGUAGE_USER_MOKSHA 0x0670
+#define LANGUAGE_USER_MARI_HILL 0x0671
+#define LANGUAGE_USER_NGANASAN 0x0672
+#define LANGUAGE_USER_OLONETS 0x0673
+#define LANGUAGE_USER_VEPS 0x0674
+#define LANGUAGE_USER_VORO 0x0675
+#define LANGUAGE_USER_NENETS 0x0676
#define LANGUAGE_USER_PAPIAMENTU_CURACAO 0x8479 /* makeLangID( 0x21, getPrimaryLanguage( LANGUAGE_PAPIAMENTU)) */
#define LANGUAGE_USER_PAPIAMENTU_BONAIRE 0x8879 /* makeLangID( 0x22, getPrimaryLanguage( LANGUAGE_PAPIAMENTU)) */
#define LANGUAGE_USER_SYSTEM_CONFIG 0xFFFE /* not a locale, to be used only in configuration context to obtain system default, primary 0x3fe, sub 0x3f */
diff --git a/i18npool/inc/i18npool/languagetag.hxx b/i18npool/inc/i18npool/languagetag.hxx
index 36ab7a24bd0a..7475cf06c679 100644
--- a/i18npool/inc/i18npool/languagetag.hxx
+++ b/i18npool/inc/i18npool/languagetag.hxx
@@ -120,11 +120,6 @@ public:
/** If this is a valid BCP 47 language tag. */
bool isValidBcp47() const;
- /** Needed for unit test in build environment, must be called before any
- LanguageTag is instanciated.
- */
- static void overrideDataPath( const rtl::OUString& rPath );
-
private:
enum Decision
diff --git a/i18npool/inc/i18npool/mslangid.hxx b/i18npool/inc/i18npool/mslangid.hxx
index 9c9cbdba8e41..574a07dbabe4 100644
--- a/i18npool/inc/i18npool/mslangid.hxx
+++ b/i18npool/inc/i18npool/mslangid.hxx
@@ -26,11 +26,20 @@
#include "i18npool/lang.h"
#include <com/sun/star/lang/Locale.hpp>
+// 0 := normal usage
+// 1 := force LanguageTag and make all conversion functions private to make the
+// compiler bail out
+#define I18NPOOL_FORCE_LANGUAGETAG 0
/** Methods related to Microsoft language IDs. For details about MS-LANGIDs
please see lang.h */
class I18NISOLANG_DLLPUBLIC MsLangId
{
+
+#if I18NPOOL_FORCE_LANGUAGETAG
+ friend class LanguageTag;
+#endif
+
public:
/// Create a LangID from a primary and a sublanguage.
@@ -84,6 +93,10 @@ public:
static LanguageType getRealLanguage( LanguageType nLang );
+#if I18NPOOL_FORCE_LANGUAGETAG
+private:
+#endif
+
/** @short: Convert a LanguageType to a Locale, resolving LANGUAGE_SYSTEM.
@ATTENTION: A round trip convertLanguageToLocale(
@@ -136,6 +149,12 @@ public:
const ::com::sun::star::lang::Locale & rLocale );
+#if I18NPOOL_FORCE_LANGUAGETAG
+public:
+#endif
+ // TODO: refactor to LanguageTag? Used only in
+ // i18npool/source/localedata/localedata.cxx
+
/** Get fall-back Locale for Locale with handling of an empty language name
designating the SYSTEM language. Returns the same Locale if an exact
match was found.
@@ -143,6 +162,10 @@ public:
static ::com::sun::star::lang::Locale getFallbackLocale(
const ::com::sun::star::lang::Locale & rLocale );
+#if I18NPOOL_FORCE_LANGUAGETAG
+private:
+#endif
+
// -----------------------------
// - ConvertLanguageToIsoNames -
// -----------------------------
@@ -166,8 +189,23 @@ public:
const rtl::OString& rCountry );
static LanguageType convertIsoStringToLanguage(
const rtl::OUString& rString, sal_Unicode cSep = '-' );
- static LanguageType convertUnxByteStringToLanguage(
- const rtl::OString& rString );
+
+#if I18NPOOL_FORCE_LANGUAGETAG
+public:
+#endif
+ // TODO: refactor to LanguageTag, used only in
+ // i18npool/source/isolang/inunx.cxx to convert Unix locale string
+
+ static LanguageType convertUnxByteStringToLanguage( const rtl::OString& rString );
+
+#if I18NPOOL_FORCE_LANGUAGETAG
+private:
+#endif
+
+
+#if I18NPOOL_FORCE_LANGUAGETAG
+public:
+#endif
static LanguageType resolveSystemLanguageByScriptType( LanguageType nLang, sal_Int16 nType );
diff --git a/i18npool/source/collator/chaptercollator.cxx b/i18npool/source/collator/chaptercollator.cxx
index 837cdc639f7f..8c0c1100c308 100644
--- a/i18npool/source/collator/chaptercollator.cxx
+++ b/i18npool/source/collator/chaptercollator.cxx
@@ -24,6 +24,7 @@
#include <chaptercollator.hxx>
#include <com/sun/star/i18n/KCharacterType.hpp>
#include <com/sun/star/i18n/ParseResult.hpp>
+#include <com/sun/star/i18n/CharacterClassification.hpp>
using namespace ::com::sun::star::lang;
using namespace ::com::sun::star::uno;
@@ -33,10 +34,7 @@ using namespace ::rtl;
ChapterCollator::ChapterCollator( const Reference < XMultiServiceFactory >& rxMSF ) : CollatorImpl(rxMSF)
{
if ( rxMSF.is()) {
- Reference < XInterface > xI =
- rxMSF->createInstance( OUString("com.sun.star.i18n.CharacterClassification"));
- if ( xI.is() )
- xI->queryInterface(::getCppuType((const Reference< XCharacterClassification>*)0)) >>= cclass;
+ cclass = CharacterClassification::create( comphelper::getComponentContext( rxMSF ) );
}
}
diff --git a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
index 4cb947c20a53..66145ef6b944 100644
--- a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
+++ b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
@@ -20,6 +20,7 @@
#include <defaultnumberingprovider.hxx>
#include <com/sun/star/style/NumberingType.hpp>
#include <com/sun/star/beans/PropertyValue.hpp>
+#include <com/sun/star/configuration/theDefaultProvider.hpp>
#include <com/sun/star/text/HoriOrientation.hpp>
#include <localedata.hxx>
#include <nativenumbersupplier.hxx>
@@ -259,7 +260,7 @@ static sal_Unicode table_PersianWord_decadeX[][8]={
};
-DefaultNumberingProvider::DefaultNumberingProvider( const Reference < XMultiServiceFactory >& xMSF ) : xSMgr(xMSF),translit(NULL)
+DefaultNumberingProvider::DefaultNumberingProvider( const Reference < XComponentContext >& rxContext ) : m_xContext(rxContext),translit(NULL)
{
}
@@ -272,7 +273,7 @@ DefaultNumberingProvider::~DefaultNumberingProvider()
void DefaultNumberingProvider::impl_loadTranslit()
{
if ( !translit )
- translit = new TransliterationImpl(comphelper::getComponentContext(xSMgr));
+ translit = new TransliterationImpl(m_xContext);
}
Sequence< Reference<container::XIndexAccess> >
@@ -934,8 +935,8 @@ static const Supported_NumberingType aSupportedTypes[] =
{style::NumberingType::CHARS_CYRILLIC_LOWER_LETTER_N_SR, S_CYR_A ", " S_CYR_B ", .., " S_CYR_A S_CYR_A ", " S_CYR_B S_CYR_B ", ... (sr)", LANG_ALL},
{style::NumberingType::CHARS_PERSIAN, NULL, LANG_CTL},
{style::NumberingType::CHARS_PERSIAN_WORD, NULL, LANG_CTL},
- {style::NumberingType::CHARS_GREEK_LOWER_LETTER, C_GR_A ", " C_GR_B ", ... (gr)", LANG_ALL},
- {style::NumberingType::CHARS_GREEK_UPPER_LETTER, S_GR_A ", " S_GR_B ", ... (gr)", LANG_ALL},
+ {style::NumberingType::CHARS_GREEK_UPPER_LETTER, C_GR_A ", " C_GR_B ", ... (gr)", LANG_ALL},
+ {style::NumberingType::CHARS_GREEK_LOWER_LETTER, S_GR_A ", " S_GR_B ", ... (gr)", LANG_ALL},
};
static const sal_Int32 nSupported_NumberingTypes = sizeof(aSupportedTypes) / sizeof(Supported_NumberingType);
@@ -966,11 +967,8 @@ sal_Bool SAL_CALL
DefaultNumberingProvider::isScriptFlagEnabled(const OUString& aName) throw(RuntimeException)
{
if (! xHierarchicalNameAccess.is()) {
- Reference< XInterface > xInterface;
-
- xInterface = xSMgr->createInstance(OUString("com.sun.star.configuration.ConfigurationProvider"));
Reference< XMultiServiceFactory > xConfigProvider =
- Reference< XMultiServiceFactory >(xInterface, UNO_QUERY );
+ configuration::theDefaultProvider::get(m_xContext);
if (! xConfigProvider.is())
throw RuntimeException();
@@ -981,7 +979,7 @@ DefaultNumberingProvider::isScriptFlagEnabled(const OUString& aName) throw(Runti
aPath.Value <<= OUString("/org.openoffice.Office.Common/I18N"),
aArgs[0] <<= aPath;
- xInterface = xConfigProvider->createInstanceWithArguments(
+ Reference<XInterface> xInterface = xConfigProvider->createInstanceWithArguments(
OUString("com.sun.star.configuration.ConfigurationAccess"), aArgs);
xHierarchicalNameAccess.set(xInterface, UNO_QUERY);
diff --git a/i18npool/source/isolang/isolang.cxx b/i18npool/source/isolang/isolang.cxx
index af9adf7152c0..1605d9ef5a43 100644
--- a/i18npool/source/isolang/isolang.cxx
+++ b/i18npool/source/isolang/isolang.cxx
@@ -482,6 +482,15 @@ static MsLangId::IsoLangEntry const aImplIsoLangEntries[] =
{ LANGUAGE_USER_PITJANTJATJARA, "pjt", "AU" },
{ LANGUAGE_USER_ERZYA, "myv", "RU" },
{ LANGUAGE_USER_MARI_MEADOW, "mhr", "RU" },
+ { LANGUAGE_USER_KHANTY, "kca", "RU" },
+ { LANGUAGE_USER_LIVONIAN, "liv", "RU" },
+ { LANGUAGE_USER_MOKSHA, "mdf", "RU" },
+ { LANGUAGE_USER_MARI_HILL, "mrj", "RU" },
+ { LANGUAGE_USER_NGANASAN, "nio", "RU" },
+ { LANGUAGE_USER_OLONETS, "olo", "RU" },
+ { LANGUAGE_USER_VEPS, "vep", "RU" },
+ { LANGUAGE_USER_VORO, "vro", "EE" },
+ { LANGUAGE_USER_NENETS, "yrk", "RU" },
{ LANGUAGE_NONE, "zxx", "" }, // added to ISO 639-2 on 2006-01-11: Used to declare the absence of linguistic information
{ LANGUAGE_DONTKNOW, "", "" } // marks end of table
};
diff --git a/i18npool/source/languagetag/languagetag.cxx b/i18npool/source/languagetag/languagetag.cxx
index 14cad588a857..0a7e8933b65f 100644
--- a/i18npool/source/languagetag/languagetag.cxx
+++ b/i18npool/source/languagetag/languagetag.cxx
@@ -138,14 +138,6 @@ void LiblantagDataRef::setupDataPath()
lt_db_set_datadir( maDataPath.getStr());
}
-
-// static
-void LanguageTag::overrideDataPath( const rtl::OUString& rPath )
-{
- theDataRef.presetDataPath( rPath);
-}
-
-
LanguageTag::LanguageTag( const rtl::OUString & rBcp47LanguageTag, bool bCanonicalize )
:
maBcp47( rBcp47LanguageTag),
@@ -293,14 +285,6 @@ bool LanguageTag::canonicalize() const
dumper aDumper( &mpImplLangtag);
#endif
- // g_error_free() mocks about NULL, so ...
- struct myerror
- {
- GError* p;
- myerror() : p(NULL) {}
- ~myerror() { if (p) g_error_free( p); }
- } aError;
-
getBcp47(); // side effect: have maBcp47 in any case
// Checking empty for system locale before having allocated mpImplLangtag
// may result in multiple calls of this method because that serves as flag
@@ -313,11 +297,19 @@ bool LanguageTag::canonicalize() const
}
if (!mpImplLangtag)
mpImplLangtag = lt_tag_new();
+
+ // ensure error is free'd
+ struct myerror
+ {
+ lt_error_t* p;
+ myerror() : p(NULL) {}
+ ~myerror() { if (p) lt_error_unref( p); }
+ } aError;
+
if (lt_tag_parse( MPLANGTAG, OUStringToOString( maBcp47, RTL_TEXTENCODING_UTF8).getStr(), &aError.p))
{
- gchar* pTag = lt_tag_canonicalize( MPLANGTAG, &aError.p);
- SAL_WARN_IF( !pTag || aError.p, "i18npool.langtag", "LanguageTag::canonicalize: could not canonicalize, " <<
- (aError.p ? aError.p->message : ""));
+ char* pTag = lt_tag_canonicalize( MPLANGTAG, &aError.p);
+ SAL_WARN_IF( !pTag, "i18npool.langtag", "LanguageTag::canonicalize: could not canonicalize " << maBcp47);
if (pTag)
{
OUString aOld( maBcp47);
@@ -328,24 +320,20 @@ bool LanguageTag::canonicalize() const
{
if (!lt_tag_parse( MPLANGTAG, pTag, &aError.p))
{
- SAL_WARN( "i18npool.langtag", "LanguageTag::canonicalize: could not reparse, " <<
- (aError.p ? aError.p->message : ""));
- g_free( pTag);
+ SAL_WARN( "i18npool.langtag", "LanguageTag::canonicalize: could not reparse " << maBcp47);
+ free( pTag);
meIsValid = DECISION_NO;
return false;
}
}
- g_free( pTag);
+ free( pTag);
meIsValid = DECISION_YES;
return true;
}
}
else
{
- SAL_INFO(
- "i18npool.langtag",
- "LanguageTag::canonicalize " << maBcp47 << ": could not parse, "
- << (aError.p ? aError.p->message : ""));
+ SAL_INFO( "i18npool.langtag", "LanguageTag::canonicalize: could not parse " << maBcp47);
}
meIsValid = DECISION_NO;
return false;
@@ -480,7 +468,7 @@ rtl::OUString LanguageTag::getLanguageFromLangtag() const
SAL_WARN_IF( !pLangT, "i18npool.langtag", "LanguageTag::getLanguageFromLangtag: pLangT==NULL");
if (!pLangT)
return aLanguage;
- const gchar* pLang = lt_lang_get_tag( pLangT);
+ const char* pLang = lt_lang_get_tag( pLangT);
SAL_WARN_IF( !pLang, "i18npool.langtag", "LanguageTag::getLanguageFromLangtag: pLang==NULL");
if (pLang)
aLanguage = OUString::createFromAscii( pLang);
@@ -499,7 +487,7 @@ rtl::OUString LanguageTag::getScriptFromLangtag() const
// pScriptT==NULL is valid for default scripts
if (!pScriptT)
return aScript;
- const gchar* pScript = lt_script_get_tag( pScriptT);
+ const char* pScript = lt_script_get_tag( pScriptT);
SAL_WARN_IF( !pScript, "i18npool.langtag", "LanguageTag::getScriptFromLangtag: pScript==NULL");
if (pScript)
aScript = OUString::createFromAscii( pScript);
@@ -518,7 +506,7 @@ rtl::OUString LanguageTag::getRegionFromLangtag() const
SAL_WARN_IF( !pRegionT, "i18npool.langtag", "LanguageTag::getRegionFromLangtag: pRegionT==NULL");
if (!pRegionT)
return aRegion;
- const gchar* pRegion = lt_region_get_tag( pRegionT);
+ const char* pRegion = lt_region_get_tag( pRegionT);
SAL_WARN_IF( !pRegion, "i18npool.langtag", "LanguageTag::getRegionFromLangtag: pRegion==NULL");
if (pRegion)
aRegion = OUString::createFromAscii( pRegion);
diff --git a/i18npool/source/languagetag/simple-langtag.cxx b/i18npool/source/languagetag/simple-langtag.cxx
index d05ab4236a4b..d96f721dbeef 100644
--- a/i18npool/source/languagetag/simple-langtag.cxx
+++ b/i18npool/source/languagetag/simple-langtag.cxx
@@ -22,32 +22,29 @@
namespace {
-typedef char gchar;
-typedef void* gpointer;
-typedef int gint;
-typedef gint gboolean;
+typedef int lt_bool_t;
-struct GError {
- char *message;
- GError() : message(NULL) {}
+struct lt_error_t {
+ void *something;
+ lt_error_t() : something(NULL) {}
};
-static gpointer g_malloc(size_t s)
+static void* g_malloc(size_t s)
{
return malloc(s);
}
-static void g_free(gpointer p)
+static void g_free(void* p)
{
if (p)
free(p);
}
-static void g_error_free(GError *error)
+static void lt_error_unref(lt_error_t *error)
{
if (error)
{
- g_free( error->message);
+ g_free( error->something);
g_free( error);
}
}
@@ -63,7 +60,7 @@ struct my_ref
struct my_t_impl : public my_ref
{
- gchar* mpStr;
+ char* mpStr;
explicit my_t_impl() : my_ref(), mpStr(NULL) {}
virtual ~my_t_impl() { g_free( mpStr); }
explicit my_t_impl( const my_t_impl& r )
@@ -80,30 +77,30 @@ struct my_t_impl : public my_ref
mpStr = (r.mpStr ? strdup( r.mpStr) : NULL);
return *this;
}
- void assign( const gchar* str )
+ void assign( const char* str )
{
g_free( mpStr);
mpStr = (str ? strdup( str) : NULL);
}
- void assign( const gchar* str, const gchar* stop )
+ void assign( const char* str, const char* stop )
{
g_free( mpStr);
if (str && str < stop)
{
- mpStr = static_cast<gchar*>(g_malloc( stop - str + 1));
+ mpStr = static_cast<char*>(g_malloc( stop - str + 1));
memcpy( mpStr, str, stop - str);
mpStr[stop - str] = 0;
}
else
mpStr = NULL;
}
- void append( const gchar* str, const gchar* stop )
+ void append( const char* str, const char* stop )
{
if (str && str < stop)
{
size_t nOld = mpStr ? strlen( mpStr) : 0;
size_t nNew = nOld + (stop - str) + 1;
- char* p = static_cast<gchar*>(g_malloc( nNew));
+ char* p = static_cast<char*>(g_malloc( nNew));
if (nOld)
memcpy( p, mpStr, nOld);
memcpy( p + nOld, str, stop - str);
@@ -162,7 +159,7 @@ struct lt_tag_t : public my_t_impl
maRegion = r.maRegion;
return *this;
}
- void assign( const gchar* str )
+ void assign( const char* str )
{
maLanguage.zero();
maScript.zero();
@@ -198,9 +195,9 @@ static void lt_tag_unref(lt_tag_t *tag)
any i-* irregular and x-* privateuse. Subtags are not checked for validity
(alpha, digit, registered, ...).
*/
-static gboolean lt_tag_parse(lt_tag_t *tag,
- const gchar *tag_string,
- GError **error)
+static lt_bool_t lt_tag_parse(lt_tag_t *tag,
+ const char *tag_string,
+ lt_error_t **error)
{
(void) error;
if (!tag)
@@ -211,9 +208,9 @@ static gboolean lt_tag_parse(lt_tag_t *tag,
// In case we supported other subtags this would get more complicated.
my_t_impl* aSubtags[] = { &tag->maLanguage, &tag->maScript, &tag->maRegion, NULL };
my_t_impl** ppSub = &aSubtags[0];
- const gchar* pStart = tag_string;
- const gchar* p = pStart;
- const gchar* pEnd = pStart + strlen( pStart); // scanning includes \0
+ const char* pStart = tag_string;
+ const char* p = pStart;
+ const char* pEnd = pStart + strlen( pStart); // scanning includes \0
bool bStartLang = true;
bool bPrivate = false;
for ( ; p <= pEnd && ppSub && *ppSub; ++p)
@@ -350,8 +347,8 @@ static gboolean lt_tag_parse(lt_tag_t *tag,
return !0;
}
-static gchar* lt_tag_canonicalize(lt_tag_t *tag,
- GError **error)
+static char* lt_tag_canonicalize(lt_tag_t *tag,
+ lt_error_t **error)
{
(void) error;
return tag && tag->mpStr ? strdup( tag->mpStr) : NULL;
@@ -372,17 +369,17 @@ static const lt_region_t *lt_tag_get_region(const lt_tag_t *tag)
return tag && tag->maRegion.mpStr ? &tag->maRegion : NULL;
}
-static const gchar *lt_lang_get_tag(const lt_lang_t *lang)
+static const char *lt_lang_get_tag(const lt_lang_t *lang)
{
return lang ? lang->mpStr : NULL;
}
-static const gchar *lt_script_get_tag(const lt_script_t *script)
+static const char *lt_script_get_tag(const lt_script_t *script)
{
return script ? script->mpStr : NULL;
}
-static const gchar *lt_region_get_tag(const lt_region_t *region)
+static const char *lt_region_get_tag(const lt_region_t *region)
{
return region ? region->mpStr : NULL;
}
diff --git a/i18npool/source/localedata/data/he_IL.xml b/i18npool/source/localedata/data/he_IL.xml
index 378b489b200c..e8ddb3e03b71 100644
--- a/i18npool/source/localedata/data/he_IL.xml
+++ b/i18npool/source/localedata/data/he_IL.xml
@@ -51,7 +51,7 @@
<TimePM>PM</TimePM>
<MeasurementSystem>metric</MeasurementSystem>
</LC_CTYPE>
- <LC_FORMAT>
+ <LC_FORMAT replaceFrom="[CURRENCY]" replaceTo="[$₪-40D]">
<DateAcceptancePattern>D/M</DateAcceptancePattern>
<FormatElement msgid="DateFormatskey1" default="true" type="short" usage="DATE" formatindex="18">
<FormatCode>D/M/YY</FormatCode>
@@ -172,22 +172,22 @@
<FormatCode>#,###.00</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
- <FormatCode>[$₪-40D] #,##0;[$₪-40D] -#,##0</FormatCode>
+ <FormatCode>[CURRENCY] #,##0;[CURRENCY] -#,##0</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
- <FormatCode>[$₪-40D] #,##0.00;[$₪-40D] -#,##0.00</FormatCode>
+ <FormatCode>[CURRENCY] #,##0.00;[CURRENCY] -#,##0.00</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
- <FormatCode>[$₪-40D] #,##0;[RED][$₪-40D] -#,##0</FormatCode>
+ <FormatCode>[CURRENCY] #,##0;[RED][CURRENCY] -#,##0</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
- <FormatCode>[$₪-40D] #,##0.00;[RED][$₪-40D] -#,##0.00</FormatCode>
+ <FormatCode>[CURRENCY] #,##0.00;[RED][CURRENCY] -#,##0.00</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
<FormatCode>#,##0.00 CCC</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
- <FormatCode>[$₪-40D] #,##0.--;[RED][$₪-40D] -#,##0.--</FormatCode>
+ <FormatCode>[CURRENCY] #,##0.--;[RED][CURRENCY] -#,##0.--</FormatCode>
</FormatElement>
<FormatElement msgid="PercentFormatskey1" default="true" type="short" usage="PERCENT_NUMBER" formatindex="8">
<FormatCode>0%</FormatCode>
diff --git a/i18npool/source/localedata/data/locale.dtd b/i18npool/source/localedata/data/locale.dtd
index 6575eb347d29..d0448015943f 100644
--- a/i18npool/source/localedata/data/locale.dtd
+++ b/i18npool/source/localedata/data/locale.dtd
@@ -395,6 +395,14 @@
documents and is not selectable in the UI otherwise. Defaults to "false"
if not specified. If this attribute is "true", 'default' and
'usedInCompatibleFormatCodes' must both be "false".
+
+ Currency elements must not be changed to contain only a different
+ CurrencySymbol element without changing the CurrencyID and BankSymbol
+ elements, instead the entire Currency element must be duplicated, the old
+ element needs this 'legacyOnly' attribute be added and 'default' and
+ 'usedInCompatibleFormatCodes' attributes must be set to "false", and only
+ in the new duplicated Currency element the CurrencySymbol element be
+ changed.
-->
<!ELEMENT CurrencyID (#PCDATA)>
<!-- The ISO 4217 three letter currency code, e.g. USD or EUR. -->
diff --git a/i18npool/source/localedata/genstaticheader.pl b/i18npool/source/localedata/genstaticheader.pl
index adba340cd39e..3d9935876488 100644
--- a/i18npool/source/localedata/genstaticheader.pl
+++ b/i18npool/source/localedata/genstaticheader.pl
@@ -44,6 +44,7 @@ my @FUNCS = qw(
getSearchOptions
getTransliterations
getUnicodeScripts
+ getAllFormats1
);
print 'extern "C" {
@@ -52,7 +53,13 @@ print 'extern "C" {
foreach my $lang (@ARGV) {
foreach my $func (@FUNCS) {
- printf("void %s_%s();\n", $func, $lang);
+ if ($func eq 'getAllFormats1') {
+ if ($lang eq 'en_US') {
+ printf("void %s_%s();\n", $func, $lang);
+ }
+ } else {
+ printf("void %s_%s();\n", $func, $lang);
+ }
}
}
@@ -70,7 +77,15 @@ foreach my $lang (@ARGV) {
printf(" {\n");
printf(" \"%s\",\n", $lang);
foreach my $func (@FUNCS) {
- printf(" %s_%s,\n", $func, $lang);
+ if ($func eq 'getAllFormats1') {
+ if ($lang eq 'en_US') {
+ printf(" %s_%s,\n", $func, $lang);
+ } else {
+ printf(" 0,\n");
+ }
+ } else {
+ printf(" %s_%s,\n", $func, $lang);
+ }
}
printf(" }%s\n", ($lang ne $ARGV[$#ARGV]) ? ',' : '');
}
diff --git a/i18npool/source/localedata/localedata.cxx b/i18npool/source/localedata/localedata.cxx
index 0fff9cf6b23f..300c5e177bb9 100644
--- a/i18npool/source/localedata/localedata.cxx
+++ b/i18npool/source/localedata/localedata.cxx
@@ -533,6 +533,8 @@ oslGenericFunction SAL_CALL lcl_LookupTableHelper::getFunctionSymbolByName(
return aLibTable[i].getTransliterations;
else if( strcmp(pFunction, "getUnicodeScripts") == 0 )
return aLibTable[i].getUnicodeScripts;
+ else if( strcmp(pFunction, "getAllFormats1") == 0 )
+ return aLibTable[i].getAllFormats1;
#endif
}
}
diff --git a/i18npool/source/nativenumber/nativenumbersupplier.cxx b/i18npool/source/nativenumber/nativenumbersupplier.cxx
index 8c10f0fe9fcd..8632b5df7a7c 100644
--- a/i18npool/source/nativenumber/nativenumbersupplier.cxx
+++ b/i18npool/source/nativenumber/nativenumbersupplier.cxx
@@ -792,7 +792,7 @@ sal_Int16 SAL_CALL NativeNumberSupplier::convertFromXmlAttributes( const NativeN
// Following code generates Hebrew Number,
// see numerical system in the Hebrew Numbering System in following link for details,
-// http://people.netscape.com/smontagu/writings/HebrewNumbers.html
+// http://smontagu.org/writings/HebrewNumbers.html
struct HebrewNumberChar {
sal_Unicode code;
diff --git a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx b/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
index 6dd70538421e..558429aa57ae 100644
--- a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
+++ b/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
@@ -88,7 +88,9 @@ uno::Sequence< OUString > SAL_CALL OrdinalSuffix::getOrdinalSuffix( sal_Int32 nN
return retValue;
icu::UnicodeString sFormatWithNoOrdinal;
- xNumberFormat->format((int32_t)nNumber, sFormatWithNoOrdinal, NULL, nCode);
+ icu::Formattable ftmNumber((int32_t)nNumber);
+ icu::FieldPosition icuPosA;
+ xNumberFormat->format(ftmNumber, sFormatWithNoOrdinal, icuPosA, nCode);
if (!U_SUCCESS(nCode))
return retValue;
@@ -103,8 +105,8 @@ uno::Sequence< OUString > SAL_CALL OrdinalSuffix::getOrdinalSuffix( sal_Int32 nN
// format the string
icu::UnicodeString sFormatWithOrdinal;
- icu::FieldPosition icuPos;
- formatter.format( (int32_t)nNumber, ruleSet, sFormatWithOrdinal, icuPos, nCode );
+ icu::FieldPosition icuPosB;
+ formatter.format((int32_t)nNumber, ruleSet, sFormatWithOrdinal, icuPosB, nCode);
if (!U_SUCCESS(nCode))
continue;
diff --git a/i18npool/source/registerservices/registerservices.cxx b/i18npool/source/registerservices/registerservices.cxx
index 6345b916690a..c83702218c8c 100644
--- a/i18npool/source/registerservices/registerservices.cxx
+++ b/i18npool/source/registerservices/registerservices.cxx
@@ -130,7 +130,7 @@ using namespace ::com::sun::star::i18n;
IMPL_CREATEINSTANCE_CTX( NumberFormatCodeMapper )
IMPL_CREATEINSTANCE( NativeNumberSupplier )
IMPL_CREATEINSTANCE( LocaleData )
-IMPL_CREATEINSTANCE_MSF( DefaultNumberingProvider )
+IMPL_CREATEINSTANCE_CTX( DefaultNumberingProvider )
IMPL_CREATEINSTANCE_MSF( IndexEntrySupplier )
IMPL_CREATEINSTANCE_MSF( IndexEntrySupplier_asian )
IMPL_CREATEINSTANCE_MSF( IndexEntrySupplier_ja_phonetic_alphanumeric_first_by_syllable )
diff --git a/i18npool/source/search/textsearch.cxx b/i18npool/source/search/textsearch.cxx
index 8c2d554884ec..1469cead0d75 100644
--- a/i18npool/source/search/textsearch.cxx
+++ b/i18npool/source/search/textsearch.cxx
@@ -33,12 +33,15 @@
#include <com/sun/star/lang/Locale.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <comphelper/processfactory.hxx>
+#include <com/sun/star/i18n/BreakIterator.hpp>
#include <com/sun/star/i18n/UnicodeType.hpp>
#include <com/sun/star/util/SearchFlags.hpp>
#include <com/sun/star/i18n/WordType.hpp>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
+#include <com/sun/star/i18n/CharacterClassification.hpp>
#include <com/sun/star/i18n/KCharacterType.hpp>
+#include <com/sun/star/i18n/Transliteration.hpp>
#include <com/sun/star/registry/XRegistryKey.hpp>
#include <cppuhelper/factory.hxx>
#include <cppuhelper/weak.hxx>
@@ -75,8 +78,8 @@ static const sal_Int32 COMPLEX_TRANS_MASK =
// Above 2 transliteration is simple but need to take effect in
// complex transliteration
-TextSearch::TextSearch(const Reference < XMultiServiceFactory > & rxMSF)
- : xMSF( rxMSF )
+TextSearch::TextSearch(const Reference < XComponentContext > & rxContext)
+ : m_xContext( rxContext )
, pJumpTable( 0 )
, pJumpTable2( 0 )
, pRegExp( 0 )
@@ -111,19 +114,12 @@ void TextSearch::setOptions( const SearchOptions& rOptions ) throw( RuntimeExcep
{
if( !xTranslit.is() )
{
- Reference < XInterface > xI = xMSF->createInstance(
- OUString(
- "com.sun.star.i18n.Transliteration"));
- if ( xI.is() )
- xI->queryInterface( ::getCppuType(
- (const Reference< XExtendedTransliteration >*)0))
- >>= xTranslit;
+ xTranslit.set( Transliteration::create( m_xContext ) );
}
// Load transliteration module
- if( xTranslit.is() )
- xTranslit->loadModule(
- (TransliterationModules)( aSrchPara.transliterateFlags & SIMPLE_TRANS_MASK ),
- aSrchPara.Locale);
+ xTranslit->loadModule(
+ (TransliterationModules)( aSrchPara.transliterateFlags & SIMPLE_TRANS_MASK ),
+ aSrchPara.Locale);
}
else if( xTranslit.is() )
xTranslit = 0;
@@ -133,29 +129,17 @@ void TextSearch::setOptions( const SearchOptions& rOptions ) throw( RuntimeExcep
{
if( !xTranslit2.is() )
{
- Reference < XInterface > xI = xMSF->createInstance(
- OUString(
- "com.sun.star.i18n.Transliteration"));
- if ( xI.is() )
- xI->queryInterface( ::getCppuType(
- (const Reference< XExtendedTransliteration >*)0))
- >>= xTranslit2;
+ xTranslit2.set( Transliteration::create( m_xContext ) );
}
// Load transliteration module
- if( xTranslit2.is() )
- xTranslit2->loadModule(
- (TransliterationModules)( aSrchPara.transliterateFlags & COMPLEX_TRANS_MASK ),
- aSrchPara.Locale);
+ xTranslit2->loadModule(
+ (TransliterationModules)( aSrchPara.transliterateFlags & COMPLEX_TRANS_MASK ),
+ aSrchPara.Locale);
}
if ( !xBreak.is() )
{
- Reference < XInterface > xI = xMSF->createInstance(
- OUString("com.sun.star.i18n.BreakIterator"));
- if( xI.is() )
- xI->queryInterface( ::getCppuType(
- (const Reference< XBreakIterator >*)0))
- >>= xBreak;
+ xBreak = BreakIterator::create(m_xContext);
}
sSrchStr = aSrchPara.searchString;
@@ -410,21 +394,13 @@ bool TextSearch::IsDelimiter( const OUString& rStr, sal_Int32 nPos ) const
{
if ( !xCharClass.is() )
{
- Reference < XInterface > xI = xMSF->createInstance(
- OUString("com.sun.star.i18n.CharacterClassification"));
- if( xI.is() )
- xI->queryInterface( ::getCppuType(
- (const Reference< XCharacterClassification >*)0))
- >>= xCharClass;
- }
- if ( xCharClass.is() )
- {
- sal_Int32 nCType = xCharClass->getCharacterType( rStr, nPos,
- aSrchPara.Locale );
- if( 0 != (( KCharacterType::DIGIT | KCharacterType::ALPHA |
- KCharacterType::LETTER ) & nCType ) )
- bRet = 0;
+ xCharClass = CharacterClassification::create( m_xContext );
}
+ sal_Int32 nCType = xCharClass->getCharacterType( rStr, nPos,
+ aSrchPara.Locale );
+ if( 0 != (( KCharacterType::DIGIT | KCharacterType::ALPHA |
+ KCharacterType::LETTER ) & nCType ) )
+ bRet = 0;
}
return bRet;
}
@@ -974,7 +950,7 @@ SAL_CALL TextSearch_CreateInstance(
{
return ::com::sun::star::uno::Reference<
::com::sun::star::uno::XInterface >(
- (::cppu::OWeakObject*) new TextSearch( rxMSF ) );
+ (::cppu::OWeakObject*) new TextSearch( comphelper::getComponentContext(rxMSF) ) );
}
extern "C"
diff --git a/i18npool/source/search/textsearch.hxx b/i18npool/source/search/textsearch.hxx
index 32b4d2e5af18..ca28435945f5 100644
--- a/i18npool/source/search/textsearch.hxx
+++ b/i18npool/source/search/textsearch.hxx
@@ -36,6 +36,7 @@
#include <com/sun/star/i18n/XExtendedTransliteration.hpp>
#include <com/sun/star/i18n/XCharacterClassification.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
#include <map>
@@ -52,7 +53,7 @@ class TextSearch: public cppu::WeakImplHelper2
::com::sun::star::lang::XServiceInfo
>
{
- ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory > xMSF;
+ ::com::sun::star::uno::Reference < ::com::sun::star::uno::XComponentContext > m_xContext;
::com::sun::star::util::SearchOptions aSrchPara;
::rtl::OUString sSrchStr;
@@ -125,7 +126,7 @@ class TextSearch: public cppu::WeakImplHelper2
public:
TextSearch(
- const ::com::sun::star::uno::Reference < ::com::sun::star::lang::XMultiServiceFactory >& rxMSF );
+ const ::com::sun::star::uno::Reference < ::com::sun::star::uno::XComponentContext >& rxContext );
virtual ~TextSearch();
diff --git a/icon-themes/classic/classic_images.tar.gz b/icon-themes/classic/classic_images.tar.gz
index e9578d919801..f013ecbad47f 100644
--- a/icon-themes/classic/classic_images.tar.gz
+++ b/icon-themes/classic/classic_images.tar.gz
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/black_circle_1_4th.png b/icon-themes/galaxy/sc/res/black_circle_1_4th.png
new file mode 100644
index 000000000000..f5390af43f71
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/black_circle_1_4th.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/black_circle_3_4th.png b/icon-themes/galaxy/sc/res/black_circle_3_4th.png
new file mode 100644
index 000000000000..7fb720290c88
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/black_circle_3_4th.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/black_circle_empty.png b/icon-themes/galaxy/sc/res/black_circle_empty.png
new file mode 100644
index 000000000000..0b037e84ab28
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/black_circle_empty.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/black_circle_full.png b/icon-themes/galaxy/sc/res/black_circle_full.png
new file mode 100644
index 000000000000..8bfc1fea55a3
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/black_circle_full.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/black_circle_half.png b/icon-themes/galaxy/sc/res/black_circle_half.png
new file mode 100644
index 000000000000..1b1328cbd189
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/black_circle_half.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/cancel.png b/icon-themes/galaxy/sc/res/cancel.png
new file mode 100644
index 000000000000..ae3f7a60c9d0
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/cancel.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/exclamation_mark.png b/icon-themes/galaxy/sc/res/exclamation_mark.png
new file mode 100644
index 000000000000..1c0ba39b2cca
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/exclamation_mark.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/green_arrow_up.png b/icon-themes/galaxy/sc/res/green_arrow_up.png
new file mode 100644
index 000000000000..c407a3c2a779
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/green_arrow_up.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/green_circle.png b/icon-themes/galaxy/sc/res/green_circle.png
new file mode 100644
index 000000000000..82f9b226a776
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/green_circle.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/minus_black.png b/icon-themes/galaxy/sc/res/minus_black.png
new file mode 100644
index 000000000000..3f02a7d5e311
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/minus_black.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/red_arrow_down.png b/icon-themes/galaxy/sc/res/red_arrow_down.png
new file mode 100644
index 000000000000..7989707af07c
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/red_arrow_down.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/red_circle.png b/icon-themes/galaxy/sc/res/red_circle.png
new file mode 100644
index 000000000000..8da3f79a8920
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/red_circle.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/sign.png b/icon-themes/galaxy/sc/res/sign.png
new file mode 100644
index 000000000000..58e4f2f5d639
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/sign.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/triangle_down_red.png b/icon-themes/galaxy/sc/res/triangle_down_red.png
new file mode 100644
index 000000000000..569e1c672aef
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/triangle_down_red.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/triangle_up_green.png b/icon-themes/galaxy/sc/res/triangle_up_green.png
new file mode 100644
index 000000000000..216530a81947
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/triangle_up_green.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/yellow_arrow_down_right.png b/icon-themes/galaxy/sc/res/yellow_arrow_down_right.png
new file mode 100644
index 000000000000..29355872462e
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/yellow_arrow_down_right.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/yellow_arrow_right.png b/icon-themes/galaxy/sc/res/yellow_arrow_right.png
new file mode 100644
index 000000000000..f38d0d9d524a
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/yellow_arrow_right.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/yellow_arrow_up_right.png b/icon-themes/galaxy/sc/res/yellow_arrow_up_right.png
new file mode 100644
index 000000000000..ea78f27a974d
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/yellow_arrow_up_right.png
Binary files differ
diff --git a/icon-themes/galaxy/sc/res/yellow_circle.png b/icon-themes/galaxy/sc/res/yellow_circle.png
new file mode 100644
index 000000000000..d39cc6643ed6
--- /dev/null
+++ b/icon-themes/galaxy/sc/res/yellow_circle.png
Binary files differ
diff --git a/icon-themes/galaxy/svtools/res/collate.png b/icon-themes/galaxy/svtools/res/collate.png
deleted file mode 100644
index b664152556f9..000000000000
--- a/icon-themes/galaxy/svtools/res/collate.png
+++ /dev/null
Binary files differ
diff --git a/icon-themes/galaxy/svtools/res/ncollate.png b/icon-themes/galaxy/svtools/res/ncollate.png
deleted file mode 100644
index d399afb95430..000000000000
--- a/icon-themes/galaxy/svtools/res/ncollate.png
+++ /dev/null
Binary files differ
diff --git a/icon-themes/galaxy/vcl/res/index.png b/icon-themes/galaxy/vcl/res/index.png
new file mode 100644
index 000000000000..eee0edfcaa56
--- /dev/null
+++ b/icon-themes/galaxy/vcl/res/index.png
Binary files differ
diff --git a/icon-themes/hicontrast/svtools/res/collate.png b/icon-themes/hicontrast/svtools/res/collate.png
deleted file mode 100644
index 38353b700f72..000000000000
--- a/icon-themes/hicontrast/svtools/res/collate.png
+++ /dev/null
Binary files differ
diff --git a/icon-themes/hicontrast/svtools/res/ncollate.png b/icon-themes/hicontrast/svtools/res/ncollate.png
deleted file mode 100644
index 91e066b9b09b..000000000000
--- a/icon-themes/hicontrast/svtools/res/ncollate.png
+++ /dev/null
Binary files differ
diff --git a/icon-themes/hicontrast/vcl/res/index.png b/icon-themes/hicontrast/vcl/res/index.png
new file mode 100644
index 000000000000..4392542b80b7
--- /dev/null
+++ b/icon-themes/hicontrast/vcl/res/index.png
Binary files differ
diff --git a/icon-themes/hicontrast/vcl/source/src/collate.png b/icon-themes/hicontrast/vcl/source/src/collate.png
deleted file mode 100644
index 407e56cd9bce..000000000000
--- a/icon-themes/hicontrast/vcl/source/src/collate.png
+++ /dev/null
Binary files differ
diff --git a/icon-themes/hicontrast/vcl/source/src/ncollate.png b/icon-themes/hicontrast/vcl/source/src/ncollate.png
deleted file mode 100644
index 10ba6bca1aa7..000000000000
--- a/icon-themes/hicontrast/vcl/source/src/ncollate.png
+++ /dev/null
Binary files differ
diff --git a/icon-themes/human/svtools/res/collate.png b/icon-themes/human/vcl/res/collate.png
index 34b5d23dc5ad..34b5d23dc5ad 100644
--- a/icon-themes/human/svtools/res/collate.png
+++ b/icon-themes/human/vcl/res/collate.png
Binary files differ
diff --git a/icon-themes/human/vcl/res/index.png b/icon-themes/human/vcl/res/index.png
new file mode 100644
index 000000000000..d41d81a5e6c9
--- /dev/null
+++ b/icon-themes/human/vcl/res/index.png
Binary files differ
diff --git a/icon-themes/human/svtools/res/ncollate.png b/icon-themes/human/vcl/res/ncollate.png
index 3e1f14be62cf..3e1f14be62cf 100644
--- a/icon-themes/human/svtools/res/ncollate.png
+++ b/icon-themes/human/vcl/res/ncollate.png
Binary files differ
diff --git a/icon-themes/industrial/vcl/res/index.png b/icon-themes/industrial/vcl/res/index.png
new file mode 100644
index 000000000000..d41d81a5e6c9
--- /dev/null
+++ b/icon-themes/industrial/vcl/res/index.png
Binary files differ
diff --git a/icon-themes/oxygen/svtools/res/collate.png b/icon-themes/oxygen/vcl/res/collate.png
index edbd5ea93584..edbd5ea93584 100644
--- a/icon-themes/oxygen/svtools/res/collate.png
+++ b/icon-themes/oxygen/vcl/res/collate.png
Binary files differ
diff --git a/icon-themes/oxygen/vcl/res/index.png b/icon-themes/oxygen/vcl/res/index.png
new file mode 100644
index 000000000000..d41d81a5e6c9
--- /dev/null
+++ b/icon-themes/oxygen/vcl/res/index.png
Binary files differ
diff --git a/icon-themes/oxygen/svtools/res/ncollate.png b/icon-themes/oxygen/vcl/res/ncollate.png
index a927de86bcf0..a927de86bcf0 100644
--- a/icon-themes/oxygen/svtools/res/ncollate.png
+++ b/icon-themes/oxygen/vcl/res/ncollate.png
Binary files differ
diff --git a/icon-themes/tango/cmd/lc_view100.png b/icon-themes/tango/cmd/lc_view100.png
new file mode 100644
index 000000000000..97c325f14e46
--- /dev/null
+++ b/icon-themes/tango/cmd/lc_view100.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/FIXMEcolumns_52x60.svg b/icon-themes/tango_testing/chart2/res/FIXMEcolumns_52x60.svg
new file mode 100644
index 000000000000..db768e65a26d
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/FIXMEcolumns_52x60.svg
@@ -0,0 +1,774 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="FIXMEcolumns_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/columnstack_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6733"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6735"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6758"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="45.82835"
+ inkscape:cy="28.60717"
+ inkscape:document-units="px"
+ inkscape:current-layer="g6677"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g6677"
+ style="fill:url(#linearGradient6735)"
+ transform="translate(-48,-20)">
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 14,18 0,27 13,0 0,-27 z m 1,1 11,0 0,25 -11,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6308" />
+ <g
+ id="g6739">
+ <rect
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ id="rect6314"
+ width="5.000001"
+ height="26.000004"
+ x="731.42859"
+ y="-98.494957" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect6310"
+ width="5.000001"
+ height="17.999996"
+ x="720.42859"
+ y="-90.494957" />
+ <rect
+ transform="scale(1,-1)"
+ y="72.494957"
+ x="725.42859"
+ height="29.000004"
+ width="6.000001"
+ id="rect6312"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 720.42859,-90.49496 0,19 16,0 0,-27 -5,0 0,-3 -6,0 0,11 z m 1,1 5,0 0,-11 4,0 0,3 5,0 0,25 -14,0 z"
+ id="rect6303" />
+ <path
+ id="path6737"
+ d="m 721.42859,-89.49496 0,18 14,0 0,-26 -5,0 0,-3 -4,0 0,11 z m 1,1 5,0 0,-11 2,0 0,3 5,0 0,24 -12,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ </g>
+ <g
+ id="g6746"
+ style="fill:url(#linearGradient6758)"
+ transform="translate(21.000001,4.5996094e-6)">
+ <rect
+ y="-104.49496"
+ x="731.42859"
+ height="32.000011"
+ width="5.000001"
+ id="rect6748"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ y="-94.494965"
+ x="720.42859"
+ height="22"
+ width="5"
+ id="rect6750"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6752"
+ width="6"
+ height="35.000008"
+ x="725.42859"
+ y="72.494957"
+ transform="scale(1,-1)" />
+ <path
+ id="path6754"
+ d="m 720.42859,-94.494965 0,23.000005 16,0 0,-33 -5,0 0,-3 -6,0 0,12.999995 z m 1,1 5,0 0,-12.999995 4,0 0,3 5,0 0,31 -14,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 721.42859,-93.494965 0,22.000005 14,0 0,-32 -5,0 0,-3 -4,0 0,12.999995 z m 1,1 5,0 0,-12.999995 2,0 0,3 5,0 0,30 -12,0 z"
+ id="path6756" />
+ </g>
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="M 6 5 L 6 45 L 7 45 L 52 45 L 52 44 L 7 44 L 7 5 L 6 5 z "
+ transform="translate(661.42859,-136.49496)"
+ id="rect6760" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/areas3d_52x60.svg b/icon-themes/tango_testing/chart2/res/areas3d_52x60.svg
new file mode 100644
index 000000000000..87bf2df9e4e9
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/areas3d_52x60.svg
@@ -0,0 +1,356 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="Neues Dokument 1">
+ <defs
+ id="defs4">
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="124.75927"
+ inkscape:cy="18.070456"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="false"
+ inkscape:window-width="681"
+ inkscape:window-height="714"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <path
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ d="m 669.42859,-100.49496 21.27617,-4.625 15.72383,4.625 4,-4 0,7 -4,3 -37,0 z"
+ id="path3136"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccc" />
+ <path
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ d="M 8,36 8,26 29.8125,22.258928 45,29 l 4,-4 0,7 -4,4 -15.683036,-4.620536 z"
+ id="path3138"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="ccccccccc" />
+ <path
+ style="opacity:1;fill:#8ae234;fill-opacity:1;stroke:none"
+ d="M 8,26 8,21 12.232143,17.446428 31.428572,8.9642856 49,19 l 0,6 -4,4 -15.178571,-6.732143 z"
+ id="path3140"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="ccccccccc" />
+ <path
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 8.5,41.5 36.34375,0 3.6875,-2.75 L 48.5,19.28125 31.40625,9.4999999 12.5,17.875 8.5,21.25 z"
+ id="path4983"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="cccccccc" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4985"
+ d="m 670.91372,-95.963708 34.96184,0 3.08332,-2.286105 -0.008,-18.343997 -16.15781,-9.27615 -17.84362,7.71614 -3.95789,3.40924 z"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ sodipodi:nodetypes="cccccccc" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="M 31.4375,8.9999999 30.0625,13.03125 7.875,21.125 12.15625,17.5 z"
+ id="path4989"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="ccccc" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4991"
+ d="m 706.42859,-114.49496 4,-3 0,20 -4,3 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ sodipodi:nodetypes="ccccc" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/areas_52x60.png b/icon-themes/tango_testing/chart2/res/areas_52x60.png
new file mode 100644
index 000000000000..a7883d464feb
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/areas_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/areasfull_52x60.png b/icon-themes/tango_testing/chart2/res/areasfull_52x60.png
new file mode 100644
index 000000000000..245dfb51f8e3
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/areasfull_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/areasfull_52x60.svg b/icon-themes/tango_testing/chart2/res/areasfull_52x60.svg
new file mode 100644
index 000000000000..5e5d6a5e919b
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/areasfull_52x60.svg
@@ -0,0 +1,773 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="areasfull_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/areasfull_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6733"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6735"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6758"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3928"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3930"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3139"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3235"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="16.857421"
+ inkscape:cy="76.790037"
+ inkscape:document-units="px"
+ inkscape:current-layer="g3141"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g3141"
+ style="opacity:1">
+ <path
+ sodipodi:nodetypes="ccccc"
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path3936"
+ d="M 6,15 52,15 51.861863,44.078194 6.3639611,44.48699 z"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 668.07384,-119.99225 45.33741,0.0314"
+ id="path4712"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ <path
+ inkscape:connector-curvature="0"
+ id="rect6698"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ style="fill:#666666;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="ccccccc"
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path3934"
+ d="M 6,23 21.234835,28.287058 36.571329,28.229184 52,24 52,44 6.1871848,43.072775 z"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path4716"
+ d="m 6.478238,23.672901 14.708157,5.130743 15.471102,-0.07002 15.541184,-4.282998"
+ style="opacity:0.26000001;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ sodipodi:nodetypes="cccc" />
+ <path
+ sodipodi:nodetypes="cccccsc"
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path3932"
+ d="M 6,28 21.5,41.197146 36,33.507806 52,39 52.06074,44.398602 C 52.06074,44.398602 6,45.353552 6,45 6,44.646447 6.0000027,28.000002 6,28 z"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <path
+ id="rect6760"
+ transform="translate(661.42859,-136.49496)"
+ d="M 6 5 L 6 45 L 7 45 L 52 45 L 52 44 L 7 44 L 7 5 L 6 5 z "
+ style="fill:#666666;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cc"
+ inkscape:connector-curvature="0"
+ id="path4710"
+ d="m 667.64674,-120.99572 45.74557,0.0367"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path4714"
+ d="M 6.3264295,28.949932 21.399784,41.765638 36.082053,34.05409 52.274125,39.597903"
+ style="opacity:0.2;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ sodipodi:nodetypes="cccc" />
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/areaspiled_52x60.png b/icon-themes/tango_testing/chart2/res/areaspiled_52x60.png
new file mode 100644
index 000000000000..0d2ab5e091f0
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/areaspiled_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/areaspiled_52x60.svg b/icon-themes/tango_testing/chart2/res/areaspiled_52x60.svg
new file mode 100644
index 000000000000..fd07b16db268
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/areaspiled_52x60.svg
@@ -0,0 +1,749 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="areaspiled_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/areaspiled_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6733"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6735"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6758"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3928"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3930"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="33.500313"
+ inkscape:cy="15.658784"
+ inkscape:document-units="px"
+ inkscape:current-layer="g5504"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <path
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ d="M 11.313709,29.54936 22,22 37,36 47.199378,31.582292 47.376154,42.896 9.1923882,42.36567 z"
+ id="path3936"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ sodipodi:nodetypes="cccccc"
+ inkscape:connector-curvature="0"
+ id="path4712"
+ d="m 668.30706,-110.92455 5.1875,5.375 9.8125,-7 14.86016,13.804915 7.30654,-3.177095 8.50758,-9.48203"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ d="M 12.727922,31.493903 22,24 36.857941,40.421126 52.149125,23.273787 52,44 13.346641,42.984387 z"
+ id="path3934"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;opacity:0.26"
+ d="m 14.407301,30.875185 7.513009,-6.098796 11.578874,12.727922 5.126524,1.679379 3.712311,-3.800699 1.944543,-0.883884 7.866563,-8.927223"
+ id="path4716"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ d="M 6.363961,23.008622 22,39 l 15,-2 15,-3 0.06074,10.398602 c 0,0 -45.7851643,0.441942 -45.7851643,0.08839 0,-0.353553 0.088388,-21.478368 0.088388,-21.47837 z"
+ id="path3932"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="cccccsc" />
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="M 6 5 L 6 45 L 7 45 L 52 45 L 52 44 L 7 44 L 7 5 L 6 5 z "
+ transform="translate(661.42859,-136.49496)"
+ id="rect6760" />
+ <path
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 668.42859,-112.24496 5.1875,5.375 9.8125,-7 14.9375,13.9375 6.5,-2.8125 8.43024,-9.40468"
+ id="path4710"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccc" />
+ <path
+ style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;opacity:0.20000000000000001"
+ d="m 6.9826795,25.395107 5.2149125,5.833631 0.883883,-0.707107 8.662059,9.104 15.026019,-2.12132 15.379572,-3.005204"
+ id="path4714"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/bar_52x60.png b/icon-themes/tango_testing/chart2/res/bar_52x60.png
new file mode 100644
index 000000000000..6b975a4d4287
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/bar_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/bar_52x60.svg b/icon-themes/tango_testing/chart2/res/bar_52x60.svg
new file mode 100644
index 000000000000..4704d9c71a10
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/bar_52x60.svg
@@ -0,0 +1,867 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="bar_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/bar_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6733"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6735"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6758"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient7384"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient7386"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient7396"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient7398"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-4"
+ id="linearGradient7398-0"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ id="linearGradient5083-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024-5" />
+ <stop
+ id="stop6030-8"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-4"
+ id="linearGradient7396-2"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ id="linearGradient7416">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop7418" />
+ <stop
+ id="stop7420"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop7422"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7431"
+ xlink:href="#linearGradient5083-4"
+ inkscape:collect="always" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="11.313708"
+ inkscape:cx="46.901044"
+ inkscape:cy="24.566182"
+ inkscape:document-units="px"
+ inkscape:current-layer="g5504"
+ showgrid="true"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ <g
+ id="g7388"
+ style="fill:url(#linearGradient7398-0);fill-opacity:1"
+ transform="matrix(0,-1,-1,0,606.93363,596.43363)">
+ <g
+ transform="translate(-29.5,11)"
+ style="fill:url(#linearGradient7431)"
+ id="g6739">
+ <rect
+ y="-98.494957"
+ x="731.42859"
+ height="26.000004"
+ width="5.000001"
+ id="rect6314"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ y="-90.494957"
+ x="720.42859"
+ height="17.999996"
+ width="5.000001"
+ id="rect6310"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6312"
+ width="6.000001"
+ height="29.000004"
+ x="725.42859"
+ y="72.494957"
+ transform="scale(1,-1)" />
+ <path
+ id="rect6303"
+ d="m 720.42859,-90.49496 0,19 16,0 0,-27 -5,0 0,-3 -6,0 0,11 z m 1,1 5,0 0,-11 4,0 0,3 5,0 0,25 -14,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 721.42859,-89.49496 0,18 14,0 0,-26 -5,0 0,-3 -4,0 0,11 z m 1,1 5,0 0,-11 2,0 0,3 5,0 0,24 -12,0 z"
+ id="path6737" />
+ </g>
+ </g>
+ <g
+ id="g6677"
+ style="fill:url(#linearGradient6735)"
+ transform="matrix(0,-1,-1,0,595.93363,628.93363)">
+ <g
+ id="g6746"
+ style="fill:url(#linearGradient6758)"
+ transform="translate(21.000001,4.5996094e-6)">
+ <rect
+ y="-104.49496"
+ x="731.42859"
+ height="32.000011"
+ width="5.000001"
+ id="rect6748"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ y="-94.494965"
+ x="720.42859"
+ height="22"
+ width="5"
+ id="rect6750"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6752"
+ width="6"
+ height="35.000008"
+ x="725.42859"
+ y="72.494957"
+ transform="scale(1,-1)" />
+ <path
+ id="path6754"
+ d="m 720.42859,-94.494965 0,23.000005 16,0 0,-33 -5,0 0,-3 -6,0 0,12.999995 z m 1,1 5,0 0,-12.999995 4,0 0,3 5,0 0,31 -14,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 721.42859,-93.494965 0,22.000005 14,0 0,-32 -5,0 0,-3 -4,0 0,12.999995 z m 1,1 5,0 0,-12.999995 2,0 0,3 5,0 0,30 -12,0 z"
+ id="path6756" />
+ </g>
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="M 6 5 L 6 45 L 7 45 L 52 45 L 52 44 L 7 44 L 7 5 L 6 5 z "
+ transform="translate(661.42859,-136.49496)"
+ id="rect6760" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/barpercent_52x60.png b/icon-themes/tango_testing/chart2/res/barpercent_52x60.png
new file mode 100644
index 000000000000..3a6050ec88ae
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/barpercent_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/barpercent_52x60.svg b/icon-themes/tango_testing/chart2/res/barpercent_52x60.svg
new file mode 100644
index 000000000000..a1b78d336ac2
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/barpercent_52x60.svg
@@ -0,0 +1,974 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="barpercent_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/barpercent_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4"><linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+</linearGradient>
+<linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+<filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+</filter>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+</linearGradient>
+<filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+</filter>
+<linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+</linearGradient>
+<linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+</linearGradient>
+<linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6784"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6786"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6818"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6827"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6840"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6863"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6865"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6867"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+</defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="43.219308"
+ inkscape:cy="37.875803"
+ inkscape:document-units="px"
+ inkscape:current-layer="g5504"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g6848"
+ style="fill:url(#linearGradient6867)"
+ transform="matrix(0,1,-1,0,574.93363,-797.92355)">
+ <g
+ transform="matrix(0.86666666,0,0,1.6852226,86.923816,61.694414)"
+ style="fill:url(#linearGradient6863);fill-opacity:1"
+ id="g6820">
+ <rect
+ y="-118.19766"
+ x="674.42859"
+ height="8.9008999"
+ width="14.999999"
+ id="rect6314"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ y="-99.802467"
+ x="674.42859"
+ height="7.7141194"
+ width="15.000001"
+ id="rect6310"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6312"
+ width="14.999999"
+ height="9.4942951"
+ x="674.42859"
+ y="99.802467"
+ transform="scale(1,-1)" />
+ <path
+ id="rect6303"
+ d="m 674.42859,-118.19766 0,26.7027 15,0 0,-26.7027 z m 1.15385,0.59339 12.59615,0 0,25.515917 -12.59615,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 675.58244,-117.60427 0,26.10931 12.5961,0 0,-26.10931 z m 1.15384,0.59339 10.19231,0 0,24.922527 -10.19231,0 z"
+ id="path6308" />
+ </g>
+ <g
+ transform="matrix(0.86666565,0,0,1.1885963,103.92452,16.42228)"
+ style="fill:url(#linearGradient6865)"
+ id="g6684">
+ <rect
+ y="-129.49496"
+ x="674.42859"
+ height="8.4132786"
+ width="15.000001"
+ id="rect6686"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ y="-101.73112"
+ x="674.42859"
+ height="9.236166"
+ width="15"
+ id="rect6688"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6690"
+ width="14.999983"
+ height="19.350555"
+ x="674.42859"
+ y="101.73112"
+ transform="scale(1,-1)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path6692"
+ transform="translate(661.42859,-136.49496)"
+ d="m 13,7 2e-6,37.859777 14.99999,0 L 28,7 z m 1.153822,0.8413204 12.692322,0 L 27,44 14,44 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 14.153822,7.8413204 -0.153839,37.0184566 12.999999,0 -0.153838,-37.0184566 z m 1.153847,0.8413286 10.384628,0 0,35.335799 -10.384628,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6694" />
+ </g>
+ <path
+ inkscape:connector-curvature="0"
+ id="rect6698"
+ d="m 666.42859,-92.49496 40,0 0,-1 0,-45 -1,0 0,45 -39,0 0,1 z"
+ style="fill:#666666;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/barstack_52x60.png b/icon-themes/tango_testing/chart2/res/barstack_52x60.png
new file mode 100644
index 000000000000..7658d2c736fb
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/barstack_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/barstack_52x60.svg b/icon-themes/tango_testing/chart2/res/barstack_52x60.svg
new file mode 100644
index 000000000000..1b4c3300b333
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/barstack_52x60.svg
@@ -0,0 +1,780 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="barstack_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/barstack_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3170"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3186"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3188"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3190"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="17.096277"
+ inkscape:cy="51.423324"
+ inkscape:document-units="px"
+ inkscape:current-layer="g5504"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g3172"
+ style="fill:url(#linearGradient3190)"
+ transform="matrix(0,1,-1,0,580.93363,-801.92356)">
+ <g
+ id="g6677"
+ style="fill:url(#linearGradient3186)"
+ transform="matrix(0.86666674,0,0,1,90.923761,5)">
+ <rect
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ id="rect6314"
+ width="15"
+ height="10.000003"
+ x="674.42859"
+ y="-119.49496" />
+ <rect
+ transform="translate(661.42859,-136.49496)"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect6310"
+ width="15"
+ height="7"
+ x="13"
+ y="37" />
+ <rect
+ transform="scale(1,-1)"
+ y="99.494957"
+ x="674.42859"
+ height="10"
+ width="15"
+ id="rect6312"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 13,17 1.3e-5,28 14.999999,0 L 28,17 z m 1.153859,1 12.692307,0 0,26 -12.692307,0 z"
+ id="rect6303" />
+ <path
+ id="path6308"
+ transform="translate(661.42859,-136.49496)"
+ d="m 14.153859,18 0,27 12.692307,0 0,-27 z m 1.153846,1 10.384615,0 0,25 -10.384615,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <g
+ transform="matrix(0.86666668,0,0,1,107.92381,5)"
+ style="fill:url(#linearGradient3188)"
+ id="g6684">
+ <rect
+ y="-129.49496"
+ x="674.42859"
+ height="8.0000048"
+ width="15.000001"
+ id="rect6686"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ transform="translate(661.42859,-136.49496)"
+ y="35"
+ x="13"
+ height="9"
+ width="15"
+ id="rect6688"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6690"
+ width="14.999999"
+ height="20.000004"
+ x="674.42859"
+ y="101.49496"
+ transform="scale(1,-1)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path6692"
+ transform="translate(661.42859,-136.49496)"
+ d="m 13,7 3e-6,38 15,0 L 28,7 z m 1.153846,1 12.692311,0 4e-6,36 -12.692311,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 14.15385,8 0,37 12.692307,0 0,-37 z m 1.153846,1 10.384615,0 0,35 -10.384615,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6694" />
+ </g>
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.42859,-131.49496 0,40 c 15.3628,0 30.72559,0 46.08839,0 l 0,-1 -45,0 0,-39 z"
+ id="rect6698"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/bubble_52x60.png b/icon-themes/tango_testing/chart2/res/bubble_52x60.png
new file mode 100644
index 000000000000..ea150cdf2204
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/bubble_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/bubble_52x60.svg b/icon-themes/tango_testing/chart2/res/bubble_52x60.svg
new file mode 100644
index 000000000000..b8dd615682ea
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/bubble_52x60.svg
@@ -0,0 +1,711 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="bubble_52x60.svg"
+ inkscape:export-filename="/home/alexander/chart2/res/bubble_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ id="stop5085"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="8.9592519"
+ inkscape:cy="20.182394"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path5051"
+ sodipodi:cx="6"
+ sodipodi:cy="32"
+ sodipodi:rx="3"
+ sodipodi:ry="3"
+ d="m 9,32 a 3,3 0 1 1 -6,0 3,3 0 1 1 6,0 z"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path5053"
+ sodipodi:cx="17.5"
+ sodipodi:cy="21"
+ sodipodi:rx="6.5"
+ sodipodi:ry="7"
+ d="m 24,21 a 6.5,7 0 1 1 -13,0 6.5,7 0 1 1 13,0 z"
+ transform="matrix(1,0,0,0.92857143,661.42859,-135.49496)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path5057"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path5059"
+ sodipodi:cx="36.5"
+ sodipodi:cy="28.5"
+ sodipodi:rx="3.5"
+ sodipodi:ry="3.5"
+ d="m 40,28.5 a 3.5,3.5 0 1 1 -7,0 3.5,3.5 0 1 1 7,0 z"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path5061"
+ sodipodi:cx="47"
+ sodipodi:cy="39.5"
+ sodipodi:rx="8"
+ sodipodi:ry="7.5"
+ d="m 55,39.5 a 8,7.5 0 1 1 -16,0 8,7.5 0 1 1 16,0 z"
+ transform="matrix(0.9375,0,0,1,663.86609,-136.49496)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path5063"
+ sodipodi:cx="37"
+ sodipodi:cy="17"
+ sodipodi:rx="5"
+ sodipodi:ry="5"
+ d="m 42,17 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path5065"
+ sodipodi:cx="50.5"
+ sodipodi:cy="22.5"
+ sodipodi:rx="4.5"
+ sodipodi:ry="4.5"
+ d="m 55,22.5 a 4.5,4.5 0 1 1 -9,0 4.5,4.5 0 1 1 9,0 z"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ transform="matrix(0,-0.93333333,0.93333333,0,639.12859,-81.528293)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5069"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5139);stroke-width:1.07142866"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.25000012;stroke-opacity:1"
+ id="path5079"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,0.79999999,0.79999999,0,644.52859,-108.39497)" />
+ <g
+ id="g5093"
+ transform="translate(31,-1.0000001)">
+ <g
+ id="g5117"
+ transform="matrix(0.85767815,0,0,0.8625,67.349545,-32.168057)">
+ <g
+ id="g5143">
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5135);stroke-width:1.24895966"
+ id="path5119"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,-0.92850241,0.93333333,0,639.12859,-81.639404)" />
+ <path
+ transform="matrix(0,0.78429951,0.77692413,0,645.45405,-108.26937)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5121"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.48945725;stroke-opacity:1"
+ sodipodi:type="arc" />
+ </g>
+ </g>
+ <path
+ transform="matrix(0,-0.93333333,0.93333333,0,639.12859,-81.528293)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5095"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5131);stroke-width:1.07142866"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.25000012;stroke-opacity:1"
+ id="path5097"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,0.79999999,0.79999999,0,644.52859,-108.39497)" />
+ <g
+ transform="matrix(0.65170357,0,0,0.65822728,226.33011,-55.203805)"
+ id="g5147">
+ <g
+ id="g5149">
+ <path
+ transform="matrix(0,-0.91059809,0.91977067,0,639.57616,-82.051203)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5151"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5155);stroke-width:1.66833746"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:2.14091206;stroke-opacity:1"
+ id="path5153"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,0.70820615,0.71815259,0,647.73258,-107.1235)" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5163);stroke-width:1.87163317"
+ id="path5159"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,-0.81406355,0.81747468,0,664.4618,-75.201265)" />
+ <path
+ transform="matrix(0,0.61167161,0.61585659,0,672.66617,-97.30473)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5161"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:2.48764324;stroke-opacity:1"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5169);stroke-width:2.48439908"
+ id="path5165"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,-0.60675167,0.62247292,0,650.87348,-69.289654)" />
+ <path
+ transform="matrix(0,0.40435973,0.42085484,0,659.0299,-84.942711)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5167"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:3.70115209;stroke-opacity:1"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-0.51051594,0.51849251,0,608.28327,-65.480781)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5171"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5175);stroke-width:2.96763992"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:4.93951178;stroke-opacity:1"
+ id="path5173"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,0.30588596,0.31235355,0,616.62279,-78.099055)" />
+ </g>
+ </g>
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path5067"
+ sodipodi:cx="22.5"
+ sodipodi:cy="11.5"
+ sodipodi:rx="8.5"
+ sodipodi:ry="8.5"
+ d="m 31,11.5 a 8.5,8.5 0 1 1 -17,0 8.5,8.5 0 1 1 17,0 z"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ transform="matrix(0,-1.0656996,1.0691448,0,640.61977,-108.48121)"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ sodipodi:ry="7.5"
+ sodipodi:rx="7.5"
+ sodipodi:cy="40.5"
+ sodipodi:cx="15.5"
+ id="path5105"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient5157);stroke-width:0.93683779"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.07124114;stroke-opacity:1"
+ id="path5107"
+ sodipodi:cx="15.5"
+ sodipodi:cy="40.5"
+ sodipodi:rx="7.5"
+ sodipodi:ry="7.5"
+ d="m 23,40.5 a 7.5,7.5 0 1 1 -15,0 7.5,7.5 0 1 1 15,0 z"
+ transform="matrix(0,0.93294701,0.93404665,0,646.10096,-139.45074)" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/columnline_52x60.png b/icon-themes/tango_testing/chart2/res/columnline_52x60.png
new file mode 100644
index 000000000000..7c8837e677d6
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnline_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/columnline_52x60.svg b/icon-themes/tango_testing/chart2/res/columnline_52x60.svg
new file mode 100644
index 000000000000..9ad49f73fb8e
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnline_52x60.svg
@@ -0,0 +1,1730 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="columnline_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/columnline_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6733"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6735"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6758"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3179"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3181"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3189"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3203"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3205"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3219"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3221"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5359"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5355"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5351"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5349"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4464"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4460"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4458"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4443"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6827"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6818"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6786"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6784"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6696-2"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6675-3"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6673-7"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6301-6"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ id="linearGradient6022-6"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5194-1"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5192-2"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5190-0"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5175-4"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5169-5"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5163-2"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5157-9"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5155-7"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5139-2"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5135-0"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5131-7"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5123-8"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5109-7"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5099-6"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.5"
+ x2="23"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5081-6"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ id="linearGradient5077-0"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient10292-1-5-6"
+ id="linearGradient15297-1-6"
+ gradientUnits="userSpaceOnUse"
+ x1="110.96875"
+ y1="976.29968"
+ x2="110.96875"
+ y2="992.375" />
+ <linearGradient
+ id="linearGradient10292-1-5-6"
+ inkscape:collect="always">
+ <stop
+ id="stop10294-4-6-0"
+ offset="0"
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;" />
+ <stop
+ id="stop10296-2-9-2"
+ offset="1"
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4274-3-3-9"
+ id="linearGradient15279-0-3"
+ gradientUnits="userSpaceOnUse"
+ x1="158.4942"
+ y1="2022.2076"
+ x2="158.4942"
+ y2="1982.2323" />
+ <linearGradient
+ id="linearGradient4274-3-3-9">
+ <stop
+ id="stop4276-8-6-0"
+ offset="0"
+ style="stop-color:#333333;stop-opacity:1" />
+ <stop
+ id="stop4278-0-0-8"
+ offset="1"
+ style="stop-color:#808080;stop-opacity:1" />
+ </linearGradient>
+ <filter
+ id="filter4026-4-0-4"
+ inkscape:label="Inner Shadow Rest"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4028-7-2-4"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4030-6-8-4"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4032-8-3-6"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4034-9-5-4"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(51,51,51)" />
+ <feBlend
+ id="feBlend4036-0-9-8"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4038-6-0-1"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ id="linearGradient4280-7-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4282-3-5-5"
+ offset="0"
+ style="stop-color:#18a303;stop-opacity:1" />
+ <stop
+ id="stop4284-2-1-7"
+ offset="1"
+ style="stop-color:#92e285;stop-opacity:1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Libre"
+ id="filter4195-6-9-3">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4197-5-0-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4199-2-0-0" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4201-6-3-9" />
+ <feFlood
+ flood-color="rgb(16,104,2)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4203-5-0-0" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4205-8-6-8" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4207-7-8-4" />
+ </filter>
+ <linearGradient
+ y2="1972.8456"
+ x2="160.76947"
+ y1="2011.2181"
+ x1="160.76947"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6359-8"
+ xlink:href="#linearGradient4280-7-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5071-0"
+ inkscape:collect="always">
+ <stop
+ id="stop5073-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop5075-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083-9">
+ <stop
+ id="stop6024-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop6030-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop5087-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6036-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6038-2" />
+ <stop
+ id="stop6040-4"
+ offset="0.5"
+ style="stop-color:#8a0000;stop-opacity:1;" />
+ <stop
+ id="stop6042-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3546"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3554"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-9"
+ id="linearGradient3556"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-9"
+ id="linearGradient3558"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-9"
+ id="linearGradient3560"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="45.82835"
+ inkscape:cy="28.60717"
+ inkscape:document-units="px"
+ inkscape:current-layer="g6677"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="606"
+ inkscape:window-height="419"
+ inkscape:window-x="73"
+ inkscape:window-y="352"
+ inkscape:window-maximized="0"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g6677"
+ style="fill:url(#linearGradient6735)"
+ transform="translate(-48,-20)">
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 14,18 0,27 13,0 0,-27 z m 1,1 11,0 0,25 -11,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6308" />
+ <g
+ id="g6739"
+ style="fill:url(#linearGradient3181)"
+ transform="translate(-25,2)">
+ <g
+ id="g3183"
+ style="fill:url(#linearGradient3189)"
+ transform="translate(24,-2.000003)">
+ <rect
+ y="-89.494957"
+ x="720.42859"
+ height="16.999998"
+ width="6.0000014"
+ id="rect6310"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6312"
+ width="5.0000005"
+ height="9"
+ x="725.42859"
+ y="72.494957"
+ transform="scale(1,-1)" />
+ <path
+ id="rect6303"
+ d="m 720.42859,-89.49496 0,18 10,3e-6 c 0,-10 0,-5.091186 0,-10 l -4,0 0,-8 z m 1,1 4,3e-6 0,8 4,0 c 0,0 0,-4.027206 0,8 l -8,-3e-6 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 721.42859,-88.49496 0,17 8,3e-6 c 0,-11 0,-9 0,-9 l -4,0 0,-8 z m 1,1 2,3e-6 0,8 4,0 c 0,0 0,-4.879648 0,7 l -6,-3e-6 z"
+ id="path6737" />
+ </g>
+ </g>
+ <g
+ transform="translate(-11,2)"
+ style="fill:url(#linearGradient3205)"
+ id="g3191">
+ <g
+ transform="translate(24,-2.000003)"
+ style="fill:url(#linearGradient3203)"
+ id="g3193">
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect3195"
+ width="6.0000014"
+ height="25.999998"
+ x="720.42859"
+ y="-98.494957" />
+ <rect
+ transform="scale(1,-1)"
+ y="72.494957"
+ x="725.42859"
+ height="17"
+ width="5"
+ id="rect3197"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 720.42859,-98.49496 0,27 10,3e-6 c 0,-10 0,-13.091186 0,-18 l -4,0 0,-9 z m 1,1 4,3e-6 0,9 4,0 c 0,0 0,3.972794 0,16 l -8,-3e-6 z"
+ id="path3199" />
+ <path
+ id="path3201"
+ d="m 721.42859,-97.49496 0,26 8,3e-6 c 0,-11 0,-16.999997 0,-16.999997 l -4,0 0,-9.000003 z m 1,1 2,3e-6 0,9.000003 4,0 c 0,0 0,3.120349 0,14.999997 l -6,-3e-6 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccc" />
+ </g>
+ </g>
+ <g
+ id="g3207"
+ style="fill:url(#linearGradient3221)"
+ transform="translate(47.625,0.375)">
+ <g
+ id="g3209"
+ style="fill:url(#linearGradient3219)"
+ transform="translate(24,-2.000003)">
+ <g
+ id="g3548"
+ style="fill:url(#linearGradient3554)"
+ transform="translate(-44.625,1.625003)">
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect3211"
+ width="6.0000014"
+ height="17.999998"
+ x="720.42859"
+ y="-90.494957" />
+ <rect
+ transform="scale(1,-1)"
+ y="72.494957"
+ x="725.42859"
+ height="22"
+ width="4.999999"
+ id="rect3213"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 720.42859,-90.49496 0,19 10,3e-6 c 0,-10 0,-18.091186 0,-23 l -5,0 0,4 z m 1,1 5,3e-6 0,-4 3,0 c 0,0 0,8.972794 0,21 l -8,-3e-6 z"
+ id="path3215" />
+ <path
+ id="path3217"
+ d="m 721.42859,-89.494957 0,17.999997 8,3e-6 c 0,-11 0,-22 0,-22 l -3,0 0,4 z m 1,1 5,0 0,-4 1,0 c 0,0 0,8.120352 0,20 l -6,-3e-6 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccc" />
+ </g>
+ <g
+ transform="translate(47.170509,20.564058)"
+ id="layer1-8"
+ inkscape:label="Ebene 1"
+ style="fill:url(#linearGradient3546)">
+ <g
+ style="fill:url(#linearGradient6022-6);fill-opacity:1"
+ id="g5504-4">
+ <path
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path4466"
+ d="m -56.795509,23.060945 16,-16 12,12"
+ style="fill:none;stroke:#8ae234;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;stroke:#4e9a06;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 604.63308,-112.43401 16,-16 12,12"
+ id="path5353"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="M 6 5 L 6 45 L 7 45 L 52 45 L 52 44 L 7 44 L 7 5 L 6 5 z "
+ transform="translate(661.42859,-136.49496)"
+ id="rect6760" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-5-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/columnpercent_52x60.png b/icon-themes/tango_testing/chart2/res/columnpercent_52x60.png
new file mode 100644
index 000000000000..4747fd1e0bf0
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnpercent_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/columnpercent_52x60.svg b/icon-themes/tango_testing/chart2/res/columnpercent_52x60.svg
new file mode 100644
index 000000000000..fd9f21346719
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnpercent_52x60.svg
@@ -0,0 +1,939 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="columnpercent_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/columnpercent_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4"><linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+</linearGradient>
+<linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+<filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+</filter>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+</linearGradient>
+<filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+</filter>
+<linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+</linearGradient>
+<linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+</linearGradient>
+<linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6784"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6786"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6818"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6827"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+</defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="44.418514"
+ inkscape:cy="34.834292"
+ inkscape:document-units="px"
+ inkscape:current-layer="g6677"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g6677"
+ style="fill:url(#linearGradient6786)"
+ transform="matrix(1,0,0,1.4230769,0,38.709406)">
+ <g
+ id="g6820"
+ style="fill:url(#linearGradient6827)"
+ transform="translate(-1,-1.7972156e-6)">
+ <rect
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ id="rect6314"
+ width="15.000001"
+ height="9.1351328"
+ x="674.42859"
+ y="-118.19766" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect6310"
+ width="15.000001"
+ height="7.7297268"
+ x="674.42859"
+ y="-99.927391" />
+ <rect
+ transform="scale(1,-1)"
+ y="99.927391"
+ x="674.42859"
+ height="9.1351366"
+ width="14.999999"
+ id="rect6312"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 674.42859,-118.19766 0,26.7027 15,0 0,-26.7027 z m 1,0.7027 13,0 0,25.297296 -13,0 z"
+ id="rect6303" />
+ <path
+ id="path6308"
+ d="m 675.42859,-117.49496 0,26 13,0 0,-26 z m 1,0.7027 11,0 0,24.594596 -11,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ </g>
+ <g
+ id="g6684"
+ style="fill:url(#linearGradient6784)"
+ transform="translate(19,-1.0652346e-6)">
+ <rect
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ id="rect6686"
+ width="15.000001"
+ height="8.0000048"
+ x="674.42859"
+ y="-129.49496" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect6688"
+ width="15"
+ height="9"
+ x="13"
+ y="35"
+ transform="translate(661.42859,-136.49496)" />
+ <rect
+ transform="scale(1,-1)"
+ y="101.49496"
+ x="674.42859"
+ height="20.000004"
+ width="14.999999"
+ id="rect6690"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 13,7 0,38 15,0 0,-38 z m 1,1 13,0 0,36 -13,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6692"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ id="path6694"
+ transform="translate(661.42859,-136.49496)"
+ d="m 14,8 0,37 13,0 0,-37 z m 1,1 11,0 0,35 -11,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/columns_52x60.png b/icon-themes/tango_testing/chart2/res/columns_52x60.png
new file mode 100644
index 000000000000..af44bd12fc48
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columns_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/columns_52x60.svg b/icon-themes/tango_testing/chart2/res/columns_52x60.svg
new file mode 100644
index 000000000000..c140cdfb1a69
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columns_52x60.svg
@@ -0,0 +1,1730 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="columns_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/columnstack_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6733"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6735"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6758"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3179"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3181"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3189"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3203"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3205"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3219"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3221"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5359"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5355"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5351"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5349"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4464"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4460"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4458"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4443"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6827"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6818"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6786"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6784"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6696-2"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6675-3"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6673-7"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6301-6"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="-113.21032"
+ x2="715.42859"
+ y1="-113.21032"
+ x1="664.49115"
+ id="linearGradient6022-6"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5194-1"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5192-2"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5190-0"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5175-4"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5169-5"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5163-2"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5157-9"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5155-7"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5139-2"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5135-0"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5131-7"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5123-8"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5109-7"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5099-6"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="40.5"
+ x2="23"
+ y1="40.5"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5081-6"
+ xlink:href="#linearGradient5083-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="40.433037"
+ x2="21.058035"
+ y1="40.5"
+ x1="8"
+ id="linearGradient5077-0"
+ xlink:href="#linearGradient5071-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient10292-1-5-6"
+ id="linearGradient15297-1-6"
+ gradientUnits="userSpaceOnUse"
+ x1="110.96875"
+ y1="976.29968"
+ x2="110.96875"
+ y2="992.375" />
+ <linearGradient
+ id="linearGradient10292-1-5-6"
+ inkscape:collect="always">
+ <stop
+ id="stop10294-4-6-0"
+ offset="0"
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;" />
+ <stop
+ id="stop10296-2-9-2"
+ offset="1"
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4274-3-3-9"
+ id="linearGradient15279-0-3"
+ gradientUnits="userSpaceOnUse"
+ x1="158.4942"
+ y1="2022.2076"
+ x2="158.4942"
+ y2="1982.2323" />
+ <linearGradient
+ id="linearGradient4274-3-3-9">
+ <stop
+ id="stop4276-8-6-0"
+ offset="0"
+ style="stop-color:#333333;stop-opacity:1" />
+ <stop
+ id="stop4278-0-0-8"
+ offset="1"
+ style="stop-color:#808080;stop-opacity:1" />
+ </linearGradient>
+ <filter
+ id="filter4026-4-0-4"
+ inkscape:label="Inner Shadow Rest"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4028-7-2-4"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4030-6-8-4"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4032-8-3-6"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4034-9-5-4"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(51,51,51)" />
+ <feBlend
+ id="feBlend4036-0-9-8"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4038-6-0-1"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ id="linearGradient4280-7-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4282-3-5-5"
+ offset="0"
+ style="stop-color:#18a303;stop-opacity:1" />
+ <stop
+ id="stop4284-2-1-7"
+ offset="1"
+ style="stop-color:#92e285;stop-opacity:1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Libre"
+ id="filter4195-6-9-3">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4197-5-0-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4199-2-0-0" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4201-6-3-9" />
+ <feFlood
+ flood-color="rgb(16,104,2)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4203-5-0-0" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4205-8-6-8" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4207-7-8-4" />
+ </filter>
+ <linearGradient
+ y2="1972.8456"
+ x2="160.76947"
+ y1="2011.2181"
+ x1="160.76947"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6359-8"
+ xlink:href="#linearGradient4280-7-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5071-0"
+ inkscape:collect="always">
+ <stop
+ id="stop5073-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop5075-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083-9">
+ <stop
+ id="stop6024-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop6030-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop5087-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6036-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6038-2" />
+ <stop
+ id="stop6040-4"
+ offset="0.5"
+ style="stop-color:#8a0000;stop-opacity:1;" />
+ <stop
+ id="stop6042-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3546"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient3554"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-9"
+ id="linearGradient3556"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-9"
+ id="linearGradient3558"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083-9"
+ id="linearGradient3560"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="45.82835"
+ inkscape:cy="28.60717"
+ inkscape:document-units="px"
+ inkscape:current-layer="g5504-4"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g6677"
+ style="fill:url(#linearGradient6735)"
+ transform="translate(-48,-20)">
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 14,18 0,27 13,0 0,-27 z m 1,1 11,0 0,25 -11,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6308" />
+ <g
+ id="g6739"
+ style="fill:url(#linearGradient3181)"
+ transform="translate(-25,2)">
+ <g
+ id="g3183"
+ style="fill:url(#linearGradient3189)"
+ transform="translate(24,-2.000003)">
+ <rect
+ y="-89.494957"
+ x="720.42859"
+ height="16.999998"
+ width="6.0000014"
+ id="rect6310"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6312"
+ width="5.0000005"
+ height="9"
+ x="725.42859"
+ y="72.494957"
+ transform="scale(1,-1)" />
+ <path
+ id="rect6303"
+ d="m 720.42859,-89.49496 0,18 10,3e-6 c 0,-10 0,-5.091186 0,-10 l -4,0 0,-8 z m 1,1 4,3e-6 0,8 4,0 c 0,0 0,-4.027206 0,8 l -8,-3e-6 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 721.42859,-88.49496 0,17 8,3e-6 c 0,-11 0,-9 0,-9 l -4,0 0,-8 z m 1,1 2,3e-6 0,8 4,0 c 0,0 0,-4.879648 0,7 l -6,-3e-6 z"
+ id="path6737" />
+ </g>
+ </g>
+ <g
+ transform="translate(-11,2)"
+ style="fill:url(#linearGradient3205)"
+ id="g3191">
+ <g
+ transform="translate(24,-2.000003)"
+ style="fill:url(#linearGradient3203)"
+ id="g3193">
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect3195"
+ width="6.0000014"
+ height="25.999998"
+ x="720.42859"
+ y="-98.494957" />
+ <rect
+ transform="scale(1,-1)"
+ y="72.494957"
+ x="725.42859"
+ height="17"
+ width="5"
+ id="rect3197"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 720.42859,-98.49496 0,27 10,3e-6 c 0,-10 0,-13.091186 0,-18 l -4,0 0,-9 z m 1,1 4,3e-6 0,9 4,0 c 0,0 0,3.972794 0,16 l -8,-3e-6 z"
+ id="path3199" />
+ <path
+ id="path3201"
+ d="m 721.42859,-97.49496 0,26 8,3e-6 c 0,-11 0,-16.999997 0,-16.999997 l -4,0 0,-9.000003 z m 1,1 2,3e-6 0,9.000003 4,0 c 0,0 0,3.120349 0,14.999997 l -6,-3e-6 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccc" />
+ </g>
+ </g>
+ <g
+ id="g3207"
+ style="fill:url(#linearGradient3221)"
+ transform="translate(47.625,0.375)">
+ <g
+ id="g3209"
+ style="fill:url(#linearGradient3219)"
+ transform="translate(24,-2.000003)">
+ <g
+ id="g3548"
+ style="fill:url(#linearGradient3554)"
+ transform="translate(-44.625,1.625003)">
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect3211"
+ width="6.0000014"
+ height="17.999998"
+ x="720.42859"
+ y="-90.494957" />
+ <rect
+ transform="scale(1,-1)"
+ y="72.494957"
+ x="725.42859"
+ height="22"
+ width="4.999999"
+ id="rect3213"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 720.42859,-90.49496 0,19 10,3e-6 c 0,-10 0,-18.091186 0,-23 l -5,0 0,4 z m 1,1 5,3e-6 0,-4 3,0 c 0,0 0,8.972794 0,21 l -8,-3e-6 z"
+ id="path3215" />
+ <path
+ id="path3217"
+ d="m 721.42859,-89.494957 0,17.999997 8,3e-6 c 0,-11 0,-22 0,-22 l -3,0 0,4 z m 1,1 5,0 0,-4 1,0 c 0,0 0,8.120352 0,20 l -6,-3e-6 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccccccc" />
+ </g>
+ <g
+ transform="translate(47.170509,20.564058)"
+ id="layer1-8"
+ inkscape:label="Ebene 1"
+ style="fill:url(#linearGradient3546)">
+ <g
+ style="fill:url(#linearGradient6022-6);fill-opacity:1"
+ id="g5504-4">
+ <path
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path4466"
+ d="m -56.795509,23.060945 16,-16 12,12"
+ style="fill:none;stroke:#8ae234;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;stroke:#4e9a06;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 604.63308,-112.43401 16,-16 12,12"
+ id="path5353"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="M 6 5 L 6 45 L 7 45 L 52 45 L 52 44 L 7 44 L 7 5 L 6 5 z "
+ transform="translate(661.42859,-136.49496)"
+ id="rect6760" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-5-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/columnstack_52x60.png b/icon-themes/tango_testing/chart2/res/columnstack_52x60.png
new file mode 100644
index 000000000000..6cceaa5eba46
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnstack_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/columnstack_52x60.svg b/icon-themes/tango_testing/chart2/res/columnstack_52x60.svg
new file mode 100644
index 000000000000..7c39990c337a
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnstack_52x60.svg
@@ -0,0 +1,899 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="columnstack_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/columnstack_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4"><linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+</linearGradient>
+<linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+<filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+</filter>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+</linearGradient>
+<filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+</filter>
+<linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+</linearGradient>
+<linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+</linearGradient>
+<linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+</defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="28.724598"
+ inkscape:cy="21.020375"
+ inkscape:document-units="px"
+ inkscape:current-layer="g5504"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="781"
+ inkscape:window-height="419"
+ inkscape:window-x="51"
+ inkscape:window-y="128"
+ inkscape:window-maximized="0"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g6677">
+ <rect
+ y="-119.49496"
+ x="674.42859"
+ height="10.000003"
+ width="15"
+ id="rect6314"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ y="37"
+ x="13"
+ height="7"
+ width="15"
+ id="rect6310"
+ style="opacity:1;fill:#729fcf;fill-opacity:1;stroke:none"
+ transform="translate(661.42859,-136.49496)" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6312"
+ width="15"
+ height="10"
+ x="674.42859"
+ y="99.494957"
+ transform="scale(1,-1)" />
+ <path
+ id="rect6303"
+ d="m 13,17 0,28 15,0 0,-28 z m 1,1 13,0 0,26 -13,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 14,18 0,27 13,0 0,-27 z m 1,1 11,0 0,25 -11,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6308" />
+ </g>
+ <g
+ id="g6684"
+ style="fill:url(#linearGradient6696)"
+ transform="translate(19,0)">
+ <rect
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ id="rect6686"
+ width="15.000001"
+ height="8.0000048"
+ x="674.42859"
+ y="-129.49496" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect6688"
+ width="15"
+ height="9"
+ x="13"
+ y="35"
+ transform="translate(661.42859,-136.49496)" />
+ <rect
+ transform="scale(1,-1)"
+ y="101.49496"
+ x="674.42859"
+ height="20.000004"
+ width="14.999999"
+ id="rect6690"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 13,7 0,38 15,0 0,-38 z m 1,1 13,0 0,36 -13,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6692"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ id="path6694"
+ transform="translate(661.42859,-136.49496)"
+ d="m 14,8 0,37 13,0 0,-37 z m 1,1 11,0 0,35 -11,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/columnstackline_52x60.png b/icon-themes/tango_testing/chart2/res/columnstackline_52x60.png
new file mode 100644
index 000000000000..dd4f3a057ba6
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnstackline_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/columnstackline_52x60.svg b/icon-themes/tango_testing/chart2/res/columnstackline_52x60.svg
new file mode 100644
index 000000000000..c3596473c67a
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/columnstackline_52x60.svg
@@ -0,0 +1,1125 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="columnstackline_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/columnstackline_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4"><linearGradient
+ id="linearGradient6036">
+ <stop
+ id="stop6038"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ <stop
+ style="stop-color:#8a0000;stop-opacity:1;"
+ offset="0.5"
+ id="stop6040" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6042" />
+</linearGradient>
+<linearGradient
+ id="linearGradient5083">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="0"
+ id="stop6024" />
+ <stop
+ id="stop6030"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+<filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+</filter>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+</linearGradient>
+<filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+</filter>
+<linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+</linearGradient>
+<linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+</linearGradient>
+<linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6022"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6301"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6673"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6675"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6696"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6784"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6786"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6818"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient6827"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient4443"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient4458"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient4460"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient4464"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5349"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5351"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5355"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5357"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5359"
+ gradientUnits="userSpaceOnUse"
+ x1="664.49115"
+ y1="-113.21032"
+ x2="715.42859"
+ y2="-113.21032" />
+</defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="43.465869"
+ inkscape:cy="37.918358"
+ inkscape:document-units="px"
+ inkscape:current-layer="g6677"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <g
+ id="g5504"
+ style="fill-opacity:1.0;fill:url(#linearGradient6022)">
+ <g
+ id="g6677"
+ style="fill:url(#linearGradient5359)"
+ transform="matrix(1,0,0,1.4230769,0,38.709406)">
+ <g
+ id="g6820"
+ style="fill:url(#linearGradient5357)"
+ transform="translate(1.1328125e-6,-2.8925224e-6)">
+ <g
+ id="g4445"
+ style="fill:url(#linearGradient5355)"
+ transform="translate(-1.0000011,2.6631666e-6)">
+ <rect
+ y="-98.521988"
+ x="674.42859"
+ height="6.3243217"
+ width="15.000001"
+ id="rect6310"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6312"
+ width="14.999999"
+ height="7.0270243"
+ x="674.42859"
+ y="98.521988"
+ transform="scale(1,-1)" />
+ <path
+ id="rect6303"
+ d="m 674.42859,-105.54901 0,14.05405 15,0 0,-14.05405 z m 1,0.7027 13,0 0,12.648646 -13,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 675.42859,-104.84631 0,13.35135 13,0 0,-13.35135 z m 1,0.7027 11,0 0,11.945946 -11,0 z"
+ id="path6308" />
+ </g>
+ </g>
+ </g>
+ <g
+ id="g4451"
+ style="fill:url(#linearGradient4460)"
+ transform="translate(-1,0)">
+ <g
+ transform="translate(21,0)"
+ style="fill:url(#linearGradient4458)"
+ id="g6684">
+ <rect
+ y="-104.49496"
+ x="674.42859"
+ height="12"
+ width="15"
+ id="rect6688"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect6690"
+ width="14.999999"
+ height="14.000005"
+ x="674.42859"
+ y="104.49496"
+ transform="scale(1,-1)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path6692"
+ transform="translate(661.42859,-136.49496)"
+ d="m 13,18 0,27 15,0 0,-27 z m 1,1 13,0 0,25 -13,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 14,19 0,26 13,0 0,-26 z m 1,1 11,0 0,24 -11,0 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path6694" />
+ </g>
+ </g>
+ <path
+ style="fill:#666666;fill-opacity:1;stroke:none"
+ d="m 667.51698,-131.49496 0,40 1,0 45,0 0,-1 -45,0 0,-39 -1,0 z"
+ id="rect6698"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;stroke:#8ae234;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 18,19 42,7"
+ id="path4466"
+ inkscape:connector-curvature="0"
+ transform="translate(661.42859,-136.49496)" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path5353"
+ d="m 679.42859,-116.49496 24,-12"
+ style="fill:none;stroke:#4e9a06;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-3"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/dataeditor_icon05.png b/icon-themes/tango_testing/chart2/res/dataeditor_icon05.png
new file mode 100644
index 000000000000..3d706cb7d3de
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/dataeditor_icon05.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/dataeditor_icon05.svg b/icon-themes/tango_testing/chart2/res/dataeditor_icon05.svg
new file mode 100644
index 000000000000..58af5d1d4aa4
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/dataeditor_icon05.svg
@@ -0,0 +1,769 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16"
+ height="16"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="dataeditor_icon05.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/dataeditor_icon05.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient4378">
+ <stop
+ style="stop-color:#f57900;stop-opacity:1;"
+ offset="0"
+ id="stop4380" />
+ <stop
+ style="stop-color:#ffce9e;stop-opacity:1;"
+ offset="1"
+ id="stop4382" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="21.089184"
+ x2="19.567051"
+ y1="0.52668285"
+ x1="2.50455"
+ id="linearGradient10891"
+ xlink:href="#linearGradient10885"
+ inkscape:collect="always"
+ gradientTransform="translate(-0.00916403,1025.2269)" />
+ <linearGradient
+ id="linearGradient10885"
+ inkscape:collect="always">
+ <stop
+ id="stop10887"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop10889"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient10198"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1048.4872,19.312474)"
+ x1="-0.125"
+ y1="7.8125"
+ x2="15.875"
+ y2="7.8125" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient10597"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-35.062484,-1048.1122)"
+ x1="-0.125"
+ y1="7.8125"
+ x2="15.875"
+ y2="7.8125" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4378"
+ id="linearGradient4384"
+ x1="17.088388"
+ y1="10.90598"
+ x2="17.403379"
+ y2="7.4588351"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4378"
+ id="linearGradient4392"
+ gradientUnits="userSpaceOnUse"
+ x1="17.088388"
+ y1="10.90598"
+ x2="17.403379"
+ y2="7.4588351" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3175"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-35.062484,-1048.1122)"
+ x1="-0.125"
+ y1="7.8125"
+ x2="15.875"
+ y2="7.8125" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="228.8132"
+ inkscape:cy="5.8241192"
+ inkscape:document-units="px"
+ inkscape:current-layer="g10576"
+ showgrid="false"
+ inkscape:snap-global="true"
+ inkscape:window-width="681"
+ inkscape:window-height="714"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2996"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-1036.3622)">
+ <g
+ transform="translate(-4,-10.999966)"
+ id="layer1-0"
+ inkscape:label="Ebene 1">
+ <g
+ id="text2998"
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Open Sans;-inkscape-font-specification:Open Sans">
+ <g
+ transform="translate(1,-1.0625)"
+ id="g7758">
+ <g
+ transform="matrix(0,1,-1,0,1051.4247,1029.4247)"
+ id="g10867">
+ <g
+ id="g10177"
+ transform="matrix(0,1,-1,0,1067.4247,1013.4247)">
+ <g
+ id="g10576"
+ transform="matrix(0,1,-1,0,1067.4247,1013.4247)">
+ <g
+ id="g3143"
+ transform="matrix(0,-1,1,0,-1013.4247,1067.4247)">
+ <rect
+ y="-1048.4247"
+ x="-34.999966"
+ height="16.000017"
+ width="16"
+ id="rect8875"
+ style="fill:url(#linearGradient3175);fill-opacity:1;stroke:none"
+ transform="scale(-1,-1)" />
+ <rect
+ y="1032.4247"
+ x="-35.000034"
+ height="15.999983"
+ width="6.000011"
+ id="rect7797"
+ style="fill:#fce94f;fill-opacity:1;stroke:none"
+ transform="scale(-1,1)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect7799"
+ d="m 19.000034,1032.4247 -5.2e-5,16 16,0 1.8e-5,-16 z m 0.999982,1.0005 14,0 -5e-5,14 -14.000018,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect4870"
+ width="1"
+ height="14"
+ x="1037.4247"
+ y="-33.999966"
+ transform="matrix(0,1,-1,0,0,0)" />
+ <g
+ transform="translate(-0.625,4.9375)"
+ id="g8766">
+ <g
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1"
+ id="g4897"
+ transform="translate(26,-3)">
+ <g
+ transform="translate(0.625,-4.9375)"
+ id="g8778">
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path4899"
+ d="m 4.00455,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 4.00455,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8744"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8746"
+ d="m 4.00455,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -0.995454,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8748"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8750"
+ d="m -0.995454,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -0.995454,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8752"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8754"
+ d="m -5.995454,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -5.995454,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8756"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8758"
+ d="m -5.995454,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ <rect
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-33.999966"
+ x="1042.4247"
+ height="14"
+ width="1"
+ id="rect8760"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect8762"
+ width="1"
+ height="14"
+ x="-24.999966"
+ y="-1047.4247"
+ transform="scale(-1,-1)" />
+ <rect
+ transform="scale(-1,-1)"
+ y="-1047.4247"
+ x="-29.999966"
+ height="14"
+ width="1"
+ id="rect8764"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <g
+ inkscape:transform-center-y="0.75"
+ transform="translate(-1,0)"
+ id="g4346">
+ <g
+ transform="translate(0,2)"
+ id="g4355">
+ <g
+ transform="translate(0,-8)"
+ id="g4371">
+ <g
+ transform="translate(0,1)"
+ id="g4386" />
+ <g
+ transform="translate(-0.96875,0)"
+ id="g4406">
+ <rect
+ transform="matrix(0,1,-1,0,0,1)"
+ y="-30.000034"
+ x="1046.4247"
+ height="6"
+ width="3.0000174"
+ id="rect4350"
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#6b0a00;fill-opacity:1;stroke:none;font-family:Open Sans;-inkscape-font-specification:Open Sans"
+ rx="1"
+ ry="1" />
+ <path
+ transform="translate(0,1)"
+ sodipodi:nodetypes="ccc"
+ inkscape:connector-curvature="0"
+ id="path4400"
+ d="m 24.50876,1045.9365 -2.019988,2.0285 1.997891,1.9714"
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;stroke:#6b0a00;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Open Sans;-inkscape-font-specification:Open Sans" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
+ transform="translate(0,7)"
+ id="g4420">
+ <path
+ sodipodi:nodetypes="ccccccccccccccccc"
+ style="fill:#f57900;fill-opacity:1;stroke:none"
+ d="m 23.000034,1033.4247 0,2 4,0 0,1 -4,0 0,2 -1,0 0,-1 -1,0 0,-1 -1,0 0,-1 1,0 0,-1 1,0 0,-1 z"
+ id="path4416"
+ inkscape:connector-curvature="0" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 1,12 1,0 0,1 1,0 0,1 1,0 0,1 -1,0 0,-1 -1,0 0,-1 -1,0 z"
+ id="path4418"
+ inkscape:connector-curvature="0"
+ transform="matrix(0,1,-1,0,35.000034,1032.4247)" />
+ <rect
+ transform="matrix(0,1,-1,0,35.000034,1025.4247)"
+ y="8"
+ x="10"
+ height="1"
+ width="1"
+ id="rect4424"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-94"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/dataeditor_icon06.png b/icon-themes/tango_testing/chart2/res/dataeditor_icon06.png
new file mode 100644
index 000000000000..2bbd9505ba84
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/dataeditor_icon06.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/dataeditor_icon06.svg b/icon-themes/tango_testing/chart2/res/dataeditor_icon06.svg
new file mode 100644
index 000000000000..2a003f8d7475
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/dataeditor_icon06.svg
@@ -0,0 +1,769 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16"
+ height="16"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="dataeditor_icon06.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/dataeditor_icon06.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient4378">
+ <stop
+ style="stop-color:#f57900;stop-opacity:1;"
+ offset="0"
+ id="stop4380" />
+ <stop
+ style="stop-color:#ffce9e;stop-opacity:1;"
+ offset="1"
+ id="stop4382" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="21.089184"
+ x2="19.567051"
+ y1="0.52668285"
+ x1="2.50455"
+ id="linearGradient10891"
+ xlink:href="#linearGradient10885"
+ inkscape:collect="always"
+ gradientTransform="translate(-0.00916403,1025.2269)" />
+ <linearGradient
+ id="linearGradient10885"
+ inkscape:collect="always">
+ <stop
+ id="stop10887"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop10889"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient10198"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1048.4872,19.312474)"
+ x1="-0.125"
+ y1="7.8125"
+ x2="15.875"
+ y2="7.8125" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient10597"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-35.062484,-1048.1122)"
+ x1="-0.125"
+ y1="7.8125"
+ x2="15.875"
+ y2="7.8125" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4378"
+ id="linearGradient4384"
+ x1="17.088388"
+ y1="10.90598"
+ x2="17.403379"
+ y2="7.4588351"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4378"
+ id="linearGradient4392"
+ gradientUnits="userSpaceOnUse"
+ x1="17.088388"
+ y1="10.90598"
+ x2="17.403379"
+ y2="7.4588351" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3175"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-35.062484,-1048.1122)"
+ x1="-0.125"
+ y1="7.8125"
+ x2="15.875"
+ y2="7.8125" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="228.8132"
+ inkscape:cy="5.8241192"
+ inkscape:document-units="px"
+ inkscape:current-layer="g10576"
+ showgrid="false"
+ inkscape:snap-global="true"
+ inkscape:window-width="681"
+ inkscape:window-height="714"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2996"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-1036.3622)">
+ <g
+ transform="translate(-4,-10.999966)"
+ id="layer1-0"
+ inkscape:label="Ebene 1">
+ <g
+ id="text2998"
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Open Sans;-inkscape-font-specification:Open Sans">
+ <g
+ transform="translate(1,-1.0625)"
+ id="g7758">
+ <g
+ transform="matrix(0,1,-1,0,1051.4247,1029.4247)"
+ id="g10867">
+ <g
+ id="g10177"
+ transform="matrix(0,1,-1,0,1067.4247,1013.4247)">
+ <g
+ id="g10576"
+ transform="matrix(0,1,-1,0,1067.4247,1013.4247)">
+ <g
+ id="g3143"
+ transform="translate(-1.7274475e-5,1.7274475e-5)">
+ <rect
+ y="-1048.4247"
+ x="-34.999966"
+ height="16.000017"
+ width="16"
+ id="rect8875"
+ style="fill:url(#linearGradient3175);fill-opacity:1;stroke:none"
+ transform="scale(-1,-1)" />
+ <rect
+ y="1032.4247"
+ x="-35.000034"
+ height="15.999983"
+ width="6.000011"
+ id="rect7797"
+ style="fill:#fce94f;fill-opacity:1;stroke:none"
+ transform="scale(-1,1)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect7799"
+ d="m 19.000034,1032.4247 -5.2e-5,16 16,0 1.8e-5,-16 z m 0.999982,1.0005 14,0 -5e-5,14 -14.000018,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect4870"
+ width="1"
+ height="14"
+ x="1037.4247"
+ y="-33.999966"
+ transform="matrix(0,1,-1,0,0,0)" />
+ <g
+ transform="translate(-0.625,4.9375)"
+ id="g8766">
+ <g
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1"
+ id="g4897"
+ transform="translate(26,-3)">
+ <g
+ transform="translate(0.625,-4.9375)"
+ id="g8778">
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path4899"
+ d="m 4.00455,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 4.00455,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8744"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8746"
+ d="m 4.00455,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -0.995454,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8748"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8750"
+ d="m -0.995454,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -0.995454,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8752"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8754"
+ d="m -5.995454,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -5.995454,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8756"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8758"
+ d="m -5.995454,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ <rect
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-33.999966"
+ x="1042.4247"
+ height="14"
+ width="1"
+ id="rect8760"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect8762"
+ width="1"
+ height="14"
+ x="-24.999966"
+ y="-1047.4247"
+ transform="scale(-1,-1)" />
+ <rect
+ transform="scale(-1,-1)"
+ y="-1047.4247"
+ x="-29.999966"
+ height="14"
+ width="1"
+ id="rect8764"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <g
+ inkscape:transform-center-y="0.75"
+ transform="translate(-1,0)"
+ id="g4346">
+ <g
+ transform="translate(0,2)"
+ id="g4355">
+ <g
+ transform="translate(0,-8)"
+ id="g4371">
+ <g
+ transform="translate(0,1)"
+ id="g4386" />
+ <g
+ transform="translate(-0.96875,0)"
+ id="g4406">
+ <rect
+ transform="matrix(0,1,-1,0,0,1)"
+ y="-30.000034"
+ x="1046.4247"
+ height="6"
+ width="3.0000174"
+ id="rect4350"
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#6b0a00;fill-opacity:1;stroke:none;font-family:Open Sans;-inkscape-font-specification:Open Sans"
+ rx="1"
+ ry="1" />
+ <path
+ transform="translate(0,1)"
+ sodipodi:nodetypes="ccc"
+ inkscape:connector-curvature="0"
+ id="path4400"
+ d="m 24.50876,1045.9365 -2.019988,2.0285 1.997891,1.9714"
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;stroke:#6b0a00;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Open Sans;-inkscape-font-specification:Open Sans" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
+ transform="translate(0,7)"
+ id="g4420">
+ <path
+ sodipodi:nodetypes="ccccccccccccccccc"
+ style="fill:#f57900;fill-opacity:1;stroke:none"
+ d="m 23.000034,1033.4247 0,2 4,0 0,1 -4,0 0,2 -1,0 0,-1 -1,0 0,-1 -1,0 0,-1 1,0 0,-1 1,0 0,-1 z"
+ id="path4416"
+ inkscape:connector-curvature="0" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 1,12 1,0 0,1 1,0 0,1 1,0 0,1 -1,0 0,-1 -1,0 0,-1 -1,0 z"
+ id="path4418"
+ inkscape:connector-curvature="0"
+ transform="matrix(0,1,-1,0,35.000034,1032.4247)" />
+ <rect
+ transform="matrix(0,1,-1,0,35.000034,1025.4247)"
+ y="8"
+ x="10"
+ height="1"
+ width="1"
+ id="rect4424"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-94"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/dataeditor_icon07.png b/icon-themes/tango_testing/chart2/res/dataeditor_icon07.png
new file mode 100644
index 000000000000..b53a38775303
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/dataeditor_icon07.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/dataeditor_icon07.svg b/icon-themes/tango_testing/chart2/res/dataeditor_icon07.svg
new file mode 100644
index 000000000000..76c09151fb1a
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/dataeditor_icon07.svg
@@ -0,0 +1,652 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16"
+ height="16"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="dataeditor_icon07.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/dataeditor_icon07.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="21.089184"
+ x2="19.567051"
+ y1="0.52668285"
+ x1="2.50455"
+ id="linearGradient10891"
+ xlink:href="#linearGradient10885"
+ inkscape:collect="always"
+ gradientTransform="translate(-0.00916403,1025.2269)" />
+ <linearGradient
+ id="linearGradient10885"
+ inkscape:collect="always">
+ <stop
+ id="stop10887"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop10889"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient10198"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1048.4872,19.312474)"
+ x1="-0.125"
+ y1="7.8125"
+ x2="15.875"
+ y2="7.8125" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="16"
+ inkscape:cx="9.6967403"
+ inkscape:cy="10.848298"
+ inkscape:document-units="px"
+ inkscape:current-layer="g10177"
+ showgrid="false"
+ inkscape:snap-global="true"
+ inkscape:window-width="681"
+ inkscape:window-height="714"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2996"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-1036.3622)">
+ <g
+ transform="translate(-4,-10.999966)"
+ id="layer1-0"
+ inkscape:label="Ebene 1">
+ <g
+ id="text2998"
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Open Sans;-inkscape-font-specification:Open Sans">
+ <g
+ transform="translate(1,-1.0625)"
+ id="g7758">
+ <g
+ transform="matrix(0,1,-1,0,1051.4247,1029.4247)"
+ id="g10867">
+ <g
+ id="g10177"
+ transform="matrix(0,1,-1,0,1067.4247,1013.4247)">
+ <rect
+ y="18.999958"
+ x="-1048.4247"
+ height="16.000017"
+ width="16"
+ id="rect8875"
+ style="fill:url(#linearGradient10198);fill-opacity:1;stroke:none"
+ transform="matrix(0,-1,1,0,0,0)" />
+ <rect
+ y="1032.4247"
+ x="-29.999966"
+ height="15.999971"
+ width="6.0000005"
+ id="rect7797"
+ style="fill:#73d216;fill-opacity:1;stroke:none"
+ transform="scale(-1,1)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect7799"
+ d="m 19.000016,1032.4247 -3.4e-5,16 16,0 1.8e-5,-16 z m 1,1 14,0 -5e-5,14 -14.000018,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect4870"
+ width="1"
+ height="14"
+ x="1037.4247"
+ y="-33.999966"
+ transform="matrix(0,1,-1,0,0,0)" />
+ <g
+ transform="translate(-0.625,4.9375)"
+ id="g8766">
+ <g
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1"
+ id="g4897"
+ transform="translate(26,-3)">
+ <g
+ transform="translate(0.625,-4.9375)"
+ id="g8778">
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path4899"
+ d="m 4.00455,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 4.00455,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8744"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8746"
+ d="m 4.00455,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -0.995454,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8748"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8750"
+ d="m -0.995454,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -0.995454,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8752"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8754"
+ d="m -5.995454,1050.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m -5.995454,1045.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ id="path8756"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8758"
+ d="m -5.995454,1040.4293 4,0 -0.00458,-4.0046 -4,0 z m 1,-1 -0.00458,-2.0046 2,0 0.00458,2.0046 z"
+ style="opacity:0.5;fill:#ffffff;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ <rect
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-33.999966"
+ x="1042.4247"
+ height="14"
+ width="1"
+ id="rect8760"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect8762"
+ width="1"
+ height="14"
+ x="-24.999966"
+ y="-1047.4247"
+ transform="scale(-1,-1)" />
+ <rect
+ transform="scale(-1,-1)"
+ y="-1047.4247"
+ x="-29.999966"
+ height="14"
+ width="1"
+ id="rect8764"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <g
+ id="g3383">
+ <rect
+ ry="0.5"
+ transform="matrix(-1,0,0,-1,35,1048.4247)"
+ y="13"
+ x="6"
+ height="1"
+ width="4"
+ id="rect3377"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ rx="0.5"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3379"
+ width="2.0000172"
+ height="1"
+ x="1034.4247"
+ y="-29"
+ transform="matrix(0,1,-1,0,0,0)"
+ ry="0.5" />
+ <rect
+ ry="0.5"
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-27"
+ x="1034.4247"
+ height="1"
+ width="1.9999143"
+ id="rect3381"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ rx="0.5" />
+ </g>
+ <g
+ id="g3388"
+ transform="translate(0,5.000034)">
+ <rect
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3390"
+ width="4"
+ height="1"
+ x="6"
+ y="13"
+ transform="matrix(-1,0,0,-1,35,1048.4247)"
+ ry="0.5"
+ rx="0.5" />
+ <rect
+ ry="0.5"
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-29"
+ x="1034.4247"
+ height="1"
+ width="2.0000172"
+ id="rect3392"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ rx="0.5" />
+ <rect
+ rx="0.5"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3394"
+ width="1.9999143"
+ height="1"
+ x="1034.4247"
+ y="-27"
+ transform="matrix(0,1,-1,0,0,0)"
+ ry="0.5" />
+ </g>
+ <g
+ transform="translate(0,10.000051)"
+ id="g3396">
+ <rect
+ rx="0.5"
+ ry="0.5"
+ transform="matrix(-1,0,0,-1,35,1048.4247)"
+ y="13"
+ x="6"
+ height="1"
+ width="4"
+ id="rect3398"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none" />
+ <rect
+ rx="0.5"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3400"
+ width="2.0000172"
+ height="1"
+ x="1034.4247"
+ y="-29"
+ transform="matrix(0,1,-1,0,0,0)"
+ ry="0.5" />
+ <rect
+ ry="0.5"
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-27"
+ x="1034.4247"
+ height="1"
+ width="1.9999143"
+ id="rect3402"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ rx="0.5" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/pie_52x60.png b/icon-themes/tango_testing/chart2/res/pie_52x60.png
new file mode 100644
index 000000000000..27f341780f96
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/pie_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/pie_52x60.svg b/icon-themes/tango_testing/chart2/res/pie_52x60.svg
new file mode 100644
index 000000000000..f5388bc2f376
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/pie_52x60.svg
@@ -0,0 +1,1049 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="pie_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/pie_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient4088">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4090" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4092" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4266">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4268" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4270" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4258">
+ <stop
+ style="stop-color:#ef2929;stop-opacity:1;"
+ offset="0"
+ id="stop4260" />
+ <stop
+ style="stop-color:#cc0000;stop-opacity:1;"
+ offset="1"
+ id="stop4262" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4264"
+ x1="8.4636116"
+ y1="4.8850074"
+ x2="7.2257013"
+ y2="11.697508"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4272"
+ x1="10.761048"
+ y1="2.2435279"
+ x2="7.9375"
+ y2="14.337278"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3401"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient11751"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5445"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5443"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6373-6-1-3-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6375-5-2-6-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6377-0-1-2-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5341"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient19171">
+ <stop
+ style="stop-color:#bc0e0e;stop-opacity:1;"
+ offset="0"
+ id="stop19173" />
+ <stop
+ style="stop-color:#830a0a;stop-opacity:1;"
+ offset="1"
+ id="stop19175" />
+ </linearGradient>
+ <linearGradient
+ y2="-315.9939"
+ x2="750.77057"
+ y1="-330.68475"
+ x1="762.9682"
+ gradientTransform="matrix(1.2014178,0,0,1.2168276,-149.58638,71.496922)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339"
+ xlink:href="#linearGradient19171"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3326"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient11683"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient11681"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8608"
+ xlink:href="#linearGradient4157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8606"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-2" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8600"
+ xlink:href="#linearGradient4157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8598"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11632"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-2" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572-9"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,8.007958)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3205"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,196.8503)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3203"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,4.003979)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3199"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,192.84632)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3197"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient11616"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,0)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient11614"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(0.18066923,0,0,1,54.627495,0)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8590"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,141.96976,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8588"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17247104)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8570"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702364e-7,3.6935782,-2.0071419,-2.623971e-7,484.82869,188.87882)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8568"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035718,0,0,0.99927966,-0.33510308,0.17828314)"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8562"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.870241e-7,3.6935775,-2.0071438,-2.6239705e-7,484.82905,188.88459)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8560"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17535155)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8558"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702363e-7,3.6935782,-2.0071418,-2.623971e-7,484.82867,188.8817)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8556"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4068"
+ x1="8.3684635"
+ y1="0.69840777"
+ x2="6.5697818"
+ y2="16.076845"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4088"
+ id="linearGradient4082"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient4086"
+ gradientUnits="userSpaceOnUse"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4100"
+ x1="11.859842"
+ y1="2.9363194"
+ x2="11.13939"
+ y2="16.50366"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4148"
+ x1="19"
+ y1="6.5789442"
+ x2="16.68421"
+ y2="26.842104"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4158"
+ gradientUnits="userSpaceOnUse"
+ x1="8.3684635"
+ y1="0.69840777"
+ x2="6.5697818"
+ y2="16.076845" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4160"
+ gradientUnits="userSpaceOnUse"
+ x1="11.859842"
+ y1="2.9363194"
+ x2="11.13939"
+ y2="16.50366" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4088"
+ id="linearGradient4162"
+ gradientUnits="userSpaceOnUse"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient4164"
+ gradientUnits="userSpaceOnUse"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4176"
+ gradientUnits="userSpaceOnUse"
+ x1="8.3684635"
+ y1="0.69840777"
+ x2="6.5697818"
+ y2="16.076845" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4178"
+ gradientUnits="userSpaceOnUse"
+ x1="11.859842"
+ y1="2.9363194"
+ x2="11.13939"
+ y2="16.50366" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4088"
+ id="linearGradient4180"
+ gradientUnits="userSpaceOnUse"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient4182"
+ gradientUnits="userSpaceOnUse"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="11.313708"
+ inkscape:cx="22.574693"
+ inkscape:cy="37.873497"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:snap-global="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2996"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-1000.3622)">
+ <image
+ y="985.86218"
+ x="115"
+ id="image2993"
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA0CAYAAADWr1sfAAAABHNCSVQICAgIfAhkiAAAA1tJREFU
+aIHtmkFIG0EUhv+0UUhC6KlKlFqEIEhpPQR6EiwlKKFJ6SmFgBSLh1Aq9FR6qNgigj15EIoFi/Qi
+6KnUgiBBENJLIYe2h4KEBioaYk4lzS7YhPSwzLK7DdnZmdndmOY7ZRMzvs/33uzMuJ7HT1400OFI
+koy3b5Y9AOAFgNWVBXcjspmp+LT62utiHI4yFZ9OAMAFtwNxmq5wp2NbD9eO9iFn0k0/S6081V3P
+r07i5sSQXaHoECpslOwdC+Hi5YDuZ+RMHuFYUr2unp5gcW5PvbZbXoiwVrSZZCsCfQPqH0Arb5c4
+t3BlYwQA4IuGuYPRyi/ObQMA1nfvo38wyD02gWvSqmyMoHcsJETWSDiWxNVbdzAb20LpuCJsXGbh
+ysYIfNGwpfK1So8vgHAsKVSaSZjIOoVIacvCTssSRElbEiY96xahyDhmY1tcY1AL1472AcDWnjUj
+0DcAAPh88JN5DGphOZN2pZSNhGNJ3ULFKlTCbpeykVBkHIkb60zfpc6wm6VshJQ2C6bCpHfbEZZe
+NhWWM+m2KmdCKDLO1MtUJd1O5UzoDV5i+t65PQDo8bEl4dwKs9IVdoLq6YkbvxaAC+fSSw9/oHg9
+C0CZaXnuqSw4Kvx8aA8T/f1I/X6FY0nC69xLAM6KOyZMZAf9fgDAoN+PJYO49nDPjD9ylSkOKuF6
+ucp1LzbKatGJ79Jn+6zyiykW00nLF13D2Zci0+BAa1ktRLyYyyK/u206sRVzWcyvTlqOxzTD3iu3
+LQ9KoJXVYizzVhlnOcal7mGrZc0iS2jW31pxntsa1X04OHNoqazrZWVCYZHVQsQfnS6opQ4o5bzz
+dZZpTOoM+6JrVKce9XIVC5FPSA0PMwXUDOPExtK7BOqVFullkr1m2CFr5Nq3NNe/YCwtLVuVthOy
+B6USlhs1rjEsr6WDM4eQM3nde07IbhYK3LIA4+aBSNfL1XMlC3Dslkh52yl7LElCZQHO7WFw5hCA
+kgHRbBYKQnrWCPfmgQT0zKMMxbrYAJSMHpRKunFFI2y3tNyo4fvOR7y7e099j0ZeKwkADz68x2gi
+LiqsfxC6PRxNxNXMGOVbYbekFtv2w1r5dqJ7iNfpdIU7Ha8kybrniTsdT6OhPBBPnifudP67kv4L
+T9NpTy12viAAAAAASUVORK5CYII=
+"
+ height="52"
+ width="60" />
+ <g
+ id="g4166"
+ transform="translate(2.0029587,0.99999623)">
+ <g
+ id="layer1-5"
+ inkscape:label="Layer 1"
+ transform="translate(63.036092,1014.3555)">
+ <g
+ transform="matrix(2.2506422,0,0,2.2506422,-71.064334,10.991649)"
+ id="g4150">
+ <g
+ transform="translate(8.0055243,-7.9913596)"
+ id="layer1-77"
+ inkscape:label="Layer 1">
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4176);fill-opacity:1;stroke:none"
+ id="path2999"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="m 16.086679,8.1334372 c 0,4.4910298 -3.581339,8.1317278 -7.999145,8.1317278 -4.4178061,0 -7.99914556,-3.640698 -7.99914556,-8.1317278 0,-4.4910295 3.58133946,-8.13172822 7.99914556,-8.13172822 4.417806,0 7.999145,3.64069872 7.999145,8.13172822 z"
+ transform="matrix(1.0003994,0,0,0.98351999,-0.08962028,-0.00135111)" />
+ <path
+ transform="matrix(1.005745,0,0,0.98351999,-0.17561281,-0.00135111)"
+ d="m 16.086679,8.1334372 c 0,3.7603068 -2.53618,7.0301798 -6.1331235,7.9073748 L 8.087534,8.1334372 z"
+ sodipodi:ry="8.1317282"
+ sodipodi:rx="7.9991455"
+ sodipodi:cy="8.1334372"
+ sodipodi:cx="8.087534"
+ id="path4070"
+ style="fill:url(#linearGradient4178);fill-opacity:1;stroke:none"
+ sodipodi:type="arc"
+ sodipodi:start="0"
+ sodipodi:end="1.3353494" />
+ <path
+ sodipodi:end="1.9678026"
+ sodipodi:start="1.3330018"
+ sodipodi:type="arc"
+ style="fill:#7bbf2a;fill-opacity:1;stroke:none"
+ id="path4072"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="M 9.971811,16.036337 C 8.3128696,16.445097 6.5688027,16.303659 4.9945908,15.632701 L 8.087534,8.1334372 z"
+ transform="matrix(1.005745,0,0,0.98351999,-0.17561281,-0.00135111)" />
+ <path
+ transform="matrix(0,-0.97162502,-0.95341673,0,15.758658,15.859486)"
+ d="m 16.086679,8.1334372 c 0,4.4910298 -3.581339,8.1317278 -7.999145,8.1317278 -4.4178061,0 -7.99914556,-3.640698 -7.99914556,-8.1317278 0,-4.4910295 3.58133946,-8.13172822 7.99914556,-8.13172822 4.417806,0 7.999145,3.64069872 7.999145,8.13172822 z"
+ sodipodi:ry="8.1317282"
+ sodipodi:rx="7.9991455"
+ sodipodi:cy="8.1334372"
+ sodipodi:cx="8.087534"
+ id="path4074"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient4180);stroke-width:0.46163937;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient4182);stroke-width:0.49052072;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path4084"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="m 16.086679,8.1334372 c 0,4.4910298 -3.581339,8.1317278 -7.999145,8.1317278 -4.4178061,0 -7.99914556,-3.640698 -7.99914556,-8.1317278 0,-4.4910295 3.58133946,-8.13172822 7.99914556,-8.13172822 4.417806,0 7.999145,3.64069872 7.999145,8.13172822 z"
+ transform="matrix(0,0.91645095,0.89528897,0,0.71269918,0.58865825)" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-3"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/regexp.png b/icon-themes/tango_testing/chart2/res/regexp.png
new file mode 100644
index 000000000000..f992f2a80706
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/regexp.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/regexp.svg b/icon-themes/tango_testing/chart2/res/regexp.svg
new file mode 100644
index 000000000000..5db4191109dc
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/regexp.svg
@@ -0,0 +1,508 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="30"
+ height="30"
+ id="svg3515"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="regexp.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/regexp.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs3517"><linearGradient
+ id="linearGradient4777">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4779" />
+ <stop
+ style="stop-color:#656565;stop-opacity:1;"
+ offset="1"
+ id="stop4781" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(1.3636364,0,0,1.8750052,8.6363636,1025.8622)"
+ gradientUnits="userSpaceOnUse"
+ y2="19"
+ x2="11"
+ y1="4"
+ x1="11"
+ id="linearGradient3770"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+<linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+</linearGradient>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4783"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4787"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4791"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4795"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4799"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4803"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+</defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="2"
+ inkscape:cx="0.31251654"
+ inkscape:cy="23.352224"
+ inkscape:current-layer="layer1-8"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="781"
+ inkscape:window-height="419"
+ inkscape:window-x="72"
+ inkscape:window-y="121"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3534"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata3520">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,-18)">
+ <g
+ transform="translate(-10,-1015.3622)"
+ id="layer1-8"
+ inkscape:label="Ebene 1">
+ <rect
+ y="1033.3622"
+ x="10"
+ height="29.999985"
+ width="30"
+ id="rect2994"
+ style="fill:url(#linearGradient3770);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect3772"
+ d="m 10,1033.3622 0,30 30,0 0,-30 z m 1,1 28,0 0,28 -28,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 11,1034.3622 0,28 28,0 0,-28 z m 1,1 26,0 0,26 -26,0 z"
+ id="path3632"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ style="fill:none;stroke:#3465a4;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 2,25 C 18.467702,22.197063 22.844122,12.712103 25,2"
+ id="path3536"
+ inkscape:connector-curvature="0"
+ transform="translate(0,18)"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:1;fill:url(#linearGradient4783);fill-opacity:1;stroke:none"
+ id="path4775"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-13,53)" />
+ <path
+ transform="matrix(0,-1,1,0,-20,52)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4785"
+ style="opacity:1;fill:url(#linearGradient4787);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-1,1,0,-11,47)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4789"
+ style="fill:url(#linearGradient4791);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4795);fill-opacity:1;stroke:none"
+ id="path4793"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-4,47)" />
+ <path
+ transform="matrix(0,-1,1,0,-3,40)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4797"
+ style="fill:url(#linearGradient4799);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4803);fill-opacity:1;stroke:none"
+ id="path4801"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,1,35)" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/reglin.png b/icon-themes/tango_testing/chart2/res/reglin.png
new file mode 100644
index 000000000000..a96829983a5f
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/reglin.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/reglin.svg b/icon-themes/tango_testing/chart2/res/reglin.svg
new file mode 100644
index 000000000000..7dcc2f01a2ea
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/reglin.svg
@@ -0,0 +1,346 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="30"
+ height="30"
+ id="svg3515"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="reglin.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/reglin.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs3517">
+ <linearGradient
+ id="linearGradient4777">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4779" />
+ <stop
+ style="stop-color:#656565;stop-opacity:1;"
+ offset="1"
+ id="stop4781" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.3636364,0,0,1.8750052,8.6363636,1025.8622)"
+ gradientUnits="userSpaceOnUse"
+ y2="19"
+ x2="11"
+ y1="4"
+ x1="11"
+ id="linearGradient3770"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4783"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4787"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4791"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4795"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4799"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4803"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="4"
+ inkscape:cx="-34.796404"
+ inkscape:cy="54.457935"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3534"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata3520">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,-18)">
+ <g
+ transform="translate(-10,-1015.3622)"
+ id="layer1-8"
+ inkscape:label="Ebene 1">
+ <rect
+ y="1033.3622"
+ x="10"
+ height="29.999985"
+ width="30"
+ id="rect2994"
+ style="fill:url(#linearGradient3770);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect3772"
+ d="m 10,1033.3622 0,30 30,0 0,-30 z m 1,1 28,0 0,28 -28,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 11,1034.3622 0,28 28,0 0,-28 z m 1,1 26,0 0,26 -26,0 z"
+ id="path3632"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ style="fill:none;stroke:#3465a4;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 2,24 28,6"
+ id="path3536"
+ inkscape:connector-curvature="0"
+ transform="translate(0,18)"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4783);fill-opacity:1;stroke:none"
+ id="path4775"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-14,51)" />
+ <path
+ transform="matrix(0,-1,1,0,-20,53)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4785"
+ style="fill:url(#linearGradient4787);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-1,1,0,-12,45)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4789"
+ style="fill:url(#linearGradient4791);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4795);fill-opacity:1;stroke:none"
+ id="path4793"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-6,45)" />
+ <path
+ transform="matrix(0,-1,1,0,-4,39)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4797"
+ style="fill:url(#linearGradient4799);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4803);fill-opacity:1;stroke:none"
+ id="path4801"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,1,34)" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/reglog.png b/icon-themes/tango_testing/chart2/res/reglog.png
new file mode 100644
index 000000000000..02b4cc4ad1af
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/reglog.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/reglog.svg b/icon-themes/tango_testing/chart2/res/reglog.svg
new file mode 100644
index 000000000000..d15e90240215
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/reglog.svg
@@ -0,0 +1,345 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="30"
+ height="30"
+ id="svg3515"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="reglog.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/reglog.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs3517">
+ <linearGradient
+ id="linearGradient4777">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4779" />
+ <stop
+ style="stop-color:#656565;stop-opacity:1;"
+ offset="1"
+ id="stop4781" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.3636364,0,0,1.8750052,8.6363636,1025.8622)"
+ gradientUnits="userSpaceOnUse"
+ y2="19"
+ x2="11"
+ y1="4"
+ x1="11"
+ id="linearGradient3770"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4783"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4787"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4791"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4795"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4799"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4803"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="16"
+ inkscape:cx="27.380196"
+ inkscape:cy="16.104724"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3534"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata3520">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,-18)">
+ <g
+ transform="translate(-10,-1015.3622)"
+ id="layer1-8"
+ inkscape:label="Ebene 1">
+ <rect
+ y="1033.3622"
+ x="10"
+ height="29.999985"
+ width="30"
+ id="rect2994"
+ style="fill:url(#linearGradient3770);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect3772"
+ d="m 10,1033.3622 0,30 30,0 0,-30 z m 1,1 28,0 0,28 -28,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 11,1034.3622 0,28 28,0 0,-28 z m 1,1 26,0 0,26 -26,0 z"
+ id="path3632"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ style="fill:none;stroke:#3465a4;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 28,23 C 11.532298,25.802937 6.155878,35.287897 4,46"
+ id="path3536"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4783);fill-opacity:1;stroke:none"
+ id="path4775"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-16,48)" />
+ <path
+ transform="matrix(0,-1,1,0,-20,53)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4785"
+ style="fill:url(#linearGradient4787);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-1,1,0,-15,41)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4789"
+ style="fill:url(#linearGradient4791);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4795);fill-opacity:1;stroke:none"
+ id="path4793"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-8,41)" />
+ <path
+ transform="matrix(0,-1,1,0,-6,35)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4797"
+ style="fill:url(#linearGradient4799);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4803);fill-opacity:1;stroke:none"
+ id="path4801"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,1,36)" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/regno.png b/icon-themes/tango_testing/chart2/res/regno.png
new file mode 100644
index 000000000000..4efbfaf8b660
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/regno.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/regno.svg b/icon-themes/tango_testing/chart2/res/regno.svg
new file mode 100644
index 000000000000..ea5c955d6f57
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/regno.svg
@@ -0,0 +1,339 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="30"
+ height="30"
+ id="svg3515"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="regno.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/regno.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs3517">
+ <linearGradient
+ id="linearGradient4777">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4779" />
+ <stop
+ style="stop-color:#656565;stop-opacity:1;"
+ offset="1"
+ id="stop4781" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.3636364,0,0,1.8750052,8.6363636,1025.8622)"
+ gradientUnits="userSpaceOnUse"
+ y2="19"
+ x2="11"
+ y1="4"
+ x1="11"
+ id="linearGradient3770"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4783"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4787"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4791"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4795"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4799"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4803"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="16"
+ inkscape:cx="12.380196"
+ inkscape:cy="16.104724"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="681"
+ inkscape:window-height="714"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3534"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata3520">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,-18)">
+ <g
+ transform="translate(-10,-1015.3622)"
+ id="layer1-8"
+ inkscape:label="Ebene 1">
+ <rect
+ y="1033.3622"
+ x="10"
+ height="29.999985"
+ width="30"
+ id="rect2994"
+ style="fill:url(#linearGradient3770);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect3772"
+ d="m 10,1033.3622 0,30 30,0 0,-30 z m 1,1 28,0 0,28 -28,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 11,1034.3622 0,28 28,0 0,-28 z m 1,1 26,0 0,26 -26,0 z"
+ id="path3632"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4783);fill-opacity:1;stroke:none"
+ id="path4775"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-15,51)" />
+ <path
+ transform="matrix(0,-1,1,0,-20,54)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4785"
+ style="fill:url(#linearGradient4787);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-1,1,0,-9,49)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4789"
+ style="fill:url(#linearGradient4791);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4795);fill-opacity:1;stroke:none"
+ id="path4793"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-5,44)" />
+ <path
+ transform="matrix(0,-1,1,0,-3,38)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4797"
+ style="fill:url(#linearGradient4799);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4803);fill-opacity:1;stroke:none"
+ id="path4801"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,1,33)" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/regpow.png b/icon-themes/tango_testing/chart2/res/regpow.png
new file mode 100644
index 000000000000..08c430bac138
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/regpow.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/regpow.svg b/icon-themes/tango_testing/chart2/res/regpow.svg
new file mode 100644
index 000000000000..60f88eb9d352
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/regpow.svg
@@ -0,0 +1,345 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="30"
+ height="30"
+ id="svg3515"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="regpow.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/regpow.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs3517">
+ <linearGradient
+ id="linearGradient4777">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4779" />
+ <stop
+ style="stop-color:#656565;stop-opacity:1;"
+ offset="1"
+ id="stop4781" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.3636364,0,0,1.8750052,8.6363636,1025.8622)"
+ gradientUnits="userSpaceOnUse"
+ y2="19"
+ x2="11"
+ y1="4"
+ x1="11"
+ id="linearGradient3770"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4783"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4787"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4791"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4795"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4799"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4777"
+ id="linearGradient4803"
+ gradientUnits="userSpaceOnUse"
+ x1="10"
+ y1="24"
+ x2="12"
+ y2="24" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="16"
+ inkscape:cx="22.380196"
+ inkscape:cy="16.104724"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3534"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata3520">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,-18)">
+ <g
+ transform="translate(-10,-1015.3622)"
+ id="layer1-8"
+ inkscape:label="Ebene 1">
+ <rect
+ y="1033.3622"
+ x="10"
+ height="29.999985"
+ width="30"
+ id="rect2994"
+ style="fill:url(#linearGradient3770);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect3772"
+ d="m 10,1033.3622 0,30 30,0 0,-30 z m 1,1 28,0 0,28 -28,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 11,1034.3622 0,28 28,0 0,-28 z m 1,1 26,0 0,26 -26,0 z"
+ id="path3632"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ style="fill:none;stroke:#3465a4;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 28,43 C 11.532298,40.197063 6.155878,30.712103 4,20"
+ id="path3536"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4783);fill-opacity:1;stroke:none"
+ id="path4775"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-15,47)" />
+ <path
+ transform="matrix(0,-1,1,0,-20,35)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4785"
+ style="fill:url(#linearGradient4787);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-1,1,0,-16,40)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4789"
+ style="fill:url(#linearGradient4791);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4795);fill-opacity:1;stroke:none"
+ id="path4793"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,-8,47)" />
+ <path
+ transform="matrix(0,-1,1,0,-6,53)"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ sodipodi:ry="1"
+ sodipodi:rx="1"
+ sodipodi:cy="24"
+ sodipodi:cx="11"
+ id="path4797"
+ style="fill:url(#linearGradient4799);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4803);fill-opacity:1;stroke:none"
+ id="path4801"
+ sodipodi:cx="11"
+ sodipodi:cy="24"
+ sodipodi:rx="1"
+ sodipodi:ry="1"
+ d="m 12,24 a 1,1 0 1 1 -2,0 1,1 0 1 1 2,0 z"
+ transform="matrix(0,-1,1,0,1,52)" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typearea_16.png b/icon-themes/tango_testing/chart2/res/typearea_16.png
new file mode 100644
index 000000000000..5e4054b34ce8
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typearea_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typearea_16.svg b/icon-themes/tango_testing/chart2/res/typearea_16.svg
new file mode 100644
index 000000000000..bdcee4c41bdf
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typearea_16.svg
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg2985"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ inkscape:export-filename="/home/alexander/typearea_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ sodipodi:docname="typearea_16.svg">
+ <defs
+ id="defs2987" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="1.1968152"
+ inkscape:cy="5.0899806"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="false"
+ inkscape:window-width="783"
+ inkscape:window-height="452"
+ inkscape:window-x="159"
+ inkscape:window-y="202"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3004" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata2990">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ d="m 0,0 6,6 6,-6 4,3 0,12 -16,0 z"
+ id="path3008"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ d="m 0,9 4,3 9,-5 3,3 0,6 -16,0 z"
+ id="path3006"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 0.03125,0.71875 6,6 6,-6 7,5"
+ id="path4193"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc" />
+ <path
+ sodipodi:nodetypes="cccc"
+ inkscape:connector-curvature="0"
+ id="path4195"
+ d="m -0.03125,9.59375 4,3 9,-5 4,4"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cccc"
+ inkscape:connector-curvature="0"
+ id="path4197"
+ d="M -0.03125,2.0625 6,8.09375 12.15625,2 l 7,5"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m -0.09375,10.78125 4,3 8.90625,-4.9375 4.09375,3.9375"
+ id="path4199"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc" />
+ <path
+ style="opacity:1;fill:#2e3436;fill-opacity:1;stroke:none"
+ d="M 0 0 L 0 15 L 0 16 L 1 16 L 16 16 L 16 15 L 1 15 L 1 0 L 0 0 z "
+ id="rect3778" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typebar_16.png b/icon-themes/tango_testing/chart2/res/typebar_16.png
new file mode 100644
index 000000000000..cec03f0db835
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typebar_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typebar_16.svg b/icon-themes/tango_testing/chart2/res/typebar_16.svg
new file mode 100644
index 000000000000..ca908e0c1c52
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typebar_16.svg
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg4592"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="typebar_16.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/typebar_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4594" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="8"
+ inkscape:cy="8"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4639" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4597">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <g
+ id="g4584">
+ <rect
+ y="0"
+ x="1"
+ height="4"
+ width="10"
+ id="rect4212"
+ style="fill:#8ae234;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect4214"
+ width="14"
+ height="4"
+ x="1"
+ y="5" />
+ <rect
+ y="10"
+ x="1"
+ height="4"
+ width="8"
+ id="rect4216"
+ style="fill:#729fcf;fill-opacity:1;stroke:none" />
+ <path
+ inkscape:connector-curvature="0"
+ id="rect4218"
+ d="m 0,0 0,4 11,0 0,-4 z m 1,1 9,0 0,2 -9,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="M 0,5 0,9 15,9 15,5 z M 1,6 14,6 14,8 1,8 z"
+ id="path4223" />
+ <path
+ id="path4225"
+ d="m 0,10 0,4 9,0 0,-4 z m 1,1 7,0 0,2 -7,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ d="m 0,0 0,15 0,1 1,0 14.999999,0 0,-1 L 1,15 1,0 0,0 z"
+ id="rect3778" />
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typebubble_16.png b/icon-themes/tango_testing/chart2/res/typebubble_16.png
new file mode 100644
index 000000000000..571910d5db7e
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typebubble_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typebubble_16.svg b/icon-themes/tango_testing/chart2/res/typebubble_16.svg
new file mode 100644
index 000000000000..57a25c1ff886
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typebubble_16.svg
@@ -0,0 +1,395 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg2985"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/typebubble_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ sodipodi:docname="typebubble_16.svg">
+ <defs
+ id="defs2987">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3811">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3813" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3815" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3803">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3805" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3807" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3803"
+ id="linearGradient3809"
+ x1="2.3995495"
+ y1="3"
+ x2="9.6004505"
+ y2="3"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3811"
+ id="linearGradient3817"
+ x1="1.9987479"
+ y1="3"
+ x2="10.001252"
+ y2="3"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3811"
+ id="linearGradient3821"
+ gradientUnits="userSpaceOnUse"
+ x1="1.9987479"
+ y1="3"
+ x2="10.001252"
+ y2="3" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3803"
+ id="linearGradient3825"
+ gradientUnits="userSpaceOnUse"
+ x1="2.3995495"
+ y1="3"
+ x2="9.6004505"
+ y2="3" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3811"
+ id="linearGradient3837"
+ gradientUnits="userSpaceOnUse"
+ x1="1.9987479"
+ y1="3"
+ x2="10.001252"
+ y2="3" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3803"
+ id="linearGradient3839"
+ gradientUnits="userSpaceOnUse"
+ x1="2.3995495"
+ y1="3"
+ x2="9.6004505"
+ y2="3" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3811"
+ id="linearGradient3847"
+ gradientUnits="userSpaceOnUse"
+ x1="1.9987479"
+ y1="3"
+ x2="10.001252"
+ y2="3" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3803"
+ id="linearGradient3849"
+ gradientUnits="userSpaceOnUse"
+ x1="2.3995495"
+ y1="3"
+ x2="9.6004505"
+ y2="3" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="13.852522"
+ inkscape:cy="8.5031334"
+ inkscape:current-layer="g3841"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3004" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata2990">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ style="opacity:1;fill:#2e3436;fill-opacity:1;stroke:none"
+ d="M 0 0 L 0 15 L 0 16 L 1 16 L 16 16 L 16 15 L 1 15 L 1 0 L 0 0 z "
+ id="rect3778" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:1;fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path3021"
+ sodipodi:cx="6"
+ sodipodi:cy="3"
+ sodipodi:rx="3"
+ sodipodi:ry="3"
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z" />
+ <path
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z"
+ sodipodi:ry="3"
+ sodipodi:rx="3"
+ sodipodi:cy="3"
+ sodipodi:cx="6"
+ id="path3023"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ sodipodi:type="arc"
+ transform="matrix(0.83333333,0,0,0.83333333,8.5,4)" />
+ <path
+ transform="matrix(0.66666667,0,0,0.66666667,0,8)"
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path3025"
+ sodipodi:cx="6"
+ sodipodi:cy="3"
+ sodipodi:rx="3"
+ sodipodi:ry="3"
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z" />
+ <path
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z"
+ sodipodi:ry="3"
+ sodipodi:rx="3"
+ sodipodi:cy="3"
+ sodipodi:cx="6"
+ id="path3027"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ sodipodi:type="arc"
+ transform="matrix(0.66666667,0,0,0.66666667,7,10)" />
+ <path
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z"
+ sodipodi:ry="3"
+ sodipodi:rx="3"
+ sodipodi:cy="3"
+ sodipodi:cx="6"
+ id="path3029"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3809);stroke-width:1.20090103;stroke-opacity:1"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.83270803,0.83270803,0,3.5018759,7.9962482)" />
+ <path
+ transform="matrix(0,0.49937469,-0.49937469,0,7.498124,0.00375183)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3817);stroke-width:2.00250411;stroke-opacity:1"
+ id="path3801"
+ sodipodi:cx="6"
+ sodipodi:cy="3"
+ sodipodi:rx="3"
+ sodipodi:ry="3"
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z" />
+ <g
+ id="g3827">
+ <path
+ transform="matrix(0,0.16473927,-0.16473927,0,4.5020303,9.007658)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3821);stroke-width:6.07019758;stroke-opacity:1"
+ id="path3819"
+ sodipodi:cx="6"
+ sodipodi:cy="3"
+ sodipodi:rx="3"
+ sodipodi:ry="3"
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z" />
+ <path
+ d="M 9,3 A 3,3 0 1 1 3,3 3,3 0 1 1 9,3 z"
+ sodipodi:ry="3"
+ sodipodi:rx="3"
+ sodipodi:cy="3"
+ sodipodi:cx="6"
+ id="path3823"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3825);stroke-width:2.00236154;stroke-opacity:1"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.49941029,0.49941029,0,2.5130312,13.006763)" />
+ </g>
+ <g
+ id="g3831"
+ transform="translate(6.9826795,1.9666407)">
+ <path
+ d="M 9,3 C 9,4.6568542 7.6568542,6 6,6 4.3431458,6 3,4.6568542 3,3 3,1.3431458 4.3431458,0 6,0 7.6568542,0 9,1.3431458 9,3 z"
+ sodipodi:ry="3"
+ sodipodi:rx="3"
+ sodipodi:cy="3"
+ sodipodi:cx="6"
+ id="path3833"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3837);stroke-width:6.07019758;stroke-opacity:1"
+ sodipodi:type="arc"
+ transform="matrix(0,0.16473927,-0.16473927,0,4.5020303,9.007658)" />
+ <path
+ transform="matrix(0,-0.49941029,0.49941029,0,2.5130312,13.006763)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3839);stroke-width:2.00236154;stroke-opacity:1"
+ id="path3835"
+ sodipodi:cx="6"
+ sodipodi:cy="3"
+ sodipodi:rx="3"
+ sodipodi:ry="3"
+ d="M 9,3 C 9,4.6568542 7.6568542,6 6,6 4.3431458,6 3,4.6568542 3,3 3,1.3431458 4.3431458,0 6,0 7.6568542,0 9,1.3431458 9,3 z" />
+ </g>
+ <g
+ transform="matrix(1.2543415,0,0,1.2543415,8.4815172,-6.0594718)"
+ id="g3841">
+ <path
+ transform="matrix(0,0.26854539,-0.26854539,0,4.8134488,8.3848213)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3847);stroke-width:2.96870089;stroke-opacity:1"
+ id="path3843"
+ sodipodi:cx="6"
+ sodipodi:cy="3"
+ sodipodi:rx="3"
+ sodipodi:ry="3"
+ d="M 9,3 C 9,4.6568542 7.6568542,6 6,6 4.3431458,6 3,4.6568542 3,3 3,1.3431458 4.3431458,0 6,0 7.6568542,0 9,1.3431458 9,3 z" />
+ <path
+ d="M 9,3 C 9,4.6568542 7.6568542,6 6,6 4.3431458,6 3,4.6568542 3,3 3,1.3431458 4.3431458,0 6,0 7.6568542,0 9,1.3431458 9,3 z"
+ sodipodi:ry="3"
+ sodipodi:rx="3"
+ sodipodi:cy="3"
+ sodipodi:cx="6"
+ id="path3845"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3849);stroke-width:1.49970984;stroke-opacity:1"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.53159019,0.53159019,0,2.4133773,13.196728)" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typecolumn_16.png b/icon-themes/tango_testing/chart2/res/typecolumn_16.png
new file mode 100644
index 000000000000..3c813ac55874
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typecolumn_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typecolumn_16.svg b/icon-themes/tango_testing/chart2/res/typecolumn_16.svg
new file mode 100644
index 000000000000..7f678d91e9da
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typecolumn_16.svg
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg4592"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="typecolumn_16.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/typecolumn_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4594" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="22.197802"
+ inkscape:cx="8"
+ inkscape:cy="8"
+ inkscape:current-layer="g4584"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4639" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4597">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <g
+ id="g4584"
+ transform="matrix(0,-1,1,0,2,16)">
+ <rect
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="rect4214"
+ width="14"
+ height="4"
+ x="1"
+ y="5" />
+ <g
+ id="g2995"
+ transform="translate(0,10)">
+ <rect
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ id="rect4212"
+ width="10"
+ height="4"
+ x="1"
+ y="0" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 0,0 0,4 11,0 0,-4 z m 1,1 9,0 0,2 -9,0 z"
+ id="rect4218"
+ inkscape:connector-curvature="0" />
+ </g>
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="M 0,5 0,9 15,9 15,5 z M 1,6 14,6 14,8 1,8 z"
+ id="path4223" />
+ <g
+ id="g2991"
+ transform="translate(0,-10)">
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect4216"
+ width="8"
+ height="4"
+ x="1"
+ y="10" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 0,10 0,4 9,0 0,-4 z m 1,1 7,0 0,2 -7,0 z"
+ id="path4225" />
+ </g>
+ </g>
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ d="m 0,0 0,15 0,1 1,0 14.999999,0 0,-1 L 1,15 1,0 0,0 z"
+ id="rect3778" />
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typecolumnline_16.png b/icon-themes/tango_testing/chart2/res/typecolumnline_16.png
new file mode 100644
index 000000000000..def567551006
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typecolumnline_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typecolumnline_16.svg b/icon-themes/tango_testing/chart2/res/typecolumnline_16.svg
new file mode 100644
index 000000000000..ca385095a0e8
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typecolumnline_16.svg
@@ -0,0 +1,506 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg4592"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="typecolumnline_16.svg"
+ inkscape:export-filename="/home/alexander/typecolumnline_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4594"><linearGradient
+ id="linearGradient4143">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4145" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4147" />
+</linearGradient>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4149"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4151"
+ gradientUnits="userSpaceOnUse"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4159"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4161"
+ gradientUnits="userSpaceOnUse"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4169"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4177"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4185"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4187"
+ gradientUnits="userSpaceOnUse"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4189"
+ gradientUnits="userSpaceOnUse"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4143"
+ id="linearGradient4191"
+ gradientUnits="userSpaceOnUse"
+ x1="2"
+ y1="2"
+ x2="9"
+ y2="2" />
+</defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="1.6657287"
+ inkscape:cy="11.686351"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4639" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4597">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <g
+ id="g4197">
+ <path
+ inkscape:connector-curvature="0"
+ id="path4193"
+ d="M 0,11 11,1 16,6"
+ style="fill:none;stroke:#ef2929;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:none;stroke:#cc0000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 0,12 11,2 16,7"
+ id="path4195"
+ inkscape:connector-curvature="0" />
+ </g>
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ d="m 0,0 0,15 0,1 1,0 14.999999,0 0,-1 L 1,15 1,0 0,0 z"
+ id="rect3778" />
+ <g
+ id="g4584"
+ transform="matrix(0,1.2857143,0.5,0,2,2.4285717)"
+ style="fill:url(#linearGradient4149);fill-opacity:1">
+ <rect
+ y="0"
+ x="2"
+ height="4"
+ width="7"
+ id="rect4216"
+ style="fill:url(#linearGradient4151);fill-opacity:1;stroke:none" />
+ </g>
+ <g
+ transform="matrix(0,0.42857149,0.5,0,5,10.142857)"
+ id="g3002"
+ style="fill:url(#linearGradient4159);fill-opacity:1">
+ <rect
+ style="fill:url(#linearGradient4161);fill-opacity:1;stroke:none"
+ id="rect3004"
+ width="7"
+ height="4"
+ x="2"
+ y="0" />
+ </g>
+ <g
+ id="g3006"
+ transform="matrix(0,0.71428577,0.5,0,8,7.5714285)"
+ style="fill:url(#linearGradient4169);fill-opacity:1">
+ <rect
+ y="0"
+ x="2"
+ height="4"
+ width="7"
+ id="rect3008"
+ style="fill:url(#linearGradient4187);fill-opacity:1;stroke:none" />
+ </g>
+ <g
+ transform="matrix(0,1.0000001,0.5,0,11,4.9999999)"
+ id="g3010"
+ style="fill:url(#linearGradient4177);fill-opacity:1">
+ <rect
+ style="fill:url(#linearGradient4189);fill-opacity:1;stroke:none"
+ id="rect3012"
+ width="7"
+ height="4"
+ x="2"
+ y="0" />
+ </g>
+ <g
+ id="g3014"
+ transform="matrix(0,1.7142858,0.5,0,14,-1.4285718)"
+ style="fill:url(#linearGradient4185);fill-opacity:1">
+ <rect
+ y="0"
+ x="2"
+ height="4"
+ width="7"
+ id="rect3016"
+ style="fill:url(#linearGradient4191);fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typenet_16.png b/icon-themes/tango_testing/chart2/res/typenet_16.png
new file mode 100644
index 000000000000..d97874c14bf5
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typenet_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typenet_16.svg b/icon-themes/tango_testing/chart2/res/typenet_16.svg
new file mode 100644
index 000000000000..cfb3257aa41e
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typenet_16.svg
@@ -0,0 +1,500 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg2985"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ inkscape:export-filename="/home/alexander/chart2/res/typenet_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ sodipodi:docname="typenet_16.svg">
+ <defs
+ id="defs2987"><linearGradient
+ id="linearGradient4266">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4268" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4270" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4258">
+ <stop
+ style="stop-color:#ef2929;stop-opacity:1;"
+ offset="0"
+ id="stop4260" />
+ <stop
+ style="stop-color:#cc0000;stop-opacity:1;"
+ offset="1"
+ id="stop4262" />
+</linearGradient>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4264"
+ x1="8.4636116"
+ y1="4.8850074"
+ x2="7.2257013"
+ y2="11.697508"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4272"
+ x1="10.761048"
+ y1="2.2435279"
+ x2="7.9375"
+ y2="14.337278"
+ gradientUnits="userSpaceOnUse" />
+</defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="2.8284271"
+ inkscape:cx="-105.82227"
+ inkscape:cy="20.465276"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3004" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata2990">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ style="fill:none;stroke:#2e3436;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 0,16 9,-8 7,8"
+ id="path3881"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;stroke:#2e3436;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 9,8 17,5"
+ id="path3883"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;stroke:#2e3436;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 9,8 -1,1"
+ id="path3885"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc" />
+ <path
+ style="fill:none;stroke:#2e3436;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 9,8 9,0"
+ id="path3887"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:none;stroke:url(#linearGradient4272);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 1.5110485,14.518306 14.5,14.5 14.53125,5.71875 9.0625,1.46875 1.53125,2.9375 z"
+ id="path3889"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccc" />
+ <path
+ style="fill:none;stroke:url(#linearGradient4264);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 4.4636116,11.536388 6.8942914,0 L 12.506951,6.586641 9.0156115,4.4211264 4.5078057,4.9072623 z"
+ id="path3899"
+ inkscape:connector-curvature="0" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typepie_16.png b/icon-themes/tango_testing/chart2/res/typepie_16.png
new file mode 100644
index 000000000000..da3a4090be86
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typepie_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typepie_16.svg b/icon-themes/tango_testing/chart2/res/typepie_16.svg
new file mode 100644
index 000000000000..3936930743e4
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typepie_16.svg
@@ -0,0 +1,823 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg2985"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ inkscape:export-filename="/home/alexander/chart2/res/typepie_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ sodipodi:docname="typepie_16.svg">
+ <defs
+ id="defs2987">
+ <linearGradient
+ id="linearGradient4088">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4090" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4092" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4266">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4268" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4270" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4258">
+ <stop
+ style="stop-color:#ef2929;stop-opacity:1;"
+ offset="0"
+ id="stop4260" />
+ <stop
+ style="stop-color:#cc0000;stop-opacity:1;"
+ offset="1"
+ id="stop4262" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4264"
+ x1="8.4636116"
+ y1="4.8850074"
+ x2="7.2257013"
+ y2="11.697508"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4272"
+ x1="10.761048"
+ y1="2.2435279"
+ x2="7.9375"
+ y2="14.337278"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3401"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient11751"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5445"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5443"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6373-6-1-3-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6375-5-2-6-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6377-0-1-2-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5341"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient19171">
+ <stop
+ style="stop-color:#bc0e0e;stop-opacity:1;"
+ offset="0"
+ id="stop19173" />
+ <stop
+ style="stop-color:#830a0a;stop-opacity:1;"
+ offset="1"
+ id="stop19175" />
+ </linearGradient>
+ <linearGradient
+ y2="-315.9939"
+ x2="750.77057"
+ y1="-330.68475"
+ x1="762.9682"
+ gradientTransform="matrix(1.2014178,0,0,1.2168276,-149.58638,71.496922)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339"
+ xlink:href="#linearGradient19171"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3326"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient11683"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient11681"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8608"
+ xlink:href="#linearGradient4157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8606"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-2" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8600"
+ xlink:href="#linearGradient4157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8598"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11632"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-2" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572-9"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,8.007958)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3205"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,196.8503)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3203"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,4.003979)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3199"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,192.84632)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3197"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient11616"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,0)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient11614"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(0.18066923,0,0,1,54.627495,0)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8590"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,141.96976,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8588"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17247104)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8570"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702364e-7,3.6935782,-2.0071419,-2.623971e-7,484.82869,188.87882)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8568"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035718,0,0,0.99927966,-0.33510308,0.17828314)"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8562"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.870241e-7,3.6935775,-2.0071438,-2.6239705e-7,484.82905,188.88459)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8560"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17535155)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8558"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702363e-7,3.6935782,-2.0071418,-2.623971e-7,484.82867,188.8817)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8556"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4068"
+ x1="8.3684635"
+ y1="0.69840777"
+ x2="6.5697818"
+ y2="16.076845"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4088"
+ id="linearGradient4082"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient4086"
+ gradientUnits="userSpaceOnUse"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4100"
+ x1="11.859842"
+ y1="2.9363194"
+ x2="11.13939"
+ y2="16.50366"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="4"
+ inkscape:cx="21.449848"
+ inkscape:cy="23.762757"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3004" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata2990">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4068);fill-opacity:1;stroke:none"
+ id="path2999"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="m 16.086679,8.1334372 a 7.9991455,8.1317282 0 1 1 -15.99829056,0 7.9991455,8.1317282 0 1 1 15.99829056,0 z"
+ transform="matrix(1.0003994,0,0,0.98351999,-0.08962028,-0.00135111)" />
+ <path
+ transform="matrix(1.005745,0,0,0.98351999,-0.17561281,-0.00135111)"
+ d="M 16.086679,8.1334372 A 7.9991455,8.1317282 0 0 1 9.9535555,16.040812 L 8.087534,8.1334372 z"
+ sodipodi:ry="8.1317282"
+ sodipodi:rx="7.9991455"
+ sodipodi:cy="8.1334372"
+ sodipodi:cx="8.087534"
+ id="path4070"
+ style="fill:url(#linearGradient4100);fill-opacity:1;stroke:none"
+ sodipodi:type="arc"
+ sodipodi:start="0"
+ sodipodi:end="1.3353494" />
+ <path
+ sodipodi:end="1.9678026"
+ sodipodi:start="1.3330018"
+ sodipodi:type="arc"
+ style="fill:#7bbf2a;fill-opacity:1;stroke:none"
+ id="path4072"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="M 9.971811,16.036337 A 7.9991455,8.1317282 0 0 1 4.9945908,15.632701 L 8.087534,8.1334372 z"
+ transform="matrix(1.005745,0,0,0.98351999,-0.17561281,-0.00135111)" />
+ <path
+ transform="matrix(0,-0.93938772,-0.92178343,0,15.50137,15.597765)"
+ d="m 16.086679,8.1334372 a 7.9991455,8.1317282 0 1 1 -15.99829056,0 7.9991455,8.1317282 0 1 1 15.99829056,0 z"
+ sodipodi:ry="8.1317282"
+ sodipodi:rx="7.9991455"
+ sodipodi:cy="8.1334372"
+ sodipodi:cx="8.087534"
+ id="path4074"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient4082);stroke-width:1.07464027;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient4086);stroke-width:1.23695719;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path4084"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="m 16.086679,8.1334372 a 7.9991455,8.1317282 0 1 1 -15.99829056,0 7.9991455,8.1317282 0 1 1 15.99829056,0 z"
+ transform="matrix(0,0.81794424,0.79903723,0,1.4955566,1.4235182)" />
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typepointline_16.png b/icon-themes/tango_testing/chart2/res/typepointline_16.png
new file mode 100644
index 000000000000..ff43a3f9bb50
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typepointline_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typepointline_16.svg b/icon-themes/tango_testing/chart2/res/typepointline_16.svg
new file mode 100644
index 000000000000..a526a0a3d278
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typepointline_16.svg
@@ -0,0 +1,262 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg4592"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="typepointline_16.svg"
+ inkscape:export-filename="/home/alexander/chart2/res/typepointline_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4594">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3870">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3872" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3874" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3876"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3880"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3884"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3888"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3892"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3896"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="16"
+ inkscape:cx="10.562025"
+ inkscape:cy="10.378908"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:snap-global="false">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4639" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4597">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ style="fill:none;stroke:#729fcf;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 3.4870558,12.505362 8.4963714,12.503629 14.53125,6.5"
+ id="path3900"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccc" />
+ <path
+ style="fill:none;stroke:#ef2929;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1"
+ d="m 3.4375,6.53125 3.03125,-2.9375 8,7.875"
+ id="path3898"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ d="m 0,0 0,15 0,1 1,0 14.999999,0 0,-1 L 1,15 1,0 0,0 z"
+ id="rect3778" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:1;fill:#ef2929;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;fill-opacity:1"
+ id="path3086"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 5,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path3858"
+ sodipodi:cx="6.5"
+ sodipodi:cy="3.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 8,3.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path3860"
+ sodipodi:cx="14.5"
+ sodipodi:cy="11.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 16,11.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path3862"
+ sodipodi:cx="3.5"
+ sodipodi:cy="12.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 5,12.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path3864"
+ sodipodi:cx="8.5"
+ sodipodi:cy="12.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 10,12.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path3866"
+ sodipodi:cx="14.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 16,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ d="m 5,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="3.5"
+ id="path3868"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3876);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.66362885,0.66362885,0,-0.81358755,8.822701)" />
+ <path
+ transform="matrix(0,-0.66362885,0.66362885,0,2.1864125,5.8266073)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3880);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path3878"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 5,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ d="m 5,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="3.5"
+ id="path3882"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3884);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.66362885,0.66362885,0,10.191775,13.821571)" />
+ <path
+ transform="matrix(0,-0.66362885,0.66362885,0,4.1839625,14.813758)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3888);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path3886"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 5,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ <path
+ d="m 5,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="3.5"
+ id="path3890"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3892);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.66362885,0.66362885,0,-0.81603752,14.813758)" />
+ <path
+ transform="matrix(0,-0.66362885,0.66362885,0,10.183963,8.813758)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3896);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path3894"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="m 5,6.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z" />
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typestock_16.png b/icon-themes/tango_testing/chart2/res/typestock_16.png
new file mode 100644
index 000000000000..e6854db5a7a8
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typestock_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typestock_16.svg b/icon-themes/tango_testing/chart2/res/typestock_16.svg
new file mode 100644
index 000000000000..3cf3aaac6dc6
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typestock_16.svg
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg4592"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="typestock_16.svg"
+ inkscape:export-filename="/home/alexander/chart2/res/typestock_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4594">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4048">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4050" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4052" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3870">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3872" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3874" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3936"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3944"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3952"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3960"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3970"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3978"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3986"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3994"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4048"
+ id="linearGradient4054"
+ x1="4"
+ y1="14"
+ x2="5"
+ y2="7"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4048"
+ id="linearGradient4058"
+ gradientUnits="userSpaceOnUse"
+ x1="4"
+ y1="14"
+ x2="5"
+ y2="7"
+ gradientTransform="translate(4,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4048"
+ id="linearGradient4062"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(8,0)"
+ x1="4"
+ y1="14"
+ x2="5"
+ y2="7" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="5.0451038"
+ inkscape:cy="9.2458135"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:snap-global="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4639" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4597">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ d="m 0,0 0,15 0,1 1,0 14.999999,0 0,-1 L 1,15 1,0 0,0 z"
+ id="rect3778" />
+ <image
+ y="0"
+ x="0"
+ id="image4023"
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAANBJREFU
+OI2lk7sKwkAQRU9eWGplZx1Sp5N8j51fY+dv+AvBLnWwFEGxEVMI5rkWQUx2N27E2wyzd5g5M7AE
+YbRjpIIwOshvtqlA16Rb546d/laaxP4ggW6CSQqBPMHkKQQyjYmg1+Db9CH1Vqi2M4FnQ9ngru5W
+lyJNYl/n92/g2TjLBfX+pKfS+P0bCAGNaKNuJclXCQogb9oIVJvpB3mdWbKvEjxqyMo2AhQCJ5hD
+IfS+0uBWw/XZxjG5vEJ+LJicL+SlGJUD8Mtv1Mn6t8EL+QmFGnDDK3cAAAAASUVORK5CYII=
+"
+ height="16"
+ width="16" />
+ <path
+ style="opacity:1;fill:#2e3436;stroke:none;stroke-width:0;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;fill-opacity:1"
+ d="M 3 1 L 3 6 L 4 6 L 4 4 L 6 4 L 6 3 L 4 3 L 4 1 L 3 1 z "
+ id="rect4026" />
+ <path
+ id="path4033"
+ d="M 7,4 7,9 8,9 8,8 10,8 10,7 8,7 8,4 z"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccc" />
+ <path
+ sodipodi:nodetypes="ccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ d="m 11,0 0,4 1,0 0,-2 2,0 0,-1 -2,0 0,-1 z"
+ id="path4035" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect4037"
+ width="3"
+ height="7"
+ x="3"
+ y="7" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect4039"
+ width="3"
+ height="4"
+ x="7"
+ y="10" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect4041"
+ width="3"
+ height="7"
+ x="11"
+ y="7" />
+ <path
+ style="fill:url(#linearGradient4054);fill-opacity:1;stroke:none;opacity:0.40000000000000002"
+ d="M 3 7 L 3 14 L 6 14 L 6 7 L 3 7 z M 4 8 L 5 8 L 5 13 L 4 13 L 4 8 z "
+ id="rect4043" />
+ <path
+ id="path4056"
+ d="m 7,10 0,4 3,0 0,-4 z m 1,1 1,0 0,2 -1,0 z"
+ style="opacity:0.4;fill:url(#linearGradient4058);fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:url(#linearGradient4062);fill-opacity:1;stroke:none"
+ d="m 11,7 0,7 3,0 0,-7 z m 1,1 1,0 0,5 -1,0 z"
+ id="path4060" />
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/typexy_16.png b/icon-themes/tango_testing/chart2/res/typexy_16.png
new file mode 100644
index 000000000000..60735b1da56a
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typexy_16.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/typexy_16.svg b/icon-themes/tango_testing/chart2/res/typexy_16.svg
new file mode 100644
index 000000000000..49f49b566790
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/typexy_16.svg
@@ -0,0 +1,410 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="16px"
+ height="16px"
+ id="svg4592"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="typexy_16.svg"
+ inkscape:export-filename="/home/alexander/chart2/res/typexy_16.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4594">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3870">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3872" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3874" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3876"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3880"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3884"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3888"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3892"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3896"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3936"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3944"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3952"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3960"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3964"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3970"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3978"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3986"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3870"
+ id="linearGradient3994"
+ gradientUnits="userSpaceOnUse"
+ x1="1.2465668"
+ y1="6.5"
+ x2="5.7534332"
+ y2="6.5" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="3.7981433"
+ inkscape:cy="10.329585"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:snap-global="false">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4639" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4597">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#2e3436;fill-opacity:1;stroke:none"
+ d="m 0,0 0,15 0,1 1,0 14.999999,0 0,-1 L 1,15 1,0 0,0 z"
+ id="rect3778" />
+ <g
+ id="g3966"
+ transform="translate(6.5186406,-1.9445436)">
+ <path
+ transform="translate(-17.5,-3.0625)"
+ d="M 16,11.5 C 16,12.328427 15.328427,13 14.5,13 13.671573,13 13,12.328427 13,11.5 13,10.671573 13.671573,10 14.5,10 c 0.828427,0 1.5,0.671573 1.5,1.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="11.5"
+ sodipodi:cx="14.5"
+ id="path3860"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.308225,10.759071)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3970);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path3882"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z" />
+ </g>
+ <g
+ id="g3932"
+ transform="translate(9.507006,0.05581798)">
+ <path
+ transform="translate(-17.5,-3.0625)"
+ d="M 16,6.5 C 16,7.3284271 15.328427,8 14.5,8 13.671573,8 13,7.3284271 13,6.5 13,5.6715729 13.671573,5 14.5,5 15.328427,5 16,5.6715729 16,6.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="14.5"
+ id="path3866"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="3.5"
+ id="path3894"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3936);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.316037,5.751258)" />
+ </g>
+ <g
+ transform="translate(10.507006,5.055818)"
+ id="g3938">
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path3940"
+ sodipodi:cx="14.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 16,6.5 C 16,7.3284271 15.328427,8 14.5,8 13.671573,8 13,7.3284271 13,6.5 13,5.6715729 13.671573,5 14.5,5 15.328427,5 16,5.6715729 16,6.5 z"
+ transform="translate(-17.5,-3.0625)" />
+ <path
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.316037,5.751258)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3944);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path3942"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z" />
+ </g>
+ <g
+ id="g3946"
+ transform="translate(5.475756,7.024568)">
+ <path
+ transform="translate(-17.5,-3.0625)"
+ d="M 16,6.5 C 16,7.3284271 15.328427,8 14.5,8 13.671573,8 13,7.3284271 13,6.5 13,5.6715729 13.671573,5 14.5,5 15.328427,5 16,5.6715729 16,6.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="14.5"
+ id="path3948"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="3.5"
+ id="path3950"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3952);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.316037,5.751258)" />
+ </g>
+ <g
+ transform="translate(16.507006,7.055818)"
+ id="g3954">
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path3956"
+ sodipodi:cx="14.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 16,6.5 C 16,7.3284271 15.328427,8 14.5,8 13.671573,8 13,7.3284271 13,6.5 13,5.6715729 13.671573,5 14.5,5 15.328427,5 16,5.6715729 16,6.5 z"
+ transform="translate(-17.5,-3.0625)" />
+ <path
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.316037,5.751258)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3960);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path3958"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z" />
+ </g>
+ <g
+ transform="translate(14.49569,-2.9389125)"
+ id="g3972">
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path3974"
+ sodipodi:cx="14.5"
+ sodipodi:cy="11.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 16,11.5 C 16,12.328427 15.328427,13 14.5,13 13.671573,13 13,12.328427 13,11.5 13,10.671573 13.671573,10 14.5,10 c 0.828427,0 1.5,0.671573 1.5,1.5 z"
+ transform="translate(-17.5,-3.0625)" />
+ <path
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="3.5"
+ id="path3976"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3978);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.308225,10.759071)" />
+ </g>
+ <g
+ id="g3980"
+ transform="translate(17.498443,-6.9395957)">
+ <path
+ transform="translate(-17.5,-3.0625)"
+ d="M 16,11.5 C 16,12.328427 15.328427,13 14.5,13 13.671573,13 13,12.328427 13,11.5 13,10.671573 13.671573,10 14.5,10 c 0.828427,0 1.5,0.671573 1.5,1.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="11.5"
+ sodipodi:cx="14.5"
+ id="path3982"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.308225,10.759071)"
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3986);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path3984"
+ sodipodi:cx="3.5"
+ sodipodi:cy="6.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z" />
+ </g>
+ <g
+ transform="translate(14.498141,5.0603119)"
+ id="g3988">
+ <path
+ sodipodi:type="arc"
+ style="fill:#ef2929;fill-opacity:1;stroke:none"
+ id="path3990"
+ sodipodi:cx="14.5"
+ sodipodi:cy="11.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 16,11.5 C 16,12.328427 15.328427,13 14.5,13 13.671573,13 13,12.328427 13,11.5 13,10.671573 13.671573,10 14.5,10 c 0.828427,0 1.5,0.671573 1.5,1.5 z"
+ transform="translate(-17.5,-3.0625)" />
+ <path
+ d="M 5,6.5 C 5,7.3284271 4.3284271,8 3.5,8 2.6715729,8 2,7.3284271 2,6.5 2,5.6715729 2.6715729,5 3.5,5 4.3284271,5 5,5.6715729 5,6.5 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="6.5"
+ sodipodi:cx="3.5"
+ id="path3992"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3994);stroke-width:1.50686646;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc"
+ transform="matrix(0,-0.66362885,0.66362885,0,-7.308225,10.759071)" />
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.png b/icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.png
new file mode 100644
index 000000000000..79ba192cab46
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.png
Binary files differ
diff --git a/icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.svg b/icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.svg
new file mode 100644
index 000000000000..d5b398d91f8c
--- /dev/null
+++ b/icon-themes/tango_testing/chart2/res/valueaxisdirect3d_52x60.svg
@@ -0,0 +1,587 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="60"
+ height="52"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="valueaxisdirect3d_52x60.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/chart2/res/valueaxisdirect3d_52x60.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5223">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop5225" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop5227" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5215">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5217" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5219" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5083">
+ <stop
+ id="stop5085"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop5087"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5071">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5073" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5075" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4280-7-7"
+ id="linearGradient6359"
+ gradientUnits="userSpaceOnUse"
+ x1="160.76947"
+ y1="2011.2181"
+ x2="160.76947"
+ y2="1972.8456" />
+ <filter
+ id="filter4195-6-9"
+ inkscape:label="Inner Shadow Libre"
+ inkscape:menu="Shadows and Glows"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur4197-5-0"
+ stdDeviation="1"
+ result="result8" />
+ <feOffset
+ id="feOffset4199-2-0"
+ dx="1"
+ dy="1"
+ result="result11" />
+ <feComposite
+ id="feComposite4201-6-3"
+ in2="result11"
+ result="result6"
+ in="SourceGraphic"
+ operator="in" />
+ <feFlood
+ id="feFlood4203-5-0"
+ result="result10"
+ in="result6"
+ flood-opacity="1"
+ flood-color="rgb(16,104,2)" />
+ <feBlend
+ id="feBlend4205-8-6"
+ in2="result10"
+ mode="normal"
+ in="result6"
+ result="result12" />
+ <feComposite
+ id="feComposite4207-7-8"
+ in2="SourceGraphic"
+ result="result2"
+ operator="in" />
+ </filter>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4280-7-7">
+ <stop
+ style="stop-color:#18a303;stop-opacity:1"
+ offset="0"
+ id="stop4282-3-5" />
+ <stop
+ style="stop-color:#92e285;stop-opacity:1"
+ offset="1"
+ id="stop4284-2-1" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:menu-tooltip="Adds a colorizable drop shadow inside"
+ inkscape:menu="Shadows and Glows"
+ inkscape:label="Inner Shadow Rest"
+ id="filter4026-4-0">
+ <feGaussianBlur
+ result="result8"
+ stdDeviation="1"
+ id="feGaussianBlur4028-7-2" />
+ <feOffset
+ result="result11"
+ dy="1"
+ dx="1"
+ id="feOffset4030-6-8" />
+ <feComposite
+ operator="in"
+ in="SourceGraphic"
+ result="result6"
+ in2="result11"
+ id="feComposite4032-8-3" />
+ <feFlood
+ flood-color="rgb(51,51,51)"
+ flood-opacity="1"
+ in="result6"
+ result="result10"
+ id="feFlood4034-9-5" />
+ <feBlend
+ result="result12"
+ in="result6"
+ mode="normal"
+ in2="result10"
+ id="feBlend4036-0-9" />
+ <feComposite
+ operator="in"
+ result="result2"
+ in2="SourceGraphic"
+ id="feComposite4038-6-0" />
+ </filter>
+ <linearGradient
+ id="linearGradient4274-3-3">
+ <stop
+ style="stop-color:#333333;stop-opacity:1"
+ offset="0"
+ id="stop4276-8-6" />
+ <stop
+ style="stop-color:#808080;stop-opacity:1"
+ offset="1"
+ id="stop4278-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1982.2323"
+ x2="158.4942"
+ y1="2022.2076"
+ x1="158.4942"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15279-0"
+ xlink:href="#linearGradient4274-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10292-1-5">
+ <stop
+ style="stop-color: rgb(102, 102, 102); stop-opacity: 1;"
+ offset="0"
+ id="stop10294-4-6" />
+ <stop
+ style="stop-color: rgb(51, 51, 51); stop-opacity: 1;"
+ offset="1"
+ id="stop10296-2-9" />
+ </linearGradient>
+ <linearGradient
+ y2="992.375"
+ x2="110.96875"
+ y1="976.29968"
+ x1="110.96875"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient15297-1"
+ xlink:href="#linearGradient10292-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5077"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5083"
+ id="linearGradient5081"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="23"
+ y2="40.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5099"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5109"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5123"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5131"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5135"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5139"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5155"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5157"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5163"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5175"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5190"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5192"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5071"
+ id="linearGradient5194"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="40.5"
+ x2="21.058035"
+ y2="40.433037" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5215"
+ id="linearGradient5221"
+ x1="19.886932"
+ y1="47.265282"
+ x2="31.873344"
+ y2="13.589322"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5223"
+ id="linearGradient5229"
+ x1="36.246899"
+ y1="12.283564"
+ x2="20.053354"
+ y2="41.186554"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="46.251128"
+ inkscape:cy="25.243598"
+ inkscape:document-units="px"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="715"
+ inkscape:window-x="0"
+ inkscape:window-y="27"
+ inkscape:window-maximized="1"
+ showguides="true"
+ inkscape:guide-bbox="true">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4987"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-661.42859,136.49496)">
+ <path
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ d="M 27,6 23,10 7,43 12,37 25.34375,11.125 48,22 44,40 47,38 52,18 z"
+ transform="translate(661.42859,-136.49496)"
+ id="path5196"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="ccccc"
+ inkscape:connector-curvature="0"
+ id="path5202"
+ d="m 668.45068,-93.539154 5,-6 13.32625,-25.807176 -2.32625,-1.19282 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 705.42859,-96.49496 3,-2 5,-20 -4,4 z"
+ id="path5205"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path5209"
+ d="M 27.09375,6.59375 23.4375,10.25 9.25,39.5 l 2.40625,-2.875 13.5,-26.125 23.40625,11.25 -3.84375,17.1875 1.875,-1.25 4.84375,-19.40625 z"
+ style="opacity:0.20000000000000001;fill:none;stroke:url(#linearGradient5221);stroke-opacity:1"
+ transform="translate(661.42859,-136.49496)" />
+ <g
+ id="g5231">
+ <path
+ sodipodi:nodetypes="ccccccccc"
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path5200"
+ d="M 35,36 3,20 13,10 16,8 7,17 39,32 53,27 50,31 z"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <path
+ transform="translate(661.42859,-136.49496)"
+ inkscape:connector-curvature="0"
+ id="path5207"
+ d="m 3,20 4,-3 32,15 -4,4 z"
+ style="fill:#000000;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1;opacity:0.1" />
+ <path
+ transform="translate(661.42859,-136.49496)"
+ style="opacity:0.2;fill:none;stroke:#000000;stroke-opacity:1"
+ d="M 35.03125,35.46875 3.875,19.875 6.5625,17.34375 39,32.5625 51.5625,28.03125 49.71875,30.5625 z"
+ id="path5213"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccc" />
+ <path
+ transform="translate(661.42859,-136.49496)"
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="path5211"
+ d="M 27.28125,7.75 24.25,10.78125 10.9375,36.8125 l 0.4375,-0.71875 13.25,-27 25.09375,12.09375 -3.625,16.3125 0.125,-0.3125 4.09375,-18.34375 z"
+ style="opacity:0.20000000000000001;fill:none;stroke:url(#linearGradient5229);stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cccccc"
+ inkscape:connector-curvature="0"
+ id="path5237"
+ d="M 35.131472,34.384153 5.5764757,19.609835 6.7392767,18.514896 38.302506,33.339308 49.630362,29.767005 z"
+ style="opacity:0.2;fill:none;stroke:#ffffff;stroke-opacity:1"
+ transform="translate(661.42859,-136.49496)" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/ar/lc_bold.png b/icon-themes/tango_testing/cmd/ar/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ar/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ar/lc_italic.png b/icon-themes/tango_testing/cmd/ar/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ar/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ar/lc_underline.png b/icon-themes/tango_testing/cmd/ar/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ar/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ca/lc_bold.png b/icon-themes/tango_testing/cmd/ca/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ca/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ca/lc_italic.png b/icon-themes/tango_testing/cmd/ca/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ca/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ca/lc_underline.png b/icon-themes/tango_testing/cmd/ca/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ca/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/cs/lc_bold.png b/icon-themes/tango_testing/cmd/cs/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/cs/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/cs/lc_italic.png b/icon-themes/tango_testing/cmd/cs/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/cs/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/cs/lc_underline.png b/icon-themes/tango_testing/cmd/cs/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/cs/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/de/lc_bold.png b/icon-themes/tango_testing/cmd/de/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/de/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/de/lc_italic.png b/icon-themes/tango_testing/cmd/de/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/de/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/de/lc_underline.png b/icon-themes/tango_testing/cmd/de/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/de/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/en-GB/lc_bold.png b/icon-themes/tango_testing/cmd/en-GB/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/en-GB/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/en-GB/lc_italic.png b/icon-themes/tango_testing/cmd/en-GB/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/en-GB/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/en-GB/lc_underline.png b/icon-themes/tango_testing/cmd/en-GB/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/en-GB/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/es/lc_bold.png b/icon-themes/tango_testing/cmd/es/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/es/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/es/lc_italic.png b/icon-themes/tango_testing/cmd/es/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/es/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/es/lc_underline.png b/icon-themes/tango_testing/cmd/es/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/es/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/fr/lc_bold.png b/icon-themes/tango_testing/cmd/fr/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/fr/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/fr/lc_italic.png b/icon-themes/tango_testing/cmd/fr/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/fr/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/fr/lc_underline.png b/icon-themes/tango_testing/cmd/fr/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/fr/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/hu/lc_bold.png b/icon-themes/tango_testing/cmd/hu/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/hu/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/hu/lc_italic.png b/icon-themes/tango_testing/cmd/hu/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/hu/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/hu/lc_underline.png b/icon-themes/tango_testing/cmd/hu/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/hu/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/it/lc_bold.png b/icon-themes/tango_testing/cmd/it/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/it/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/it/lc_italic.png b/icon-themes/tango_testing/cmd/it/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/it/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/it/lc_underline.png b/icon-themes/tango_testing/cmd/it/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/it/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ja/lc_bold.png b/icon-themes/tango_testing/cmd/ja/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ja/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ja/lc_italic.png b/icon-themes/tango_testing/cmd/ja/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ja/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ja/lc_underline.png b/icon-themes/tango_testing/cmd/ja/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ja/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/km/lc_bold.png b/icon-themes/tango_testing/cmd/km/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/km/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/km/lc_italic.png b/icon-themes/tango_testing/cmd/km/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/km/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/km/lc_underline.png b/icon-themes/tango_testing/cmd/km/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/km/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ko/lc_bold.png b/icon-themes/tango_testing/cmd/ko/lc_bold.png
new file mode 100644
index 000000000000..2026a7a7433f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ko/lc_bold.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ko/lc_italic.png b/icon-themes/tango_testing/cmd/ko/lc_italic.png
new file mode 100644
index 000000000000..a92d7ef967ec
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ko/lc_italic.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/ko/lc_underline.png b/icon-themes/tango_testing/cmd/ko/lc_underline.png
new file mode 100644
index 000000000000..d1de2e29f283
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/ko/lc_underline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.png b/icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.png
new file mode 100644
index 000000000000..dd43c0e096ea
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.svg b/icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.svg
new file mode 100644
index 000000000000..e5a09726de1b
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_arrowshapes.left-right-arrow.svg
@@ -0,0 +1,494 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24.000000px"
+ height="24.000000px"
+ id="svg1288"
+ sodipodi:version="0.32"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_arrowshapes.left-right-arrow.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_arrowshapes.left-right-arrow.png"
+ inkscape:export-xdpi="90.000000"
+ inkscape:export-ydpi="90.000000"
+ version="1.1">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient2218">
+ <stop
+ style="stop-color:#b6b6b6;stop-opacity:1.0000000;"
+ offset="0.0000000"
+ id="stop2220" />
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;"
+ offset="1.0000000"
+ id="stop2222" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2224"
+ x1="6.2532201"
+ y1="4.3914247"
+ x2="16.256456"
+ y2="19.500000"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.441894e-16,-1.000000,1.000000,2.441894e-16,26.76771,32.18389)" />
+ <linearGradient
+ y2="3.7637231"
+ x2="22.882257"
+ y1="11.590612"
+ x1="7.5016217"
+ gradientTransform="matrix(2.583112e-17,1.000000,-1.000000,2.583112e-17,47.71166,-3.459283)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient1481"
+ xlink:href="#linearGradient2218"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="27.463705"
+ x2="11.796784"
+ y1="41.882229"
+ x1="19.033064"
+ gradientTransform="matrix(-0.703620,-9.203983e-17,9.203983e-17,-0.703620,18.92503,37.30278)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2564"
+ xlink:href="#linearGradient2218"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient1317"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.703620,-9.203983e-17,-9.203983e-17,-0.703620,3.904386,37.30278)"
+ x1="19.033064"
+ y1="41.882229"
+ x2="11.796784"
+ y2="27.463705" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3971"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="73.594872"
+ x2="-2.2400904"
+ y1="78.890167"
+ x1="-19.331446"
+ gradientTransform="matrix(0,1.155211,-1.136763,0,96.70109,25.77759)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3969"
+ xlink:href="#linearGradient2218-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient2080">
+ <stop
+ style="stop-color:#8d8d8d;stop-opacity:1.0000000;"
+ offset="0.0000000"
+ id="stop2082" />
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;"
+ offset="1.0000000"
+ id="stop2084" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2218-5">
+ <stop
+ id="stop2220-5"
+ offset="0.0000000"
+ style="stop-color:#a2a2a2;stop-opacity:1.0000000;" />
+ <stop
+ id="stop2222-9"
+ offset="1.0000000"
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218-5"
+ id="linearGradient2302"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.000000,1.192114,-1.192114,0.000000,100.8265,26.12576)"
+ x1="-18.948881"
+ y1="55.719353"
+ x2="-3.7979760"
+ y2="49.646511" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218-5"
+ id="linearGradient2330"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.000000,1.155211,-1.136763,0.000000,96.70109,25.77759)"
+ x1="-19.331446"
+ y1="78.890167"
+ x2="-2.2400904"
+ y2="73.594872" />
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3774"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782"
+ id="linearGradient3788"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218-1"
+ id="linearGradient1331"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,-1.001683e-17,1.192114,87.06125,-11.57533)"
+ x1="-63.251663"
+ y1="6.2774138"
+ x2="-51.140827"
+ y2="13.460031" />
+ <linearGradient
+ y2="22.246758"
+ x2="-27.679535"
+ y1="5.4174099"
+ x1="-32.398041"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,80.82356,-0.895670)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2531"
+ xlink:href="#linearGradient2533"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19.500000"
+ x2="16.256456"
+ y1="4.3914247"
+ x1="6.2532201"
+ gradientTransform="matrix(1.112640,0.000000,0.000000,1.112640,78.16958,0.630708)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2529"
+ xlink:href="#linearGradient2218-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14.068008"
+ x2="-33.970879"
+ y1="-7.0079961"
+ x1="-42.778759"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,81.32356,-0.395670)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2527"
+ xlink:href="#linearGradient2218-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19.500000"
+ x2="16.256456"
+ y1="4.3914247"
+ x1="6.2532201"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,65.82356,0.104330)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2229"
+ xlink:href="#linearGradient2218-1"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2056"
+ id="radialGradient2062"
+ cx="12.625000"
+ cy="19.500000"
+ fx="12.625000"
+ fy="19.500000"
+ r="11.875000"
+ gradientTransform="matrix(1.000000,0.000000,0.000000,0.631579,1.223793e-16,7.184211)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.27103925"
+ x2="-14.098917"
+ y1="11.125187"
+ x1="-8.9244661"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,26.80966,0.104330)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient1321"
+ xlink:href="#linearGradient2218-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218-1"
+ id="linearGradient2224-9"
+ x1="6.2532201"
+ y1="4.3914247"
+ x2="16.256456"
+ y2="19.500000"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,55.80966,0.104330)" />
+ <linearGradient
+ id="linearGradient2218-1">
+ <stop
+ style="stop-color:#b6b6b6;stop-opacity:1.0000000;"
+ offset="0.0000000"
+ id="stop2220-2" />
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;"
+ offset="1.0000000"
+ id="stop2222-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient2056">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop2058" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop2060" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2533">
+ <stop
+ id="stop2535"
+ offset="0.0000000"
+ style="stop-color:#959595;stop-opacity:1.0000000;" />
+ <stop
+ id="stop2537"
+ offset="1.0000000"
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3979"
+ x1="12.993087"
+ y1="5.0615149"
+ x2="12.863069"
+ y2="19.159456"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#000000"
+ borderopacity="1"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="6.1441652"
+ inkscape:cy="7.3444851"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="716"
+ inkscape:window-x="0"
+ inkscape:window-y="30"
+ inkscape:snap-global="false"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3191"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ style="color:#000000;fill:url(#linearGradient3979);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.79999964999999984;marker:none;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans"
+ d="M 8,5 0,12.100387 8,19 l 0,-4 8,0 0,4 8,-6.899613 L 16,5 16,9 8,9 z"
+ id="path2560"
+ sodipodi:nodetypes="ccccccccccc"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccc"
+ id="path3969"
+ d="M 7.5312501,6.0652868 0.75,12.094969 7.5312501,17.903463 7.5000001,14.525591 16.53125,14.494341 16.5,17.903463 23.25,12.063719 16.5,6.0965368 l 0.03125,3.4091218 -8.9687499,-0.0625 z"
+ style="opacity:0.4;color:#000000;fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans" />
+ <path
+ style="opacity:1;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.99999994000000003;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans"
+ d="m 6.5233063,8.2896651 -4.2498687,3.7897529 4.2498686,3.64386 -0.00492,-2.195815 11.0123475,-0.0269 -0.0049,2.200573 4.200752,-3.648618 -4.22285,-3.7360418 0.0049,2.1784758 -10.9804071,0.01258 z"
+ id="path3971"
+ sodipodi:nodetypes="ccccccccccc"
+ inkscape:connector-curvature="0" />
+ </g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_arrowshapes.png b/icon-themes/tango_testing/cmd/lc_arrowshapes.png
new file mode 100644
index 000000000000..dd43c0e096ea
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_arrowshapes.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_assignlayout.png b/icon-themes/tango_testing/cmd/lc_assignlayout.png
index 355c28b1f528..405bc640e788 100644
--- a/icon-themes/tango_testing/cmd/lc_assignlayout.png
+++ b/icon-themes/tango_testing/cmd/lc_assignlayout.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_assignlayout.svg b/icon-themes/tango_testing/cmd/lc_assignlayout.svg
index a6f84cdcba11..7bfa48c68ba7 100644
--- a/icon-themes/tango_testing/cmd/lc_assignlayout.svg
+++ b/icon-themes/tango_testing/cmd/lc_assignlayout.svg
@@ -22,26 +22,239 @@
<defs
id="defs4">
<linearGradient
- id="linearGradient3764">
+ id="linearGradient3810">
+ <stop
+ id="stop3812"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3814"
+ offset="1"
+ style="stop-color:#e2e2e2;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8252"
+ xlink:href="#linearGradient3848-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-98"
+ xlink:href="#linearGradient7113-62-4-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-5"
+ xlink:href="#linearGradient6977-28-2-3-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-82"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-50" />
+ <stop
+ id="stop6981-1-2-8-5-26"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-31"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3848-4-7">
+ <stop
+ id="stop3850-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-1"
+ id="radialGradient10879-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.17647061,1047.5467,-22.328213)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-3-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient25342"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="16"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4060"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4058"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4056"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4054"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)"
+ y2="14.000038"
+ x2="21.996094"
+ y1="3.8381946e-05"
+ x1="21.996094"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4052"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-7">
+ <stop
+ id="stop3766-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-4"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-9">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
- id="stop3766" />
+ id="stop4258-4" />
<stop
- style="stop-color:#ededed;stop-opacity:1;"
+ style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
- id="stop3768" />
+ id="stop4260-20" />
</linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-9"
+ id="radialGradient3814"
+ cx="4.75"
+ cy="3.625"
+ fx="4.75"
+ fy="3.625"
+ r="3.59375"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient26584"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="16" />
<linearGradient
inkscape:collect="always"
- xlink:href="#linearGradient3764"
- id="linearGradient3770"
- x1="11"
- y1="4"
- x2="11"
- y2="19"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient26608"
gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.0909091,0,0,1.0000022,-1.0909091,1027.3622)" />
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7-8"
+ id="linearGradient26608-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="16" />
+ <linearGradient
+ id="linearGradient3764-7-8">
+ <stop
+ id="stop3766-0-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-4-8"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
</defs>
<sodipodi:namedview
id="base"
@@ -50,17 +263,18 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="5.6568543"
- inkscape:cx="81.34809"
- inkscape:cy="-12.88668"
+ inkscape:zoom="5.6568542"
+ inkscape:cx="15.402642"
+ inkscape:cy="5.0451197"
inkscape:document-units="px"
inkscape:current-layer="layer1"
- showgrid="true"
+ showgrid="false"
inkscape:window-width="1366"
- inkscape:window-height="718"
+ inkscape:window-height="698"
inkscape:window-x="0"
- inkscape:window-y="28"
- inkscape:window-maximized="1">
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ showborder="false">
<inkscape:grid
type="xygrid"
id="grid2985"
@@ -77,7 +291,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title />
+ <dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -86,35 +300,2257 @@
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-1028.3622)">
- <rect
- style="fill:url(#linearGradient3770);fill-opacity:1;stroke:none"
- id="rect2994"
- width="24"
- height="15.999983"
- x="0"
- y="1031.3622" />
- <path
- style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
- d="m 0,1031.3622 0,16 24,0 0,-16 z m 1,1 22,0 0,14 -22,0 z"
- id="rect3772"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cccccccccc" />
- <path
- style="opacity:0.2;fill:#000000;fill-opacity:1;stroke:none"
- d="M 2,5 2,9 22,9 22,5 z M 3,6 21,6 21,8 3,8 z"
- transform="translate(0,1028.3622)"
- id="rect3783"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cccccccccc" />
- <path
- style="opacity:0.2;fill:#000000;fill-opacity:1;stroke:none"
- d="M 2 10 L 2 17 L 11 17 L 11 10 L 2 10 z M 3 11 L 10 11 L 10 16 L 3 16 L 3 11 z "
- transform="translate(0,1028.3622)"
- id="rect3788" />
- <path
- style="opacity:0.2;fill:#000000;fill-opacity:1;stroke:none"
- d="M 13 10 L 13 17 L 22 17 L 22 10 L 13 10 z M 14 11 L 21 11 L 21 16 L 14 16 L 14 11 z "
- transform="translate(0,1028.3622)"
- id="rect3790" />
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-9"
+ transform="matrix(1,0,0,0.66666667,23.629011,349.37565)">
+ <g
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Open Sans;-inkscape-font-specification:Open Sans"
+ id="text2998">
+ <g
+ id="g7758"
+ transform="translate(1,-1.0625)">
+ <g
+ id="g10867"
+ transform="matrix(0,1,-1,0,1051.4247,1029.4247)">
+ <rect
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-20.117622"
+ x="1052.0537"
+ height="2.9999993"
+ width="24.000051"
+ id="rect10775"
+ style="opacity:0.25;fill:url(#radialGradient10879-7);fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
+ id="g26599"
+ transform="matrix(1.0909091,0,0,1.0909091,-30.545455,-100.85118)">
+ <g
+ transform="translate(7.5069445e-7,5.5000254)"
+ id="g26577">
+ <rect
+ transform="translate(27,2.9999841)"
+ style="fill:url(#linearGradient26608-0);fill-opacity:1;stroke:none"
+ id="rect3808"
+ width="22"
+ height="14.666641"
+ x="1.0000002"
+ y="1029.3622"
+ rx="0.91666669"
+ ry="0.91666669" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 1.9166668,1.9166415 0,12.8333335 20.1666662,0 L 22,2 z m 0.9166667,0.9166666 18.3333335,0 0,10.9999999 -18.3333335,0 z"
+ transform="translate(27,1031.3622)"
+ id="rect3976"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect3783"
+ d="m 29.833334,1034.1955 0,3.6667 18.333333,0 0,-3.6667 z m 0.916666,0.9167 16.5,0 0,1.8333 -16.5,0 z"
+ style="opacity:0.2;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ id="rect3790"
+ d="m 39.916666,1038.7789 0,6.4166 8.250001,0 0,-6.4166 z m 0.916667,0.9166 6.416667,0 0,4.5834 -6.416667,0 z"
+ style="opacity:0.2;fill:#000000;fill-opacity:1;stroke:none" />
+ <path
+ style="opacity:0.2;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 29.833333,1038.7789 0,6.4166 8.25,0 0,-6.4166 z m 0.916667,0.9166 6.416666,0 0,4.5834 -6.416666,0 z"
+ id="path25340"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <path
+ id="rect26594"
+ transform="matrix(0.91666666,0,0,0.91666666,28,1035.1122)"
+ d="M 1,3 C 0.44599422,3 0,3.4459942 0,4 l 0,14 c 0,0.554006 0.44599422,1 1,1 l 22,0 c 0.554006,0 1,-0.445994 1,-1 L 24,4 C 24,3.4459942 23.554006,3 23,3 L 1,3 z M 1,4 23,4 23,18 1,18 1,4 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0" />
+ </g>
</g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-3"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-4"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-73"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8-4">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-14"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-6-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-4-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-96"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-03"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-53">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_autosum.png b/icon-themes/tango_testing/cmd/lc_autosum.png
index 7f63d5ab9f72..f20f9a53be5f 100644
--- a/icon-themes/tango_testing/cmd/lc_autosum.png
+++ b/icon-themes/tango_testing/cmd/lc_autosum.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_autosum.svg b/icon-themes/tango_testing/cmd/lc_autosum.svg
new file mode 100644
index 000000000000..926e7701c964
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_autosum.svg
@@ -0,0 +1,588 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_autosum.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_autosum.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3977">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3979" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3981" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="16"
+ x2="11"
+ y1="6"
+ x1="11"
+ id="linearGradient4168"
+ xlink:href="#linearGradient4162"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="20"
+ x2="13"
+ y1="6"
+ x1="13"
+ id="linearGradient4351"
+ xlink:href="#linearGradient4345"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-2">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop3766-7" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop3768-3" />
+ </linearGradient>
+ <linearGradient
+ y2="16"
+ x2="17"
+ y1="2"
+ x1="17"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3501-6"
+ xlink:href="#linearGradient3764-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-3">
+ <stop
+ id="stop3784-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop3786-9"
+ offset="1"
+ style="stop-color:#646464;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3511"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3501"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4339">
+ <stop
+ id="stop4341"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4343"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4345"
+ inkscape:collect="always">
+ <stop
+ id="stop4347"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4349"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4162"
+ inkscape:collect="always">
+ <stop
+ id="stop4164"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4166"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3961"
+ x1="5"
+ y1="1040.3611"
+ x2="22"
+ y2="1040.3611"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3963"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="1028.3622"
+ x2="12"
+ y2="1052.3622" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3977"
+ id="linearGradient3983"
+ x1="14.243107"
+ y1="1052.801"
+ x2="14.243299"
+ y2="1028.6135"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0.00689303,0.0408)" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="21.881123"
+ inkscape:cy="25.447535"
+ inkscape:document-units="px"
+ inkscape:current-layer="text2985"
+ showgrid="false"
+ inkscape:snap-global="false"
+ showborder="false"
+ inkscape:showpageshadow="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="721"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2989"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-1028.3622)">
+ <g
+ style="font-size:38.99686432000000025px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient3961);fill-opacity:1.0;stroke:none;font-family:Sans"
+ id="text2985"
+ transform="translate(-2,0)">
+ <path
+ d="m 22,1052.3622 -17,0 0,-1 8,-12 -7.9963785,-10.1734 0,-0.8188 L 22,1028.36 l 0,7.0022 -2,0 c 0,-1.9978 -2,-3.9978 -3,-3.9978 l -6,0 6,8 -7,10 7,0 c 1,0 3,-2 3,-4.0022 l 2,0 z"
+ style="font-variant:normal;font-stretch:normal;fill:url(#linearGradient3963);fill-opacity:1;font-family:GentiumAlt;-inkscape-font-specification:GentiumAlt"
+ id="path2992"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccccccc" />
+ <path
+ sodipodi:nodetypes="ccccccccccccccccc"
+ inkscape:connector-curvature="0"
+ id="path3969"
+ style="font-variant:normal;font-stretch:normal;opacity:0.4;fill:none;stroke:url(#linearGradient3983);stroke-width:1;stroke-opacity:1;font-family:GentiumAlt;-inkscape-font-specification:GentiumAlt"
+ d="M 21.500191,1051.9062 5.5,1051.8622 l 0,-0.3384 8.138472,-12.1284 -8.129371,-10.3264 0,-0.1566 15.99109,-0.01 0,6.0034 -1.059852,-0.022 c -0.134117,-1.7427 -2.216586,-4.1406 -3.578382,-4.0344 l -6.8693083,0.01 6.3732003,8.537 -7.2440787,10.4797 8.1600307,2e-4 c 2.133386,-0.7845 2.978569,-2.8932 3.189808,-4.0003 0.919915,0 1.028583,9e-4 1.028583,9e-4 z" />
+ <rect
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ id="rect3973"
+ width="14"
+ height="1"
+ x="5"
+ y="1"
+ transform="translate(2,1028.3622)" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_backcolor.png b/icon-themes/tango_testing/cmd/lc_backcolor.png
index a3cfb94a7aff..a7903b4947c9 100644
--- a/icon-themes/tango_testing/cmd/lc_backcolor.png
+++ b/icon-themes/tango_testing/cmd/lc_backcolor.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_backcolor.svg b/icon-themes/tango_testing/cmd/lc_backcolor.svg
index f0ac640a816f..dfacc98ffb17 100644
--- a/icon-themes/tango_testing/cmd/lc_backcolor.svg
+++ b/icon-themes/tango_testing/cmd/lc_backcolor.svg
@@ -20,192 +20,1525 @@
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
- id="defs4">
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3825">
- <stop
- style="stop-color:#951a00;stop-opacity:1;"
- offset="0"
- id="stop3827" />
- <stop
- style="stop-color:#951a00;stop-opacity:0;"
- offset="1"
- id="stop3829" />
- </linearGradient>
- <linearGradient
- id="linearGradient3831">
- <stop
- style="stop-color:#ffffff;stop-opacity:1;"
- offset="0"
- id="stop3833" />
- <stop
- style="stop-color:#ffffff;stop-opacity:0;"
- offset="1"
- id="stop3835" />
- </linearGradient>
- <linearGradient
- id="linearGradient10903">
- <stop
- id="stop10905"
- offset="0"
- style="stop-color:#ee7012;stop-opacity:1;" />
- <stop
- style="stop-color:#f8c63a;stop-opacity:1;"
- offset="0.77061909"
- id="stop10907" />
- <stop
- id="stop10909"
- offset="1"
- style="stop-color:#f8c63a;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient13246"
- id="linearGradient13258"
- x1="1003"
- y1="-279.13782"
- x2="1012"
- y2="-279.13782"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.3333353,0,0,1.3333326,-335.43293,92.404554)" />
- <linearGradient
- id="linearGradient13246">
- <stop
- style="stop-color:#ee7012;stop-opacity:1;"
- offset="0"
- id="stop13248" />
- <stop
- id="stop13268"
- offset="1"
- style="stop-color:#f8c63a;stop-opacity:1;" />
- <stop
- style="stop-color:#f8c63a;stop-opacity:0;"
- offset="1"
- id="stop13250" />
- </linearGradient>
- <linearGradient
- gradientTransform="translate(0.71707603,-0.47714533)"
- inkscape:collect="always"
- xlink:href="#linearGradient12847-0-6"
- id="linearGradient12845-6-7"
- x1="1009.1449"
- y1="-282.57776"
- x2="1011.5743"
- y2="-280.18057"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- id="linearGradient12847-0-6">
- <stop
- id="stop12849-4-2"
- offset="0"
- style="stop-color:#fff900;stop-opacity:1;" />
- <stop
- style="stop-color:#f7f2bc;stop-opacity:1;"
- offset="0.5"
- id="stop12853-5-6" />
- <stop
- id="stop12851-2-5"
- offset="1"
- style="stop-color:#ffde11;stop-opacity:1;" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient10903"
- id="linearGradient13244"
- gradientUnits="userSpaceOnUse"
- x1="1023.8649"
- y1="-286.57553"
- x2="1017.4827"
- y2="-294.29736" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient13260"
- id="linearGradient13266"
- x1="1019.8125"
- y1="-289.90625"
- x2="1022.5"
- y2="-292.21875"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient13260">
- <stop
- style="stop-color:#bd6116;stop-opacity:1;"
- offset="0"
- id="stop13262" />
- <stop
- style="stop-color:#bd6116;stop-opacity:0;"
- offset="1"
- id="stop13264" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient7113-9-3-6">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop7115-71-3-7" />
- <stop
- style="stop-color:#888a85;stop-opacity:1"
- offset="1"
- id="stop7117-8-2-2" />
- </linearGradient>
- <linearGradient
- id="linearGradient9635-5-6">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop9637-0-8" />
- <stop
- id="stop11309-2-2"
- offset="0.70555556"
- style="stop-color:#444542;stop-opacity:0.74400002;" />
- <stop
- style="stop-color:#888a85;stop-opacity:0;"
- offset="1"
- id="stop9639-0-4" />
- </linearGradient>
- <linearGradient
- y2="-282.41907"
- x2="1022.375"
- y1="-291.85657"
- x1="1012.5"
- gradientTransform="matrix(-0.80211024,0,0,-0.86840287,1833.6568,-536.69965)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient9705"
- xlink:href="#linearGradient7113-9-3-6"
- inkscape:collect="always" />
- <linearGradient
- y2="-295.22311"
- x2="1013.6024"
- y1="-283.02554"
- x1="1017.8835"
- gradientTransform="matrix(0.80211024,0,0,0.86840287,201.67522,-37.824905)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient9707"
- xlink:href="#linearGradient9635-5-6"
- inkscape:collect="always" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3831"
- id="radialGradient3837"
- cx="7"
- cy="6"
- fx="7"
- fy="6"
- r="6"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3825"
- id="linearGradient3832"
- x1="1017.8604"
- y1="-283.31735"
- x2="1012.0714"
- y2="-284.59897"
- gradientUnits="userSpaceOnUse" />
- </defs>
+ id="defs4"><linearGradient
+ inkscape:collect="always"
+ id="linearGradient5736">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop5738" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop5740" />
+</linearGradient>
+<linearGradient
+ id="linearGradient5714">
+ <stop
+ id="stop5716"
+ offset="0"
+ style="stop-color:#ee7012;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1;"
+ offset="1"
+ id="stop5718" />
+ <stop
+ id="stop5720"
+ offset="1"
+ style="stop-color:#f8c63a;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5341">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop5343" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop5345" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient3825">
+ <stop
+ style="stop-color:#951a00;stop-opacity:1;"
+ offset="0"
+ id="stop3827" />
+ <stop
+ style="stop-color:#951a00;stop-opacity:0;"
+ offset="1"
+ id="stop3829" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3831">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3833" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3835" />
+</linearGradient>
+<linearGradient
+ id="linearGradient10903">
+ <stop
+ id="stop10905"
+ offset="0"
+ style="stop-color:#ee7012;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f8c63a;stop-opacity:1;"
+ offset="0.77061909"
+ id="stop10907" />
+ <stop
+ id="stop10909"
+ offset="1"
+ style="stop-color:#f8c63a;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5714"
+ id="linearGradient13258"
+ x1="1003"
+ y1="-279.13782"
+ x2="1012"
+ y2="-279.13782"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.3333353,0,0,1.3333326,-324.05793,92.310804)" />
+<linearGradient
+ id="linearGradient13246">
+ <stop
+ style="stop-color:#ee7012;stop-opacity:1;"
+ offset="0"
+ id="stop13248" />
+ <stop
+ id="stop13268"
+ offset="1"
+ style="stop-color:#f8c63a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f8c63a;stop-opacity:0;"
+ offset="1"
+ id="stop13250" />
+</linearGradient>
+<linearGradient
+ id="linearGradient12847-0-6">
+ <stop
+ id="stop12849-4-2"
+ offset="0"
+ style="stop-color:#fce94f;stop-opacity:1;" />
+ <stop
+ id="stop12851-2-5"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient10903"
+ id="linearGradient13244"
+ gradientUnits="userSpaceOnUse"
+ x1="1023.8649"
+ y1="-286.57553"
+ x2="1015.9023"
+ y2="-294.77899" />
+<linearGradient
+ id="linearGradient9635-5-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop9637-0-8" />
+ <stop
+ id="stop11309-2-2"
+ offset="0.70555556"
+ style="stop-color:#444542;stop-opacity:0.74400002;" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:0;"
+ offset="1"
+ id="stop9639-0-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3825"
+ id="linearGradient3832"
+ x1="1009.2354"
+ y1="-285.12985"
+ x2="1016.6964"
+ y2="-280.00522"
+ gradientUnits="userSpaceOnUse" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<radialGradient
+ r="6"
+ fy="6"
+ fx="7"
+ cy="6"
+ cx="7"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3779"
+ xlink:href="#linearGradient3831-3"
+ inkscape:collect="always" />
+<linearGradient
+ gradientTransform="translate(0,-1.875)"
+ y2="14.443998"
+ x2="4.8125076"
+ y1="6.5689983"
+ x1="34.679577"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3743"
+ xlink:href="#linearGradient3764-9"
+ inkscape:collect="always" />
+<linearGradient
+ gradientTransform="translate(0,-1.875)"
+ y2="2.5243413"
+ x2="11.187508"
+ y1="8.1493416"
+ x1="10.062502"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3741"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always" />
+<inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="455.55452 : 185.48767 : 1"
+ inkscape:vp_y="0 : 1498.5259 : 0"
+ inkscape:vp_z="575.1194 : 185.76864 : 1"
+ inkscape:persp3d-origin="461.09692 : 164.88081 : 1"
+ id="perspective3031-4" />
+<inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="7.9100081 : 21.563919 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="62.327584 : 21.563919 : 1"
+ inkscape:persp3d-origin="12 : 8 : 1"
+ id="perspective2987-2" />
+<linearGradient
+ id="linearGradient3782-1-7">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784-0-0" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786-8-7" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient3774-0"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)" />
+<linearGradient
+ id="linearGradient3764-5-9">
+ <stop
+ id="stop3766-3-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-7-5"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient3875-5-5"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient3885-2-0"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient3895-1-3"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782-1-7"
+ id="linearGradient3788-1"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient3899-1"
+ x1="12"
+ y1="3.9999945"
+ x2="12"
+ y2="19.999994"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ id="linearGradient4339-1">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341-4" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343-3" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3782-0">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784-7" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786-2" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764-9">
+ <stop
+ id="stop3766-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-9"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-9"
+ id="linearGradient3875-4"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-9"
+ id="linearGradient3885-5"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-9"
+ id="linearGradient3895-8"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-9"
+ id="linearGradient3511-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ id="linearGradient3782-3-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4-1" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9-3" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764-2-6">
+ <stop
+ id="stop3766-7-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3-7"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(0,-1.875)"
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-9"
+ id="linearGradient3999-5"
+ x1="34.679577"
+ y1="6.5689983"
+ x2="4.8125076"
+ y2="14.443998"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ gradientTransform="translate(0,-1.875)"
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient4007-7"
+ x1="-10.374998"
+ y1="11.192826"
+ x2="4.3670778"
+ y2="14.067826"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ gradientTransform="translate(0,-1.875)"
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient4018-4"
+ x1="10.062502"
+ y1="8.1493416"
+ x2="11.187508"
+ y2="2.5243413"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient3825-4">
+ <stop
+ style="stop-color:#951a00;stop-opacity:1;"
+ offset="0"
+ id="stop3827-1" />
+ <stop
+ style="stop-color:#951a00;stop-opacity:0;"
+ offset="1"
+ id="stop3829-1" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3831-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3833-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3835-0" />
+</linearGradient>
+<linearGradient
+ id="linearGradient10903-6">
+ <stop
+ id="stop10905-9"
+ offset="0"
+ style="stop-color:#ee7012;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f8c63a;stop-opacity:1;"
+ offset="0.77061909"
+ id="stop10907-3" />
+ <stop
+ id="stop10909-0"
+ offset="1"
+ style="stop-color:#f8c63a;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient13246-3"
+ id="linearGradient13258-0"
+ x1="1003"
+ y1="-279.13782"
+ x2="1012"
+ y2="-279.13782"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.3333353,0,0,1.3333326,-335.43293,92.404554)" />
+<linearGradient
+ id="linearGradient13246-3">
+ <stop
+ style="stop-color:#ee7012;stop-opacity:1;"
+ offset="0"
+ id="stop13248-9" />
+ <stop
+ id="stop13268-2"
+ offset="1"
+ style="stop-color:#f8c63a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f8c63a;stop-opacity:0;"
+ offset="1"
+ id="stop13250-2" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(0.71707603,-0.47714533)"
+ inkscape:collect="always"
+ xlink:href="#linearGradient12847-0-6-6"
+ id="linearGradient12845-6-7-4"
+ x1="1009.1449"
+ y1="-282.57776"
+ x2="1011.5743"
+ y2="-280.18057"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ id="linearGradient12847-0-6-6">
+ <stop
+ id="stop12849-4-2-1"
+ offset="0"
+ style="stop-color:#fff900;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f7f2bc;stop-opacity:1;"
+ offset="0.5"
+ id="stop12853-5-6-7" />
+ <stop
+ id="stop12851-2-5-4"
+ offset="1"
+ style="stop-color:#ffde11;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient10903-6"
+ id="linearGradient13244-8"
+ gradientUnits="userSpaceOnUse"
+ x1="1023.8649"
+ y1="-286.57553"
+ x2="1017.4827"
+ y2="-294.29736" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient13260-4"
+ id="linearGradient13266-0"
+ x1="1019.8125"
+ y1="-289.90625"
+ x2="1022.5"
+ y2="-292.21875"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient13260-4">
+ <stop
+ style="stop-color:#bd6116;stop-opacity:1;"
+ offset="0"
+ id="stop13262-2" />
+ <stop
+ style="stop-color:#bd6116;stop-opacity:0;"
+ offset="1"
+ id="stop13264-3" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9-3-6-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71-3-7-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8-2-2-2" />
+</linearGradient>
+<linearGradient
+ id="linearGradient9635-5-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop9637-0-8-3" />
+ <stop
+ id="stop11309-2-2-5"
+ offset="0.70555556"
+ style="stop-color:#444542;stop-opacity:0.74400002;" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:0;"
+ offset="1"
+ id="stop9639-0-4-6" />
+</linearGradient>
+<linearGradient
+ y2="-282.41907"
+ x2="1022.375"
+ y1="-291.85657"
+ x1="1012.5"
+ gradientTransform="matrix(-0.80211024,0,0,-0.86840287,1833.6568,-536.69965)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9705-3"
+ xlink:href="#linearGradient7113-9-3-6-4"
+ inkscape:collect="always" />
+<linearGradient
+ y2="-295.22311"
+ x2="1013.6024"
+ y1="-283.02554"
+ x1="1017.8835"
+ gradientTransform="matrix(0.80211024,0,0,0.86840287,201.67522,-37.824905)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9707-1"
+ xlink:href="#linearGradient9635-5-6-1"
+ inkscape:collect="always" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3831-3"
+ id="radialGradient3837-7"
+ cx="7"
+ cy="6"
+ fx="7"
+ fy="6"
+ r="6"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3825-4"
+ id="linearGradient3832-2"
+ x1="1017.8604"
+ y1="-283.31735"
+ x2="1012.0714"
+ y2="-284.59897"
+ gradientUnits="userSpaceOnUse" />
+<inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="-72.675413 : 64.068295 : 1"
+ inkscape:vp_y="0 : 1755.6863 : 0"
+ inkscape:vp_z="67.407898 : 64.397487 : 1"
+ inkscape:persp3d-origin="-66.181884 : 39.92512 : 1"
+ id="perspective3031" />
+<inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="7.9100081 : 21.563919 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="62.327584 : 21.563919 : 1"
+ inkscape:persp3d-origin="12 : 8 : 1"
+ id="perspective2987" />
+<linearGradient
+ id="linearGradient3782-1">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784-0" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786-8" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3774"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)" />
+<linearGradient
+ id="linearGradient3764-5">
+ <stop
+ id="stop3766-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-7"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3875-5"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3885-2"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3895-1"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782-1"
+ id="linearGradient3788"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3899"
+ x1="12"
+ y1="3.9999945"
+ x2="12"
+ y2="19.999994"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ id="linearGradient4339">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3511"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ id="linearGradient3782-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764-2">
+ <stop
+ id="stop3766-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3"
+ id="radialGradient9463"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ id="stop6979-4-5-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43" />
+ <stop
+ id="stop6985-44-1-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4"
+ id="linearGradient9465"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient9467"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient9469"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+<linearGradient
+ gradientTransform="translate(0.70710678,-0.53033009)"
+ gradientUnits="userSpaceOnUse"
+ y2="11.001792"
+ x2="2.0026019"
+ y1="17.100588"
+ x1="10.636931"
+ id="linearGradient7293"
+ xlink:href="#linearGradient7287"
+ inkscape:collect="always" />
+<linearGradient
+ y2="12.101003"
+ x2="8.5107889"
+ y1="10.668404"
+ x1="9.1578083"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7275"
+ xlink:href="#linearGradient3290-678"
+ inkscape:collect="always" />
+<linearGradient
+ y2="-5.485857"
+ x2="-9.6678057"
+ y1="-9.2234287"
+ x1="-13.161851"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,0.05556162,0.02897257)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273"
+ xlink:href="#linearGradient3155-40"
+ inkscape:collect="always" />
+<linearGradient
+ y2="19.375"
+ x2="13.75"
+ y1="15.622917"
+ x1="13.75"
+ gradientTransform="matrix(1.2159591,0,0,1.2159591,-29.41025,-34.416713)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7271"
+ xlink:href="#linearGradient3155-40"
+ inkscape:collect="always" />
+<linearGradient
+ id="linearGradient5048">
+ <stop
+ id="stop5050"
+ offset="0"
+ style="stop-color:black;stop-opacity:0;" />
+ <stop
+ style="stop-color:black;stop-opacity:1;"
+ offset="0.5"
+ id="stop5056" />
+ <stop
+ id="stop5052"
+ offset="1"
+ style="stop-color:black;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3104">
+ <stop
+ id="stop3106"
+ offset="0"
+ style="stop-color:#969696;stop-opacity:1;" />
+ <stop
+ id="stop3108"
+ offset="1"
+ style="stop-color:#bebebe;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3191-577">
+ <stop
+ id="stop2613"
+ offset="0"
+ style="stop-color:#dbce48;stop-opacity:1;" />
+ <stop
+ id="stop2615"
+ offset="1"
+ style="stop-color:#c5b625;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3290-678">
+ <stop
+ id="stop2607"
+ offset="0"
+ style="stop-color:#ece5a5;stop-opacity:1;" />
+ <stop
+ id="stop2609"
+ offset="1"
+ style="stop-color:#fcfbf2;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3223-699">
+ <stop
+ id="stop2599"
+ offset="0"
+ style="stop-color:#b1b1b1;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop2601" />
+ <stop
+ id="stop2603"
+ offset="1"
+ style="stop-color:#8f8f8f;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3240-907">
+ <stop
+ style="stop-color:#565656;stop-opacity:1;"
+ offset="0"
+ id="stop2591" />
+ <stop
+ id="stop2593"
+ offset="0.5"
+ style="stop-color:#9a9a9a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#545454;stop-opacity:1;"
+ offset="1"
+ id="stop2595" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3223-768">
+ <stop
+ id="stop2583"
+ offset="0"
+ style="stop-color:#b1b1b1;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop2585" />
+ <stop
+ id="stop2587"
+ offset="1"
+ style="stop-color:#8f8f8f;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3240-686">
+ <stop
+ style="stop-color:#565656;stop-opacity:1;"
+ offset="0"
+ id="stop2575" />
+ <stop
+ id="stop2577"
+ offset="0.5"
+ style="stop-color:#9a9a9a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#545454;stop-opacity:1;"
+ offset="1"
+ id="stop2579" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3223-789">
+ <stop
+ id="stop2567"
+ offset="0"
+ style="stop-color:#b1b1b1;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop2569" />
+ <stop
+ id="stop2571"
+ offset="1"
+ style="stop-color:#8f8f8f;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3240-279">
+ <stop
+ style="stop-color:#565656;stop-opacity:1;"
+ offset="0"
+ id="stop2559" />
+ <stop
+ id="stop2561"
+ offset="0.5"
+ style="stop-color:#9a9a9a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#545454;stop-opacity:1;"
+ offset="1"
+ id="stop2563" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3155-40">
+ <stop
+ id="stop2541"
+ offset="0"
+ style="stop-color:#181818;stop-opacity:1;" />
+ <stop
+ style="stop-color:#dbdbdb;stop-opacity:1;"
+ offset="0.13482948"
+ id="stop2543" />
+ <stop
+ id="stop2545"
+ offset="0.20224422"
+ style="stop-color:#a4a4a4;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.26965895"
+ id="stop2547" />
+ <stop
+ id="stop2549"
+ offset="0.44650277"
+ style="stop-color:#8d8d8d;stop-opacity:1;" />
+ <stop
+ style="stop-color:#959595;stop-opacity:1;"
+ offset="0.57114136"
+ id="stop2551" />
+ <stop
+ id="stop2553"
+ offset="0.72038066"
+ style="stop-color:#cecece;stop-opacity:1;" />
+ <stop
+ id="stop2555"
+ offset="1"
+ style="stop-color:#181818;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient7287"
+ inkscape:collect="always">
+ <stop
+ id="stop7289"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7291"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-9"
+ id="radialGradient3814-8"
+ cx="4.75"
+ cy="3.625"
+ fx="4.75"
+ fy="3.625"
+ r="3.59375"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-4" />
+</linearGradient>
+<linearGradient
+ y2="-282.41907"
+ x2="1022.375"
+ y1="-291.85657"
+ x1="1012.5"
+ gradientTransform="matrix(-0.80211024,0,0,-0.86840287,1833.6568,-536.69965)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9705-6"
+ xlink:href="#linearGradient7113-9-3-6-8"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9-3-6-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71-3-7-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8-2-2-1" />
+</linearGradient>
+<linearGradient
+ y2="-295.22311"
+ x2="1013.6024"
+ y1="-283.02554"
+ x1="1017.8835"
+ gradientTransform="matrix(0.80211024,0,0,0.86840287,201.67522,-37.824905)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9707-14"
+ xlink:href="#linearGradient9635-5-6-8"
+ inkscape:collect="always" />
+<linearGradient
+ id="linearGradient9635-5-6-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop9637-0-8-4" />
+ <stop
+ id="stop11309-2-2-0"
+ offset="0.70555556"
+ style="stop-color:#444542;stop-opacity:0.74400002;" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:0;"
+ offset="1"
+ id="stop9639-0-4-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12847-0-6"
+ id="linearGradient4555"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0.71707603,-0.47714533)"
+ x1="1010.8285"
+ y1="-282.34906"
+ x2="1016.2742"
+ y2="-276.71457" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9-3-6-8"
+ id="linearGradient5335"
+ x1="26.000017"
+ y1="1038.3622"
+ x2="35"
+ y2="1039.8622"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.94280765,0,0,0.94280765,-771.94533,-1703.7806)" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5341"
+ id="linearGradient5347"
+ x1="-741.27362"
+ y1="-720.74261"
+ x2="-744.22913"
+ y2="-723.88043"
+ gradientUnits="userSpaceOnUse" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5736"
+ id="linearGradient5742"
+ x1="1007.8725"
+ y1="-282.89058"
+ x2="1018.5094"
+ y2="-282.89058"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5736"
+ id="linearGradient5744"
+ gradientUnits="userSpaceOnUse"
+ x1="1006.8912"
+ y1="-285.91858"
+ x2="1015.2384"
+ y2="-279.37161" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5736"
+ id="linearGradient5746"
+ gradientUnits="userSpaceOnUse"
+ x1="1007.8725"
+ y1="-282.89058"
+ x2="1018.5094"
+ y2="-282.89058" />
+</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
@@ -214,16 +1547,16 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
- inkscape:cx="13.486914"
- inkscape:cy="12.436059"
+ inkscape:cx="8.2342633"
+ inkscape:cy="5.4263226"
inkscape:document-units="px"
inkscape:current-layer="g6199"
showgrid="false"
inkscape:snap-global="false"
inkscape:window-width="1366"
- inkscape:window-height="718"
+ inkscape:window-height="698"
inkscape:window-x="0"
- inkscape:window-y="28"
+ inkscape:window-y="25"
inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
@@ -251,262 +1584,1439 @@
id="layer1"
transform="translate(0,-1028.3622)">
<g
+ transform="matrix(1.3343663,0,0,1.3343663,-7.9683432,1023.0931)"
+ id="g7295">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-5"
+ transform="matrix(0.74941941,0,0,0.74941941,30.904216,-759.46825)">
+ <g
+ id="lc_color"
+ inkscape:label="">
+ <g
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/fontcolor.png"
+ id="g6159"
+ style="display:inline"
+ transform="matrix(0.90485703,0,0,0.90485703,-555.82528,619.11926)">
+ <g
+ id="g9725"
+ transform="translate(-375.38918,735.35626)">
+ <path
+ transform="translate(-0.25,-0.375)"
+ d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
+ sodipodi:ry="6"
+ sodipodi:rx="6"
+ sodipodi:cy="-287.26282"
+ sodipodi:cx="959.25"
+ id="path9397"
+ style="fill:#707070;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ inkscape:transform-center-y="3"
+ inkscape:connector-curvature="0"
+ id="path9401"
+ d="m 959,-287.63782 -1,6 2,0 z"
+ style="fill:#ff0909;fill-opacity:1;stroke:none" />
+ <path
+ inkscape:transform-center-x="-1.25942"
+ style="fill:#ff2c09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
+ id="path9403"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.027185" />
+ <path
+ inkscape:transform-center-y="2.848075"
+ inkscape:connector-curvature="0"
+ id="path9405"
+ d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
+ style="fill:#ffb509;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.933015" />
+ <path
+ inkscape:transform-center-x="-2.474875"
+ style="fill:#ffc109;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
+ id="path9407"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.47487" />
+ <path
+ inkscape:transform-center-y="1.93301"
+ inkscape:connector-curvature="0"
+ id="path9409"
+ d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
+ style="fill:#adff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.84808" />
+ <path
+ inkscape:transform-center-x="-3.02719"
+ style="fill:#92ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
+ id="path9411"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.259415" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9413"
+ d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
+ style="fill:#84ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.000005" />
+ <path
+ inkscape:transform-center-y="-1.259415"
+ inkscape:transform-center-x="-3.027185"
+ style="fill:#43ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
+ id="path9415"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9417"
+ d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
+ style="fill:#09ff11;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.848075"
+ inkscape:transform-center-y="-1.93301" />
+ <path
+ inkscape:transform-center-y="-2.474875"
+ inkscape:transform-center-x="-2.474875"
+ style="fill:#09ff59;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
+ id="path9419"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9421"
+ d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
+ style="fill:#09ff68;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.933015"
+ inkscape:transform-center-y="-2.84808" />
+ <path
+ inkscape:transform-center-y="-3.000005"
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ id="path9423"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9425"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ style="fill:#09ffff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.000005" />
+ <path
+ inkscape:transform-center-x="-1.259415"
+ inkscape:transform-center-y="-3.02719"
+ style="fill:#09ffa9;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
+ id="path9427"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9429"
+ d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
+ style="fill:#09d2ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.027185"
+ inkscape:transform-center-x="1.25942" />
+ <path
+ inkscape:transform-center-x="1.933015"
+ inkscape:transform-center-y="-2.848075"
+ style="fill:#0985ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
+ id="path9431"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9433"
+ d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
+ style="fill:#0947ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-2.47487"
+ inkscape:transform-center-x="2.47488" />
+ <path
+ inkscape:transform-center-x="2.848085"
+ inkscape:transform-center-y="-1.93301"
+ style="fill:#092fff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
+ id="path9435"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9437"
+ d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
+ style="fill:#5c09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-1.259415"
+ inkscape:transform-center-x="3.027195" />
+ <path
+ inkscape:transform-center-x="3.00001"
+ style="fill:#8d09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
+ id="path9439"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:transform-center-y="1.25942"
+ inkscape:connector-curvature="0"
+ id="path9441"
+ d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
+ style="fill:#cb09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="3.02719" />
+ <path
+ inkscape:transform-center-x="2.84808"
+ style="fill:#b709ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
+ id="path9443"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.933015" />
+ <path
+ inkscape:transform-center-y="2.47488"
+ inkscape:connector-curvature="0"
+ id="path9445"
+ d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
+ style="fill:#f709ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="2.474875" />
+ <path
+ inkscape:transform-center-x="1.933015"
+ style="fill:#ff099d;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
+ id="path9447"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.848085" />
+ <path
+ inkscape:transform-center-y="3.0272"
+ inkscape:connector-curvature="0"
+ id="path9449"
+ d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
+ style="fill:#ff0951;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="1.25942" />
+ <path
+ transform="matrix(0.95698925,0,0,0.95698925,41.275874,-12.670578)"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ sodipodi:ry="5.8125"
+ sodipodi:rx="5.8125"
+ sodipodi:cy="-287.32532"
+ sodipodi:cx="958.9375"
+ id="path9451"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.15481651;stroke-opacity:1"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.38890088;stroke-opacity:1"
+ id="path9453"
+ sodipodi:cx="958.9375"
+ sodipodi:cy="-287.32532"
+ sodipodi:rx="5.8125"
+ sodipodi:ry="5.8125"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ transform="matrix(0.79569892,0,0,0.79569892,195.91197,-59.044622)" />
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient3814-8);fill-opacity:1;stroke:none"
+ id="path3038"
+ sodipodi:cx="4.75"
+ sodipodi:cy="3.625"
+ sodipodi:rx="3.59375"
+ sodipodi:ry="3.59375"
+ d="m 8.34375,3.625 c 0,1.9847733 -1.6089767,3.59375 -3.59375,3.59375 -1.9847733,0 -3.59375,-1.6089767 -3.59375,-3.59375 0,-1.9847733 1.6089767,-3.59375 3.59375,-3.59375 1.9847733,0 3.59375,1.6089767 3.59375,3.59375 z"
+ transform="matrix(1.6695652,0,0,1.6695657,575.5911,441.6055)" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
transform="translate(-1001.9023,1323.1412)"
id="g6199"
inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/bg_color.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
- <rect
- y="-281.77899"
- x="1001.9023"
- height="3.9999979"
- width="12.000017"
- id="rect13207"
- style="opacity:0.9969325;fill:url(#linearGradient13258);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccc"
+ inkscape:connector-curvature="0"
+ id="path13209"
+ d="m 1013.9671,-289.73747 4.9352,-5.04153 7,0 0,5.09965 -5,5.90035 z"
+ style="fill:url(#linearGradient13244);fill-opacity:1;stroke:none" />
<g
- id="g12759"
- transform="translate(50.033485,-1.0637484)">
- <path
- transform="translate(-0.25,-0.375)"
- d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
- sodipodi:ry="6"
- sodipodi:rx="6"
- sodipodi:cy="-287.26282"
- sodipodi:cx="959.25"
- id="path12761"
- style="fill:#707070;fill-opacity:1;stroke:none"
- sodipodi:type="arc" />
- <path
- inkscape:transform-center-y="3"
- inkscape:connector-curvature="0"
- id="path12763"
- d="m 959,-287.63782 -1,6 2,0 z"
- style="fill:#ff0909;fill-opacity:1;stroke:none" />
- <path
- inkscape:transform-center-x="-1.25942"
- style="fill:#ff2c09;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
- id="path12765"
- inkscape:connector-curvature="0"
- inkscape:transform-center-y="3.027185" />
- <path
- inkscape:transform-center-y="2.848075"
- inkscape:connector-curvature="0"
- id="path12767"
- d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
- style="fill:#ffb509;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="-1.933015" />
- <path
- inkscape:transform-center-x="-2.474875"
- style="fill:#ffc109;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
- id="path12769"
- inkscape:connector-curvature="0"
- inkscape:transform-center-y="2.47487" />
- <path
- inkscape:transform-center-y="1.93301"
- inkscape:connector-curvature="0"
- id="path12771"
- d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
- style="fill:#adff09;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="-2.84808" />
- <path
- inkscape:transform-center-x="-3.02719"
- style="fill:#92ff09;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
- id="path12773"
- inkscape:connector-curvature="0"
- inkscape:transform-center-y="1.259415" />
- <path
- inkscape:connector-curvature="0"
- id="path12775"
- d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
- style="fill:#84ff09;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="-3.000005" />
- <path
- inkscape:transform-center-y="-1.259415"
- inkscape:transform-center-x="-3.027185"
- style="fill:#43ff09;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
- id="path12777"
- inkscape:connector-curvature="0" />
- <path
- inkscape:connector-curvature="0"
- id="path12779"
- d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
- style="fill:#09ff11;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="-2.848075"
- inkscape:transform-center-y="-1.93301" />
- <path
- inkscape:transform-center-y="-2.474875"
- inkscape:transform-center-x="-2.474875"
- style="fill:#09ff59;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
- id="path12781"
- inkscape:connector-curvature="0" />
- <path
- inkscape:connector-curvature="0"
- id="path12783"
- d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
- style="fill:#09ff68;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="-1.933015"
- inkscape:transform-center-y="-2.84808" />
- <path
- inkscape:transform-center-y="-3.000005"
- style="fill:#ff0909;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
- id="path12785"
- inkscape:connector-curvature="0" />
- <path
- inkscape:connector-curvature="0"
- id="path12787"
- d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
- style="fill:#09ffff;fill-opacity:1;stroke:none"
- inkscape:transform-center-y="-3.000005" />
- <path
- inkscape:transform-center-x="-1.259415"
- inkscape:transform-center-y="-3.02719"
- style="fill:#09ffa9;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
- id="path12789"
- inkscape:connector-curvature="0" />
- <path
- inkscape:connector-curvature="0"
- id="path12791"
- d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
- style="fill:#09d2ff;fill-opacity:1;stroke:none"
- inkscape:transform-center-y="-3.027185"
- inkscape:transform-center-x="1.25942" />
- <path
- inkscape:transform-center-x="1.933015"
- inkscape:transform-center-y="-2.848075"
- style="fill:#0985ff;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
- id="path12793"
- inkscape:connector-curvature="0" />
- <path
- inkscape:connector-curvature="0"
- id="path12795"
- d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
- style="fill:#0947ff;fill-opacity:1;stroke:none"
- inkscape:transform-center-y="-2.47487"
- inkscape:transform-center-x="2.47488" />
- <path
- inkscape:transform-center-x="2.848085"
- inkscape:transform-center-y="-1.93301"
- style="fill:#092fff;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
- id="path12797"
- inkscape:connector-curvature="0" />
- <path
- inkscape:connector-curvature="0"
- id="path12799"
- d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
- style="fill:#5c09ff;fill-opacity:1;stroke:none"
- inkscape:transform-center-y="-1.259415"
- inkscape:transform-center-x="3.027195" />
+ id="g3901"
+ transform="translate(489.827,-145.89261)">
+ <g
+ transform="matrix(0.85352717,0,0,0.85352717,6.2317069,-0.72896952)"
+ id="g3724">
+ <g
+ sodipodi:type="inkscape:box3d"
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="g3003"
+ inkscape:perspectiveID="#perspective3031-4"
+ inkscape:corner0="-0.86598866 : 0.012199273 : 0 : 1"
+ inkscape:corner7="-0.87469587 : 0.011025136 : 0.033532132 : 1">
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3013"
+ style="fill:#afafde;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="13"
+ d="m 1174.8376,-327.06581 3.3671,2.48194 18.6329,-8.13375 -3.6615,-1.56249 z" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3015"
+ style="fill:#e9e9ff;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="11"
+ d="m 1193.1761,-346.58388 3.6615,0.88801 0,12.97825 -3.6615,-1.56249 z" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3007"
+ style="fill:url(#linearGradient4018-4);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="5"
+ d="m 1174.8376,-342.44821 3.3671,1.41303 18.6329,-4.66069 -3.6615,-0.88801 z" />
+ <path
+ d="m 1178.2047,-341.03518 0,16.45131 18.6329,-8.13375 0,-12.97825 z"
+ inkscape:box3dsidetype="14"
+ style="fill:url(#linearGradient3999-5);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path4020"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ d="m 1174.8376,-342.44821 3.3671,1.41303 0,16.45131 -3.3671,-2.48194 z"
+ inkscape:box3dsidetype="3"
+ style="opacity:0.3;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path4009"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ d="m 1174.8376,-342.44821 3.3671,1.41303 18.6329,-4.66069 -3.6615,-0.88801 z"
+ inkscape:box3dsidetype="5"
+ style="fill:url(#linearGradient3741);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path4024"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3011"
+ style="fill:url(#linearGradient3743);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="14"
+ d="m 1178.2047,-341.03518 0,16.45131 18.6329,-8.13375 0,-12.97825 z" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path4022"
+ style="opacity:0.3;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="3"
+ d="m 1174.8376,-342.44821 3.3671,1.41303 0,16.45131 -3.3671,-2.48194 z" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3009"
+ style="fill:url(#linearGradient4007-7);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="3"
+ d="m 1174.8376,-342.44821 3.3671,1.41303 0,16.45131 -3.3671,-2.48194 z" />
+ </g>
+ <g
+ id="g4039"
+ style="fill:#000000;fill-opacity:1;stroke:none" />
+ <g
+ transform="matrix(0.86359063,0,0,0.86359062,1.6369132,1.6369116)"
+ style="fill:none;stroke:#ffffff;stroke-width:1.35667145;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
+ id="g4186">
+ <path
+ id="path4190"
+ transform="matrix(1.1579561,0,0,1.1579561,-1.8954736,-1.8954717)"
+ style="fill:none;stroke:#ffffff;stroke-width:1.17160892px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
+ d="m 3.9999999,6.9999998 0,13.6406252 M 2.5005055,6.1970192 3.9999999,6.9999998 5.6292512,7.5574629 5.647557,21.583435 2.5317555,19.746282 z M 5.6292512,7.5574629 5.647557,21.083435 21.595935,14.106088 21.587892,3.4441509 z M 2.4536305,6.0720192 3.9999999,6.9999998 5.6292512,7.5574629 21.572267,3.4441509 19.003485,2.4460392 z"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccccccccc" />
+ </g>
+ <g
+ id="g4095"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.22065032;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ transform="matrix(0.95982349,0,0,0.95982349,0.48211833,0.48211785)">
+ <path
+ id="path4133"
+ style="fill:none;stroke:#000000;stroke-width:1.22065032;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="m 1.000002,5.13566 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z m 0,0 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z m 3.3670756,1.4130291 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z m 3.3670756,1.4130291 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z m 18.338466,-4.13566624 3.66154,0.88801054 0,12.9782467 M 4.3670776,22.999992 23.000008,14.866251"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccc" />
+ </g>
+ </g>
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-8"
+ transform="translate(-27.974568,-1034.809)">
+ <g
+ transform="translate(-1001.9023,1323.1412)"
+ id="g6199-0"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/bg_color.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <g
+ transform="matrix(0.90254863,0,0,0.90254863,124.7342,-22.289117)"
+ id="g3747">
+ <g
+ transform="translate(50.033485,-1.0637484)"
+ id="g12759">
+ <path
+ sodipodi:type="arc"
+ style="fill:#707070;fill-opacity:1;stroke:none"
+ id="path12761"
+ sodipodi:cx="959.25"
+ sodipodi:cy="-287.26282"
+ sodipodi:rx="6"
+ sodipodi:ry="6"
+ d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
+ transform="translate(-0.25,-0.375)" />
+ <path
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -1,6 2,0 z"
+ id="path12763"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3" />
+ <path
+ inkscape:transform-center-y="3.027185"
+ inkscape:connector-curvature="0"
+ id="path12765"
+ d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
+ style="fill:#ff2c09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.25942" />
+ <path
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#ffb509;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
+ id="path12767"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.848075" />
+ <path
+ inkscape:transform-center-y="2.47487"
+ inkscape:connector-curvature="0"
+ id="path12769"
+ d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
+ style="fill:#ffc109;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875" />
+ <path
+ inkscape:transform-center-x="-2.84808"
+ style="fill:#adff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
+ id="path12771"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.93301" />
+ <path
+ inkscape:transform-center-y="1.259415"
+ inkscape:connector-curvature="0"
+ id="path12773"
+ d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
+ style="fill:#92ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.02719" />
+ <path
+ inkscape:transform-center-x="-3.000005"
+ style="fill:#84ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
+ id="path12775"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12777"
+ d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
+ style="fill:#43ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.027185"
+ inkscape:transform-center-y="-1.259415" />
+ <path
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="-2.848075"
+ style="fill:#09ff11;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
+ id="path12779"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12781"
+ d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
+ style="fill:#09ff59;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875"
+ inkscape:transform-center-y="-2.474875" />
+ <path
+ inkscape:transform-center-y="-2.84808"
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#09ff68;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
+ id="path12783"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12785"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.000005" />
+ <path
+ inkscape:transform-center-y="-3.000005"
+ style="fill:#09ffff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ id="path12787"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12789"
+ d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
+ style="fill:#09ffa9;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.02719"
+ inkscape:transform-center-x="-1.259415" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ inkscape:transform-center-y="-3.027185"
+ style="fill:#09d2ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
+ id="path12791"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12793"
+ d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
+ style="fill:#0985ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-2.848075"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="2.47488"
+ inkscape:transform-center-y="-2.47487"
+ style="fill:#0947ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
+ id="path12795"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12797"
+ d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
+ style="fill:#092fff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="2.848085" />
+ <path
+ inkscape:transform-center-x="3.027195"
+ inkscape:transform-center-y="-1.259415"
+ style="fill:#5c09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
+ id="path12799"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12801"
+ d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
+ style="fill:#8d09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="3.00001" />
+ <path
+ inkscape:transform-center-x="3.02719"
+ style="fill:#cb09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
+ id="path12803"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.25942" />
+ <path
+ inkscape:transform-center-y="1.933015"
+ inkscape:connector-curvature="0"
+ id="path12805"
+ d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
+ style="fill:#b709ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="2.84808" />
+ <path
+ inkscape:transform-center-x="2.474875"
+ style="fill:#f709ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
+ id="path12807"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.47488" />
+ <path
+ inkscape:transform-center-y="2.848085"
+ inkscape:connector-curvature="0"
+ id="path12809"
+ d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
+ style="fill:#ff099d;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ style="fill:#ff0951;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
+ id="path12811"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.0272" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.15777004;stroke-opacity:1"
+ id="path12813"
+ sodipodi:cx="958.9375"
+ sodipodi:cy="-287.32532"
+ sodipodi:rx="5.8125"
+ sodipodi:ry="5.8125"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ transform="matrix(0.95698925,0,0,0.95698925,41.275874,-12.670578)" />
+ <path
+ transform="matrix(0.79569892,0,0,0.79569892,195.91197,-59.044622)"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ sodipodi:ry="5.8125"
+ sodipodi:rx="5.8125"
+ sodipodi:cy="-287.32532"
+ sodipodi:cx="958.9375"
+ id="path12815"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.39245307;stroke-opacity:1"
+ sodipodi:type="arc" />
+ </g>
+ <path
+ transform="translate(1001.9023,-294.779)"
+ d="M 13,6 C 13,9.3137085 10.313708,12 7,12 3.6862915,12 1,9.3137085 1,6 1,2.6862915 3.6862915,0 7,0 c 3.313708,0 6,2.6862915 6,6 z"
+ sodipodi:ry="6"
+ sodipodi:rx="6"
+ sodipodi:cy="6"
+ sodipodi:cx="7"
+ id="path3061"
+ style="fill:url(#radialGradient3779);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
+ id="g4551">
<path
- inkscape:transform-center-x="3.00001"
- style="fill:#8d09ff;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
- id="path12801"
+ sodipodi:nodetypes="cccccc"
+ style="fill:url(#linearGradient4555);fill-opacity:1;stroke:none"
+ d="m 1012.8521,-288.08232 -4.9498,5.30332 0,5 6,0 4.6071,-4.20455 z"
+ id="path12837"
inkscape:connector-curvature="0" />
<path
- inkscape:transform-center-y="1.25942"
- inkscape:connector-curvature="0"
- id="path12803"
- d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
- style="fill:#cb09ff;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="3.02719" />
- <path
- inkscape:transform-center-x="2.84808"
- style="fill:#b709ff;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
- id="path12805"
- inkscape:connector-curvature="0"
- inkscape:transform-center-y="1.933015" />
- <path
- inkscape:transform-center-y="2.47488"
- inkscape:connector-curvature="0"
- id="path12807"
- d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
- style="fill:#f709ff;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="2.474875" />
- <path
- inkscape:transform-center-x="1.933015"
- style="fill:#ff099d;fill-opacity:1;stroke:none"
- d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
- id="path12809"
inkscape:connector-curvature="0"
- inkscape:transform-center-y="2.848085" />
- <path
- inkscape:transform-center-y="3.0272"
- inkscape:connector-curvature="0"
- id="path12811"
- d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
- style="fill:#ff0951;fill-opacity:1;stroke:none"
- inkscape:transform-center-x="1.25942" />
- <path
- transform="matrix(0.95698925,0,0,0.95698925,41.275874,-12.670578)"
- d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
- sodipodi:ry="5.8125"
- sodipodi:rx="5.8125"
- sodipodi:cy="-287.32532"
- sodipodi:cx="958.9375"
- id="path12813"
- style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.04494381;stroke-opacity:1"
- sodipodi:type="arc" />
- <path
- sodipodi:type="arc"
- style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.25675666;stroke-opacity:1"
- id="path12815"
- sodipodi:cx="958.9375"
- sodipodi:cy="-287.32532"
- sodipodi:rx="5.8125"
- sodipodi:ry="5.8125"
- d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
- transform="matrix(0.79569892,0,0,0.79569892,195.91197,-59.044622)" />
+ id="path3823"
+ d="m 1012.6624,-287.19307 -4.2519,4.64576 -0.038,4.34847 5.3756,-0.0884 3.9221,-3.54164 z"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient3832);stroke-opacity:1"
+ sodipodi:nodetypes="cccccc" />
</g>
<path
+ style="opacity:0.40000000000000002;fill:none;stroke:#8b1f00;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 13,4.7790291 5.265165,-5.30935919"
+ id="path5349"
inkscape:connector-curvature="0"
- id="path12837"
- d="m 1012.8521,-288.08232 -3.8007,3.09359 -1.1491,2.20973 0,5 6,0 4.6071,-4.20455 z"
- style="fill:url(#linearGradient12845-6-7);fill-opacity:1;stroke:none"
- sodipodi:nodetypes="ccccccc" />
+ transform="translate(1001.9023,-294.779)"
+ sodipodi:nodetypes="cc" />
<path
- sodipodi:nodetypes="cccccc"
+ sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
- id="path13209"
- d="m 1016,-291.63782 2.9023,-3.14118 7,0 0,7 -3.9023,3.14118 z"
- style="fill:url(#linearGradient13244);fill-opacity:1;stroke:none" />
+ id="path5351"
+ d="m 1020.515,-284.21053 6.0164,-6.94454"
+ style="opacity:0.4;fill:none;stroke:#8b1f00;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
+ sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
- id="path13229"
- d="m 1018.9023,-294.779 -2.9023,3.15395 6,7 3.9023,-3.15395 -5e-4,-7.00002 z m 0,1 6,-2e-5 0,5 -2.902,3.15402 -5,-6 z"
- style="opacity:0.4;fill:url(#linearGradient13266);fill-opacity:1;stroke:none"
- sodipodi:nodetypes="cccccccccccc" />
- <path
- sodipodi:nodetypes="ccccc"
- inkscape:connector-curvature="0"
- id="path12817"
- d="m 1016.4738,-292.46652 6.3999,7.39772 -3.6576,3.59145 -6.9155,-7.42796 z"
- style="fill:url(#linearGradient9705);fill-opacity:1;stroke:url(#linearGradient9707);stroke-width:0.83459866px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
- <path
- sodipodi:type="arc"
- style="fill:url(#radialGradient3837);fill-opacity:1.0;stroke:none"
- id="path3061"
- sodipodi:cx="7"
- sodipodi:cy="6"
- sodipodi:rx="6"
- sodipodi:ry="6"
- d="M 13,6 C 13,9.3137085 10.313708,12 7,12 3.6862915,12 1,9.3137085 1,6 1,2.6862915 3.6862915,0 7,0 c 3.313708,0 6,2.6862915 6,6 z"
- transform="translate(1001.9023,-294.779)" />
- <path
- sodipodi:nodetypes="ccccccc"
- style="opacity:0.40000000000000002;fill:none;stroke:url(#linearGradient3832);stroke-opacity:1"
- d="m 1012.6311,-287.28682 -3.1599,2.58535 -1.0607,1.96666 -0.038,4.53597 5.3756,-0.0884 3.9221,-3.54164 z"
- id="path3823"
- inkscape:connector-curvature="0" />
+ id="path5355"
+ d="m 1015.5652,-289.24867 5.7955,-5.97227"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <g
+ id="g5722"
+ style="fill:none;stroke:url(#linearGradient5742);stroke-width:1.30888438"
+ transform="matrix(0.76430881,0,0,0.76371012,238.42869,-67.073866)">
+ <path
+ inkscape:connector-curvature="0"
+ id="path5724"
+ d="m 1013.5881,-286.85476 -4.9498,5.30332 0.082,4.01795 4.4463,0 5.1796,-4.61373 z"
+ style="fill:none;stroke:url(#linearGradient5744);stroke-width:1.30888438000000007"
+ sodipodi:nodetypes="cccccc" />
+ </g>
</g>
+ <rect
+ style="fill:url(#linearGradient5335);fill-opacity:1;stroke:none"
+ id="rect4559"
+ width="9.4280767"
+ height="4.7140384"
+ x="-748.37506"
+ y="-725.74768"
+ transform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,0,0)" />
+ <rect
+ transform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,0,0)"
+ y="-725.23938"
+ x="-747.86682"
+ height="3.6901855"
+ width="8.4189596"
+ id="rect5337"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1;stroke-opacity:1" />
+ <rect
+ style="opacity:0.40000000000000002;fill:none;stroke:url(#linearGradient5347);stroke-width:1;stroke-opacity:1"
+ id="rect5339"
+ width="6.3418031"
+ height="1.7014319"
+ x="-746.78406"
+ y="-724.245"
+ transform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,0,0)" />
</g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8-3"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-2"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_backward.png b/icon-themes/tango_testing/cmd/lc_backward.png
new file mode 100644
index 000000000000..3af7675e1b71
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_backward.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_backward.svg b/icon-themes/tango_testing/cmd/lc_backward.svg
new file mode 100644
index 000000000000..ece5eac93c39
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_backward.svg
@@ -0,0 +1,616 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_backward.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_backward.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6"><linearGradient
+ inkscape:collect="always"
+ id="linearGradient4345">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4347" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4349" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4339">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3511"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ id="linearGradient3782-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-2"
+ id="linearGradient3501-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="17"
+ y1="2"
+ x2="17"
+ y2="16" />
+<linearGradient
+ id="linearGradient3764-2">
+ <stop
+ id="stop3766-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4345"
+ id="linearGradient4351"
+ x1="13"
+ y1="6"
+ x2="13"
+ y2="20"
+ gradientUnits="userSpaceOnUse" />
+</defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="781"
+ inkscape:window-height="480"
+ id="namedview4"
+ showgrid="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:zoom="11.313708"
+ inkscape:cx="14.777557"
+ inkscape:cy="9.1811432"
+ inkscape:window-x="309"
+ inkscape:window-y="105"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="g3862">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3494" />
+ </sodipodi:namedview>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ id="g3102"
+ transform="translate(26.966102,-7.7288136)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1"
+ transform="translate(-2,-1036.3622)">
+ <g
+ id="g3927"
+ transform="translate(-17.966102,8.7288136)">
+ <g
+ transform="translate(-3,4)"
+ id="g3862">
+ <g
+ id="g3496-4"
+ transform="translate(-6,0)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="6"
+ x="7"
+ height="14"
+ width="16"
+ id="rect2998-1"
+ style="fill:url(#linearGradient3501-6);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851-4"
+ transform="translate(0,1028.3622)"
+ d="M 7,6 7,20 23,20 23,6 z M 8,7 22,7 22,19 8,19 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:url(#linearGradient4351);fill-opacity:1;stroke:none"
+ d="M 8,7 8,19 22,19 22,7 z M 9,8 21,8 21,18 9,18 z"
+ transform="translate(0,1028.3622)"
+ id="path3860-5" />
+ </g>
+ <g
+ transform="translate(-9,8)"
+ id="g3503">
+ <rect
+ style="fill:url(#linearGradient3511);fill-opacity:1;stroke:none"
+ id="rect3505"
+ width="12"
+ height="10"
+ x="7"
+ y="6"
+ transform="translate(0,1028.3622)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 7,6 0,10 12,0 0,-10 z m 1,1 10,0 0,8 -10,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3507" />
+ <path
+ id="path3509"
+ transform="translate(0,1028.3622)"
+ d="m 8,7 0,8 10,0 0,-8 z m 1,1 8,0 0,6 -8,0 z"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.png b/icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.png
new file mode 100644
index 000000000000..2b886d276e05
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.svg b/icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.svg
new file mode 100644
index 000000000000..835468e003e4
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.svg
@@ -0,0 +1,579 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_basicshapes.circle-pie.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_basicshapes.circle-pie.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ id="linearGradient3764-2">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop3766-7" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop3768-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782-3">
+ <stop
+ id="stop3784-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop3786-9"
+ offset="1"
+ style="stop-color:#646464;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3511"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4339">
+ <stop
+ id="stop4341"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4343"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="19.999994"
+ x2="12"
+ y1="3.9999945"
+ x1="12"
+ id="linearGradient3899"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895-1"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885-2"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875-5"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-3" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-7" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-1">
+ <stop
+ id="stop3784-0"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786-8"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="576"
+ inkscape:window-height="421"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="1"
+ inkscape:cx="19.223852"
+ inkscape:cy="14.619553"
+ inkscape:window-x="542"
+ inkscape:window-y="136"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="layer1-6">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3245" />
+ </sodipodi:namedview>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ transform="translate(-2.0254234,-27.152542)"
+ id="g3102">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-17.966102,8.7288136)"
+ id="g3927">
+ <g
+ id="g3862"
+ transform="translate(-3,4)">
+ <g
+ transform="matrix(1,0,0,1.3426955,58.689213,1052.1662)"
+ id="g3102-0">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1-6"
+ inkscape:label="Ebene 1">
+ <path
+ transform="matrix(1,0,0,1.0240572,-31.694915,1031.9828)"
+ d="M 23,12 A 11,8 0 1 1 11.979816,4.0000135 L 12,12 z"
+ sodipodi:ry="8"
+ sodipodi:rx="11"
+ sodipodi:cy="12"
+ sodipodi:cx="12"
+ id="path3123"
+ style="fill:url(#linearGradient3899);fill-opacity:1;stroke:none"
+ sodipodi:type="arc"
+ sodipodi:start="0"
+ sodipodi:end="4.7105541" />
+ <path
+ transform="matrix(0.9546735,0,0,0.97738311,-31.145957,1032.541)"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.8934111;stroke-opacity:1"
+ d="m 22.986102,12.402013 c -0.305285,4.412696 -5.471413,7.809905 -11.53887,7.58788 C 5.3797751,19.767867 0.70861216,16.010683 1.0138975,11.597987 1.2979352,7.4924128 5.8140989,4.2116192 11.459579,4.0096605 l 0,8.4141745 z"
+ id="path3901" />
+ <path
+ transform="matrix(0.86447463,0,0,0.88369103,-30.071383,1033.6675)"
+ style="fill:none;stroke:#ffffff;stroke-width:0.98738116;stroke-opacity:1"
+ d="M 22.851392,13.286354 C 21.945258,17.655209 16.366474,20.569518 10.359299,19.910511 4.3521239,19.251504 0.21691315,15.175618 1.1230473,10.806763 1.8396772,7.3515883 5.556804,4.6344289 10.30396,4.0956646 l 0,9.1900494 z"
+ id="path3903"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cssccc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ type="text/css"
+ id="style1470-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.circle.png b/icon-themes/tango_testing/cmd/lc_basicshapes.circle.png
new file mode 100644
index 000000000000..e400605b156a
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.circle.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.circle.svg b/icon-themes/tango_testing/cmd/lc_basicshapes.circle.svg
new file mode 100644
index 000000000000..cb7f6155b082
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.circle.svg
@@ -0,0 +1,585 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_basicshapes.circle.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_basicshapes.circle.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ id="linearGradient3764-2">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop3766-7" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop3768-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782-3">
+ <stop
+ id="stop3784-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop3786-9"
+ offset="1"
+ style="stop-color:#646464;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3511"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4339">
+ <stop
+ id="stop4341"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4343"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="19.999994"
+ x2="12"
+ y1="3.9999945"
+ x1="12"
+ id="linearGradient3899"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895-1"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885-2"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875-5"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-3" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-7" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-1">
+ <stop
+ id="stop3784-0"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786-8"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="716"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="1"
+ inkscape:cx="18.178357"
+ inkscape:cy="13.092738"
+ inkscape:window-x="0"
+ inkscape:window-y="30"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg2">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3245" />
+ </sodipodi:namedview>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ transform="translate(-2.0254234,-27.152542)"
+ id="g3102">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-17.966102,8.7288136)"
+ id="g3927">
+ <g
+ id="g3862"
+ transform="translate(-3,4)">
+ <g
+ transform="matrix(1,0,0,1.3426955,58.689213,1052.1662)"
+ id="g3102-0">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1-6"
+ inkscape:label="Ebene 1">
+ <path
+ transform="matrix(1,0,0,1.0240572,-31.694915,1031.9828)"
+ d="M 23,12 A 11,8 0 1 1 1,12 11,8 0 1 1 23,12 z"
+ sodipodi:ry="8"
+ sodipodi:rx="11"
+ sodipodi:cy="12"
+ sodipodi:cx="12"
+ id="path3123"
+ style="fill:url(#linearGradient3899);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.8934111;stroke-opacity:1"
+ id="path3901"
+ sodipodi:cx="12"
+ sodipodi:cy="12"
+ sodipodi:rx="11"
+ sodipodi:ry="8"
+ d="M 23,12 A 11,8 0 1 1 1,12 11,8 0 1 1 23,12 z"
+ transform="matrix(0.9546735,0,0,0.97738311,-31.145957,1032.541)" />
+ <path
+ transform="matrix(0.86447463,0,0,0.83714065,-30.071383,1034.5985)"
+ d="M 23,12 A 11,8 0 1 1 1,12 11,8 0 1 1 23,12 z"
+ sodipodi:ry="8"
+ sodipodi:rx="11"
+ sodipodi:cy="12"
+ sodipodi:cx="12"
+ id="path3903"
+ style="fill:none;stroke:#ffffff;stroke-width:1.01446211;stroke-opacity:1"
+ sodipodi:type="arc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ type="text/css"
+ id="style1470-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.diamond.png b/icon-themes/tango_testing/cmd/lc_basicshapes.diamond.png
new file mode 100644
index 000000000000..8dc2bf08967a
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.diamond.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.diamond.svg b/icon-themes/tango_testing/cmd/lc_basicshapes.diamond.svg
new file mode 100644
index 000000000000..bc491d1eaa5e
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.diamond.svg
@@ -0,0 +1,417 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_basicshapes.diamond.svg.png"
+ sodipodi:docname="lc_basicshapes.diamond.svg"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:version="0.32"
+ id="svg1288"
+ height="24.000000px"
+ width="24.000000px"
+ version="1.1">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient2533">
+ <stop
+ style="stop-color:#959595;stop-opacity:1.0000000;"
+ offset="0.0000000"
+ id="stop2535" />
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;"
+ offset="1.0000000"
+ id="stop2537" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2056"
+ inkscape:collect="always">
+ <stop
+ id="stop2058"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop2060"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2218">
+ <stop
+ id="stop2220"
+ offset="0.0000000"
+ style="stop-color:#b6b6b6;stop-opacity:1.0000000;" />
+ <stop
+ id="stop2222"
+ offset="1.0000000"
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,55.80966,0.104330)"
+ gradientUnits="userSpaceOnUse"
+ y2="19.500000"
+ x2="16.256456"
+ y1="4.3914247"
+ x1="6.2532201"
+ id="linearGradient2224"
+ xlink:href="#linearGradient2218"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient1321"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,26.80966,0.104330)"
+ x1="-8.9244661"
+ y1="11.125187"
+ x2="-14.098917"
+ y2="0.27103925" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.000000,0.000000,0.000000,0.631579,1.223793e-16,7.184211)"
+ r="11.875000"
+ fy="19.500000"
+ fx="12.625000"
+ cy="19.500000"
+ cx="12.625000"
+ id="radialGradient2062"
+ xlink:href="#linearGradient2056"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2229"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,65.82356,0.104330)"
+ x1="6.2532201"
+ y1="4.3914247"
+ x2="16.256456"
+ y2="19.500000" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2527"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,81.32356,-0.395670)"
+ x1="-42.778759"
+ y1="-7.0079961"
+ x2="-33.970879"
+ y2="14.068008" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.112640,0.000000,0.000000,1.112640,78.16958,0.630708)"
+ x1="6.2532201"
+ y1="4.3914247"
+ x2="16.256456"
+ y2="19.500000" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2533"
+ id="linearGradient2531"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,80.82356,-0.895670)"
+ x1="-32.398041"
+ y1="5.4174099"
+ x2="-27.679535"
+ y2="22.246758" />
+ <linearGradient
+ y2="13.460031"
+ x2="-51.140827"
+ y1="6.2774138"
+ x1="-63.251663"
+ gradientTransform="matrix(1.192114,0.000000,-1.001683e-17,1.192114,87.06125,-11.57533)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient1331"
+ xlink:href="#linearGradient2218"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3884"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3886"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="20.019678"
+ y2="12.019678" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-y="30"
+ inkscape:window-x="0"
+ inkscape:window-height="716"
+ inkscape:window-width="1366"
+ inkscape:document-units="px"
+ inkscape:grid-bbox="true"
+ showgrid="true"
+ inkscape:current-layer="g3878"
+ inkscape:cy="15.065357"
+ inkscape:cx="16.270362"
+ inkscape:zoom="8"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:snap-global="false"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3107"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:groupmode="layer"
+ inkscape:label="Layer 1"
+ id="layer1">
+ <g
+ transform="translate(4,4)"
+ id="g3102">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1-4"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(2,4)"
+ id="g3927">
+ <g
+ id="g3862"
+ transform="translate(-3,4)">
+ <g
+ id="g3878"
+ transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,736.09818,295.05818)">
+ <rect
+ style="fill:url(#linearGradient3886);fill-opacity:1;stroke:none"
+ id="rect2998"
+ width="17"
+ height="17"
+ x="3"
+ y="0"
+ transform="translate(0,1028.3622)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="M 3,0 3,17 20,17 20,0 z M 4,1 19,1 19,16 4,16 z"
+ transform="translate(0,1028.3622)"
+ id="rect3851" />
+ <path
+ id="path3860"
+ transform="translate(0,1028.3622)"
+ d="M 4,1 4,16 19,16 19,1 z M 5,2 18,2 18,15 5,15 z"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.ellipse.png b/icon-themes/tango_testing/cmd/lc_basicshapes.ellipse.png
new file mode 100644
index 000000000000..233b97965fbd
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.ellipse.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.png b/icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.png
new file mode 100644
index 000000000000..05466011aa4a
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.svg b/icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.svg
new file mode 100644
index 000000000000..e6a09fb291d1
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.svg
@@ -0,0 +1,250 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_basicshapes.isosceles-triangle.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_basicshapes.isosceles-triangle.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3967"
+ x1="10"
+ y1="2"
+ x2="10"
+ y2="20"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0932988,0,0,1.0932988,-0.09329881,0.13402377)" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="721"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="1"
+ inkscape:cx="14.823233"
+ inkscape:cy="9.8470033"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg2">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3189"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <path
+ style="fill:url(#linearGradient3967);fill-opacity:1;stroke:none"
+ d="M 1,22 22.865976,22 11.932988,2.3206214 z"
+ id="path3191"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path3969"
+ d="m 1.845613,21.477898 20.201537,0 L 11.946381,3.2867103 z"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 3.5117897,20.502999 16.8579703,0 -8.428985,-15.2847015 z"
+ id="path3971"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccc" />
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.png b/icon-themes/tango_testing/cmd/lc_basicshapes.png
new file mode 100644
index 000000000000..8dc2bf08967a
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.png b/icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.png
new file mode 100644
index 000000000000..ccd1e420543c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.svg b/icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.svg
new file mode 100644
index 000000000000..a842e473499f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.svg
@@ -0,0 +1,154 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_basicshapes.quadrat.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_basicshapes.quadrat.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3943"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always"
+ gradientTransform="matrix(1.1578947,0,0,1.1,0.52631579,1027.3622)" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="721"
+ id="namedview4"
+ showgrid="false"
+ inkscape:zoom="1"
+ inkscape:cx="30.563799"
+ inkscape:cy="9.6201514"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g3862">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3367"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <g
+ transform="translate(-28.033898,-1025.43)"
+ id="layer1"
+ inkscape:label="Ebene 1">
+ <g
+ id="g3927"
+ transform="translate(28.033898,-4.9322)">
+ <g
+ id="g3862"
+ transform="translate(-3,4)">
+ <rect
+ y="1027.3622"
+ x="4"
+ height="22"
+ width="22"
+ id="rect2998"
+ style="fill:url(#linearGradient3774);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851"
+ d="m 4,1027.3622 0,22 22,0 0,-22 z m 1,1 20,0 0,20 -20,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 5,1028.3622 0,20 20,0 0,-20 z m 1,1 18,0 0,18 -18,0 z"
+ id="path3860" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.rectangle.png b/icon-themes/tango_testing/cmd/lc_basicshapes.rectangle.png
new file mode 100644
index 000000000000..fa7597007db4
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.rectangle.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.png b/icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.png
new file mode 100644
index 000000000000..223cead62ad7
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.svg b/icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.svg
new file mode 100644
index 000000000000..e9032ef3b538
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.svg
@@ -0,0 +1,298 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24.000000px"
+ height="24.000000px"
+ id="svg1288"
+ sodipodi:version="0.32"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_basicshapes.right-triangle.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_basicshapes.right-triangle.png"
+ inkscape:export-xdpi="90.000000"
+ inkscape:export-ydpi="90.000000"
+ version="1.1">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient2218">
+ <stop
+ style="stop-color:#b6b6b6;stop-opacity:1.0000000;"
+ offset="0.0000000"
+ id="stop2220" />
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;"
+ offset="1.0000000"
+ id="stop2222" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2224"
+ x1="6.2532201"
+ y1="4.3914247"
+ x2="16.256456"
+ y2="19.500000"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.441894e-16,-1.000000,1.000000,2.441894e-16,26.76771,32.18389)" />
+ <linearGradient
+ y2="3.7637231"
+ x2="22.882257"
+ y1="11.590612"
+ x1="7.5016217"
+ gradientTransform="matrix(2.583112e-17,1.000000,-1.000000,2.583112e-17,48.22134,-3.459283)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient1481"
+ xlink:href="#linearGradient2218"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3761"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1,-1,0,49.437473,-1.808481)"
+ x1="4.8084812"
+ y1="38.437473"
+ x2="22.808481"
+ y2="38.437473" />
+ <linearGradient
+ gradientTransform="matrix(1.0932988,0,0,1.0932988,-0.09329881,0.13402377)"
+ gradientUnits="userSpaceOnUse"
+ y2="20"
+ x2="10"
+ y1="2"
+ x1="10"
+ id="linearGradient3967"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782"
+ id="linearGradient3788"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="5.508987"
+ inkscape:cy="17.400483"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1080"
+ inkscape:window-height="720"
+ inkscape:window-x="270"
+ inkscape:window-y="24"
+ inkscape:snap-global="false"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2991"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer">
+ <path
+ sodipodi:nodetypes="cccc"
+ style="color:#000000;fill:url(#linearGradient3761);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.80000000999999998;marker:none;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans"
+ d="M 3,3.0975856 3,21 22.089874,21 3,3.0975856 z"
+ id="path1340"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path3858"
+ d="m 3.4990699,4.2580818 0,16.2415782 17.3571591,0 L 3.4990699,4.2580818 z"
+ style="opacity:0.4;color:#000000;fill:none;stroke:#000000;stroke-width:0.99999994;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans"
+ sodipodi:nodetypes="cccc" />
+ <path
+ sodipodi:nodetypes="cccc"
+ style="color:#000000;fill:none;stroke:#ffffff;stroke-width:0.99999988;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans"
+ d="m 4.5013664,6.3931973 0,13.1082167 13.9940846,0 L 4.5013664,6.3931973 z"
+ id="path3860"
+ inkscape:connector-curvature="0" />
+ </g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.png b/icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.png
new file mode 100644
index 000000000000..cf940ce9843c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.svg b/icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.svg
new file mode 100644
index 000000000000..5aa585a2a6bc
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.svg
@@ -0,0 +1,162 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_basicshapes.round-quadrat.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_basicshapes.round-quadrat.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always"
+ gradientTransform="matrix(1.1578947,0,0,1.1,-0.47368421,1028.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3003"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1578947,0,0,1.1,-0.47368421,1028.3622)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="721"
+ id="namedview4"
+ showgrid="true"
+ inkscape:zoom="16"
+ inkscape:cx="18.544994"
+ inkscape:cy="9.5600724"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg2">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3367"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <g
+ id="g2995"
+ transform="translate(1,-1)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1"
+ transform="translate(-28.033898,-1025.43)">
+ <g
+ transform="translate(28.033898,-4.9322)"
+ id="g3927">
+ <g
+ transform="translate(-3,4)"
+ id="g3862">
+ <rect
+ ry="3.0000174"
+ rx="3.0000174"
+ style="fill:url(#linearGradient3003);fill-opacity:1;stroke:none"
+ id="rect2998"
+ width="22"
+ height="22"
+ x="3"
+ y="1028.3622" />
+ <path
+ id="path3860"
+ transform="translate(0,1028.3622)"
+ d="M 4,1 4,21 24,21 24,1 z M 5,2 23,2 23,20 5,20 z"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ inkscape:connector-curvature="0"
+ id="rect3388"
+ transform="translate(3,1028.3622)"
+ d="M 3,0 C 1.3379904,0 0,1.3379904 0,3 l 0,16 c 0,1.66201 1.3379904,3 3,3 l 16,0 c 1.66201,0 3,-1.33799 3,-3 L 22,3 C 22,1.3379904 20.66201,0 19,0 L 3,0 z m 0,1 16,0 c 1.10801,0 2,0.8919904 2,2 l 0,16 c 0,1.10801 -0.89199,2 -2,2 L 3,21 C 1.8919904,21 1,20.10801 1,19 L 1,3 C 1,1.8919904 1.8919904,1 3,1 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_beforeobject.png b/icon-themes/tango_testing/cmd/lc_beforeobject.png
new file mode 100644
index 000000000000..ff0a2f65d772
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_beforeobject.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_beforeobject.svg b/icon-themes/tango_testing/cmd/lc_beforeobject.svg
new file mode 100644
index 000000000000..e85415688044
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_beforeobject.svg
@@ -0,0 +1,746 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_forward.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_forward.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6"><linearGradient
+ inkscape:collect="always"
+ id="linearGradient4162">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4164" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4166" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4345">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4347" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4349" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4339">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3501"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3511"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ id="linearGradient3782-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-2"
+ id="linearGradient3501-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="17"
+ y1="2"
+ x2="17"
+ y2="16" />
+<linearGradient
+ id="linearGradient3764-2">
+ <stop
+ id="stop3766-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4345"
+ id="linearGradient4351"
+ x1="13"
+ y1="6"
+ x2="13"
+ y2="20"
+ gradientUnits="userSpaceOnUse" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4162"
+ id="linearGradient4168"
+ x1="11"
+ y1="6"
+ x2="11"
+ y2="16"
+ gradientUnits="userSpaceOnUse" />
+</defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="781"
+ inkscape:window-height="423"
+ id="namedview4"
+ showgrid="false"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:zoom="1"
+ inkscape:cx="5.4003665"
+ inkscape:cy="7.6303646"
+ inkscape:window-x="82"
+ inkscape:window-y="77"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="g3862">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3494" />
+ </sodipodi:namedview>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ id="g3102"
+ transform="translate(26.966102,-7.7288136)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1"
+ transform="translate(-2,-1036.3622)">
+ <g
+ id="g3927"
+ transform="translate(-17.966102,8.7288136)">
+ <g
+ transform="translate(-3,4)"
+ id="g3862">
+ <g
+ transform="translate(-9,8)"
+ id="g3503">
+ <rect
+ style="fill:url(#linearGradient3511);fill-opacity:1;stroke:none"
+ id="rect3505"
+ width="12"
+ height="10"
+ x="7"
+ y="6"
+ transform="translate(0,1028.3622)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 7,6 0,10 12,0 0,-10 z m 1,1 10,0 0,8 -10,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3507" />
+ <path
+ id="path3509"
+ transform="translate(0,1028.3622)"
+ d="m 8,7 0,8 10,0 0,-8 z m 1,1 8,0 0,6 -8,0 z"
+ style="fill:url(#linearGradient4168);fill-opacity:1;stroke:none;opacity:0.40000000000000002"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <g
+ id="g3496-4"
+ transform="translate(-6,0)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="6"
+ x="7"
+ height="14"
+ width="16"
+ id="rect2998-1"
+ style="fill:url(#linearGradient3501-6);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851-4"
+ transform="translate(0,1028.3622)"
+ d="M 7,6 7,20 23,20 23,6 z M 8,7 22,7 22,19 8,19 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:url(#linearGradient4351);fill-opacity:1;stroke:none"
+ d="M 8,7 8,19 22,19 22,7 z M 9,8 21,8 21,18 9,18 z"
+ transform="translate(0,1028.3622)"
+ id="path3860-5" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_behindobject.png b/icon-themes/tango_testing/cmd/lc_behindobject.png
new file mode 100644
index 000000000000..dc317bad376d
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_behindobject.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_behindobject.svg b/icon-themes/tango_testing/cmd/lc_behindobject.svg
new file mode 100644
index 000000000000..9905f6ef462c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_behindobject.svg
@@ -0,0 +1,746 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_behindobject.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_behindobject.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6"><linearGradient
+ inkscape:collect="always"
+ id="linearGradient4162">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4164" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4166" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4345">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4347" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4349" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4339">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3501"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3511"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ id="linearGradient3782-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-2"
+ id="linearGradient3501-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="17"
+ y1="2"
+ x2="17"
+ y2="16" />
+<linearGradient
+ id="linearGradient3764-2">
+ <stop
+ id="stop3766-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4345"
+ id="linearGradient4351"
+ x1="13"
+ y1="6"
+ x2="13"
+ y2="20"
+ gradientUnits="userSpaceOnUse" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4162"
+ id="linearGradient4168"
+ x1="11"
+ y1="6"
+ x2="11"
+ y2="16"
+ gradientUnits="userSpaceOnUse" />
+</defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="781"
+ inkscape:window-height="423"
+ id="namedview4"
+ showgrid="false"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:zoom="2"
+ inkscape:cx="6.8423189"
+ inkscape:cy="11.68524"
+ inkscape:window-x="82"
+ inkscape:window-y="77"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="g3862">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3494" />
+ </sodipodi:namedview>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ id="g3102"
+ transform="translate(26.966102,-7.7288136)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1"
+ transform="translate(-2,-1036.3622)">
+ <g
+ id="g3927"
+ transform="translate(-17.966102,8.7288136)">
+ <g
+ transform="translate(-3,4)"
+ id="g3862">
+ <g
+ id="g3496-4"
+ transform="translate(-6,0)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="6"
+ x="7"
+ height="14"
+ width="16"
+ id="rect2998-1"
+ style="fill:url(#linearGradient3501-6);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851-4"
+ transform="translate(0,1028.3622)"
+ d="M 7,6 7,20 23,20 23,6 z M 8,7 22,7 22,19 8,19 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:url(#linearGradient4351);fill-opacity:1;stroke:none"
+ d="M 8,7 8,19 22,19 22,7 z M 9,8 21,8 21,18 9,18 z"
+ transform="translate(0,1028.3622)"
+ id="path3860-5" />
+ </g>
+ <g
+ transform="translate(-9,8)"
+ id="g3503">
+ <rect
+ style="fill:url(#linearGradient3511);fill-opacity:1;stroke:none"
+ id="rect3505"
+ width="12"
+ height="10"
+ x="7"
+ y="6"
+ transform="translate(0,1028.3622)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 7,6 0,10 12,0 0,-10 z m 1,1 10,0 0,8 -10,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3507" />
+ <path
+ id="path3509"
+ transform="translate(0,1028.3622)"
+ d="m 8,7 0,8 10,0 0,-8 z m 1,1 8,0 0,6 -8,0 z"
+ style="fill:url(#linearGradient4168);fill-opacity:1;stroke:none;opacity:0.40000000000000002"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_bezierappend.png b/icon-themes/tango_testing/cmd/lc_bezierappend.png
new file mode 100644
index 000000000000..a243f115e767
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bezierappend.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_bezierappend.svg b/icon-themes/tango_testing/cmd/lc_bezierappend.svg
new file mode 100644
index 000000000000..78252890e85b
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bezierappend.svg
@@ -0,0 +1,636 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg19843"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_bezierappend.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_bezierappend.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs19845">
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-5"
+ xlink:href="#linearGradient6977-28-2-3-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-50" />
+ <stop
+ id="stop6981-1-2-8-5-26"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-31"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-98"
+ xlink:href="#linearGradient7113-62-4-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-82"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8252"
+ xlink:href="#linearGradient3848-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3848-4-7">
+ <stop
+ id="stop3850-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4132"
+ id="linearGradient18957"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0000898,0,0,1.506961,55.933537,1.309895)"
+ x1="-20"
+ y1="12"
+ x2="-20"
+ y2="10" />
+ <linearGradient
+ id="linearGradient4132">
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1;"
+ offset="0"
+ id="stop4134" />
+ <stop
+ id="stop4140"
+ offset="0.55712456"
+ style="stop-color:#babdb6;stop-opacity:1;" />
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1;"
+ offset="1"
+ id="stop4136" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient13347"
+ id="linearGradient19743"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.25026662,0,0,2.5116019,37.701673,-9.3386642)"
+ x1="-20"
+ y1="12"
+ x2="-20"
+ y2="10" />
+ <linearGradient
+ id="linearGradient13347">
+ <stop
+ style="stop-color:#d9d6d0;stop-opacity:1;"
+ offset="0"
+ id="stop13349" />
+ <stop
+ id="stop13351"
+ offset="0.05057461"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop13353"
+ offset="0.45965657"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1"
+ offset="0.75905466"
+ id="stop13355" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop13357" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="20.624179"
+ inkscape:cy="14.001237"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="885"
+ inkscape:window-height="421"
+ inkscape:window-x="0"
+ inkscape:window-y="173"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid20428"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata19848">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ id="g13437"
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,51.871951,35.342638)">
+ <g
+ style="stroke:#000000;stroke-width:0.68183583;stroke-opacity:1"
+ id="g13433"
+ transform="translate(-1.1426585,0.69520385)">
+ <g
+ id="g18946"
+ transform="translate(4.0378452,-4.0679784)"
+ style="stroke-width:0.68183583">
+ <rect
+ style="fill:url(#linearGradient18957);fill-opacity:1;stroke:none"
+ id="rect13435"
+ width="10.909374"
+ height="2.0455072"
+ x="26.163557"
+ y="16.259977"
+ rx="0.68183386"
+ ry="0.68183386"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.38353199"
+ rx="0.38353199"
+ y="16.577948"
+ x="26.507866"
+ height="1.4015719"
+ width="10.231111"
+ id="rect19739"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.6605987;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.68183428"
+ rx="0.68183428"
+ y="15.57814"
+ x="30.251909"
+ height="3.409179"
+ width="2.7300072"
+ id="rect19741"
+ style="fill:url(#linearGradient19743);fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.68183583;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect19745"
+ width="2.047291"
+ height="2.7276511"
+ x="30.592827"
+ y="15.916396"
+ rx="0.36785686"
+ ry="0.36785686"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ id="rect19765"
+ width="2.0117188"
+ height="1"
+ x="25.984375"
+ y="130.00781"
+ transform="matrix(0.48213077,-0.48213077,0.48213077,0.48213077,-110.99594,-40.245928)" />
+ </g>
+ </g>
+ </g>
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-7"
+ transform="translate(21.5,-1006.8622)">
+ <g
+ id="layer1-1"
+ inkscape:label="Ebene 1"
+ transform="translate(-33.607049,-15.848364)">
+ <g
+ transform="translate(-217.68591,907.85387)"
+ id="g7930"
+ style="display:inline;enable-background:new">
+ <g
+ style="display:inline"
+ inkscape:label="forma-text-bold"
+ id="g4412">
+ <g
+ style="display:none"
+ inkscape:label="baseplate"
+ id="g4414"
+ inkscape:groupmode="layer"
+ sodipodi:insensitive="true">
+ <rect
+ y="110"
+ x="366"
+ width="48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="48x48"
+ id="rect4416"
+ height="48" />
+ <rect
+ y="186"
+ x="373"
+ width="32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="32x32"
+ id="rect4418"
+ height="32" />
+ <rect
+ y="236"
+ x="372"
+ width="24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="24x24"
+ id="rect4420"
+ height="24" />
+ <rect
+ y="237"
+ x="373"
+ width="22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="22x22"
+ id="rect4422"
+ height="22" />
+ <rect
+ y="279"
+ x="373"
+ width="16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="16x16"
+ id="rect4424"
+ height="16" />
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="2.9707375"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ inkscape:label="context"
+ id="text4426"><tspan
+ y="72.513618"
+ x="2.9707375"
+ sodipodi:role="line"
+ id="tspan4428">actions</tspan></text>
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="63.970734"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ sodipodi:linespacing="125%"
+ inkscape:label="icon-name"
+ id="text4430"><tspan
+ y="72.513618"
+ x="63.970734"
+ sodipodi:role="line"
+ id="tspan4432">format-text-bold</tspan></text>
+ </g>
+ <g
+ style="display:inline"
+ inkscape:label="small sizes"
+ id="g4434"
+ inkscape:groupmode="layer" />
+ </g>
+ <g
+ transform="translate(0,-0.61871844)"
+ id="text8779"
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-5);fill-opacity:1;stroke:url(#linearGradient9586-98);stroke-width:1;stroke-opacity:1;font-family:Sans" />
+ <g
+ id="g22"
+ style="display:inline;enable-background:new"
+ transform="translate(246.1134,121.70809)">
+ <g
+ id="g80"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ style="display:inline"
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)" />
+ <g
+ id="g82"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ style="fill:#fce94f;stroke:none;display:inline"
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)" />
+ <g
+ transform="translate(-30.84139,-1043.7006)"
+ id="layer1-2-0"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-1.202273,-11.879196)"
+ id="g4766">
+ <g
+ transform="translate(-12,1.6391277e-6)"
+ id="g8247">
+ <rect
+ style="fill:#4aa700;fill-opacity:1;stroke:none"
+ id="rect8239"
+ width="3"
+ height="9"
+ x="30"
+ y="15.000002"
+ transform="translate(7.723222,1030.7284)"
+ rx="1.5"
+ ry="1.5" />
+ <rect
+ ry="1.5"
+ rx="1.5"
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-43.723221"
+ x="1048.7284"
+ height="9"
+ width="3"
+ id="rect8241"
+ style="fill:#4aa700;fill-opacity:1;stroke:none" />
+ <path
+ style="fill:url(#linearGradient8252);fill-opacity:1;stroke:none"
+ d="m 35.723222,1050.7284 3,0 0,3 1,0 0,-3 3,0 0,-1 -3,0 0,-3 -1,0 0,3 -3,0 z"
+ id="path8243"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,51.871951,35.342638)"
+ id="g20553">
+ <g
+ transform="translate(-1.1426585,0.69520385)"
+ id="g20555"
+ style="stroke:#000000;stroke-width:0.68183583;stroke-opacity:1">
+ <g
+ style="stroke-width:0.68183583"
+ transform="translate(4.0378452,-4.0679784)"
+ id="g20557">
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.68183386"
+ rx="0.68183386"
+ y="16.259977"
+ x="26.163557"
+ height="2.0455072"
+ width="10.909374"
+ id="rect20559"
+ style="fill:url(#linearGradient18957);fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.6605987;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect20561"
+ width="10.231111"
+ height="1.4015719"
+ x="26.507866"
+ y="16.577948"
+ rx="0.38353199"
+ ry="0.38353199"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ style="fill:url(#linearGradient19743);fill-opacity:1;stroke:none"
+ id="rect20563"
+ width="2.7300072"
+ height="3.409179"
+ x="30.251909"
+ y="15.57814"
+ rx="0.68183428"
+ ry="0.68183428"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.36785686"
+ rx="0.36785686"
+ y="15.916396"
+ x="30.592827"
+ height="2.7276511"
+ width="2.047291"
+ id="rect20565"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.68183583;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+ <rect
+ transform="matrix(0.48213077,-0.48213077,0.48213077,0.48213077,-110.99594,-40.245928)"
+ y="130.00781"
+ x="25.984375"
+ height="1"
+ width="2.0117188"
+ id="rect20567"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ <g
+ transform="translate(21.5,-1006.8622)"
+ id="g20569"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="g20571">
+ <g
+ style="display:inline;enable-background:new"
+ id="g20573"
+ transform="translate(-217.68591,907.85387)">
+ <g
+ id="g20575"
+ inkscape:label="forma-text-bold"
+ style="display:inline">
+ <g
+ sodipodi:insensitive="true"
+ inkscape:groupmode="layer"
+ id="g20577"
+ inkscape:label="baseplate"
+ style="display:none">
+ <rect
+ height="48"
+ id="rect20579"
+ inkscape:label="48x48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="48"
+ x="366"
+ y="110" />
+ <rect
+ height="32"
+ id="rect20581"
+ inkscape:label="32x32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="32"
+ x="373"
+ y="186" />
+ <rect
+ height="24"
+ id="rect20583"
+ inkscape:label="24x24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="24"
+ x="372"
+ y="236" />
+ <rect
+ height="22"
+ id="rect20585"
+ inkscape:label="22x22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="22"
+ x="373"
+ y="237" />
+ <rect
+ height="16"
+ id="rect20587"
+ inkscape:label="16x16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="16"
+ x="373"
+ y="279" />
+ <text
+ id="text20589"
+ inkscape:label="context"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ x="2.9707375"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan20591"
+ sodipodi:role="line"
+ x="2.9707375"
+ y="72.513618">actions</tspan></text>
+ <text
+ id="text20593"
+ inkscape:label="icon-name"
+ sodipodi:linespacing="125%"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ x="63.970734"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan20595"
+ sodipodi:role="line"
+ x="63.970734"
+ y="72.513618">format-text-bold</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="g20597"
+ inkscape:label="small sizes"
+ style="display:inline" />
+ </g>
+ <g
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-5);fill-opacity:1;stroke:url(#linearGradient9586-98);stroke-width:1;stroke-opacity:1;font-family:Sans"
+ id="g20599"
+ transform="translate(0,-0.61871844)" />
+ <g
+ transform="translate(246.1134,121.70809)"
+ style="display:inline;enable-background:new"
+ id="g20601">
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g20603" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g20605" />
+ <g
+ inkscape:label="Ebene 1"
+ id="g20607"
+ transform="translate(-30.84139,-1043.7006)">
+ <g
+ id="g20609"
+ transform="translate(-1.202273,-11.879196)">
+ <g
+ id="g20611"
+ transform="translate(-12,1.6391277e-6)">
+ <rect
+ ry="1.5"
+ rx="1.5"
+ transform="translate(7.723222,1030.7284)"
+ y="15.000002"
+ x="30"
+ height="9"
+ width="3"
+ id="rect20613"
+ style="fill:#4aa700;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#4aa700;fill-opacity:1;stroke:none"
+ id="rect20615"
+ width="3"
+ height="9"
+ x="1048.7284"
+ y="-43.723221"
+ transform="matrix(0,1,-1,0,0,0)"
+ rx="1.5"
+ ry="1.5" />
+ <path
+ sodipodi:nodetypes="ccccccccccccc"
+ inkscape:connector-curvature="0"
+ id="path20617"
+ d="m 35.723222,1050.7284 3,0 0,3 1,0 0,-3 3,0 0,-1 -3,0 0,-3 -1,0 0,3 -3,0 z"
+ style="fill:url(#linearGradient8252);fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_bezierdelete.png b/icon-themes/tango_testing/cmd/lc_bezierdelete.png
new file mode 100644
index 000000000000..5f59a1eb7b23
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bezierdelete.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_bezierdelete.svg b/icon-themes/tango_testing/cmd/lc_bezierdelete.svg
new file mode 100644
index 000000000000..4ea88c9bd2cd
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bezierdelete.svg
@@ -0,0 +1,19108 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg19843"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_bezierdelete.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_bezierdelete.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs19845">
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-5"
+ xlink:href="#linearGradient6977-28-2-3-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-50" />
+ <stop
+ id="stop6981-1-2-8-5-26"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-31"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-98"
+ xlink:href="#linearGradient7113-62-4-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-82"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8252"
+ xlink:href="#linearGradient3848-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3848-4-7">
+ <stop
+ id="stop3850-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4132"
+ id="linearGradient18957"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0000898,0,0,1.506961,55.933537,1.309895)"
+ x1="-20"
+ y1="12"
+ x2="-20"
+ y2="10" />
+ <linearGradient
+ id="linearGradient4132">
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1;"
+ offset="0"
+ id="stop4134" />
+ <stop
+ id="stop4140"
+ offset="0.55712456"
+ style="stop-color:#babdb6;stop-opacity:1;" />
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1;"
+ offset="1"
+ id="stop4136" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient13347"
+ id="linearGradient19743"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.25026662,0,0,2.5116019,37.701673,-9.3386642)"
+ x1="-20"
+ y1="12"
+ x2="-20"
+ y2="10" />
+ <linearGradient
+ id="linearGradient13347">
+ <stop
+ style="stop-color:#d9d6d0;stop-opacity:1;"
+ offset="0"
+ id="stop13349" />
+ <stop
+ id="stop13351"
+ offset="0.05057461"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop13353"
+ offset="0.45965657"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1"
+ offset="0.75905466"
+ id="stop13355" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop13357" />
+ </linearGradient>
+ <filter
+ height="1.7758865"
+ y="-0.38794324"
+ width="1.3474855"
+ x="-0.17374273"
+ id="filter10665-8"
+ inkscape:collect="always"
+ color-interpolation-filters="sRGB">
+ <feGaussianBlur
+ id="feGaussianBlur10667-3"
+ stdDeviation="0.65158089"
+ inkscape:collect="always" />
+ </filter>
+ <linearGradient
+ y2="17.085787"
+ x2="21.621317"
+ y1="20.621321"
+ x1="18.085783"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9886"
+ xlink:href="#linearGradient6958-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6289">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6291" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6293" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-27"
+ xlink:href="#linearGradient7113-62-4-59"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-2"
+ xlink:href="#linearGradient6977-28-2-3-5-70"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-59"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-65"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-70">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-0" />
+ <stop
+ id="stop6981-1-2-8-5-12"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4770"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4"
+ id="linearGradient3025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4">
+ <stop
+ id="stop3850"
+ offset="0"
+ style="stop-color:#b70000;stop-opacity:1;" />
+ <stop
+ id="stop3852"
+ offset="1"
+ style="stop-color:#ff2d2d;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946"
+ xlink:href="#linearGradient6958"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944"
+ xlink:href="#linearGradient6952"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595" />
+ <stop
+ id="stop9597"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9"
+ xlink:href="#linearGradient7113-62-7-0-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6"
+ xlink:href="#linearGradient7113-62-9-4-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-2">
+ <stop
+ id="stop6979-4-5-5-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-3" />
+ <stop
+ id="stop6985-44-1-5-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3"
+ xlink:href="#linearGradient7113-62-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ id="stop6979-4-5-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43" />
+ <stop
+ id="stop6985-44-1-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44"
+ xlink:href="#linearGradient6977-28-2-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3"
+ xlink:href="#linearGradient7113-62-9-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7">
+ <stop
+ id="stop6979-4-5-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4" />
+ <stop
+ id="stop6985-44-1-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4"
+ xlink:href="#linearGradient6977-28-2-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5"
+ xlink:href="#linearGradient7113-62-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2">
+ <stop
+ id="stop6979-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5" />
+ <stop
+ id="stop6985-44-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8"
+ xlink:href="#linearGradient6977-28-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8"
+ xlink:href="#linearGradient7113-62-52-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5">
+ <stop
+ id="stop6979-4-8-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3" />
+ <stop
+ id="stop6985-44-5-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1"
+ xlink:href="#linearGradient6977-28-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2"
+ xlink:href="#linearGradient7113-62-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6"
+ xlink:href="#linearGradient7113-62-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1"
+ xlink:href="#linearGradient7113-62-52"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7">
+ <stop
+ id="stop6979-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2" />
+ <stop
+ id="stop6985-44-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05"
+ xlink:href="#linearGradient6977-28-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9"
+ xlink:href="#linearGradient7113-62-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5">
+ <stop
+ id="stop6979-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8" />
+ <stop
+ id="stop6985-44-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0"
+ xlink:href="#linearGradient6977-28-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39"
+ xlink:href="#linearGradient7113-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28">
+ <stop
+ id="stop6979-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3" />
+ <stop
+ id="stop6985-44"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61"
+ xlink:href="#linearGradient6977-28"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9"
+ xlink:href="#linearGradient7113-6-1-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5">
+ <stop
+ id="stop6979-86-5-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6" />
+ <stop
+ id="stop6985-3-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1"
+ xlink:href="#linearGradient6977-14-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3">
+ <stop
+ id="stop6979-8-8-6-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0" />
+ <stop
+ id="stop6985-4-3-9-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8"
+ xlink:href="#linearGradient6977-7-3-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9"
+ xlink:href="#linearGradient7157-0-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7"
+ xlink:href="#linearGradient7113-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1">
+ <stop
+ id="stop6979-86-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7" />
+ <stop
+ id="stop6985-3-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7"
+ xlink:href="#linearGradient6977-14-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3">
+ <stop
+ id="stop6979-8-8-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8" />
+ <stop
+ id="stop6985-4-3-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7"
+ xlink:href="#linearGradient6977-7-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7"
+ xlink:href="#linearGradient7157-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7"
+ xlink:href="#linearGradient7113-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9">
+ <stop
+ id="stop6979-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5" />
+ <stop
+ id="stop6985-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06"
+ xlink:href="#linearGradient6977-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3">
+ <stop
+ id="stop6979-8-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8" />
+ <stop
+ id="stop6985-4-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4"
+ xlink:href="#linearGradient6977-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4"
+ xlink:href="#linearGradient7157-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8">
+ <stop
+ id="stop6979-0-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1" />
+ <stop
+ id="stop6985-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3"
+ xlink:href="#linearGradient6977-5-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1"
+ xlink:href="#linearGradient7113-6-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6">
+ <stop
+ id="stop6979-86-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2" />
+ <stop
+ id="stop6985-3-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1"
+ xlink:href="#linearGradient6977-14-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4"
+ xlink:href="#linearGradient7113-0-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34"
+ xlink:href="#linearGradient7113-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14">
+ <stop
+ id="stop6979-86"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2" />
+ <stop
+ id="stop6985-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3"
+ xlink:href="#linearGradient6977-14"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5">
+ <stop
+ id="stop6979-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4" />
+ <stop
+ id="stop6985-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0"
+ xlink:href="#linearGradient6977-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3"
+ xlink:href="#linearGradient7113-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2"
+ xlink:href="#linearGradient7157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7">
+ <stop
+ id="stop6979-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7" />
+ <stop
+ id="stop6985-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3"
+ xlink:href="#linearGradient7113"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7"
+ xlink:href="#linearGradient6977"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130"
+ xlink:href="#linearGradient4348-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126"
+ xlink:href="#linearGradient4437"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092"
+ xlink:href="#linearGradient3787-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084"
+ xlink:href="#linearGradient3185"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9">
+ <stop
+ id="stop4842-0-8-8-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6">
+ <stop
+ id="stop4842-0-8-8-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8">
+ <stop
+ id="stop4842-0-4-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5">
+ <stop
+ id="stop4842-0-8-5-7-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7">
+ <stop
+ id="stop4842-0-8-8-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1">
+ <stop
+ id="stop4842-0-8-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient6123"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8">
+ <stop
+ id="stop4842-0-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61">
+ <stop
+ id="stop4842-0-8-5-7"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3">
+ <stop
+ id="stop4842-0-1-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6">
+ <stop
+ id="stop4842-0-8-5-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3">
+ <stop
+ id="stop4842-0-8-5-3-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8">
+ <stop
+ id="stop4842-0-8-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852"
+ xlink:href="#linearGradient3185-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1">
+ <stop
+ id="stop4842-0-8-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0">
+ <stop
+ id="stop4842-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996"
+ inkscape:collect="always">
+ <stop
+ id="stop4998"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157"
+ inkscape:collect="always">
+ <stop
+ id="stop4159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685"
+ inkscape:collect="always">
+ <stop
+ id="stop5687"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977">
+ <stop
+ id="stop6979"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983" />
+ <stop
+ id="stop6985"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58">
+ <stop
+ id="stop6979-4-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6" />
+ <stop
+ id="stop6985-44-67"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9559"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9567"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9574"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9578"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593"
+ id="linearGradient9580"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9582"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9584-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9586-3"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638"
+ inkscape:collect="always">
+ <stop
+ id="stop6640"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826">
+ <stop
+ id="stop6828"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839">
+ <stop
+ id="stop6841"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881">
+ <stop
+ id="stop6883"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731">
+ <stop
+ id="stop4733"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790-4"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788-4"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786-0"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784-2"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807243,0,0,0.95038373,2.4016561,-1021.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4782-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-19"
+ id="linearGradient3025-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4-7-19">
+ <stop
+ id="stop3850-4-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862-3"
+ xlink:href="#linearGradient3848-4-7-19"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755-0"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749-1"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005-7"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996-9"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994-1"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984-4"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970-5"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968-2"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964-8"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950-1"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946-2"
+ xlink:href="#linearGradient6958-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944-8"
+ xlink:href="#linearGradient6952-6"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911-3"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893-7"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853-8"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851-6"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845-4"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832-1"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666-8"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659-2"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655-6"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653-6"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649-3"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644-2"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636-0"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619-5"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595-5" />
+ <stop
+ id="stop9597-7"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601-4" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631-5"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629-9"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627-1"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621-9"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617-6"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615-3"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613-9"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581-8"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387-4"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385-6"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383-0"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381-0"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379-8"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375-3"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373-2"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371-0"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369-9"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367-4"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618-6"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616-4"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612-8"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610-7"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561-3"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537-6"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9-2"
+ xlink:href="#linearGradient7113-62-7-0-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6-9"
+ xlink:href="#linearGradient7113-62-9-4-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-1">
+ <stop
+ id="stop6979-4-5-5-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-2" />
+ <stop
+ id="stop6985-44-1-5-4-01"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-4"
+ xlink:href="#linearGradient7113-62-7-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-5"
+ xlink:href="#linearGradient7113-62-9-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-1">
+ <stop
+ id="stop6979-4-5-5-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-7" />
+ <stop
+ id="stop6985-44-1-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-9"
+ xlink:href="#linearGradient6977-28-2-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3-1"
+ xlink:href="#linearGradient7113-62-9-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-0">
+ <stop
+ id="stop6979-4-5-1-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4-2" />
+ <stop
+ id="stop6985-44-1-7-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4-7"
+ xlink:href="#linearGradient6977-28-2-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-09">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-7" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-2"
+ xlink:href="#linearGradient7113-62-9-09"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-5">
+ <stop
+ id="stop6979-4-5-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-7" />
+ <stop
+ id="stop6985-44-1-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-5"
+ xlink:href="#linearGradient6977-28-2-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8-0"
+ xlink:href="#linearGradient7113-62-52-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-3">
+ <stop
+ id="stop6979-4-8-7-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3-4" />
+ <stop
+ id="stop6985-44-5-0-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1-6"
+ xlink:href="#linearGradient6977-28-7-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2-1"
+ xlink:href="#linearGradient7113-62-7-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-4"
+ xlink:href="#linearGradient7113-62-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-88"
+ xlink:href="#linearGradient7113-62-52-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-9">
+ <stop
+ id="stop6979-4-8-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-6" />
+ <stop
+ id="stop6985-44-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-11"
+ xlink:href="#linearGradient6977-28-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2-5" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9-3"
+ xlink:href="#linearGradient7113-62-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5-6">
+ <stop
+ id="stop6979-4-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8-4" />
+ <stop
+ id="stop6985-44-6-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0-5"
+ xlink:href="#linearGradient6977-28-5-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-3" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-96"
+ xlink:href="#linearGradient7113-62-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-25">
+ <stop
+ id="stop6979-4-67"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-4" />
+ <stop
+ id="stop6985-44-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-2"
+ xlink:href="#linearGradient6977-28-25"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8-0" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9-8"
+ xlink:href="#linearGradient7113-6-1-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-0">
+ <stop
+ id="stop6979-86-5-9-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6-0" />
+ <stop
+ id="stop6985-3-7-2-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1-7"
+ xlink:href="#linearGradient6977-14-1-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-1">
+ <stop
+ id="stop6979-8-8-6-1-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0-2" />
+ <stop
+ id="stop6985-4-3-9-3-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8-7"
+ xlink:href="#linearGradient6977-7-3-3-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9-2"
+ xlink:href="#linearGradient7157-0-7-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-7" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-5"
+ xlink:href="#linearGradient7113-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-3">
+ <stop
+ id="stop6979-86-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-1" />
+ <stop
+ id="stop6985-3-7-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-6"
+ xlink:href="#linearGradient6977-14-1-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-9">
+ <stop
+ id="stop6979-8-8-6-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-1" />
+ <stop
+ id="stop6985-4-3-9-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-81"
+ xlink:href="#linearGradient6977-7-3-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-7"
+ xlink:href="#linearGradient7157-0-7-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8-4" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7-4"
+ xlink:href="#linearGradient7113-9-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9-7">
+ <stop
+ id="stop6979-3-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5-6" />
+ <stop
+ id="stop6985-2-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06-9"
+ xlink:href="#linearGradient6977-9-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-6">
+ <stop
+ id="stop6979-8-8-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-00" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-3" />
+ <stop
+ id="stop6985-4-3-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-6"
+ xlink:href="#linearGradient6977-7-3-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-1"
+ xlink:href="#linearGradient7157-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8-1">
+ <stop
+ id="stop6979-0-9-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1-9" />
+ <stop
+ id="stop6985-7-2-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3-8"
+ xlink:href="#linearGradient6977-5-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8-3" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1-6"
+ xlink:href="#linearGradient7113-6-2-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6-3">
+ <stop
+ id="stop6979-86-8-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2-9" />
+ <stop
+ id="stop6985-3-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1-9"
+ xlink:href="#linearGradient6977-14-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4-6"
+ xlink:href="#linearGradient7113-0-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-24">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-42" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-0" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-2"
+ xlink:href="#linearGradient7113-6-24"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-62">
+ <stop
+ id="stop6979-86-84"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-3" />
+ <stop
+ id="stop6985-3-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-5"
+ xlink:href="#linearGradient6977-14-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-81">
+ <stop
+ id="stop6979-0-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-7" />
+ <stop
+ id="stop6985-7-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-4"
+ xlink:href="#linearGradient6977-5-81"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-5" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-5"
+ xlink:href="#linearGradient7113-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-1"
+ xlink:href="#linearGradient7157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-7"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-4">
+ <stop
+ id="stop6979-8-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-2" />
+ <stop
+ id="stop6985-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6-9"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-32"
+ xlink:href="#linearGradient7113-63"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-7"
+ xlink:href="#linearGradient6977-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130-1"
+ xlink:href="#linearGradient4348-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126-4"
+ xlink:href="#linearGradient4437-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124-5"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122-7"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120-8"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118-3"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114-7"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110-7"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108-6"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106-8"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104-5"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098-8"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094-8"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092-4"
+ xlink:href="#linearGradient3787-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088-2"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086-3"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084-0"
+ xlink:href="#linearGradient3185-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0-3" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8-3"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6-1" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8-1" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3-0" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2-5" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8-9" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9-4"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809-2"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1-5"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22-6" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439-0" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8-4" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60-3" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-26" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512-6">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647-5" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-2" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584-8" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580-3"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576-2" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572-1"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-8">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-28">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-75" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-28"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512-6"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2-9"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9-8"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-9"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-93" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-9"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-58">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-78" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2-58"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3-0" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3-8" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-1" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185-4"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572-8"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient8025-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-1">
+ <stop
+ id="stop4842-0-8-8-3-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8-6"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-22"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-6">
+ <stop
+ id="stop4842-0-8-8-9-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740-4"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1-9"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4-1"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5-3"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8-7">
+ <stop
+ id="stop4842-0-4-3-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-9">
+ <stop
+ id="stop4842-0-8-5-7-9-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6-8"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213-4"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-4">
+ <stop
+ id="stop4842-0-8-8-3-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-74">
+ <stop
+ id="stop4842-0-8-8-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-10"
+ id="linearGradient6123-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0-10"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-8"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-4">
+ <stop
+ id="stop4842-0-4-33"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-2">
+ <stop
+ id="stop4842-0-8-5-7-1"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1-5">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7-3" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1-6" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348-81"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7-5"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-0"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755-9"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873-8"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871-0"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869-6"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3-1">
+ <stop
+ id="stop4842-0-1-0-6"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664-5"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662-1"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-0">
+ <stop
+ id="stop4842-0-8-5-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9-6"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-7">
+ <stop
+ id="stop4842-0-8-5-3-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4-3"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032-5"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030-1"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028-5"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-8">
+ <stop
+ id="stop4842-0-8-5-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866-1"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852-1"
+ xlink:href="#linearGradient3185-6-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848-0"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846-6"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-8"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820-3"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-5">
+ <stop
+ id="stop4842-0-8-5-59"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-24"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-86"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-7">
+ <stop
+ id="stop4842-0-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6-4">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-2" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-4"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-62"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-2">
+ <stop
+ id="stop6979-04"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-31" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-0" />
+ <stop
+ id="stop6985-45"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-63">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-8" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832-6"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5-6"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7-9" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7-7"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58-3">
+ <stop
+ id="stop6979-4-6-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6-1" />
+ <stop
+ id="stop6985-44-67-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97-2"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9559-1"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9567-8"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9574-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9578-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593-0"
+ id="linearGradient9580-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9582-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9584-0"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9586-2"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6640-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826-1">
+ <stop
+ id="stop6828-9"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830-2"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839-8">
+ <stop
+ id="stop6841-8"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843-5"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881-6">
+ <stop
+ id="stop6883-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885-5"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895-9">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897-1" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915-2" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952-6">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954-7" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958-0">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960-3" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731-3">
+ <stop
+ id="stop4733-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220-4">
+ <stop
+ id="stop4222-9"
+ offset="0"
+ style="stop-color:#0046ac;stop-opacity:1;" />
+ <stop
+ id="stop4224-1"
+ offset="1"
+ style="stop-color:#5d9ee4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-4" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-4" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-6"
+ xlink:href="#linearGradient7113-62-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-8"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-68"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-5"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-4" />
+ <stop
+ id="stop6981-1-2-8-5-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-0-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6814-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8-6">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2-5" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-68"
+ id="radialGradient5034-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8-6"
+ id="linearGradient5036-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8-5"
+ id="linearGradient5038-1"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-9"
+ id="linearGradient5040-5"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5042-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5044-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient5968"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient4847"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-2"
+ id="linearGradient5914"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-0"
+ id="linearGradient5968-0"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-0">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-6" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-06" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3"
+ id="linearGradient4847-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient6025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-4-0"
+ id="linearGradient5914-7"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-4-0">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-6-8"
+ id="linearGradient5968-0-9"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-6-8">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0-9" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3-9"
+ id="linearGradient4847-1-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220-4"
+ id="linearGradient6144-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6146-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient5895-4-2-2">
+ <stop
+ id="stop5897-1-4-6"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-0-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)"
+ y2="6"
+ x2="12"
+ y1="2"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5914-7-7"
+ xlink:href="#linearGradient5895-4-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146-4-2"
+ xlink:href="#linearGradient4176-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144-4"
+ xlink:href="#linearGradient4220-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5972-7-6-5">
+ <stop
+ id="stop5974-3-0-3"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-0-5"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-3">
+ <stop
+ id="stop5897-1-28"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-05">
+ <stop
+ id="stop5974-3-2"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-7"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-41">
+ <stop
+ id="stop5897-8"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-3">
+ <stop
+ id="stop6979-4-5-5-4-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-9" />
+ <stop
+ id="stop6985-44-1-5-4-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-52" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-79">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-98" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-3"
+ id="linearGradient9584-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-79"
+ id="linearGradient9586-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ id="linearGradient5972-2">
+ <stop
+ id="stop5974-5"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-6"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0-3" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26608"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26584"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-20"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4052"
+ gradientUnits="userSpaceOnUse"
+ x1="21.996094"
+ y1="3.8381946e-05"
+ x2="21.996094"
+ y2="14.000038"
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4054"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4056"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4058"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4060"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient25342"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5-7-3-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2-3-3-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7-1-3-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3848-4-7-1">
+ <stop
+ style="stop-color:#51b700;stop-opacity:1;"
+ offset="0"
+ id="stop3850-4-6" />
+ <stop
+ style="stop-color:#a1f800;stop-opacity:1;"
+ offset="1"
+ id="stop3852-3-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4-1">
+ <stop
+ id="stop6979-4-5-5-4-50-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-26-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-31-4" />
+ <stop
+ id="stop6985-44-1-5-4-2-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-6-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-82-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient9584-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient9586-98-4"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-1"
+ id="linearGradient8252-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3810">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3812" />
+ <stop
+ style="stop-color:#e2e2e2;stop-opacity:1;"
+ offset="1"
+ id="stop3814" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6289"
+ id="linearGradient6295"
+ x1="11.999999"
+ y1="1.9167001"
+ x2="11.999999"
+ y2="14.750033"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(26.999999,1032.2789)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-1"
+ id="radialGradient6462"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.17647061,1047.5467,-22.328213)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220-4"
+ id="linearGradient6464"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333331e-7,1028.3844)"
+ x1="16.583332"
+ y1="16.000101"
+ x2="16.583332"
+ y2="1.0000752" />
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305">
+ <stop
+ id="stop75307"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388" />
+ <stop
+ id="stop75309"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305-4">
+ <stop
+ id="stop75307-4"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388-3" />
+ <stop
+ id="stop75309-0"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9-0">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0-9" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220">
+ <stop
+ id="stop4222"
+ offset="0"
+ style="stop-color:#204a87;stop-opacity:1;" />
+ <stop
+ id="stop4224"
+ offset="1"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-4"
+ xlink:href="#linearGradient7113-62-4-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-07"
+ xlink:href="#linearGradient6977-28-2-3-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-76"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-88"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-73"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-6" />
+ <stop
+ id="stop6981-1-2-8-5-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812"
+ inkscape:collect="always">
+ <stop
+ id="stop6814"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-73"
+ id="radialGradient5034"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8"
+ id="linearGradient5036"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8"
+ id="linearGradient5038"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6"
+ id="linearGradient5040"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5042"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5044"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220"
+ id="linearGradient6144-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-7"
+ id="linearGradient6146-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient3848-4-5">
+ <stop
+ style="stop-color:#b70000;stop-opacity:1;"
+ offset="0"
+ id="stop3850-6" />
+ <stop
+ style="stop-color:#ff2d2d;stop-opacity:1;"
+ offset="1"
+ id="stop3852-30" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-5"
+ id="linearGradient4805"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,27.930718,1077.111)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146"
+ xlink:href="#linearGradient4176-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144"
+ xlink:href="#linearGradient4220"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5">
+ <stop
+ id="stop6979-4-5-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5" />
+ <stop
+ id="stop6985-44-1-5-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ id="linearGradient9584"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4"
+ id="linearGradient9586"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-1"
+ id="radialGradient27750"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.17647061,1047.5467,-22.328213)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220-4"
+ id="linearGradient27752"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333331e-7,1028.3844)"
+ x1="16.583332"
+ y1="16.000101"
+ x2="16.583332"
+ y2="1.0000752" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6289"
+ id="linearGradient27754"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(26.999999,1032.2789)"
+ x1="11.999999"
+ y1="1.9167001"
+ x2="11.999999"
+ y2="14.750033" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27756"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27758"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6958-0"
+ id="linearGradient27760"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="18.085783"
+ y1="20.621321"
+ x2="21.621317"
+ y2="17.085787" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27804"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27806"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6958-0"
+ id="linearGradient27808"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="18.085783"
+ y1="20.621321"
+ x2="21.621317"
+ y2="17.085787" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="13.098752"
+ inkscape:cy="12.223903"
+ inkscape:current-layer="layer1-1-7"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="885"
+ inkscape:window-height="421"
+ inkscape:window-x="0"
+ inkscape:window-y="173"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid20428"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata19848">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ id="g13437"
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,51.871951,35.342638)">
+ <g
+ style="stroke:#000000;stroke-width:0.68183583;stroke-opacity:1"
+ id="g13433"
+ transform="translate(-1.1426585,0.69520385)">
+ <g
+ id="g18946"
+ transform="translate(4.0378452,-4.0679784)"
+ style="stroke-width:0.68183583">
+ <rect
+ style="fill:url(#linearGradient18957);fill-opacity:1;stroke:none"
+ id="rect13435"
+ width="10.909374"
+ height="2.0455072"
+ x="26.163557"
+ y="16.259977"
+ rx="0.68183386"
+ ry="0.68183386"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.38353199"
+ rx="0.38353199"
+ y="16.577948"
+ x="26.507866"
+ height="1.4015719"
+ width="10.231111"
+ id="rect19739"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.6605987;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.68183428"
+ rx="0.68183428"
+ y="15.57814"
+ x="30.251909"
+ height="3.409179"
+ width="2.7300072"
+ id="rect19741"
+ style="fill:url(#linearGradient19743);fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.68183583;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect19745"
+ width="2.047291"
+ height="2.7276511"
+ x="30.592827"
+ y="15.916396"
+ rx="0.36785686"
+ ry="0.36785686"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ id="rect19765"
+ width="2.0117188"
+ height="1"
+ x="25.984375"
+ y="130.00781"
+ transform="matrix(0.48213077,-0.48213077,0.48213077,0.48213077,-110.99594,-40.245928)" />
+ </g>
+ </g>
+ </g>
+ <g
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,51.871951,35.342638)"
+ id="g20553">
+ <g
+ transform="translate(-1.1426585,0.69520385)"
+ id="g20555"
+ style="stroke:#000000;stroke-width:0.68183583;stroke-opacity:1">
+ <g
+ style="stroke-width:0.68183583"
+ transform="translate(4.0378452,-4.0679784)"
+ id="g20557">
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.68183386"
+ rx="0.68183386"
+ y="16.259977"
+ x="26.163557"
+ height="2.0455072"
+ width="10.909374"
+ id="rect20559"
+ style="fill:url(#linearGradient18957);fill-opacity:1;stroke:none" />
+ <rect
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.6605987;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="rect20561"
+ width="10.231111"
+ height="1.4015719"
+ x="26.507866"
+ y="16.577948"
+ rx="0.38353199"
+ ry="0.38353199"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ style="fill:url(#linearGradient19743);fill-opacity:1;stroke:none"
+ id="rect20563"
+ width="2.7300072"
+ height="3.409179"
+ x="30.251909"
+ y="15.57814"
+ rx="0.68183428"
+ ry="0.68183428"
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)" />
+ <rect
+ transform="matrix(-0.70710678,0.70710678,-0.70710678,-0.70710678,0,0)"
+ ry="0.36785686"
+ rx="0.36785686"
+ y="15.916396"
+ x="30.592827"
+ height="2.7276511"
+ width="2.047291"
+ id="rect20565"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.68183583;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+ <rect
+ transform="matrix(0.48213077,-0.48213077,0.48213077,0.48213077,-110.99594,-40.245928)"
+ y="130.00781"
+ x="25.984375"
+ height="1"
+ width="2.0117188"
+ id="rect20567"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ <g
+ transform="translate(25.109779,-1045.4247)"
+ id="layer1-0"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-9">
+ <g
+ style="display:inline;enable-background:new"
+ id="g7930-58"
+ transform="translate(-217.68591,907.85387)">
+ <g
+ id="g4412-6"
+ inkscape:label="forma-text-bold"
+ style="display:inline">
+ <g
+ sodipodi:insensitive="true"
+ inkscape:groupmode="layer"
+ id="g4414-7"
+ inkscape:label="baseplate"
+ style="display:none">
+ <rect
+ height="48"
+ id="rect4416-5"
+ inkscape:label="48x48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="48"
+ x="366"
+ y="110" />
+ <rect
+ height="32"
+ id="rect4418-8"
+ inkscape:label="32x32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="32"
+ x="373"
+ y="186" />
+ <rect
+ height="24"
+ id="rect4420-9"
+ inkscape:label="24x24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="24"
+ x="372"
+ y="236" />
+ <rect
+ height="22"
+ id="rect4422-6"
+ inkscape:label="22x22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="22"
+ x="373"
+ y="237" />
+ <rect
+ height="16"
+ id="rect4424-77"
+ inkscape:label="16x16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="16"
+ x="373"
+ y="279" />
+ <text
+ id="text4426-05"
+ inkscape:label="context"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ x="2.9707375"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4428-7"
+ sodipodi:role="line"
+ x="2.9707375"
+ y="72.513618">actions</tspan></text>
+ <text
+ id="text4430-92"
+ inkscape:label="icon-name"
+ sodipodi:linespacing="125%"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ x="63.970734"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4432-3"
+ sodipodi:role="line"
+ x="63.970734"
+ y="72.513618">format-text-bold</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="g4434-9"
+ inkscape:label="small sizes"
+ style="display:inline" />
+ </g>
+ <g
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584);fill-opacity:1;stroke:url(#linearGradient9586);stroke-opacity:1;font-family:Sans"
+ id="text8779-35"
+ transform="translate(0,-0.61871844)" />
+ <g
+ transform="translate(246.1134,121.70809)"
+ style="display:inline;enable-background:new"
+ id="g22-7">
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g80-6" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g82-47" />
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-17"
+ transform="translate(6.1616704,-1012.459)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-93"
+ transform="translate(-0.98211143,-1.2546083)">
+ <g
+ id="layer1-1-1"
+ inkscape:label="Ebene 1"
+ transform="translate(-33.607049,-15.848364)">
+ <g
+ transform="translate(-217.68591,907.85387)"
+ id="g7930-5"
+ style="display:inline;enable-background:new">
+ <g
+ style="display:inline"
+ inkscape:label="forma-text-bold"
+ id="g4412-0">
+ <g
+ style="display:none"
+ inkscape:label="baseplate"
+ id="g4414-87"
+ inkscape:groupmode="layer"
+ sodipodi:insensitive="true">
+ <rect
+ y="110"
+ x="366"
+ width="48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="48x48"
+ id="rect4416-1"
+ height="48" />
+ <rect
+ y="186"
+ x="373"
+ width="32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="32x32"
+ id="rect4418-3"
+ height="32" />
+ <rect
+ y="236"
+ x="372"
+ width="24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="24x24"
+ id="rect4420-8"
+ height="24" />
+ <rect
+ y="237"
+ x="373"
+ width="22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="22x22"
+ id="rect4422-4"
+ height="22" />
+ <rect
+ y="279"
+ x="373"
+ width="16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="16x16"
+ id="rect4424-9"
+ height="16" />
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="2.9707375"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ inkscape:label="context"
+ id="text4426-3"><tspan
+ y="72.513618"
+ x="2.9707375"
+ sodipodi:role="line"
+ id="tspan4428-46">actions</tspan></text>
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="63.970734"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ sodipodi:linespacing="125%"
+ inkscape:label="icon-name"
+ id="text4430-3"><tspan
+ y="72.513618"
+ x="63.970734"
+ sodipodi:role="line"
+ id="tspan4432-6">format-text-bold</tspan></text>
+ </g>
+ <g
+ style="display:inline"
+ inkscape:label="small sizes"
+ id="g4434-7"
+ inkscape:groupmode="layer" />
+ </g>
+ <g
+ transform="translate(0,-0.61871844)"
+ id="text8779-3"
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-2);fill-opacity:1;stroke:url(#linearGradient9586-27);stroke-opacity:1;font-family:Sans" />
+ <g
+ id="g13457"
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,303.61805,195.7215)">
+ <g
+ transform="matrix(0.48213077,0.48213077,-0.48213077,0.48213077,439.52248,-469.22395)"
+ id="layer1-7-3"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-7">
+ <g
+ style="display:inline;enable-background:new"
+ id="g7930-1"
+ transform="matrix(0,-1,1,0,-92.749644,1265.5035)">
+ <g
+ id="g4412-3"
+ inkscape:label="forma-text-bold"
+ style="display:inline">
+ <g
+ sodipodi:insensitive="true"
+ inkscape:groupmode="layer"
+ id="g4414-8"
+ inkscape:label="baseplate"
+ style="display:none">
+ <rect
+ height="48"
+ id="rect4416-0"
+ inkscape:label="48x48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="48"
+ x="366"
+ y="110" />
+ <rect
+ height="32"
+ id="rect4418-7"
+ inkscape:label="32x32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="32"
+ x="373"
+ y="186" />
+ <rect
+ height="24"
+ id="rect4420-1"
+ inkscape:label="24x24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="24"
+ x="372"
+ y="236" />
+ <rect
+ height="22"
+ id="rect4422-2"
+ inkscape:label="22x22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="22"
+ x="373"
+ y="237" />
+ <rect
+ height="16"
+ id="rect4424-7"
+ inkscape:label="16x16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="16"
+ x="373"
+ y="279" />
+ <text
+ id="text4426-0"
+ inkscape:label="context"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ x="2.9707375"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4428-4"
+ sodipodi:role="line"
+ x="2.9707375"
+ y="72.513618">actions</tspan></text>
+ <text
+ id="text4430-9"
+ inkscape:label="icon-name"
+ sodipodi:linespacing="125%"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ x="63.970734"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4432-8"
+ sodipodi:role="line"
+ x="63.970734"
+ y="72.513618">format-text-bold</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="g4434-6"
+ inkscape:label="small sizes"
+ style="display:inline" />
+ </g>
+ <g
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient27804);fill-opacity:1;stroke:url(#linearGradient27806);stroke-width:1;stroke-opacity:1;font-family:Sans"
+ id="text8779-6"
+ transform="translate(0,-0.61871844)" />
+ <g
+ transform="translate(246.1134,121.70809)"
+ style="display:inline;enable-background:new"
+ id="g22-2">
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g80-7" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g82-4" />
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-2-0-1"
+ transform="translate(-30.84139,-1043.7006)">
+ <g
+ id="g4766-8"
+ transform="translate(-1.202273,-11.879196)">
+ <g
+ id="g8247-5"
+ transform="translate(-12,1.6391277e-6)">
+ <g
+ transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,754.11184,279.86977)"
+ id="g9881">
+ <rect
+ style="fill:#a70000;fill-opacity:1;stroke:none"
+ id="rect8239-6"
+ width="3"
+ height="9"
+ x="30"
+ y="15.000002"
+ transform="translate(7.723222,1030.7284)"
+ rx="1.5"
+ ry="1.5" />
+ <rect
+ ry="1.5"
+ rx="1.5"
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-43.723221"
+ x="1048.7284"
+ height="9"
+ width="3"
+ id="rect8241-7"
+ style="fill:#a70000;fill-opacity:1;stroke:none" />
+ <path
+ style="fill:url(#linearGradient27808);fill-opacity:1;stroke:none"
+ d="m 35.723222,1050.7284 3,0 0,3 1,0 0,-3 3,0 0,-1 -3,0 0,-3 -1,0 0,3 -3,0 z"
+ id="path8243-0"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccc" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ sodipodi:nodetypes="sssssssssccccc"
+ inkscape:connector-curvature="0"
+ id="rect14249"
+ d="m 255.29296,142.35669 c -0.50783,0 -1,0.49217 -1,1 l 0,1 c 0,0.50784 0.49217,1.00296 1,1 l 16.09375,-0.0937 c 0.50782,-0.003 0.90625,-0.39841 0.90625,-0.90625 l 0,-1 c 0,-0.50783 -0.49217,-1 -1,-1 z m 0,1 16,0 0,1 -16,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-16"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-91"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-73">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8-4"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-14">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-96">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-03">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-53"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_bezieredge.png b/icon-themes/tango_testing/cmd/lc_bezieredge.png
new file mode 100644
index 000000000000..edaa84f70a0e
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bezieredge.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_bezieredge.svg b/icon-themes/tango_testing/cmd/lc_bezieredge.svg
new file mode 100644
index 000000000000..a92798d9362b
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bezieredge.svg
@@ -0,0 +1,18711 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg19843"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_bezieredge.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_bezieredge.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs19845">
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-5"
+ xlink:href="#linearGradient6977-28-2-3-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-50" />
+ <stop
+ id="stop6981-1-2-8-5-26"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-31"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-98"
+ xlink:href="#linearGradient7113-62-4-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-82"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3848-4-7">
+ <stop
+ id="stop3850-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4132">
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1;"
+ offset="0"
+ id="stop4134" />
+ <stop
+ id="stop4140"
+ offset="0.55712456"
+ style="stop-color:#babdb6;stop-opacity:1;" />
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1;"
+ offset="1"
+ id="stop4136" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient13347">
+ <stop
+ style="stop-color:#d9d6d0;stop-opacity:1;"
+ offset="0"
+ id="stop13349" />
+ <stop
+ id="stop13351"
+ offset="0.05057461"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop13353"
+ offset="0.45965657"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1"
+ offset="0.75905466"
+ id="stop13355" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop13357" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-27"
+ xlink:href="#linearGradient7113-62-4-59"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-2"
+ xlink:href="#linearGradient6977-28-2-3-5-70"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-59"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-65"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-70">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-0" />
+ <stop
+ id="stop6981-1-2-8-5-12"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4770"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4"
+ id="linearGradient3025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4">
+ <stop
+ id="stop3850"
+ offset="0"
+ style="stop-color:#b70000;stop-opacity:1;" />
+ <stop
+ id="stop3852"
+ offset="1"
+ style="stop-color:#ff2d2d;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946"
+ xlink:href="#linearGradient6958"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944"
+ xlink:href="#linearGradient6952"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595" />
+ <stop
+ id="stop9597"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9"
+ xlink:href="#linearGradient7113-62-7-0-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6"
+ xlink:href="#linearGradient7113-62-9-4-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-2">
+ <stop
+ id="stop6979-4-5-5-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-3" />
+ <stop
+ id="stop6985-44-1-5-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3"
+ xlink:href="#linearGradient7113-62-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ id="stop6979-4-5-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43" />
+ <stop
+ id="stop6985-44-1-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44"
+ xlink:href="#linearGradient6977-28-2-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3"
+ xlink:href="#linearGradient7113-62-9-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7">
+ <stop
+ id="stop6979-4-5-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4" />
+ <stop
+ id="stop6985-44-1-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4"
+ xlink:href="#linearGradient6977-28-2-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5"
+ xlink:href="#linearGradient7113-62-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2">
+ <stop
+ id="stop6979-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5" />
+ <stop
+ id="stop6985-44-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8"
+ xlink:href="#linearGradient6977-28-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8"
+ xlink:href="#linearGradient7113-62-52-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5">
+ <stop
+ id="stop6979-4-8-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3" />
+ <stop
+ id="stop6985-44-5-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1"
+ xlink:href="#linearGradient6977-28-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2"
+ xlink:href="#linearGradient7113-62-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6"
+ xlink:href="#linearGradient7113-62-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1"
+ xlink:href="#linearGradient7113-62-52"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7">
+ <stop
+ id="stop6979-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2" />
+ <stop
+ id="stop6985-44-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05"
+ xlink:href="#linearGradient6977-28-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9"
+ xlink:href="#linearGradient7113-62-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5">
+ <stop
+ id="stop6979-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8" />
+ <stop
+ id="stop6985-44-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0"
+ xlink:href="#linearGradient6977-28-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39"
+ xlink:href="#linearGradient7113-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28">
+ <stop
+ id="stop6979-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3" />
+ <stop
+ id="stop6985-44"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61"
+ xlink:href="#linearGradient6977-28"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9"
+ xlink:href="#linearGradient7113-6-1-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5">
+ <stop
+ id="stop6979-86-5-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6" />
+ <stop
+ id="stop6985-3-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1"
+ xlink:href="#linearGradient6977-14-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3">
+ <stop
+ id="stop6979-8-8-6-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0" />
+ <stop
+ id="stop6985-4-3-9-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8"
+ xlink:href="#linearGradient6977-7-3-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9"
+ xlink:href="#linearGradient7157-0-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7"
+ xlink:href="#linearGradient7113-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1">
+ <stop
+ id="stop6979-86-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7" />
+ <stop
+ id="stop6985-3-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7"
+ xlink:href="#linearGradient6977-14-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3">
+ <stop
+ id="stop6979-8-8-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8" />
+ <stop
+ id="stop6985-4-3-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7"
+ xlink:href="#linearGradient6977-7-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7"
+ xlink:href="#linearGradient7157-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7"
+ xlink:href="#linearGradient7113-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9">
+ <stop
+ id="stop6979-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5" />
+ <stop
+ id="stop6985-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06"
+ xlink:href="#linearGradient6977-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3">
+ <stop
+ id="stop6979-8-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8" />
+ <stop
+ id="stop6985-4-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4"
+ xlink:href="#linearGradient6977-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4"
+ xlink:href="#linearGradient7157-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8">
+ <stop
+ id="stop6979-0-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1" />
+ <stop
+ id="stop6985-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3"
+ xlink:href="#linearGradient6977-5-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1"
+ xlink:href="#linearGradient7113-6-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6">
+ <stop
+ id="stop6979-86-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2" />
+ <stop
+ id="stop6985-3-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1"
+ xlink:href="#linearGradient6977-14-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4"
+ xlink:href="#linearGradient7113-0-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34"
+ xlink:href="#linearGradient7113-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14">
+ <stop
+ id="stop6979-86"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2" />
+ <stop
+ id="stop6985-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3"
+ xlink:href="#linearGradient6977-14"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5">
+ <stop
+ id="stop6979-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4" />
+ <stop
+ id="stop6985-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0"
+ xlink:href="#linearGradient6977-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3"
+ xlink:href="#linearGradient7113-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2"
+ xlink:href="#linearGradient7157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7">
+ <stop
+ id="stop6979-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7" />
+ <stop
+ id="stop6985-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3"
+ xlink:href="#linearGradient7113"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7"
+ xlink:href="#linearGradient6977"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130"
+ xlink:href="#linearGradient4348-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126"
+ xlink:href="#linearGradient4437"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092"
+ xlink:href="#linearGradient3787-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084"
+ xlink:href="#linearGradient3185"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9">
+ <stop
+ id="stop4842-0-8-8-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6">
+ <stop
+ id="stop4842-0-8-8-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8">
+ <stop
+ id="stop4842-0-4-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5">
+ <stop
+ id="stop4842-0-8-5-7-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7">
+ <stop
+ id="stop4842-0-8-8-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1">
+ <stop
+ id="stop4842-0-8-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient6123"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8">
+ <stop
+ id="stop4842-0-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61">
+ <stop
+ id="stop4842-0-8-5-7"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3">
+ <stop
+ id="stop4842-0-1-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6">
+ <stop
+ id="stop4842-0-8-5-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3">
+ <stop
+ id="stop4842-0-8-5-3-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8">
+ <stop
+ id="stop4842-0-8-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852"
+ xlink:href="#linearGradient3185-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1">
+ <stop
+ id="stop4842-0-8-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0">
+ <stop
+ id="stop4842-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996"
+ inkscape:collect="always">
+ <stop
+ id="stop4998"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157"
+ inkscape:collect="always">
+ <stop
+ id="stop4159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685"
+ inkscape:collect="always">
+ <stop
+ id="stop5687"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977">
+ <stop
+ id="stop6979"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983" />
+ <stop
+ id="stop6985"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58">
+ <stop
+ id="stop6979-4-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6" />
+ <stop
+ id="stop6985-44-67"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9559"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9567"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9574"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9578"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593"
+ id="linearGradient9580"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9582"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9584-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9586-3"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638"
+ inkscape:collect="always">
+ <stop
+ id="stop6640"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826">
+ <stop
+ id="stop6828"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839">
+ <stop
+ id="stop6841"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881">
+ <stop
+ id="stop6883"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731">
+ <stop
+ id="stop4733"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790-4"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788-4"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786-0"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784-2"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807243,0,0,0.95038373,2.4016561,-1021.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4782-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-19"
+ id="linearGradient3025-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4-7-19">
+ <stop
+ id="stop3850-4-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862-3"
+ xlink:href="#linearGradient3848-4-7-19"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755-0"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749-1"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005-7"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996-9"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994-1"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984-4"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970-5"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968-2"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964-8"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950-1"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946-2"
+ xlink:href="#linearGradient6958-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944-8"
+ xlink:href="#linearGradient6952-6"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911-3"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893-7"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853-8"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851-6"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845-4"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832-1"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666-8"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659-2"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655-6"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653-6"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649-3"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644-2"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636-0"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619-5"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595-5" />
+ <stop
+ id="stop9597-7"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601-4" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631-5"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629-9"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627-1"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621-9"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617-6"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615-3"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613-9"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581-8"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387-4"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385-6"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383-0"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381-0"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379-8"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375-3"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373-2"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371-0"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369-9"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367-4"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618-6"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616-4"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612-8"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610-7"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561-3"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537-6"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9-2"
+ xlink:href="#linearGradient7113-62-7-0-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6-9"
+ xlink:href="#linearGradient7113-62-9-4-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-1">
+ <stop
+ id="stop6979-4-5-5-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-2" />
+ <stop
+ id="stop6985-44-1-5-4-01"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-4"
+ xlink:href="#linearGradient7113-62-7-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-5"
+ xlink:href="#linearGradient7113-62-9-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-1">
+ <stop
+ id="stop6979-4-5-5-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-7" />
+ <stop
+ id="stop6985-44-1-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-9"
+ xlink:href="#linearGradient6977-28-2-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3-1"
+ xlink:href="#linearGradient7113-62-9-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-0">
+ <stop
+ id="stop6979-4-5-1-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4-2" />
+ <stop
+ id="stop6985-44-1-7-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4-7"
+ xlink:href="#linearGradient6977-28-2-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-09">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-7" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-2"
+ xlink:href="#linearGradient7113-62-9-09"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-5">
+ <stop
+ id="stop6979-4-5-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-7" />
+ <stop
+ id="stop6985-44-1-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-5"
+ xlink:href="#linearGradient6977-28-2-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8-0"
+ xlink:href="#linearGradient7113-62-52-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-3">
+ <stop
+ id="stop6979-4-8-7-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3-4" />
+ <stop
+ id="stop6985-44-5-0-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1-6"
+ xlink:href="#linearGradient6977-28-7-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2-1"
+ xlink:href="#linearGradient7113-62-7-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-4"
+ xlink:href="#linearGradient7113-62-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-88"
+ xlink:href="#linearGradient7113-62-52-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-9">
+ <stop
+ id="stop6979-4-8-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-6" />
+ <stop
+ id="stop6985-44-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-11"
+ xlink:href="#linearGradient6977-28-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2-5" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9-3"
+ xlink:href="#linearGradient7113-62-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5-6">
+ <stop
+ id="stop6979-4-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8-4" />
+ <stop
+ id="stop6985-44-6-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0-5"
+ xlink:href="#linearGradient6977-28-5-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-3" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-96"
+ xlink:href="#linearGradient7113-62-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-25">
+ <stop
+ id="stop6979-4-67"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-4" />
+ <stop
+ id="stop6985-44-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-2"
+ xlink:href="#linearGradient6977-28-25"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8-0" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9-8"
+ xlink:href="#linearGradient7113-6-1-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-0">
+ <stop
+ id="stop6979-86-5-9-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6-0" />
+ <stop
+ id="stop6985-3-7-2-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1-7"
+ xlink:href="#linearGradient6977-14-1-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-1">
+ <stop
+ id="stop6979-8-8-6-1-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0-2" />
+ <stop
+ id="stop6985-4-3-9-3-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8-7"
+ xlink:href="#linearGradient6977-7-3-3-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9-2"
+ xlink:href="#linearGradient7157-0-7-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-7" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-5"
+ xlink:href="#linearGradient7113-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-3">
+ <stop
+ id="stop6979-86-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-1" />
+ <stop
+ id="stop6985-3-7-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-6"
+ xlink:href="#linearGradient6977-14-1-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-9">
+ <stop
+ id="stop6979-8-8-6-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-1" />
+ <stop
+ id="stop6985-4-3-9-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-81"
+ xlink:href="#linearGradient6977-7-3-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-7"
+ xlink:href="#linearGradient7157-0-7-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8-4" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7-4"
+ xlink:href="#linearGradient7113-9-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9-7">
+ <stop
+ id="stop6979-3-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5-6" />
+ <stop
+ id="stop6985-2-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06-9"
+ xlink:href="#linearGradient6977-9-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-6">
+ <stop
+ id="stop6979-8-8-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-00" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-3" />
+ <stop
+ id="stop6985-4-3-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-6"
+ xlink:href="#linearGradient6977-7-3-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-1"
+ xlink:href="#linearGradient7157-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8-1">
+ <stop
+ id="stop6979-0-9-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1-9" />
+ <stop
+ id="stop6985-7-2-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3-8"
+ xlink:href="#linearGradient6977-5-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8-3" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1-6"
+ xlink:href="#linearGradient7113-6-2-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6-3">
+ <stop
+ id="stop6979-86-8-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2-9" />
+ <stop
+ id="stop6985-3-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1-9"
+ xlink:href="#linearGradient6977-14-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4-6"
+ xlink:href="#linearGradient7113-0-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-24">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-42" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-0" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-2"
+ xlink:href="#linearGradient7113-6-24"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-62">
+ <stop
+ id="stop6979-86-84"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-3" />
+ <stop
+ id="stop6985-3-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-5"
+ xlink:href="#linearGradient6977-14-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-81">
+ <stop
+ id="stop6979-0-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-7" />
+ <stop
+ id="stop6985-7-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-4"
+ xlink:href="#linearGradient6977-5-81"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-5" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-5"
+ xlink:href="#linearGradient7113-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-1"
+ xlink:href="#linearGradient7157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-7"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-4">
+ <stop
+ id="stop6979-8-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-2" />
+ <stop
+ id="stop6985-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6-9"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-32"
+ xlink:href="#linearGradient7113-63"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-7"
+ xlink:href="#linearGradient6977-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130-1"
+ xlink:href="#linearGradient4348-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126-4"
+ xlink:href="#linearGradient4437-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124-5"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122-7"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120-8"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118-3"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114-7"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110-7"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108-6"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106-8"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104-5"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098-8"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094-8"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092-4"
+ xlink:href="#linearGradient3787-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088-2"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086-3"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084-0"
+ xlink:href="#linearGradient3185-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0-3" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8-3"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6-1" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8-1" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3-0" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2-5" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8-9" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9-4"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809-2"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1-5"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22-6" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439-0" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8-4" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60-3" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-26" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512-6">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647-5" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-2" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584-8" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580-3"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576-2" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572-1"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-8">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-28">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-75" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-28"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512-6"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2-9"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9-8"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-9"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-93" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-9"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-58">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-78" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2-58"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3-0" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3-8" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-1" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185-4"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572-8"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient8025-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-1">
+ <stop
+ id="stop4842-0-8-8-3-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8-6"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-22"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-6">
+ <stop
+ id="stop4842-0-8-8-9-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740-4"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1-9"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4-1"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5-3"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8-7">
+ <stop
+ id="stop4842-0-4-3-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-9">
+ <stop
+ id="stop4842-0-8-5-7-9-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6-8"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213-4"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-4">
+ <stop
+ id="stop4842-0-8-8-3-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-74">
+ <stop
+ id="stop4842-0-8-8-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-10"
+ id="linearGradient6123-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0-10"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-8"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-4">
+ <stop
+ id="stop4842-0-4-33"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-2">
+ <stop
+ id="stop4842-0-8-5-7-1"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1-5">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7-3" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1-6" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348-81"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7-5"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-0"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755-9"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873-8"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871-0"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869-6"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3-1">
+ <stop
+ id="stop4842-0-1-0-6"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664-5"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662-1"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-0">
+ <stop
+ id="stop4842-0-8-5-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9-6"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-7">
+ <stop
+ id="stop4842-0-8-5-3-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4-3"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032-5"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030-1"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028-5"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-8">
+ <stop
+ id="stop4842-0-8-5-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866-1"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852-1"
+ xlink:href="#linearGradient3185-6-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848-0"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846-6"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-8"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820-3"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-5">
+ <stop
+ id="stop4842-0-8-5-59"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-24"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-86"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-7">
+ <stop
+ id="stop4842-0-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6-4">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-2" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-4"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-62"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-2">
+ <stop
+ id="stop6979-04"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-31" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-0" />
+ <stop
+ id="stop6985-45"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-63">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-8" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832-6"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5-6"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7-9" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7-7"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58-3">
+ <stop
+ id="stop6979-4-6-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6-1" />
+ <stop
+ id="stop6985-44-67-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97-2"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9559-1"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9567-8"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9574-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9578-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593-0"
+ id="linearGradient9580-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9582-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9584-0"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9586-2"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6640-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826-1">
+ <stop
+ id="stop6828-9"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830-2"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839-8">
+ <stop
+ id="stop6841-8"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843-5"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881-6">
+ <stop
+ id="stop6883-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885-5"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895-9">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897-1" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915-2" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952-6">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954-7" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958-0">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960-3" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731-3">
+ <stop
+ id="stop4733-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220-4">
+ <stop
+ id="stop4222-9"
+ offset="0"
+ style="stop-color:#0046ac;stop-opacity:1;" />
+ <stop
+ id="stop4224-1"
+ offset="1"
+ style="stop-color:#5d9ee4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-4" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-4" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-6"
+ xlink:href="#linearGradient7113-62-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-8"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-68"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-5"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-4" />
+ <stop
+ id="stop6981-1-2-8-5-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-0-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6814-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8-6">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2-5" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-68"
+ id="radialGradient5034-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8-6"
+ id="linearGradient5036-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8-5"
+ id="linearGradient5038-1"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-9"
+ id="linearGradient5040-5"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5042-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5044-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient5968"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient4847"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-2"
+ id="linearGradient5914"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-0"
+ id="linearGradient5968-0"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-0">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-6" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-06" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3"
+ id="linearGradient4847-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient6025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-4-0"
+ id="linearGradient5914-7"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-4-0">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-6-8"
+ id="linearGradient5968-0-9"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-6-8">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0-9" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3-9"
+ id="linearGradient4847-1-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220-4"
+ id="linearGradient6144-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6146-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient5895-4-2-2">
+ <stop
+ id="stop5897-1-4-6"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-0-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)"
+ y2="6"
+ x2="12"
+ y1="2"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5914-7-7"
+ xlink:href="#linearGradient5895-4-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146-4-2"
+ xlink:href="#linearGradient4176-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144-4"
+ xlink:href="#linearGradient4220-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5972-7-6-5">
+ <stop
+ id="stop5974-3-0-3"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-0-5"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-3">
+ <stop
+ id="stop5897-1-28"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-05">
+ <stop
+ id="stop5974-3-2"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-7"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-41">
+ <stop
+ id="stop5897-8"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-3">
+ <stop
+ id="stop6979-4-5-5-4-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-9" />
+ <stop
+ id="stop6985-44-1-5-4-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-52" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-79">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-98" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-3"
+ id="linearGradient9584-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-79"
+ id="linearGradient9586-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ id="linearGradient5972-2">
+ <stop
+ id="stop5974-5"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-6"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0-3" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26608"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26584"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-20"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4052"
+ gradientUnits="userSpaceOnUse"
+ x1="21.996094"
+ y1="3.8381946e-05"
+ x2="21.996094"
+ y2="14.000038"
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4054"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4056"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4058"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4060"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient25342"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3848-4-7-1">
+ <stop
+ style="stop-color:#51b700;stop-opacity:1;"
+ offset="0"
+ id="stop3850-4-6" />
+ <stop
+ style="stop-color:#a1f800;stop-opacity:1;"
+ offset="1"
+ id="stop3852-3-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4-1">
+ <stop
+ id="stop6979-4-5-5-4-50-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-26-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-31-4" />
+ <stop
+ id="stop6985-44-1-5-4-2-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-6-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-82-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient9584-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient9586-98-4"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-1"
+ id="linearGradient8252-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3810">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3812" />
+ <stop
+ style="stop-color:#e2e2e2;stop-opacity:1;"
+ offset="1"
+ id="stop3814" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305">
+ <stop
+ id="stop75307"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388" />
+ <stop
+ id="stop75309"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305-4">
+ <stop
+ id="stop75307-4"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388-3" />
+ <stop
+ id="stop75309-0"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9-0">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0-9" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220">
+ <stop
+ id="stop4222"
+ offset="0"
+ style="stop-color:#204a87;stop-opacity:1;" />
+ <stop
+ id="stop4224"
+ offset="1"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-4"
+ xlink:href="#linearGradient7113-62-4-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-07"
+ xlink:href="#linearGradient6977-28-2-3-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-76"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-88"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-73"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-6" />
+ <stop
+ id="stop6981-1-2-8-5-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812"
+ inkscape:collect="always">
+ <stop
+ id="stop6814"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-73"
+ id="radialGradient5034"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8"
+ id="linearGradient5036"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8"
+ id="linearGradient5038"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6"
+ id="linearGradient5040"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5042"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5044"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220"
+ id="linearGradient6144-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-7"
+ id="linearGradient6146-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient3848-4-5">
+ <stop
+ style="stop-color:#b70000;stop-opacity:1;"
+ offset="0"
+ id="stop3850-6" />
+ <stop
+ style="stop-color:#ff2d2d;stop-opacity:1;"
+ offset="1"
+ id="stop3852-30" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-5"
+ id="linearGradient4805"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,27.930718,1077.111)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146"
+ xlink:href="#linearGradient4176-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144"
+ xlink:href="#linearGradient4220"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5">
+ <stop
+ id="stop6979-4-5-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5" />
+ <stop
+ id="stop6985-44-1-5-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ id="linearGradient9584"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4"
+ id="linearGradient9586"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27756"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27758"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27804"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27806"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="8"
+ inkscape:cx="5.0199375"
+ inkscape:cy="5.1370977"
+ inkscape:current-layer="layer1"
+ showgrid="true"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="1366"
+ inkscape:window-height="721"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1"
+ inkscape:snap-global="false">
+ <inkscape:grid
+ type="xygrid"
+ id="grid20428"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata19848">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ transform="translate(25.109779,-1045.4247)"
+ id="layer1-0"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-9">
+ <g
+ style="display:inline;enable-background:new"
+ id="g7930-58"
+ transform="translate(-217.68591,907.85387)">
+ <g
+ id="g4412-6"
+ inkscape:label="forma-text-bold"
+ style="display:inline">
+ <g
+ sodipodi:insensitive="true"
+ inkscape:groupmode="layer"
+ id="g4414-7"
+ inkscape:label="baseplate"
+ style="display:none">
+ <rect
+ height="48"
+ id="rect4416-5"
+ inkscape:label="48x48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="48"
+ x="366"
+ y="110" />
+ <rect
+ height="32"
+ id="rect4418-8"
+ inkscape:label="32x32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="32"
+ x="373"
+ y="186" />
+ <rect
+ height="24"
+ id="rect4420-9"
+ inkscape:label="24x24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="24"
+ x="372"
+ y="236" />
+ <rect
+ height="22"
+ id="rect4422-6"
+ inkscape:label="22x22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="22"
+ x="373"
+ y="237" />
+ <rect
+ height="16"
+ id="rect4424-77"
+ inkscape:label="16x16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="16"
+ x="373"
+ y="279" />
+ <text
+ id="text4426-05"
+ inkscape:label="context"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ x="2.9707375"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4428-7"
+ sodipodi:role="line"
+ x="2.9707375"
+ y="72.513618">actions</tspan></text>
+ <text
+ id="text4430-92"
+ inkscape:label="icon-name"
+ sodipodi:linespacing="125%"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ x="63.970734"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4432-3"
+ sodipodi:role="line"
+ x="63.970734"
+ y="72.513618">format-text-bold</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="g4434-9"
+ inkscape:label="small sizes"
+ style="display:inline" />
+ </g>
+ <g
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584);fill-opacity:1;stroke:url(#linearGradient9586);stroke-opacity:1;font-family:Sans"
+ id="text8779-35"
+ transform="translate(0,-0.61871844)" />
+ <g
+ transform="translate(246.1134,121.70809)"
+ style="display:inline;enable-background:new"
+ id="g22-7">
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g80-6" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g82-47" />
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-17"
+ transform="translate(6.1616704,-1012.459)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-93"
+ transform="translate(-0.98211143,-1.2546083)">
+ <g
+ id="layer1-1-1"
+ inkscape:label="Ebene 1"
+ transform="translate(-33.607049,-15.848364)">
+ <g
+ transform="translate(-217.68591,907.85387)"
+ id="g7930-5"
+ style="display:inline;enable-background:new">
+ <g
+ style="display:inline"
+ inkscape:label="forma-text-bold"
+ id="g4412-0">
+ <g
+ style="display:none"
+ inkscape:label="baseplate"
+ id="g4414-87"
+ inkscape:groupmode="layer"
+ sodipodi:insensitive="true">
+ <rect
+ y="110"
+ x="366"
+ width="48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="48x48"
+ id="rect4416-1"
+ height="48" />
+ <rect
+ y="186"
+ x="373"
+ width="32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="32x32"
+ id="rect4418-3"
+ height="32" />
+ <rect
+ y="236"
+ x="372"
+ width="24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="24x24"
+ id="rect4420-8"
+ height="24" />
+ <rect
+ y="237"
+ x="373"
+ width="22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="22x22"
+ id="rect4422-4"
+ height="22" />
+ <rect
+ y="279"
+ x="373"
+ width="16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="16x16"
+ id="rect4424-9"
+ height="16" />
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="2.9707375"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ inkscape:label="context"
+ id="text4426-3"><tspan
+ y="72.513618"
+ x="2.9707375"
+ sodipodi:role="line"
+ id="tspan4428-46">actions</tspan></text>
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="63.970734"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ sodipodi:linespacing="125%"
+ inkscape:label="icon-name"
+ id="text4430-3"><tspan
+ y="72.513618"
+ x="63.970734"
+ sodipodi:role="line"
+ id="tspan4432-6">format-text-bold</tspan></text>
+ </g>
+ <g
+ style="display:inline"
+ inkscape:label="small sizes"
+ id="g4434-7"
+ inkscape:groupmode="layer" />
+ </g>
+ <g
+ transform="translate(0,-0.61871844)"
+ id="text8779-3"
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-2);fill-opacity:1;stroke:url(#linearGradient9586-27);stroke-opacity:1;font-family:Sans" />
+ <g
+ id="g13457"
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,303.61805,195.7215)">
+ <g
+ transform="matrix(0.48213077,0.48213077,-0.48213077,0.48213077,439.52248,-469.22395)"
+ id="layer1-7-3"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-7" />
+ </g>
+ </g>
+ <path
+ sodipodi:nodetypes="sssssssssccccc"
+ inkscape:connector-curvature="0"
+ id="rect14249"
+ d="m 255.29296,142.35669 c -0.50783,0 -1,0.49217 -1,1 l 0,1 c 0,0.50784 0.49217,1.00296 1,1 l 16.09375,-0.0937 c 0.50782,-0.003 0.90625,-0.39841 0.90625,-0.90625 l 0,-1 c 0,-0.50783 -0.49217,-1 -1,-1 z m 0,1 16,0 0,1 -16,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
+ id="g28261"
+ transform="matrix(1.0410006,0,0,1.0443074,0.62558038,3.9232471)" />
+ <g
+ transform="translate(1.120595,4.5043402)"
+ id="g28245">
+ <path
+ sodipodi:nodetypes="cc"
+ transform="translate(-258.31641,-126.125)"
+ inkscape:connector-curvature="0"
+ id="path28243"
+ d="m 270.82742,130.29188 c 4.16981,-3.22567 6.89195,-6.98635 6.83629,-11.77361"
+ style="fill:none;stroke:#333333;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <path
+ sodipodi:nodetypes="cc"
+ transform="translate(-258.31641,-126.125)"
+ inkscape:connector-curvature="0"
+ id="path28241"
+ d="m 260.60752,118.51827 c 5.68765,0.75637 8.44521,4.3076 8.1483,10.77233"
+ style="fill:none;stroke:#333333;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:#ffffff;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="rect2989-1"
+ width="5.7410989"
+ height="5.7410989"
+ x="8.2753592"
+ y="-7.1387396"
+ transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)" />
+ <rect
+ transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)"
+ y="-6.6374822"
+ x="8.7732944"
+ height="4.7419071"
+ width="4.7419071"
+ id="rect2991"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-16"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-91"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-73">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8-4"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-14">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-96">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-03">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-53"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_beziersmooth.png b/icon-themes/tango_testing/cmd/lc_beziersmooth.png
new file mode 100644
index 000000000000..81f1f11d733f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_beziersmooth.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_beziersmooth.svg b/icon-themes/tango_testing/cmd/lc_beziersmooth.svg
new file mode 100644
index 000000000000..ab1c8988f1b5
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_beziersmooth.svg
@@ -0,0 +1,18735 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg19843"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_beziersmooth.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_beziersmooth.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs19845">
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-5"
+ xlink:href="#linearGradient6977-28-2-3-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-50" />
+ <stop
+ id="stop6981-1-2-8-5-26"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-31"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-98"
+ xlink:href="#linearGradient7113-62-4-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-82"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3848-4-7">
+ <stop
+ id="stop3850-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4132"
+ id="linearGradient18957"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0000898,0,0,1.506961,55.933537,1.309895)"
+ x1="-20"
+ y1="12"
+ x2="-20"
+ y2="10" />
+ <linearGradient
+ id="linearGradient4132">
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1;"
+ offset="0"
+ id="stop4134" />
+ <stop
+ id="stop4140"
+ offset="0.55712456"
+ style="stop-color:#babdb6;stop-opacity:1;" />
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1;"
+ offset="1"
+ id="stop4136" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient13347"
+ id="linearGradient19743"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.25026662,0,0,2.5116019,37.701673,-9.3386642)"
+ x1="-20"
+ y1="12"
+ x2="-20"
+ y2="10" />
+ <linearGradient
+ id="linearGradient13347">
+ <stop
+ style="stop-color:#d9d6d0;stop-opacity:1;"
+ offset="0"
+ id="stop13349" />
+ <stop
+ id="stop13351"
+ offset="0.05057461"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop13353"
+ offset="0.45965657"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1"
+ offset="0.75905466"
+ id="stop13355" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop13357" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-27"
+ xlink:href="#linearGradient7113-62-4-59"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-2"
+ xlink:href="#linearGradient6977-28-2-3-5-70"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-59"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-65"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-70">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-0" />
+ <stop
+ id="stop6981-1-2-8-5-12"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4770"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4"
+ id="linearGradient3025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4">
+ <stop
+ id="stop3850"
+ offset="0"
+ style="stop-color:#b70000;stop-opacity:1;" />
+ <stop
+ id="stop3852"
+ offset="1"
+ style="stop-color:#ff2d2d;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946"
+ xlink:href="#linearGradient6958"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944"
+ xlink:href="#linearGradient6952"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595" />
+ <stop
+ id="stop9597"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9"
+ xlink:href="#linearGradient7113-62-7-0-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6"
+ xlink:href="#linearGradient7113-62-9-4-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-2">
+ <stop
+ id="stop6979-4-5-5-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-3" />
+ <stop
+ id="stop6985-44-1-5-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3"
+ xlink:href="#linearGradient7113-62-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ id="stop6979-4-5-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43" />
+ <stop
+ id="stop6985-44-1-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44"
+ xlink:href="#linearGradient6977-28-2-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3"
+ xlink:href="#linearGradient7113-62-9-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7">
+ <stop
+ id="stop6979-4-5-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4" />
+ <stop
+ id="stop6985-44-1-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4"
+ xlink:href="#linearGradient6977-28-2-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5"
+ xlink:href="#linearGradient7113-62-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2">
+ <stop
+ id="stop6979-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5" />
+ <stop
+ id="stop6985-44-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8"
+ xlink:href="#linearGradient6977-28-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8"
+ xlink:href="#linearGradient7113-62-52-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5">
+ <stop
+ id="stop6979-4-8-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3" />
+ <stop
+ id="stop6985-44-5-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1"
+ xlink:href="#linearGradient6977-28-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2"
+ xlink:href="#linearGradient7113-62-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6"
+ xlink:href="#linearGradient7113-62-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1"
+ xlink:href="#linearGradient7113-62-52"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7">
+ <stop
+ id="stop6979-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2" />
+ <stop
+ id="stop6985-44-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05"
+ xlink:href="#linearGradient6977-28-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9"
+ xlink:href="#linearGradient7113-62-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5">
+ <stop
+ id="stop6979-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8" />
+ <stop
+ id="stop6985-44-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0"
+ xlink:href="#linearGradient6977-28-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39"
+ xlink:href="#linearGradient7113-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28">
+ <stop
+ id="stop6979-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3" />
+ <stop
+ id="stop6985-44"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61"
+ xlink:href="#linearGradient6977-28"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9"
+ xlink:href="#linearGradient7113-6-1-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5">
+ <stop
+ id="stop6979-86-5-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6" />
+ <stop
+ id="stop6985-3-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1"
+ xlink:href="#linearGradient6977-14-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3">
+ <stop
+ id="stop6979-8-8-6-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0" />
+ <stop
+ id="stop6985-4-3-9-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8"
+ xlink:href="#linearGradient6977-7-3-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9"
+ xlink:href="#linearGradient7157-0-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7"
+ xlink:href="#linearGradient7113-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1">
+ <stop
+ id="stop6979-86-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7" />
+ <stop
+ id="stop6985-3-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7"
+ xlink:href="#linearGradient6977-14-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3">
+ <stop
+ id="stop6979-8-8-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8" />
+ <stop
+ id="stop6985-4-3-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7"
+ xlink:href="#linearGradient6977-7-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7"
+ xlink:href="#linearGradient7157-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7"
+ xlink:href="#linearGradient7113-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9">
+ <stop
+ id="stop6979-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5" />
+ <stop
+ id="stop6985-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06"
+ xlink:href="#linearGradient6977-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3">
+ <stop
+ id="stop6979-8-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8" />
+ <stop
+ id="stop6985-4-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4"
+ xlink:href="#linearGradient6977-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4"
+ xlink:href="#linearGradient7157-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8">
+ <stop
+ id="stop6979-0-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1" />
+ <stop
+ id="stop6985-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3"
+ xlink:href="#linearGradient6977-5-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1"
+ xlink:href="#linearGradient7113-6-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6">
+ <stop
+ id="stop6979-86-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2" />
+ <stop
+ id="stop6985-3-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1"
+ xlink:href="#linearGradient6977-14-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4"
+ xlink:href="#linearGradient7113-0-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34"
+ xlink:href="#linearGradient7113-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14">
+ <stop
+ id="stop6979-86"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2" />
+ <stop
+ id="stop6985-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3"
+ xlink:href="#linearGradient6977-14"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5">
+ <stop
+ id="stop6979-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4" />
+ <stop
+ id="stop6985-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0"
+ xlink:href="#linearGradient6977-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3"
+ xlink:href="#linearGradient7113-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2"
+ xlink:href="#linearGradient7157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7">
+ <stop
+ id="stop6979-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7" />
+ <stop
+ id="stop6985-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3"
+ xlink:href="#linearGradient7113"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7"
+ xlink:href="#linearGradient6977"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130"
+ xlink:href="#linearGradient4348-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126"
+ xlink:href="#linearGradient4437"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092"
+ xlink:href="#linearGradient3787-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084"
+ xlink:href="#linearGradient3185"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9">
+ <stop
+ id="stop4842-0-8-8-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6">
+ <stop
+ id="stop4842-0-8-8-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8">
+ <stop
+ id="stop4842-0-4-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5">
+ <stop
+ id="stop4842-0-8-5-7-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7">
+ <stop
+ id="stop4842-0-8-8-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1">
+ <stop
+ id="stop4842-0-8-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient6123"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8">
+ <stop
+ id="stop4842-0-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61">
+ <stop
+ id="stop4842-0-8-5-7"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3">
+ <stop
+ id="stop4842-0-1-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6">
+ <stop
+ id="stop4842-0-8-5-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3">
+ <stop
+ id="stop4842-0-8-5-3-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8">
+ <stop
+ id="stop4842-0-8-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852"
+ xlink:href="#linearGradient3185-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1">
+ <stop
+ id="stop4842-0-8-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0">
+ <stop
+ id="stop4842-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996"
+ inkscape:collect="always">
+ <stop
+ id="stop4998"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157"
+ inkscape:collect="always">
+ <stop
+ id="stop4159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685"
+ inkscape:collect="always">
+ <stop
+ id="stop5687"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977">
+ <stop
+ id="stop6979"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983" />
+ <stop
+ id="stop6985"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58">
+ <stop
+ id="stop6979-4-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6" />
+ <stop
+ id="stop6985-44-67"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9559"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9567"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9574"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9578"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593"
+ id="linearGradient9580"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9582"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9584-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9586-3"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638"
+ inkscape:collect="always">
+ <stop
+ id="stop6640"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826">
+ <stop
+ id="stop6828"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839">
+ <stop
+ id="stop6841"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881">
+ <stop
+ id="stop6883"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731">
+ <stop
+ id="stop4733"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790-4"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788-4"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786-0"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784-2"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807243,0,0,0.95038373,2.4016561,-1021.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4782-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-19"
+ id="linearGradient3025-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4-7-19">
+ <stop
+ id="stop3850-4-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862-3"
+ xlink:href="#linearGradient3848-4-7-19"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755-0"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749-1"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005-7"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996-9"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994-1"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984-4"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970-5"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968-2"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964-8"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950-1"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946-2"
+ xlink:href="#linearGradient6958-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944-8"
+ xlink:href="#linearGradient6952-6"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911-3"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893-7"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853-8"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851-6"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845-4"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832-1"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666-8"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659-2"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655-6"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653-6"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649-3"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644-2"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636-0"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619-5"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595-5" />
+ <stop
+ id="stop9597-7"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601-4" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631-5"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629-9"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627-1"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621-9"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617-6"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615-3"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613-9"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581-8"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387-4"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385-6"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383-0"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381-0"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379-8"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375-3"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373-2"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371-0"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369-9"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367-4"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618-6"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616-4"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612-8"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610-7"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561-3"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537-6"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9-2"
+ xlink:href="#linearGradient7113-62-7-0-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6-9"
+ xlink:href="#linearGradient7113-62-9-4-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-1">
+ <stop
+ id="stop6979-4-5-5-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-2" />
+ <stop
+ id="stop6985-44-1-5-4-01"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-4"
+ xlink:href="#linearGradient7113-62-7-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-5"
+ xlink:href="#linearGradient7113-62-9-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-1">
+ <stop
+ id="stop6979-4-5-5-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-7" />
+ <stop
+ id="stop6985-44-1-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-9"
+ xlink:href="#linearGradient6977-28-2-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3-1"
+ xlink:href="#linearGradient7113-62-9-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-0">
+ <stop
+ id="stop6979-4-5-1-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4-2" />
+ <stop
+ id="stop6985-44-1-7-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4-7"
+ xlink:href="#linearGradient6977-28-2-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-09">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-7" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-2"
+ xlink:href="#linearGradient7113-62-9-09"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-5">
+ <stop
+ id="stop6979-4-5-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-7" />
+ <stop
+ id="stop6985-44-1-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-5"
+ xlink:href="#linearGradient6977-28-2-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8-0"
+ xlink:href="#linearGradient7113-62-52-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-3">
+ <stop
+ id="stop6979-4-8-7-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3-4" />
+ <stop
+ id="stop6985-44-5-0-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1-6"
+ xlink:href="#linearGradient6977-28-7-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2-1"
+ xlink:href="#linearGradient7113-62-7-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-4"
+ xlink:href="#linearGradient7113-62-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-88"
+ xlink:href="#linearGradient7113-62-52-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-9">
+ <stop
+ id="stop6979-4-8-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-6" />
+ <stop
+ id="stop6985-44-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-11"
+ xlink:href="#linearGradient6977-28-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2-5" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9-3"
+ xlink:href="#linearGradient7113-62-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5-6">
+ <stop
+ id="stop6979-4-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8-4" />
+ <stop
+ id="stop6985-44-6-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0-5"
+ xlink:href="#linearGradient6977-28-5-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-3" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-96"
+ xlink:href="#linearGradient7113-62-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-25">
+ <stop
+ id="stop6979-4-67"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-4" />
+ <stop
+ id="stop6985-44-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-2"
+ xlink:href="#linearGradient6977-28-25"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8-0" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9-8"
+ xlink:href="#linearGradient7113-6-1-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-0">
+ <stop
+ id="stop6979-86-5-9-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6-0" />
+ <stop
+ id="stop6985-3-7-2-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1-7"
+ xlink:href="#linearGradient6977-14-1-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-1">
+ <stop
+ id="stop6979-8-8-6-1-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0-2" />
+ <stop
+ id="stop6985-4-3-9-3-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8-7"
+ xlink:href="#linearGradient6977-7-3-3-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9-2"
+ xlink:href="#linearGradient7157-0-7-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-7" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-5"
+ xlink:href="#linearGradient7113-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-3">
+ <stop
+ id="stop6979-86-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-1" />
+ <stop
+ id="stop6985-3-7-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-6"
+ xlink:href="#linearGradient6977-14-1-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-9">
+ <stop
+ id="stop6979-8-8-6-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-1" />
+ <stop
+ id="stop6985-4-3-9-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-81"
+ xlink:href="#linearGradient6977-7-3-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-7"
+ xlink:href="#linearGradient7157-0-7-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8-4" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7-4"
+ xlink:href="#linearGradient7113-9-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9-7">
+ <stop
+ id="stop6979-3-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5-6" />
+ <stop
+ id="stop6985-2-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06-9"
+ xlink:href="#linearGradient6977-9-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-6">
+ <stop
+ id="stop6979-8-8-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-00" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-3" />
+ <stop
+ id="stop6985-4-3-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-6"
+ xlink:href="#linearGradient6977-7-3-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-1"
+ xlink:href="#linearGradient7157-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8-1">
+ <stop
+ id="stop6979-0-9-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1-9" />
+ <stop
+ id="stop6985-7-2-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3-8"
+ xlink:href="#linearGradient6977-5-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8-3" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1-6"
+ xlink:href="#linearGradient7113-6-2-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6-3">
+ <stop
+ id="stop6979-86-8-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2-9" />
+ <stop
+ id="stop6985-3-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1-9"
+ xlink:href="#linearGradient6977-14-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4-6"
+ xlink:href="#linearGradient7113-0-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-24">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-42" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-0" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-2"
+ xlink:href="#linearGradient7113-6-24"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-62">
+ <stop
+ id="stop6979-86-84"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-3" />
+ <stop
+ id="stop6985-3-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-5"
+ xlink:href="#linearGradient6977-14-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-81">
+ <stop
+ id="stop6979-0-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-7" />
+ <stop
+ id="stop6985-7-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-4"
+ xlink:href="#linearGradient6977-5-81"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-5" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-5"
+ xlink:href="#linearGradient7113-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-1"
+ xlink:href="#linearGradient7157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-7"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-4">
+ <stop
+ id="stop6979-8-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-2" />
+ <stop
+ id="stop6985-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6-9"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-32"
+ xlink:href="#linearGradient7113-63"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-7"
+ xlink:href="#linearGradient6977-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130-1"
+ xlink:href="#linearGradient4348-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126-4"
+ xlink:href="#linearGradient4437-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124-5"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122-7"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120-8"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118-3"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114-7"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110-7"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108-6"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106-8"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104-5"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098-8"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094-8"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092-4"
+ xlink:href="#linearGradient3787-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088-2"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086-3"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084-0"
+ xlink:href="#linearGradient3185-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0-3" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8-3"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6-1" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8-1" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3-0" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2-5" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8-9" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9-4"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809-2"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1-5"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22-6" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439-0" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8-4" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60-3" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-26" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512-6">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647-5" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-2" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584-8" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580-3"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576-2" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572-1"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-8">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-28">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-75" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-28"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512-6"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2-9"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9-8"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-9"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-93" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-9"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-58">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-78" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2-58"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3-0" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3-8" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-1" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185-4"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572-8"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient8025-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-1">
+ <stop
+ id="stop4842-0-8-8-3-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8-6"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-22"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-6">
+ <stop
+ id="stop4842-0-8-8-9-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740-4"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1-9"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4-1"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5-3"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8-7">
+ <stop
+ id="stop4842-0-4-3-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-9">
+ <stop
+ id="stop4842-0-8-5-7-9-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6-8"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213-4"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-4">
+ <stop
+ id="stop4842-0-8-8-3-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-74">
+ <stop
+ id="stop4842-0-8-8-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-10"
+ id="linearGradient6123-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0-10"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-8"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-4">
+ <stop
+ id="stop4842-0-4-33"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-2">
+ <stop
+ id="stop4842-0-8-5-7-1"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1-5">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7-3" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1-6" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348-81"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7-5"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-0"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755-9"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873-8"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871-0"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869-6"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3-1">
+ <stop
+ id="stop4842-0-1-0-6"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664-5"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662-1"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-0">
+ <stop
+ id="stop4842-0-8-5-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9-6"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-7">
+ <stop
+ id="stop4842-0-8-5-3-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4-3"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032-5"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030-1"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028-5"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-8">
+ <stop
+ id="stop4842-0-8-5-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866-1"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852-1"
+ xlink:href="#linearGradient3185-6-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848-0"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846-6"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-8"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820-3"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-5">
+ <stop
+ id="stop4842-0-8-5-59"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-24"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-86"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-7">
+ <stop
+ id="stop4842-0-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6-4">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-2" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-4"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-62"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-2">
+ <stop
+ id="stop6979-04"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-31" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-0" />
+ <stop
+ id="stop6985-45"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-63">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-8" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832-6"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5-6"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7-9" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7-7"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58-3">
+ <stop
+ id="stop6979-4-6-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6-1" />
+ <stop
+ id="stop6985-44-67-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97-2"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9559-1"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9567-8"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9574-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9578-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593-0"
+ id="linearGradient9580-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9582-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9584-0"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9586-2"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6640-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826-1">
+ <stop
+ id="stop6828-9"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830-2"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839-8">
+ <stop
+ id="stop6841-8"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843-5"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881-6">
+ <stop
+ id="stop6883-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885-5"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895-9">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897-1" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915-2" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952-6">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954-7" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958-0">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960-3" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731-3">
+ <stop
+ id="stop4733-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220-4">
+ <stop
+ id="stop4222-9"
+ offset="0"
+ style="stop-color:#0046ac;stop-opacity:1;" />
+ <stop
+ id="stop4224-1"
+ offset="1"
+ style="stop-color:#5d9ee4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-4" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-4" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-6"
+ xlink:href="#linearGradient7113-62-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-8"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-68"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-5"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-4" />
+ <stop
+ id="stop6981-1-2-8-5-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-0-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6814-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8-6">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2-5" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-68"
+ id="radialGradient5034-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8-6"
+ id="linearGradient5036-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8-5"
+ id="linearGradient5038-1"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-9"
+ id="linearGradient5040-5"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5042-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5044-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient5968"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient4847"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-2"
+ id="linearGradient5914"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-0"
+ id="linearGradient5968-0"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-0">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-6" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-06" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3"
+ id="linearGradient4847-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient6025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-4-0"
+ id="linearGradient5914-7"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-4-0">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-6-8"
+ id="linearGradient5968-0-9"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-6-8">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0-9" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3-9"
+ id="linearGradient4847-1-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220-4"
+ id="linearGradient6144-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6146-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient5895-4-2-2">
+ <stop
+ id="stop5897-1-4-6"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-0-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)"
+ y2="6"
+ x2="12"
+ y1="2"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5914-7-7"
+ xlink:href="#linearGradient5895-4-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146-4-2"
+ xlink:href="#linearGradient4176-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144-4"
+ xlink:href="#linearGradient4220-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5972-7-6-5">
+ <stop
+ id="stop5974-3-0-3"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-0-5"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-3">
+ <stop
+ id="stop5897-1-28"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-05">
+ <stop
+ id="stop5974-3-2"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-7"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-41">
+ <stop
+ id="stop5897-8"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-3">
+ <stop
+ id="stop6979-4-5-5-4-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-9" />
+ <stop
+ id="stop6985-44-1-5-4-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-52" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-79">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-98" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-3"
+ id="linearGradient9584-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-79"
+ id="linearGradient9586-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ id="linearGradient5972-2">
+ <stop
+ id="stop5974-5"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-6"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0-3" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26608"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26584"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-20"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4052"
+ gradientUnits="userSpaceOnUse"
+ x1="21.996094"
+ y1="3.8381946e-05"
+ x2="21.996094"
+ y2="14.000038"
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4054"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4056"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4058"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4060"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient25342"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3848-4-7-1">
+ <stop
+ style="stop-color:#51b700;stop-opacity:1;"
+ offset="0"
+ id="stop3850-4-6" />
+ <stop
+ style="stop-color:#a1f800;stop-opacity:1;"
+ offset="1"
+ id="stop3852-3-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4-1">
+ <stop
+ id="stop6979-4-5-5-4-50-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-26-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-31-4" />
+ <stop
+ id="stop6985-44-1-5-4-2-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-6-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-82-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient9584-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient9586-98-4"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-1"
+ id="linearGradient8252-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3810">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3812" />
+ <stop
+ style="stop-color:#e2e2e2;stop-opacity:1;"
+ offset="1"
+ id="stop3814" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305">
+ <stop
+ id="stop75307"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388" />
+ <stop
+ id="stop75309"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305-4">
+ <stop
+ id="stop75307-4"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388-3" />
+ <stop
+ id="stop75309-0"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9-0">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0-9" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220">
+ <stop
+ id="stop4222"
+ offset="0"
+ style="stop-color:#204a87;stop-opacity:1;" />
+ <stop
+ id="stop4224"
+ offset="1"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-4"
+ xlink:href="#linearGradient7113-62-4-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-07"
+ xlink:href="#linearGradient6977-28-2-3-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-76"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-88"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-73"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-6" />
+ <stop
+ id="stop6981-1-2-8-5-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812"
+ inkscape:collect="always">
+ <stop
+ id="stop6814"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-73"
+ id="radialGradient5034"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8"
+ id="linearGradient5036"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8"
+ id="linearGradient5038"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6"
+ id="linearGradient5040"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5042"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5044"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220"
+ id="linearGradient6144-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-7"
+ id="linearGradient6146-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient3848-4-5">
+ <stop
+ style="stop-color:#b70000;stop-opacity:1;"
+ offset="0"
+ id="stop3850-6" />
+ <stop
+ style="stop-color:#ff2d2d;stop-opacity:1;"
+ offset="1"
+ id="stop3852-30" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-5"
+ id="linearGradient4805"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,27.930718,1077.111)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146"
+ xlink:href="#linearGradient4176-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144"
+ xlink:href="#linearGradient4220"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5">
+ <stop
+ id="stop6979-4-5-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5" />
+ <stop
+ id="stop6985-44-1-5-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ id="linearGradient9584"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4"
+ id="linearGradient9586"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27756"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27758"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27804"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27806"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6958-0"
+ id="linearGradient27808"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="18.085783"
+ y1="20.621321"
+ x2="21.621317"
+ y2="17.085787" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="8"
+ inkscape:cx="7.0553878"
+ inkscape:cy="15.442636"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="885"
+ inkscape:window-height="421"
+ inkscape:window-x="155"
+ inkscape:window-y="284"
+ inkscape:window-maximized="0"
+ inkscape:snap-global="false">
+ <inkscape:grid
+ type="xygrid"
+ id="grid20428"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata19848">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ transform="translate(25.109779,-1045.4247)"
+ id="layer1-0"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-9">
+ <g
+ style="display:inline;enable-background:new"
+ id="g7930-58"
+ transform="translate(-217.68591,907.85387)">
+ <g
+ id="g4412-6"
+ inkscape:label="forma-text-bold"
+ style="display:inline">
+ <g
+ sodipodi:insensitive="true"
+ inkscape:groupmode="layer"
+ id="g4414-7"
+ inkscape:label="baseplate"
+ style="display:none">
+ <rect
+ height="48"
+ id="rect4416-5"
+ inkscape:label="48x48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="48"
+ x="366"
+ y="110" />
+ <rect
+ height="32"
+ id="rect4418-8"
+ inkscape:label="32x32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="32"
+ x="373"
+ y="186" />
+ <rect
+ height="24"
+ id="rect4420-9"
+ inkscape:label="24x24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="24"
+ x="372"
+ y="236" />
+ <rect
+ height="22"
+ id="rect4422-6"
+ inkscape:label="22x22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="22"
+ x="373"
+ y="237" />
+ <rect
+ height="16"
+ id="rect4424-77"
+ inkscape:label="16x16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="16"
+ x="373"
+ y="279" />
+ <text
+ id="text4426-05"
+ inkscape:label="context"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ x="2.9707375"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4428-7"
+ sodipodi:role="line"
+ x="2.9707375"
+ y="72.513618">actions</tspan></text>
+ <text
+ id="text4430-92"
+ inkscape:label="icon-name"
+ sodipodi:linespacing="125%"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ x="63.970734"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4432-3"
+ sodipodi:role="line"
+ x="63.970734"
+ y="72.513618">format-text-bold</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="g4434-9"
+ inkscape:label="small sizes"
+ style="display:inline" />
+ </g>
+ <g
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584);fill-opacity:1;stroke:url(#linearGradient9586);stroke-opacity:1;font-family:Sans"
+ id="text8779-35"
+ transform="translate(0,-0.61871844)" />
+ <g
+ transform="translate(246.1134,121.70809)"
+ style="display:inline;enable-background:new"
+ id="g22-7">
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g80-6" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g82-47" />
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-17"
+ transform="translate(6.1616704,-1012.459)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-93"
+ transform="translate(-0.98211143,-1.2546083)">
+ <g
+ id="layer1-1-1"
+ inkscape:label="Ebene 1"
+ transform="translate(-33.607049,-15.848364)">
+ <g
+ transform="translate(-217.68591,907.85387)"
+ id="g7930-5"
+ style="display:inline;enable-background:new">
+ <g
+ style="display:inline"
+ inkscape:label="forma-text-bold"
+ id="g4412-0">
+ <g
+ style="display:none"
+ inkscape:label="baseplate"
+ id="g4414-87"
+ inkscape:groupmode="layer"
+ sodipodi:insensitive="true">
+ <rect
+ y="110"
+ x="366"
+ width="48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="48x48"
+ id="rect4416-1"
+ height="48" />
+ <rect
+ y="186"
+ x="373"
+ width="32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="32x32"
+ id="rect4418-3"
+ height="32" />
+ <rect
+ y="236"
+ x="372"
+ width="24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="24x24"
+ id="rect4420-8"
+ height="24" />
+ <rect
+ y="237"
+ x="373"
+ width="22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="22x22"
+ id="rect4422-4"
+ height="22" />
+ <rect
+ y="279"
+ x="373"
+ width="16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="16x16"
+ id="rect4424-9"
+ height="16" />
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="2.9707375"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ inkscape:label="context"
+ id="text4426-3"><tspan
+ y="72.513618"
+ x="2.9707375"
+ sodipodi:role="line"
+ id="tspan4428-46">actions</tspan></text>
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="63.970734"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ sodipodi:linespacing="125%"
+ inkscape:label="icon-name"
+ id="text4430-3"><tspan
+ y="72.513618"
+ x="63.970734"
+ sodipodi:role="line"
+ id="tspan4432-6">format-text-bold</tspan></text>
+ </g>
+ <g
+ style="display:inline"
+ inkscape:label="small sizes"
+ id="g4434-7"
+ inkscape:groupmode="layer" />
+ </g>
+ <g
+ transform="translate(0,-0.61871844)"
+ id="text8779-3"
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-2);fill-opacity:1;stroke:url(#linearGradient9586-27);stroke-opacity:1;font-family:Sans" />
+ <g
+ id="g13457"
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,303.61805,195.7215)">
+ <g
+ transform="matrix(0.48213077,0.48213077,-0.48213077,0.48213077,439.52248,-469.22395)"
+ id="layer1-7-3"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-7" />
+ </g>
+ </g>
+ <path
+ sodipodi:nodetypes="sssssssssccccc"
+ inkscape:connector-curvature="0"
+ id="rect14249"
+ d="m 255.29296,142.35669 c -0.50783,0 -1,0.49217 -1,1 l 0,1 c 0,0.50784 0.49217,1.00296 1,1 l 16.09375,-0.0937 c 0.50782,-0.003 0.90625,-0.39841 0.90625,-0.90625 l 0,-1 c 0,-0.50783 -0.49217,-1 -1,-1 z m 0,1 16,0 0,1 -16,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:none;stroke:#333333;stroke-width:1.05347145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path28265"
+ sodipodi:cx="328.9375"
+ sodipodi:cy="121.96875"
+ sodipodi:rx="8.25"
+ sodipodi:ry="9.65625"
+ d="m 337.1875,121.96875 c 0,5.333 -3.69365,9.65625 -8.25,9.65625 -4.55635,0 -8.25,-4.32325 -8.25,-9.65625 0,0 0,0 0,0"
+ transform="matrix(0.91287885,0,0,0.98705502,-288.28009,-120.61437)"
+ sodipodi:start="0"
+ sodipodi:end="3.1415927"
+ sodipodi:open="true" />
+ <g
+ id="g28261"
+ transform="matrix(0.73609858,0.73609858,-0.73843684,0.73843684,7.5427498,-2.6131426)">
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:#ffffff;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="rect28257"
+ width="5.7410989"
+ height="5.7410989"
+ x="8.0288639"
+ y="1.9927319" />
+ <rect
+ y="2.4923284"
+ x="8.5261106"
+ height="4.7680912"
+ width="4.7681737"
+ id="rect28259"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.95909214;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-16"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-91"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-73">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8-4"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-14">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-96">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-03">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-53"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_beziersymmetric.png b/icon-themes/tango_testing/cmd/lc_beziersymmetric.png
new file mode 100644
index 000000000000..61836b01e38d
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_beziersymmetric.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_beziersymmetric.svg b/icon-themes/tango_testing/cmd/lc_beziersymmetric.svg
new file mode 100644
index 000000000000..db9ed37a7cff
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_beziersymmetric.svg
@@ -0,0 +1,18750 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg19843"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_beziersmooth.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_bezierdelete.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs19845">
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-5"
+ xlink:href="#linearGradient6977-28-2-3-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-50" />
+ <stop
+ id="stop6981-1-2-8-5-26"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-31"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-98"
+ xlink:href="#linearGradient7113-62-4-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-82"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3848-4-7">
+ <stop
+ id="stop3850-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4132">
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1;"
+ offset="0"
+ id="stop4134" />
+ <stop
+ id="stop4140"
+ offset="0.55712456"
+ style="stop-color:#babdb6;stop-opacity:1;" />
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1;"
+ offset="1"
+ id="stop4136" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient13347">
+ <stop
+ style="stop-color:#d9d6d0;stop-opacity:1;"
+ offset="0"
+ id="stop13349" />
+ <stop
+ id="stop13351"
+ offset="0.05057461"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop13353"
+ offset="0.45965657"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1"
+ offset="0.75905466"
+ id="stop13355" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop13357" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-27"
+ xlink:href="#linearGradient7113-62-4-59"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-2"
+ xlink:href="#linearGradient6977-28-2-3-5-70"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-59"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-65"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-70">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-0" />
+ <stop
+ id="stop6981-1-2-8-5-12"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4770"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4"
+ id="linearGradient3025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4">
+ <stop
+ id="stop3850"
+ offset="0"
+ style="stop-color:#b70000;stop-opacity:1;" />
+ <stop
+ id="stop3852"
+ offset="1"
+ style="stop-color:#ff2d2d;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737"
+ xlink:href="#linearGradient4731"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946"
+ xlink:href="#linearGradient6958"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944"
+ xlink:href="#linearGradient6952"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893"
+ xlink:href="#linearGradient6895"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887"
+ xlink:href="#linearGradient6881"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845"
+ xlink:href="#linearGradient6839"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832"
+ xlink:href="#linearGradient6826"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644"
+ xlink:href="#linearGradient6638"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595" />
+ <stop
+ id="stop9597"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9"
+ xlink:href="#linearGradient7113-62-7-0-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6"
+ xlink:href="#linearGradient7113-62-9-4-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-2">
+ <stop
+ id="stop6979-4-5-5-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-3" />
+ <stop
+ id="stop6985-44-1-5-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3"
+ xlink:href="#linearGradient7113-62-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ id="stop6979-4-5-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43" />
+ <stop
+ id="stop6985-44-1-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44"
+ xlink:href="#linearGradient6977-28-2-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3"
+ xlink:href="#linearGradient7113-62-9-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7">
+ <stop
+ id="stop6979-4-5-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4" />
+ <stop
+ id="stop6985-44-1-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4"
+ xlink:href="#linearGradient6977-28-2-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5"
+ xlink:href="#linearGradient7113-62-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2">
+ <stop
+ id="stop6979-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5" />
+ <stop
+ id="stop6985-44-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8"
+ xlink:href="#linearGradient6977-28-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8"
+ xlink:href="#linearGradient7113-62-52-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5">
+ <stop
+ id="stop6979-4-8-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3" />
+ <stop
+ id="stop6985-44-5-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1"
+ xlink:href="#linearGradient6977-28-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2"
+ xlink:href="#linearGradient7113-62-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6"
+ xlink:href="#linearGradient7113-62-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1"
+ xlink:href="#linearGradient7113-62-52"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7">
+ <stop
+ id="stop6979-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2" />
+ <stop
+ id="stop6985-44-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05"
+ xlink:href="#linearGradient6977-28-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9"
+ xlink:href="#linearGradient7113-62-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5">
+ <stop
+ id="stop6979-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8" />
+ <stop
+ id="stop6985-44-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0"
+ xlink:href="#linearGradient6977-28-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39"
+ xlink:href="#linearGradient7113-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28">
+ <stop
+ id="stop6979-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3" />
+ <stop
+ id="stop6985-44"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61"
+ xlink:href="#linearGradient6977-28"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9"
+ xlink:href="#linearGradient7113-6-1-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5">
+ <stop
+ id="stop6979-86-5-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6" />
+ <stop
+ id="stop6985-3-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1"
+ xlink:href="#linearGradient6977-14-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3">
+ <stop
+ id="stop6979-8-8-6-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0" />
+ <stop
+ id="stop6985-4-3-9-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8"
+ xlink:href="#linearGradient6977-7-3-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9"
+ xlink:href="#linearGradient7157-0-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7"
+ xlink:href="#linearGradient7113-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1">
+ <stop
+ id="stop6979-86-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7" />
+ <stop
+ id="stop6985-3-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7"
+ xlink:href="#linearGradient6977-14-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3">
+ <stop
+ id="stop6979-8-8-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8" />
+ <stop
+ id="stop6985-4-3-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7"
+ xlink:href="#linearGradient6977-7-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7"
+ xlink:href="#linearGradient7157-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7"
+ xlink:href="#linearGradient7113-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9">
+ <stop
+ id="stop6979-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5" />
+ <stop
+ id="stop6985-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06"
+ xlink:href="#linearGradient6977-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3">
+ <stop
+ id="stop6979-8-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8" />
+ <stop
+ id="stop6985-4-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4"
+ xlink:href="#linearGradient6977-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4"
+ xlink:href="#linearGradient7157-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8">
+ <stop
+ id="stop6979-0-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1" />
+ <stop
+ id="stop6985-7-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3"
+ xlink:href="#linearGradient6977-5-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1"
+ xlink:href="#linearGradient7113-6-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6">
+ <stop
+ id="stop6979-86-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2" />
+ <stop
+ id="stop6985-3-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1"
+ xlink:href="#linearGradient6977-14-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4"
+ xlink:href="#linearGradient7113-0-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34"
+ xlink:href="#linearGradient7113-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14">
+ <stop
+ id="stop6979-86"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2" />
+ <stop
+ id="stop6985-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3"
+ xlink:href="#linearGradient6977-14"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5">
+ <stop
+ id="stop6979-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4" />
+ <stop
+ id="stop6985-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0"
+ xlink:href="#linearGradient6977-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3"
+ xlink:href="#linearGradient7113-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2"
+ xlink:href="#linearGradient7157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7">
+ <stop
+ id="stop6979-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7" />
+ <stop
+ id="stop6985-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6"
+ xlink:href="#linearGradient6977-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3"
+ xlink:href="#linearGradient7113"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7"
+ xlink:href="#linearGradient6977"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130"
+ xlink:href="#linearGradient4348-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126"
+ xlink:href="#linearGradient4437"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110"
+ xlink:href="#linearGradient4309"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108"
+ xlink:href="#linearGradient4301"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106"
+ xlink:href="#linearGradient4293"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104"
+ xlink:href="#linearGradient4285"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098"
+ xlink:href="#linearGradient4176-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092"
+ xlink:href="#linearGradient3787-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084"
+ xlink:href="#linearGradient3185"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-8"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9">
+ <stop
+ id="stop4842-0-8-8-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6">
+ <stop
+ id="stop4842-0-8-8-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5"
+ xlink:href="#linearGradient5685-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8">
+ <stop
+ id="stop4842-0-4-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5">
+ <stop
+ id="stop4842-0-8-5-7-9"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7">
+ <stop
+ id="stop4842-0-8-8-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1">
+ <stop
+ id="stop4842-0-8-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient6123"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8">
+ <stop
+ id="stop4842-0-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691"
+ xlink:href="#linearGradient5685"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61">
+ <stop
+ id="stop4842-0-8-5-7"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033"
+ xlink:href="#linearGradient4388-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386"
+ xlink:href="#linearGradient4388"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0"
+ xlink:href="#linearGradient6427-7-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7"
+ xlink:href="#linearGradient6427-7-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755"
+ xlink:href="#linearGradient5297-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873"
+ xlink:href="#linearGradient4996-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871"
+ xlink:href="#linearGradient4832-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869"
+ xlink:href="#linearGradient4840-0-8-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3">
+ <stop
+ id="stop4842-0-1-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666"
+ xlink:href="#linearGradient5297-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6">
+ <stop
+ id="stop4842-0-8-5-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9"
+ xlink:href="#linearGradient4996-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3">
+ <stop
+ id="stop4842-0-8-5-3-3"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8">
+ <stop
+ id="stop4842-0-8-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852"
+ xlink:href="#linearGradient3185-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848"
+ xlink:href="#linearGradient4840-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846"
+ xlink:href="#linearGradient4832-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834"
+ xlink:href="#linearGradient4832-3-0-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832"
+ xlink:href="#linearGradient4840-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830"
+ xlink:href="#linearGradient4996"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1">
+ <stop
+ id="stop4842-0-8-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0">
+ <stop
+ id="stop4842-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996"
+ inkscape:collect="always">
+ <stop
+ id="stop4998"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157"
+ inkscape:collect="always">
+ <stop
+ id="stop4159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685"
+ inkscape:collect="always">
+ <stop
+ id="stop5687"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977">
+ <stop
+ id="stop6979"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983" />
+ <stop
+ id="stop6985"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7"
+ xlink:href="#linearGradient6977-28-58"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58">
+ <stop
+ id="stop6979-4-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6" />
+ <stop
+ id="stop6985-44-67"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9559"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9567"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9574"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient9578"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593"
+ id="linearGradient9580"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9582"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient9584-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9586-3"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638"
+ inkscape:collect="always">
+ <stop
+ id="stop6640"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826">
+ <stop
+ id="stop6828"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839">
+ <stop
+ id="stop6841"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881">
+ <stop
+ id="stop6883"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731">
+ <stop
+ id="stop4733"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4790-4"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4788-4"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4786-0"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4784-2"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807243,0,0,0.95038373,2.4016561,-1021.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4782-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-19"
+ id="linearGradient3025-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3848-4-7-19">
+ <stop
+ id="stop3850-4-4"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3-3"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ id="linearGradient3862-3"
+ xlink:href="#linearGradient3848-4-7-19"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4755-0"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4749-1"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4743-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ gradientUnits="userSpaceOnUse"
+ y2="1.7565804"
+ x2="3.4383593"
+ y1="-26.082771"
+ x1="16.767418"
+ id="linearGradient4737-5"
+ xlink:href="#linearGradient4731-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7005-7"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7001-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6996-9"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6994-1"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6984-4"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6970-5"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6968-2"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6966-5"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6964-8"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6950-1"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6948-4"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-9.9375"
+ x2="7.0625"
+ y1="-3.9375"
+ x1="0.9375"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6946-2"
+ xlink:href="#linearGradient6958-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1017.4872"
+ x2="6.875"
+ y1="1025.2997"
+ x1="-0.9375"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6944-8"
+ xlink:href="#linearGradient6952-6"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ y2="1082.1084"
+ x2="6.945096"
+ y1="1090.5339"
+ x1="1.7662058"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6911-3"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6893-7"
+ xlink:href="#linearGradient6895-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ gradientUnits="userSpaceOnUse"
+ y2="1082.1084"
+ x2="15.792633"
+ y1="1090.5339"
+ x1="7.3413663"
+ id="linearGradient6887-0"
+ xlink:href="#linearGradient6881-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6853-8"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6851-6"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="-7"
+ x2="9"
+ y1="-7"
+ x1="-1"
+ id="linearGradient6845-4"
+ xlink:href="#linearGradient6839-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="1021.3622"
+ x2="9"
+ y1="1021.3622"
+ x1="-3"
+ id="linearGradient6832-1"
+ xlink:href="#linearGradient6826-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11.137995"
+ x2="12.667261"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6666-8"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="39.110744"
+ x1="42.846115"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6664-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6661-9"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6659-2"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="14"
+ x2="15"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6655-6"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="3.4821436"
+ x2="4.7533474"
+ y1="22.703125"
+ x1="23.459822"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6653-6"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6649-3"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="17.59375"
+ x2="21.90625"
+ y1="17.59375"
+ x1="14.09375"
+ id="linearGradient6644-2"
+ xlink:href="#linearGradient6638-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ gradientUnits="userSpaceOnUse"
+ y2="14"
+ x2="15"
+ y1="21"
+ x1="22"
+ id="linearGradient6636-0"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient6619-5"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient9593-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop9595-5" />
+ <stop
+ id="stop9597-7"
+ offset="0.58164877"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop9599-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop9601-4" />
+ </linearGradient>
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40633-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40631-5"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40629-9"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40627-1"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40625-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40623-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40621-9"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-290,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40619-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40617-6"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40615-3"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40613-9"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40611-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40609-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40607-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40605-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40603-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40601-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40599-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40597-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40595-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40593-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40591-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40589-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40587-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40585-7"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40583-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40581-8"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40579-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40577-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40575-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40573-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40571-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40569-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40567-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40565-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40563-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40561-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40559-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40557-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40555-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40553-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40551-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40549-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40547-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40545-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40543-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40541-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40539-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40537-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40535-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40533-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40531-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40529-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40527-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40525-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40387-4"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40385-6"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40383-0"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40381-0"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40379-8"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40377-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40375-3"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40373-2"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40371-0"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40369-9"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40367-4"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40365-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40363-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40361-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40359-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40357-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40355-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40353-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40351-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40349-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40347-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40345-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40343-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40341-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40339-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40337-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40335-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40333-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40331-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40329-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40327-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40325-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40323-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40321-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40319-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40317-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40315-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40313-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40311-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40309-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40307-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40305-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40303-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40301-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40299-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40297-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40295-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40293-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40291-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40289-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40287-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40285-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40283-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient40281-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient40279-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8618-6"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8616-4"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8614-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8612-8"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8610-7"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8607-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8605-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8603-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8601-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8599-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8597-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8589-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8587-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8585-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8583-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8581-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8579-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8577-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8575-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8573-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8571-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8569-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8567-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8565-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8563-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8561-3"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8559-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8557-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8555-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8553-8"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8551-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8549-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8547-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8545-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8543-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8541-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8539-9"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8537-6"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8535-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8533-2"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8531-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8529-3"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8527-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8525-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8523-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-5-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-9-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-8-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-47.001114"
+ x2="67.917938"
+ y1="-43.977436"
+ x1="67.917938"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-9-2"
+ xlink:href="#linearGradient7113-62-7-0-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-1-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-6-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-6-9"
+ xlink:href="#linearGradient7113-62-9-4-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-1">
+ <stop
+ id="stop6979-4-5-5-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-2" />
+ <stop
+ id="stop6985-44-1-5-4-01"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-8-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-5-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-1-2" />
+ </linearGradient>
+ <linearGradient
+ y2="-54"
+ x2="184.48721"
+ y1="-50.994797"
+ x1="184.48721"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-3-4"
+ xlink:href="#linearGradient7113-62-7-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-7" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-6-5"
+ xlink:href="#linearGradient7113-62-9-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-1">
+ <stop
+ id="stop6979-4-5-5-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-7" />
+ <stop
+ id="stop6985-44-1-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-44-9"
+ xlink:href="#linearGradient6977-28-2-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-9-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.24979722"
+ x2="-66.05246"
+ y1="11.172731"
+ x1="-65.877312"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-3-1"
+ xlink:href="#linearGradient7113-62-9-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-0">
+ <stop
+ id="stop6979-4-5-1-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-7-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-4-2" />
+ <stop
+ id="stop6985-44-1-7-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="223.66896"
+ fx="38.636917"
+ cy="223.66896"
+ cx="38.636917"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-4-7"
+ xlink:href="#linearGradient6977-28-2-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-09">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-7" />
+ </linearGradient>
+ <linearGradient
+ y2="0.99979788"
+ x2="40"
+ y1="13.001565"
+ x1="40"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-5-2"
+ xlink:href="#linearGradient7113-62-9-09"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-5">
+ <stop
+ id="stop6979-4-5-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-7" />
+ <stop
+ id="stop6985-44-1-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="125.0378"
+ fx="40.68565"
+ cy="125.0378"
+ cx="40.68565"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-8-5"
+ xlink:href="#linearGradient6977-28-2-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-3-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-8-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-8-0"
+ xlink:href="#linearGradient7113-62-52-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-3">
+ <stop
+ id="stop6979-4-8-7-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-0-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-3-4" />
+ <stop
+ id="stop6985-44-5-0-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-1-6"
+ xlink:href="#linearGradient6977-28-7-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-0-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-9-8" />
+ </linearGradient>
+ <linearGradient
+ y2="-13.002928"
+ x2="76.255684"
+ y1="-10"
+ x1="76.255684"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-2-1"
+ xlink:href="#linearGradient7113-62-7-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-7-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-5-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-22.000326"
+ x2="185.01755"
+ y1="-18.997253"
+ x1="185.01755"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-6-4"
+ xlink:href="#linearGradient7113-62-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-52-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-2-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-4-5" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-1-88"
+ xlink:href="#linearGradient7113-62-52-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-7-9">
+ <stop
+ id="stop6979-4-8-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-8-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-2-6" />
+ <stop
+ id="stop6985-44-5-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-05-11"
+ xlink:href="#linearGradient6977-28-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-5-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-4-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-2-5" />
+ </linearGradient>
+ <linearGradient
+ y2="0.12165857"
+ x2="-56.826302"
+ y1="12.007"
+ x1="-56.866325"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-9-3"
+ xlink:href="#linearGradient7113-62-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-5-6">
+ <stop
+ id="stop6979-4-4-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-4-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-8-4" />
+ <stop
+ id="stop6985-44-6-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="192.03035"
+ fx="39.344345"
+ cy="192.03035"
+ cx="39.344345"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-0-5"
+ xlink:href="#linearGradient6977-28-5-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-27" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-3" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-96"
+ xlink:href="#linearGradient7113-62-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-25">
+ <stop
+ id="stop6979-4-67"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-4" />
+ <stop
+ id="stop6985-44-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-2"
+ xlink:href="#linearGradient6977-28-25"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-0-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-4-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-8-0" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-9-8"
+ xlink:href="#linearGradient7113-6-1-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-0">
+ <stop
+ id="stop6979-86-5-9-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-5-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-6-0" />
+ <stop
+ id="stop6985-3-7-2-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-1-7"
+ xlink:href="#linearGradient6977-14-1-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-1">
+ <stop
+ id="stop6979-8-8-6-1-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-3-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-0-2" />
+ <stop
+ id="stop6985-4-3-9-3-2"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-8-7"
+ xlink:href="#linearGradient6977-7-3-3-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-5-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-9-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-7-1" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-9-2"
+ xlink:href="#linearGradient7157-0-7-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-1-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-2-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-4-7" />
+ </linearGradient>
+ <linearGradient
+ y2="26"
+ x2="62"
+ y1="30"
+ x1="62"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-7-5"
+ xlink:href="#linearGradient7113-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-1-3">
+ <stop
+ id="stop6979-86-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-27-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-7-1" />
+ <stop
+ id="stop6985-3-7-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.16309"
+ fx="45.43713"
+ cy="120.16309"
+ cx="45.43713"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-7-6"
+ xlink:href="#linearGradient6977-14-1-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-9">
+ <stop
+ id="stop6979-8-8-6-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-0-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-8-1" />
+ <stop
+ id="stop6985-4-3-9-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="112.64323"
+ fx="38.709511"
+ cy="112.64323"
+ cx="38.709511"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-7-81"
+ xlink:href="#linearGradient6977-7-3-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-7-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-5-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1.9788401"
+ x2="65.988487"
+ y1="25.515911"
+ x1="65.988487"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-7-7"
+ xlink:href="#linearGradient7157-0-7-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-9-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-71-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-8-4" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-7-4"
+ xlink:href="#linearGradient7113-9-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-9-7">
+ <stop
+ id="stop6979-3-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-33-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-5-6" />
+ <stop
+ id="stop6985-2-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-06-9"
+ xlink:href="#linearGradient6977-9-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-3-6">
+ <stop
+ id="stop6979-8-8-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-5-00" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-8-3" />
+ <stop
+ id="stop6985-4-3-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.44762"
+ fx="39.814342"
+ cy="137.44762"
+ cx="39.814342"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-4-6"
+ xlink:href="#linearGradient6977-7-3-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-0-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-7-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-6-7" />
+ </linearGradient>
+ <linearGradient
+ y2="5.1557527"
+ x2="3.9729283"
+ y1="27.841093"
+ x1="3.9729283"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-4-1"
+ xlink:href="#linearGradient7157-0-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-8-1">
+ <stop
+ id="stop6979-0-9-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-1-9" />
+ <stop
+ id="stop6985-7-2-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-3-8"
+ xlink:href="#linearGradient6977-5-8-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-2-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-4-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-8-3" />
+ </linearGradient>
+ <linearGradient
+ y2="89"
+ x2="84.5"
+ y1="94"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-1-6"
+ xlink:href="#linearGradient7113-6-2-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-6-3">
+ <stop
+ id="stop6979-86-8-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-2-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-2-9" />
+ <stop
+ id="stop6985-3-4-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="120.14571"
+ fx="72.146278"
+ cy="120.14571"
+ cx="72.146278"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-1-9"
+ xlink:href="#linearGradient6977-14-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-2-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-2-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-1-8" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.001797"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-4-6"
+ xlink:href="#linearGradient7113-0-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-6-24">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-7-42" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-74-0" />
+ </linearGradient>
+ <linearGradient
+ y2="88"
+ x2="84.5"
+ y1="93"
+ x1="84.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-34-2"
+ xlink:href="#linearGradient7113-6-24"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-14-62">
+ <stop
+ id="stop6979-86-84"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-39-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-2-3" />
+ <stop
+ id="stop6985-3-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="119.85913"
+ fx="71.642067"
+ cy="119.85913"
+ cx="71.642067"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-3-5"
+ xlink:href="#linearGradient6977-14-62"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-5-81">
+ <stop
+ id="stop6979-0-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-4-7" />
+ <stop
+ id="stop6985-7-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-0-4"
+ xlink:href="#linearGradient6977-5-81"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-0-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-5-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-7-5" />
+ </linearGradient>
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.004028"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-3-5"
+ xlink:href="#linearGradient7113-0-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.9807839"
+ x2="145.3887"
+ y1="39.999996"
+ x1="145.3887"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-2-1"
+ xlink:href="#linearGradient7157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="103.43681"
+ fx="39.554386"
+ cy="103.43681"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7111-7"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-7-4">
+ <stop
+ id="stop6979-8-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-9-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-7-2" />
+ <stop
+ id="stop6985-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-6-9"
+ xlink:href="#linearGradient6977-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="5.9995542"
+ x2="18"
+ y1="41.016068"
+ x1="18"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-32"
+ xlink:href="#linearGradient7113-63"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="137.48907"
+ fx="39.554386"
+ cy="137.48907"
+ cx="39.554386"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-7"
+ xlink:href="#linearGradient6977-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46"
+ x2="20.155684"
+ y1="43.910683"
+ x1="20.155684"
+ gradientTransform="translate(60,46)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6130-1"
+ xlink:href="#linearGradient4348-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="31.960411"
+ x2="74.28125"
+ y1="28.776411"
+ x1="74.28125"
+ gradientTransform="translate(190,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6126-4"
+ xlink:href="#linearGradient4437-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6124-5"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6122-7"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6120-8"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6118-3"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6114-7"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="36.25"
+ x2="32.4375"
+ y1="36.5625"
+ x1="35.875"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6110-7"
+ xlink:href="#linearGradient4309-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19"
+ x2="18.625"
+ y1="36.125"
+ x1="22.75"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6108-6"
+ xlink:href="#linearGradient4301-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="10.000016"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6106-8"
+ xlink:href="#linearGradient4293-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6104-5"
+ xlink:href="#linearGradient4285-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22.22967"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6098-8"
+ xlink:href="#linearGradient4176-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6094-8"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6092-4"
+ xlink:href="#linearGradient3787-6-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6088-2"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6086-3"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="7.9160094"
+ fy="13.921414"
+ fx="-50.993778"
+ cy="13.921414"
+ cx="-50.993778"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6084-0"
+ xlink:href="#linearGradient3185-8"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-8-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-5-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-0-3" />
+ </linearGradient>
+ <linearGradient
+ y2="46"
+ y1="43.910683"
+ xlink:href="#linearGradient4348-8-3"
+ x2="20.155684"
+ x1="20.155684"
+ inkscape:collect="always"
+ id="linearGradient5720-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,47)" />
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient5716-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient5714-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient5712-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient5710-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5706-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-1-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-3-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-6-1" />
+ </linearGradient>
+ <linearGradient
+ y2="36.25"
+ y1="36.5625"
+ xlink:href="#linearGradient4309-1-8"
+ x2="32.4375"
+ x1="35.875"
+ inkscape:collect="always"
+ id="linearGradient4494-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-7-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-6-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-8-1" />
+ </linearGradient>
+ <linearGradient
+ y2="19"
+ y1="36.125"
+ xlink:href="#linearGradient4301-7-6"
+ x2="18.625"
+ x1="22.75"
+ inkscape:collect="always"
+ id="linearGradient4492-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-2-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-5-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-3-0" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4293-2-5"
+ r="10.000016"
+ inkscape:collect="always"
+ id="radialGradient4490-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ fy="22.762897"
+ fx="13.499985"
+ cy="22.762897"
+ cx="13.499985" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-3-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-7-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4285-2-7"
+ r="11"
+ inkscape:collect="always"
+ id="radialGradient4488-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ fy="8.5665998"
+ fx="21.40613"
+ cy="8.5665998"
+ cx="21.40613" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-1-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-2-5" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-4-6" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-1-3"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4496-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-9-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-2-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-8-9" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-9-4"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3817-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3809-2"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ y1="14.541593"
+ xlink:href="#linearGradient4256-1-5"
+ x2="4.7950678"
+ x1="8.2643108"
+ inkscape:collect="always"
+ id="linearGradient3650-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-22-6" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-1-5"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3648-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4348-3-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4350-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4352-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4437-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4439-0" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4441-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4309-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4311-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4313-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4301-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4303-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4305-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4293-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4295-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4297-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4285-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4287-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4289-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-5-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-8-4" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-9-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-60-3" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-2-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-26" />
+ </linearGradient>
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient6565-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient6563-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient6561-9"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient6559-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(10,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient6557-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient6553-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="17.149347"
+ y1="9.5507469"
+ xlink:href="#linearGradient4601-9"
+ x2="134.42435"
+ x1="128.99229"
+ inkscape:collect="always"
+ id="linearGradient7149-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4601-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4603-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4605-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4601-9"
+ r="3.3585801"
+ inkscape:collect="always"
+ id="radialGradient7147-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ fy="8.3315935"
+ fx="143.15497"
+ cy="8.3315935"
+ cx="143.15497" />
+ <linearGradient
+ id="linearGradient2512-6">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop2514-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop2516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="11.313666"
+ y1="31.107067"
+ xlink:href="#linearGradient2512-6"
+ x2="129.729"
+ x1="133.16072"
+ inkscape:collect="always"
+ id="linearGradient7145-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4643-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4645-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4647-5" />
+ </linearGradient>
+ <linearGradient
+ y2="31.533039"
+ y1="33.41592"
+ xlink:href="#linearGradient4643-1"
+ x2="142.30525"
+ x1="145.31044"
+ inkscape:collect="always"
+ id="linearGradient7143-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4653-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0"
+ offset="0"
+ id="stop4655-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4657-1" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4653-9"
+ r="14.90584"
+ inkscape:collect="always"
+ id="radialGradient7141-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ fy="29.419594"
+ fx="137.56113"
+ cy="29.419594"
+ cx="137.56113" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-6" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-2" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-0"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient7137-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3580-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3582-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3584-8" />
+ </linearGradient>
+ <linearGradient
+ y2="11.5"
+ y1="15.6875"
+ xlink:href="#linearGradient3580-3"
+ x2="106.4375"
+ x1="100.875"
+ inkscape:collect="always"
+ id="linearGradient2761-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3572-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3574-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3576-2" />
+ </linearGradient>
+ <linearGradient
+ y2="15.25"
+ y1="5.125"
+ xlink:href="#linearGradient3572-1"
+ x2="100.375"
+ x1="100.5"
+ inkscape:collect="always"
+ id="linearGradient2759-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(30,-30)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-8">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-28">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-75" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-28"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient2753-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3512-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3514-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3516-4" />
+ </linearGradient>
+ <linearGradient
+ y2="-36.90625"
+ y1="-44.57159"
+ xlink:href="#linearGradient3512-6"
+ x2="99.881432"
+ x1="99.396446"
+ inkscape:collect="always"
+ id="linearGradient3082-0"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="16.751301"
+ y1="6.3656702"
+ xlink:href="#linearGradient4256-2-9"
+ x2="12.993087"
+ x1="7.2478447"
+ inkscape:collect="always"
+ id="linearGradient3638-9-8"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-9"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-93" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-8" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-9"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-58">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-78" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient3787-2-58"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient4147-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient4145-6-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient4143-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient4141-7-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient4137-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="18.5"
+ inkscape:collect="always"
+ id="radialGradient5732-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ fy="18.890318"
+ fx="-49.9375"
+ cy="18.890318"
+ cx="-49.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4248-6-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4250-9-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4252-3-0" />
+ </linearGradient>
+ <linearGradient
+ y2="35.581436"
+ y1="36.421127"
+ xlink:href="#linearGradient4248-6-3"
+ x2="-21.478369"
+ x1="-18.296389"
+ inkscape:collect="always"
+ id="linearGradient5730-9-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4229-3-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4231-9-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4233-1-4" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4229-3-8"
+ r="15.500008"
+ inkscape:collect="always"
+ id="radialGradient5728-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ fy="5.3468766"
+ fx="-42.750153"
+ cy="5.3468766"
+ cx="-42.750153" />
+ <linearGradient
+ id="linearGradient3421-0-0">
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="0"
+ id="stop3423-3-8" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:0"
+ offset="1"
+ id="stop3425-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="21.48896"
+ y1="38.63026"
+ xlink:href="#linearGradient3421-0-0"
+ x2="20.90625"
+ x1="28.216566"
+ inkscape:collect="always"
+ id="linearGradient5726-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-3,-3)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-1" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-3" />
+ </linearGradient>
+ <radialGradient
+ xlink:href="#linearGradient4176-9-9"
+ r="22.22967"
+ inkscape:collect="always"
+ id="radialGradient5722-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ fy="38.763416"
+ fx="24.174213"
+ cy="38.763416"
+ cx="24.174213" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9203-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9201-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9199-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9197-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9195-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9193-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9191-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9189-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9185-4"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9183-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9181-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientTransform="translate(240,2)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9179-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9177-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9157-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9155-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9153-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9151-2"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9149-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9147-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9143-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1.0000006,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9135-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9133-9"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1.0000001,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9131-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9129-0"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9127-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9125-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1.0000003,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9123-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9121-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8747-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8685-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8681-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8677-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8651-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8649-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8646-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8644-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(180,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8641-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8639-2"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8572-8"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8532-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8530-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8528-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8526-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8524-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8522-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8520-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8518-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8516-6"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8512-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8474-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8472-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8470-3"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8468-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8466-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8464-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8462-7"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8460-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8458-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8456-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8454-9"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8452-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8450-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8448-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8446-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8444-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8442-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8440-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8438-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8436-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient8025-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-2-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-1">
+ <stop
+ id="stop4842-0-8-8-3-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-9-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-8-6"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-8-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-4-0"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7950-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7942-22"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7938-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7922-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7920-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7917-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7915-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(120,2)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7912-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7910-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-6">
+ <stop
+ id="stop4842-0-8-8-9-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-1-4"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7740-4"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5685-0-1-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-1-9"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-4-1"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7249-5-3"
+ xlink:href="#linearGradient5685-0-1-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-8-8-7">
+ <stop
+ id="stop4842-0-4-3-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-3-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-9">
+ <stop
+ id="stop4842-0-8-5-7-9-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-6-8"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7402-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7400-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7398-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7396-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7394-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7392-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7390-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7388-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7361-4"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7359-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7357-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7355-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7353-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7351-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7349-2"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7347-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7345-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7301-0"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7287-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7285-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7279-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7277-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7275-7"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7271-4"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7269-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7267-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientTransform="translate(-1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7265-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7263-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7213-4"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6919-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6913-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6911-6"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6909-7"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-4">
+ <stop
+ id="stop4842-0-8-8-3-0"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-0-2"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-74">
+ <stop
+ id="stop4842-0-8-8-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-6-7-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-10"
+ id="linearGradient6123-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient5685-0-10"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-7-8"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-6-6"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-4">
+ <stop
+ id="stop4842-0-4-33"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-4-7"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ id="linearGradient5691-7"
+ xlink:href="#linearGradient5685-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-2">
+ <stop
+ id="stop4842-0-8-5-7-1"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-0-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5375-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5369-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5367-0"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5365-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5363-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5361-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5359-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5357-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5355-8"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5353-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5347-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5345-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5341-8"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1)"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5337-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5335-8"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5329-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5327-5"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5325-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5323-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5321-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5319-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5317-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5315-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5313-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5311-1"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5309-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5303-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5301-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5299-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5297-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5295-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5293-1"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-1,0)"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5291-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5289-5"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ r="16"
+ fy="183.71428"
+ fx="73"
+ cy="183.71428"
+ cx="73"
+ id="radialGradient5151-6"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ r="16"
+ fy="183.81726"
+ fx="12.999999"
+ cy="183.81726"
+ cx="12.999999"
+ id="radialGradient5033-2"
+ xlink:href="#linearGradient4388-8-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8-1-5">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-1-7-3" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-6-1-6" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ r="22"
+ fy="107.39743"
+ fx="66"
+ cy="107.39743"
+ cx="66"
+ id="radialGradient4660-4"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ r="22"
+ fy="106.83335"
+ fx="5.75"
+ cy="106.83335"
+ cx="5.75"
+ id="radialGradient4386-6"
+ xlink:href="#linearGradient4388-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="68"
+ y1="117"
+ x1="68"
+ id="linearGradient4348-81"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="82"
+ y1="124"
+ x1="82"
+ id="linearGradient4346-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="82"
+ y1="131"
+ x1="82"
+ id="linearGradient4344-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="82"
+ y1="138"
+ x1="82"
+ id="linearGradient4342-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="68"
+ y1="145"
+ x1="68"
+ id="linearGradient4340-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="68"
+ y1="152"
+ x1="68"
+ id="linearGradient4338-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="141"
+ x2="27"
+ y1="145"
+ x1="27"
+ id="linearGradient4330-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="148"
+ x2="27"
+ y1="152"
+ x1="27"
+ id="linearGradient4328-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="134"
+ x2="8"
+ y1="138"
+ x1="8"
+ id="linearGradient4326-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="127"
+ x2="8"
+ y1="131"
+ x1="8"
+ id="linearGradient4324-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="120"
+ x2="8"
+ y1="124"
+ x1="8"
+ id="linearGradient4322-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="113"
+ x2="27"
+ y1="117"
+ x1="27"
+ id="linearGradient4320-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="25"
+ y1="216"
+ x1="25"
+ id="linearGradient4312-9"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="13"
+ y1="210"
+ x1="13"
+ id="linearGradient4310-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="13"
+ y1="204"
+ x1="13"
+ id="linearGradient4308-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="13"
+ y1="198"
+ x1="13"
+ id="linearGradient4306-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="25"
+ y1="192"
+ x1="25"
+ id="linearGradient4304-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="188"
+ x2="73"
+ y1="192"
+ x1="73"
+ id="linearGradient4302-6"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="194"
+ x2="85"
+ y1="198"
+ x1="85"
+ id="linearGradient4300-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="200"
+ x2="85"
+ y1="204"
+ x1="85"
+ id="linearGradient4298-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="206"
+ x2="85"
+ y1="210"
+ x1="85"
+ id="linearGradient4296-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="212"
+ x2="73"
+ y1="216"
+ x1="73"
+ id="linearGradient4294-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4215-9"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4213-3"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4211-5"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4209-0"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="73"
+ y1="294"
+ x1="73"
+ id="linearGradient4207-7"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="80"
+ y1="290"
+ x1="80"
+ id="linearGradient4205-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="80"
+ y1="286"
+ x1="80"
+ id="linearGradient4203-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="73"
+ y1="282"
+ x1="73"
+ id="linearGradient4201-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="291"
+ x2="17"
+ y1="294"
+ x1="17"
+ id="linearGradient4193-1"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="287"
+ x2="13"
+ y1="290"
+ x1="13"
+ id="linearGradient4191-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="283"
+ x2="13"
+ y1="286"
+ x1="13"
+ id="linearGradient4189-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="279"
+ x2="17"
+ y1="282"
+ x1="17"
+ id="linearGradient4187-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4179-5"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ id="linearGradient4177-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ id="linearGradient4175-0"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ id="linearGradient4173-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="81"
+ y1="253"
+ x1="81"
+ id="linearGradient4171-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="73"
+ y1="257"
+ x1="73"
+ id="linearGradient4169-5"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="254"
+ x2="22"
+ y1="257"
+ x1="22"
+ id="linearGradient4149-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="250"
+ x2="13"
+ y1="253"
+ x1="13"
+ id="linearGradient4147-2"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="246"
+ x2="13"
+ y1="249"
+ x1="13"
+ id="linearGradient4145-8"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="242"
+ x2="13"
+ y1="245"
+ x1="13"
+ id="linearGradient4143-3"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="238"
+ x2="22"
+ y1="241"
+ x1="22"
+ id="linearGradient4141-4"
+ xlink:href="#linearGradient4157-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-40-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ id="radialGradient6433-7-0-1"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-3-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-1-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ r="11"
+ fy="235.21867"
+ fx="24.391739"
+ cy="235.21867"
+ cx="24.391739"
+ id="radialGradient6433-7-5"
+ xlink:href="#linearGradient6427-7-6-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6584-7"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6427-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-0"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ id="radialGradient6433-0-9"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ r="11"
+ fy="235.21867"
+ fx="12.999998"
+ cy="235.21867"
+ cx="12.999998"
+ id="radialGradient6433-1"
+ xlink:href="#linearGradient6427-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-291,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5755-9"
+ xlink:href="#linearGradient5297-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5753-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5751-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientTransform="translate(-230,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4873-8"
+ xlink:href="#linearGradient4996-4-7-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4871-0"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4869-6"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4996-4-7-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-6-0-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-81-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-1-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-2-3-2"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-8-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-3-1">
+ <stop
+ id="stop4842-0-1-0-6"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3-2-9"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="183"
+ x2="323.5"
+ y1="190.5"
+ x1="324"
+ gradientTransform="translate(-231,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4666-6"
+ xlink:href="#linearGradient5297-7-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4664-5"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4662-1"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-0">
+ <stop
+ id="stop4842-0-8-5-2-4"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-2-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-3-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-9-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-4-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-4-0-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-4-4-5"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-4-8-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-2-9-6"
+ xlink:href="#linearGradient4996-4-0-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-7">
+ <stop
+ id="stop4842-0-8-5-3-3-2"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-9-6-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-7-4-3"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4032-5"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientTransform="translate(-265,60)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4030-1"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4028-5"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-8">
+ <stop
+ id="stop4842-0-8-5-5-5"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-3-1"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-17-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-0-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-6-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-9-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-7-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-4-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="16.620459"
+ x2="6.7499995"
+ y1="24.504543"
+ x1="6.7499995"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3866-1"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8"
+ fy="4.2001681"
+ fx="3.403806"
+ cy="4.2001681"
+ cx="3.403806"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3852-1"
+ xlink:href="#linearGradient3185-6-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="186.12825"
+ x2="322.05136"
+ y1="191.375"
+ x1="324.52679"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3848-0"
+ xlink:href="#linearGradient4840-0-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="183.05904"
+ x2="321.5"
+ y1="188.71875"
+ x1="321.5"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3846-6"
+ xlink:href="#linearGradient4832-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="222.30664"
+ x2="316.5"
+ y1="228.31705"
+ x1="317.31418"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3844-5"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="69.747467"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3834-3"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="17.187613"
+ x2="7.5860305"
+ y1="20.245487"
+ x1="7.5860305"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3832-3"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="132.61122"
+ x2="330.25"
+ y1="139.5625"
+ x1="330.25"
+ gradientTransform="translate(-291,63)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3830-8"
+ xlink:href="#linearGradient4996-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-290,60)"
+ y2="55.674088"
+ x2="337.69534"
+ y1="71.508186"
+ x1="337.69534"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3820-3"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4832-3-0-6-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-5-0"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-8-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-5">
+ <stop
+ id="stop4842-0-8-5-59"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-7-0-24"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-0-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-6-2-1"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-3-7-86"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5297-7-9"
+ inkscape:collect="always">
+ <stop
+ id="stop5299-8-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5301-3-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4832-3-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4834-2-4"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop4836-0-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-7">
+ <stop
+ id="stop4842-0-8"
+ offset="0"
+ style="stop-color:#a64a00;stop-opacity:1;" />
+ <stop
+ id="stop4844-4-3"
+ offset="1"
+ style="stop-color:#ce5c00;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3185-6-4">
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0"
+ id="stop3187-7-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop3189-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4996-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4998-3"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop5000-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4157-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4388-8">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop4390-2" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop4392-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5685-1"
+ inkscape:collect="always">
+ <stop
+ id="stop5687-4"
+ offset="0"
+ style="stop-color:#bb5400;stop-opacity:1" />
+ <stop
+ id="stop5689-62"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-2">
+ <stop
+ id="stop6979-04"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-31" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-0" />
+ <stop
+ id="stop6985-45"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-63">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7157-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7159-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7161-8" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective1832-6"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 150 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <radialGradient
+ xlink:href="#linearGradient3787-2-5-6"
+ r="9.84375"
+ inkscape:collect="always"
+ id="radialGradient3793-6-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7-9" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="126.90098"
+ fx="37.839142"
+ cy="126.90098"
+ cx="37.839142"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9139-7-61-7-7"
+ xlink:href="#linearGradient6977-28-58-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-58-3">
+ <stop
+ id="stop6979-4-6-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-3-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-6-1" />
+ <stop
+ id="stop6985-44-67-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0002024"
+ x2="39"
+ y1="14.000207"
+ x1="39"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9141-3-39-97-2"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-9" />
+ </linearGradient>
+ <linearGradient
+ y2="8.153533"
+ y1="15.424131"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="14.555588"
+ x1="10.386932"
+ inkscape:collect="always"
+ id="linearGradient3782-7-6-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-2-6-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-8-9-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-0-1" />
+ </linearGradient>
+ <linearGradient
+ y2="0.059782967"
+ y1="11.553171"
+ xlink:href="#linearGradient4256-2-6-6"
+ x2="16.993088"
+ x1="0.5915947"
+ inkscape:collect="always"
+ id="linearGradient4237-9-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9559-1"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9567-8"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9574-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-6"
+ id="radialGradient9578-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9593-0"
+ id="linearGradient9580-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="223.39351"
+ y2="119.67304" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9582-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient9584-0"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9586-2"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)"
+ gradientUnits="userSpaceOnUse"
+ y2="22.950687"
+ x2="12.30598"
+ y1="2.2262447"
+ x1="12.966009"
+ id="linearGradient3761-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6638-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6640-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6642-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826-1">
+ <stop
+ id="stop6828-9"
+ offset="0"
+ style="stop-color:#096000;stop-opacity:1;" />
+ <stop
+ id="stop6830-2"
+ offset="1"
+ style="stop-color:#10af00;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839-8">
+ <stop
+ id="stop6841-8"
+ offset="0"
+ style="stop-color:#9ee400;stop-opacity:1;" />
+ <stop
+ id="stop6843-5"
+ offset="1"
+ style="stop-color:#a0ff50;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881-6">
+ <stop
+ id="stop6883-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6885-5"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895-9">
+ <stop
+ style="stop-color:#0039c0;stop-opacity:1;"
+ offset="0"
+ id="stop6897-1" />
+ <stop
+ style="stop-color:#01008b;stop-opacity:1;"
+ offset="1"
+ id="stop6899-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6915-2" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6917-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952-6">
+ <stop
+ style="stop-color:#600000;stop-opacity:1;"
+ offset="0"
+ id="stop6954-7" />
+ <stop
+ style="stop-color:#af0000;stop-opacity:1;"
+ offset="1"
+ id="stop6956-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958-0">
+ <stop
+ style="stop-color:#e40000;stop-opacity:1;"
+ offset="0"
+ id="stop6960-3" />
+ <stop
+ style="stop-color:#ff5050;stop-opacity:1;"
+ offset="1"
+ id="stop6962-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731-3">
+ <stop
+ id="stop4733-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4735-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220-4">
+ <stop
+ id="stop4222-9"
+ offset="0"
+ style="stop-color:#0046ac;stop-opacity:1;" />
+ <stop
+ id="stop4224-1"
+ offset="1"
+ style="stop-color:#5d9ee4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-6">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-4" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-4" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-6"
+ xlink:href="#linearGradient7113-62-4-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-8"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-68"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-5"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-4" />
+ <stop
+ id="stop6981-1-2-8-5-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-0-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6814-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8-6">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2-5" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-68"
+ id="radialGradient5034-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8-6"
+ id="linearGradient5036-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8-5"
+ id="linearGradient5038-1"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-9"
+ id="linearGradient5040-5"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5042-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812-5"
+ id="radialGradient5044-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient5968"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient4847"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-2"
+ id="linearGradient5914"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-0"
+ id="linearGradient5968-0"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-0">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-6" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-06" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3"
+ id="linearGradient4847-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-6"
+ id="linearGradient6025"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-4-0"
+ id="linearGradient5914-7"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-4-0">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5972-7-6-8"
+ id="linearGradient5968-0-9"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)" />
+ <linearGradient
+ id="linearGradient5972-7-6-8">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0-9" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-3-9"
+ id="linearGradient4847-1-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="10"
+ y1="14"
+ x2="18"
+ y2="2" />
+ <linearGradient
+ id="linearGradient4176-9-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-5-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-2-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220-4"
+ id="linearGradient6144-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-0"
+ id="linearGradient6146-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient5895-4-2-2">
+ <stop
+ id="stop5897-1-4-6"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-0-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)"
+ y2="6"
+ x2="12"
+ y1="2"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5914-7-7"
+ xlink:href="#linearGradient5895-4-2-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146-4-2"
+ xlink:href="#linearGradient4176-9-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144-4"
+ xlink:href="#linearGradient4220-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5972-7-6-5">
+ <stop
+ id="stop5974-3-0-3"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-0-5"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-3">
+ <stop
+ id="stop5897-1-28"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-05">
+ <stop
+ id="stop5974-3-2"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-7"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-41">
+ <stop
+ id="stop5897-8"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-3">
+ <stop
+ id="stop6979-4-5-5-4-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-9" />
+ <stop
+ id="stop6985-44-1-5-4-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-52" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-79">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-98" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-3"
+ id="linearGradient9584-1"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-79"
+ id="linearGradient9586-9"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ id="linearGradient5972-2">
+ <stop
+ id="stop5974-5"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-6"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0-3" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4-8" />
+ </linearGradient>
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26608"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient26584"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-20"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-0" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4052"
+ gradientUnits="userSpaceOnUse"
+ x1="21.996094"
+ y1="3.8381946e-05"
+ x2="21.996094"
+ y2="14.000038"
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4054"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4056"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4058"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient4060"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ y2="16"
+ x2="12"
+ y1="1"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient25342"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3848-4-7-1">
+ <stop
+ style="stop-color:#51b700;stop-opacity:1;"
+ offset="0"
+ id="stop3850-4-6" />
+ <stop
+ style="stop-color:#a1f800;stop-opacity:1;"
+ offset="1"
+ id="stop3852-3-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4-1">
+ <stop
+ id="stop6979-4-5-5-4-50-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-26-0" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-31-4" />
+ <stop
+ id="stop6985-44-1-5-4-2-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-6-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-6-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-82-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient9584-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient9586-98-4"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7-1"
+ id="linearGradient8252-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ id="linearGradient3810">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3812" />
+ <stop
+ style="stop-color:#e2e2e2;stop-opacity:1;"
+ offset="1"
+ id="stop3814" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305">
+ <stop
+ id="stop75307"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388" />
+ <stop
+ id="stop75309"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305-4">
+ <stop
+ id="stop75307-4"
+ offset="0"
+ style="stop-color:#c67836;stop-opacity:1;" />
+ <stop
+ style="stop-color:#be6633;stop-opacity:1;"
+ offset="0.5"
+ id="stop75388-3" />
+ <stop
+ id="stop75309-0"
+ offset="1"
+ style="stop-color:#8e3f27;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9-0">
+ <stop
+ id="stop6979-4-5-18-1-8-1-0-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-70-7-0-8-9-4" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-3-7-0-0-0-9" />
+ <stop
+ id="stop6985-44-1-52-7-9-4-1-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220">
+ <stop
+ id="stop4222"
+ offset="0"
+ style="stop-color:#204a87;stop-opacity:1;" />
+ <stop
+ id="stop4224"
+ offset="1"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-4"
+ xlink:href="#linearGradient7113-62-4-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-07"
+ xlink:href="#linearGradient6977-28-2-3-5-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-76"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-88"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-73"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-6" />
+ <stop
+ id="stop6981-1-2-8-5-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6812"
+ inkscape:collect="always">
+ <stop
+ id="stop6814"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6314-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-73"
+ id="radialGradient5034"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8"
+ id="linearGradient5036"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8"
+ id="linearGradient5038"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6"
+ id="linearGradient5040"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5042"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6812"
+ id="radialGradient5044"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ r="8.087534" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220"
+ id="linearGradient6144-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-7"
+ id="linearGradient6146-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ id="linearGradient3848-4-5">
+ <stop
+ style="stop-color:#b70000;stop-opacity:1;"
+ offset="0"
+ id="stop3850-6" />
+ <stop
+ style="stop-color:#ff2d2d;stop-opacity:1;"
+ offset="1"
+ id="stop3852-30" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-5"
+ id="linearGradient4805"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,27.930718,1077.111)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146"
+ xlink:href="#linearGradient4176-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144"
+ xlink:href="#linearGradient4220"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5">
+ <stop
+ id="stop6979-4-5-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5" />
+ <stop
+ id="stop6985-44-1-5-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ id="linearGradient9584"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4"
+ id="linearGradient9586"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27756"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27758"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-4-1"
+ id="linearGradient27804"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-6-1"
+ id="linearGradient27806"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="23.324946"
+ inkscape:cy="5.3773761"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:window-width="885"
+ inkscape:window-height="421"
+ inkscape:window-x="-15"
+ inkscape:window-y="110"
+ inkscape:window-maximized="0"
+ inkscape:snap-global="false">
+ <inkscape:grid
+ type="xygrid"
+ id="grid20428"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata19848">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <rect
+ style="fill:#333333;fill-opacity:1;stroke:none"
+ id="rect28313"
+ width="22"
+ height="1"
+ x="1"
+ y="9" />
+ <g
+ transform="translate(25.109779,-1045.4247)"
+ id="layer1-0"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-9">
+ <g
+ style="display:inline;enable-background:new"
+ id="g7930-58"
+ transform="translate(-217.68591,907.85387)">
+ <g
+ id="g4412-6"
+ inkscape:label="forma-text-bold"
+ style="display:inline">
+ <g
+ sodipodi:insensitive="true"
+ inkscape:groupmode="layer"
+ id="g4414-7"
+ inkscape:label="baseplate"
+ style="display:none">
+ <rect
+ height="48"
+ id="rect4416-5"
+ inkscape:label="48x48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="48"
+ x="366"
+ y="110" />
+ <rect
+ height="32"
+ id="rect4418-8"
+ inkscape:label="32x32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="32"
+ x="373"
+ y="186" />
+ <rect
+ height="24"
+ id="rect4420-9"
+ inkscape:label="24x24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="24"
+ x="372"
+ y="236" />
+ <rect
+ height="22"
+ id="rect4422-6"
+ inkscape:label="22x22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="22"
+ x="373"
+ y="237" />
+ <rect
+ height="16"
+ id="rect4424-77"
+ inkscape:label="16x16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="16"
+ x="373"
+ y="279" />
+ <text
+ id="text4426-05"
+ inkscape:label="context"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ x="2.9707375"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4428-7"
+ sodipodi:role="line"
+ x="2.9707375"
+ y="72.513618">actions</tspan></text>
+ <text
+ id="text4430-92"
+ inkscape:label="icon-name"
+ sodipodi:linespacing="125%"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ x="63.970734"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4432-3"
+ sodipodi:role="line"
+ x="63.970734"
+ y="72.513618">format-text-bold</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="g4434-9"
+ inkscape:label="small sizes"
+ style="display:inline" />
+ </g>
+ <g
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584);fill-opacity:1;stroke:url(#linearGradient9586);stroke-opacity:1;font-family:Sans"
+ id="text8779-35"
+ transform="translate(0,-0.61871844)" />
+ <g
+ transform="translate(246.1134,121.70809)"
+ style="display:inline;enable-background:new"
+ id="g22-7">
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g80-6" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g82-47" />
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-17"
+ transform="translate(6.1616704,-1012.459)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-93"
+ transform="translate(-0.98211143,-1.2546083)">
+ <g
+ id="layer1-1-1"
+ inkscape:label="Ebene 1"
+ transform="translate(-33.607049,-15.848364)">
+ <g
+ transform="translate(-217.68591,907.85387)"
+ id="g7930-5"
+ style="display:inline;enable-background:new">
+ <g
+ style="display:inline"
+ inkscape:label="forma-text-bold"
+ id="g4412-0">
+ <g
+ style="display:none"
+ inkscape:label="baseplate"
+ id="g4414-87"
+ inkscape:groupmode="layer"
+ sodipodi:insensitive="true">
+ <rect
+ y="110"
+ x="366"
+ width="48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="48x48"
+ id="rect4416-1"
+ height="48" />
+ <rect
+ y="186"
+ x="373"
+ width="32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="32x32"
+ id="rect4418-3"
+ height="32" />
+ <rect
+ y="236"
+ x="372"
+ width="24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="24x24"
+ id="rect4420-8"
+ height="24" />
+ <rect
+ y="237"
+ x="373"
+ width="22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="22x22"
+ id="rect4422-4"
+ height="22" />
+ <rect
+ y="279"
+ x="373"
+ width="16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="16x16"
+ id="rect4424-9"
+ height="16" />
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="2.9707375"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ inkscape:label="context"
+ id="text4426-3"><tspan
+ y="72.513618"
+ x="2.9707375"
+ sodipodi:role="line"
+ id="tspan4428-46">actions</tspan></text>
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="63.970734"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ sodipodi:linespacing="125%"
+ inkscape:label="icon-name"
+ id="text4430-3"><tspan
+ y="72.513618"
+ x="63.970734"
+ sodipodi:role="line"
+ id="tspan4432-6">format-text-bold</tspan></text>
+ </g>
+ <g
+ style="display:inline"
+ inkscape:label="small sizes"
+ id="g4434-7"
+ inkscape:groupmode="layer" />
+ </g>
+ <g
+ transform="translate(0,-0.61871844)"
+ id="text8779-3"
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-2);fill-opacity:1;stroke:url(#linearGradient9586-27);stroke-opacity:1;font-family:Sans" />
+ <g
+ id="g13457"
+ transform="matrix(1.037063,1.037063,-1.037063,1.037063,303.61805,195.7215)">
+ <g
+ transform="matrix(0.48213077,0.48213077,-0.48213077,0.48213077,439.52248,-469.22395)"
+ id="layer1-7-3"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-7" />
+ </g>
+ </g>
+ <path
+ sodipodi:nodetypes="sssssssssccccc"
+ inkscape:connector-curvature="0"
+ id="rect14249"
+ d="m 255.29296,142.35669 c -0.50783,0 -1,0.49217 -1,1 l 0,1 c 0,0.50784 0.49217,1.00296 1,1 l 16.09375,-0.0937 c 0.50782,-0.003 0.90625,-0.39841 0.90625,-0.90625 l 0,-1 c 0,-0.50783 -0.49217,-1 -1,-1 z m 0,1 16,0 0,1 -16,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:none;stroke:#333333;stroke-width:1.05347145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path28265"
+ sodipodi:cx="328.9375"
+ sodipodi:cy="121.96875"
+ sodipodi:rx="8.25"
+ sodipodi:ry="9.65625"
+ d="m 337.1875,121.96875 a 8.25,9.65625 0 1 1 -16.5,0"
+ transform="matrix(0.91287885,0,0,0.98705502,-288.28009,-120.61437)"
+ sodipodi:start="0"
+ sodipodi:end="3.1415927"
+ sodipodi:open="true" />
+ <g
+ id="g28261"
+ transform="matrix(1.0410006,0,0,1.0443074,0.62558038,3.9232471)">
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:#ffffff;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="rect28257"
+ width="5.7410989"
+ height="5.7410989"
+ x="8.0288639"
+ y="1.9927319" />
+ <rect
+ y="2.4923284"
+ x="8.5261106"
+ height="4.7680912"
+ width="4.7681737"
+ id="rect28259"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.95909214;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+ </g>
+ <g
+ id="g28322">
+ <path
+ transform="translate(0,-8)"
+ d="m 3,17.5 a 1.5,1.5 0 1 1 -3,0 1.5,1.5 0 1 1 3,0 z"
+ sodipodi:ry="1.5"
+ sodipodi:rx="1.5"
+ sodipodi:cy="17.5"
+ sodipodi:cx="1.5"
+ id="path28315"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ id="path28317"
+ transform="translate(0,-8)"
+ d="M 1.5 16 C 0.67157288 16 0 16.671573 0 17.5 C 0 18.328427 0.67157288 19 1.5 19 C 2.3284271 19 3 18.328427 3 17.5 C 3 16.671573 2.3284271 16 1.5 16 z M 1.5 17 C 1.7761424 17 2 17.223858 2 17.5 C 2 17.776142 1.7761424 18 1.5 18 C 1.2238576 18 1 17.776142 1 17.5 C 1 17.223858 1.2238576 17 1.5 17 z "
+ style="fill:#000000;fill-opacity:1;stroke:none;opacity:0.4" />
+ </g>
+ <g
+ id="g28326"
+ transform="translate(21,0)">
+ <path
+ sodipodi:type="arc"
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="path28328"
+ sodipodi:cx="1.5"
+ sodipodi:cy="17.5"
+ sodipodi:rx="1.5"
+ sodipodi:ry="1.5"
+ d="M 3,17.5 C 3,18.328427 2.3284271,19 1.5,19 0.67157288,19 0,18.328427 0,17.5 0,16.671573 0.67157288,16 1.5,16 2.3284271,16 3,16.671573 3,17.5 z"
+ transform="translate(0,-8)" />
+ <path
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="M 1.5,16 C 0.67157288,16 0,16.671573 0,17.5 0,18.328427 0.67157288,19 1.5,19 2.3284271,19 3,18.328427 3,17.5 3,16.671573 2.3284271,16 1.5,16 z m 0,1 C 1.7761424,17 2,17.223858 2,17.5 2,17.776142 1.7761424,18 1.5,18 1.2238576,18 1,17.776142 1,17.5 1,17.223858 1.2238576,17 1.5,17 z"
+ transform="translate(0,-8)"
+ id="path28330"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-16"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-91"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-73">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8-4"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-14">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-4-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-96">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-03">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-53"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_bringtofront.png b/icon-themes/tango_testing/cmd/lc_bringtofront.png
new file mode 100644
index 000000000000..46587ec4d598
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bringtofront.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_bringtofront.svg b/icon-themes/tango_testing/cmd/lc_bringtofront.svg
new file mode 100644
index 000000000000..f56f8de4e4ce
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_bringtofront.svg
@@ -0,0 +1,652 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_bringtofront.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_bringtofront.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6"><linearGradient
+ inkscape:collect="always"
+ id="linearGradient4345">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4347" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4349" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4339">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3501"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3511"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+<linearGradient
+ id="linearGradient3782-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-2"
+ id="linearGradient3501-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="17"
+ y1="2"
+ x2="17"
+ y2="16" />
+<linearGradient
+ id="linearGradient3764-2">
+ <stop
+ id="stop3766-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4345"
+ id="linearGradient4351"
+ x1="13"
+ y1="6"
+ x2="13"
+ y2="20"
+ gradientUnits="userSpaceOnUse" />
+</defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ id="namedview4"
+ showgrid="false"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:zoom="1"
+ inkscape:cx="10.670939"
+ inkscape:cy="1.5757003"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg2">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3494" />
+ </sodipodi:namedview>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ id="g3102"
+ transform="translate(26.966102,-7.7288136)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1"
+ transform="translate(-2,-1036.3622)">
+ <g
+ id="g3927"
+ transform="translate(-17.966102,8.7288136)">
+ <g
+ transform="translate(-3,4)"
+ id="g3862">
+ <g
+ id="g3496"
+ transform="translate(0,-2)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="6"
+ x="7"
+ height="10"
+ width="12"
+ id="rect2998"
+ style="fill:url(#linearGradient3501);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851"
+ transform="translate(0,1028.3622)"
+ d="m 7,6 0,10 12,0 0,-10 z m 1,1 10,0 0,8 -10,0 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 8,7 0,8 10,0 0,-8 z m 1,1 8,0 0,6 -8,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3860" />
+ </g>
+ <g
+ transform="translate(-10,10)"
+ id="g3503">
+ <rect
+ style="fill:url(#linearGradient3511);fill-opacity:1;stroke:none"
+ id="rect3505"
+ width="12"
+ height="10"
+ x="7"
+ y="6"
+ transform="translate(0,1028.3622)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 7,6 0,10 12,0 0,-10 z m 1,1 10,0 0,8 -10,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3507" />
+ <path
+ id="path3509"
+ transform="translate(0,1028.3622)"
+ d="m 8,7 0,8 10,0 0,-8 z m 1,1 8,0 0,6 -8,0 z"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <g
+ id="g3496-4"
+ transform="translate(-7,2)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="6"
+ x="7"
+ height="14"
+ width="16"
+ id="rect2998-1"
+ style="fill:url(#linearGradient3501-6);fill-opacity:1.0;stroke:none" />
+ <path
+ id="rect3851-4"
+ transform="translate(0,1028.3622)"
+ d="M 7,6 7,20 23,20 23,6 z M 8,7 22,7 22,19 8,19 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:url(#linearGradient4351);fill-opacity:1;stroke:none;opacity:0.40000000000000002"
+ d="M 8,7 8,19 22,19 22,7 z M 9,8 21,8 21,18 9,18 z"
+ transform="translate(0,1028.3622)"
+ id="path3860-5" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.png b/icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.png
new file mode 100644
index 000000000000..63a9741119e3
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.svg b/icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.svg
new file mode 100644
index 000000000000..bfe1a077157a
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_calloutshapes.line-callout-1.svg
@@ -0,0 +1,275 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="26"
+ height="26"
+ sodipodi:docname="lc_calloutshapes.line-callout-1.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_calloutshapes.line-callout-1.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ id="namedview4"
+ showgrid="false"
+ inkscape:zoom="1"
+ inkscape:cx="6.2960987"
+ inkscape:cy="9.3390383"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g3862">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3121" />
+ </sodipodi:namedview>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ transform="translate(10,4)"
+ id="g3102">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(2,4)"
+ id="g3927">
+ <g
+ id="g3862"
+ transform="translate(-3,4)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="0"
+ x="3"
+ height="17"
+ width="16"
+ id="rect2998"
+ style="fill:url(#linearGradient3774);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851"
+ transform="translate(0,1028.3622)"
+ d="M 3,0 3,17 19,17 19,0 z M 4,1 18,1 18,16 4,16 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ d="M 4,1 4,16 18,16 18,1 z M 5,2 17,2 17,15 5,15 z"
+ transform="translate(0,1028.3622)"
+ id="path3860" />
+ <path
+ style="opacity:0.4;fill:#939393;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+ d="M 8,10 1,24"
+ id="path3123"
+ inkscape:connector-curvature="0"
+ transform="translate(-7,1024.3622)"
+ sodipodi:nodetypes="cc" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_calloutshapes.png b/icon-themes/tango_testing/cmd/lc_calloutshapes.png
new file mode 100644
index 000000000000..0bf66b99d245
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_calloutshapes.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_calloutshapes.round-callout.png b/icon-themes/tango_testing/cmd/lc_calloutshapes.round-callout.png
new file mode 100644
index 000000000000..0bf66b99d245
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_calloutshapes.round-callout.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_colorsettings.png b/icon-themes/tango_testing/cmd/lc_colorsettings.png
new file mode 100644
index 000000000000..7a7d73e84543
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_colorsettings.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_colorsettings.svg b/icon-themes/tango_testing/cmd/lc_colorsettings.svg
new file mode 100644
index 000000000000..4739bcce165a
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_colorsettings.svg
@@ -0,0 +1,363 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_colorsettings.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_colorsettings.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0.49803922;"
+ offset="0.5"
+ id="stop4427" />
+ <stop
+ id="stop4260"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <filter
+ inkscape:collect="always"
+ id="filter4521">
+ <feGaussianBlur
+ inkscape:collect="always"
+ stdDeviation="0.42380695"
+ id="feGaussianBlur4523" />
+ </filter>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="radialGradient4525"
+ gradientUnits="userSpaceOnUse"
+ cx="4.75"
+ cy="3.625"
+ fx="4.75"
+ fy="3.625"
+ r="3.59375" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="8"
+ inkscape:cx="16.539167"
+ inkscape:cy="3.5837974"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g6159">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3241" />
+ </sodipodi:namedview>
+ <g
+ transform="matrix(1.9788835,0,0,1.9788835,-1.9758879,-2035.0018)"
+ id="layer1"
+ inkscape:label="Ebene 1">
+ <g
+ inkscape:label=""
+ id="lc_color">
+ <g
+ transform="translate(-576.52153,586.70452)"
+ style="display:inline"
+ id="g6159"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/fontcolor.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <g
+ transform="translate(-375.38918,735.35626)"
+ id="g9725">
+ <g
+ id="g4459"
+ transform="matrix(0.95616673,0,0,0.95616673,42.030647,-12.608102)"
+ style="filter:url(#filter4521)">
+ <path
+ sodipodi:type="arc"
+ style="fill:#707070;fill-opacity:1;stroke:none"
+ id="path4461"
+ sodipodi:cx="959.25"
+ sodipodi:cy="-287.26282"
+ sodipodi:rx="6"
+ sodipodi:ry="6"
+ d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
+ transform="translate(-0.25,-0.375)" />
+ <path
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -1,6 2,0 z"
+ id="path4463"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3" />
+ <path
+ inkscape:transform-center-y="3.027185"
+ inkscape:connector-curvature="0"
+ id="path4465"
+ d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
+ style="fill:#ff2c09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.25942" />
+ <path
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#ffb509;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
+ id="path4467"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.848075" />
+ <path
+ inkscape:transform-center-y="2.47487"
+ inkscape:connector-curvature="0"
+ id="path4469"
+ d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
+ style="fill:#ffc109;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875" />
+ <path
+ inkscape:transform-center-x="-2.84808"
+ style="fill:#adff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
+ id="path4471"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.93301" />
+ <path
+ inkscape:transform-center-y="1.259415"
+ inkscape:connector-curvature="0"
+ id="path4473"
+ d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
+ style="fill:#92ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.02719" />
+ <path
+ inkscape:transform-center-x="-3.000005"
+ style="fill:#84ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
+ id="path4475"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4477"
+ d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
+ style="fill:#43ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.027185"
+ inkscape:transform-center-y="-1.259415" />
+ <path
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="-2.848075"
+ style="fill:#09ff11;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
+ id="path4479"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4481"
+ d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
+ style="fill:#09ff59;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875"
+ inkscape:transform-center-y="-2.474875" />
+ <path
+ inkscape:transform-center-y="-2.84808"
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#09ff68;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
+ id="path4483"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4485"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.000005" />
+ <path
+ inkscape:transform-center-y="-3.000005"
+ style="fill:#09ffff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ id="path4487"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4489"
+ d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
+ style="fill:#09ffa9;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.02719"
+ inkscape:transform-center-x="-1.259415" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ inkscape:transform-center-y="-3.027185"
+ style="fill:#09d2ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
+ id="path4491"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4493"
+ d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
+ style="fill:#0985ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-2.848075"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="2.47488"
+ inkscape:transform-center-y="-2.47487"
+ style="fill:#0947ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
+ id="path4495"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4497"
+ d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
+ style="fill:#092fff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="2.848085" />
+ <path
+ inkscape:transform-center-x="3.027195"
+ inkscape:transform-center-y="-1.259415"
+ style="fill:#5c09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
+ id="path4499"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4501"
+ d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
+ style="fill:#8d09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="3.00001" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path4503"
+ d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
+ style="fill:#b709ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="5.9904464"
+ inkscape:transform-center-y="2.4922455" />
+ <path
+ inkscape:transform-center-x="5.6360086"
+ style="fill:#cb09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
+ id="path4505"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.8252016" />
+ <path
+ inkscape:transform-center-x="2.474875"
+ style="fill:#f709ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
+ id="path4507"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.47488" />
+ <path
+ inkscape:transform-center-y="2.848085"
+ inkscape:connector-curvature="0"
+ id="path4509"
+ d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
+ style="fill:#ff099d;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ style="fill:#ff0951;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
+ id="path4511"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.0272" />
+ </g>
+ <g
+ id="g4429">
+ <path
+ transform="matrix(1.0006521,0,0,0.99978806,-0.60599947,-0.37675838)"
+ d="m 964.75,-287.32532 a 5.8125,5.8125 0 1 1 -11.625,0 5.8125,5.8125 0 1 1 11.625,0 z"
+ sodipodi:ry="5.8125"
+ sodipodi:rx="5.8125"
+ sodipodi:cy="-287.32532"
+ sodipodi:cx="958.9375"
+ id="path9451"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.50522435;stroke-opacity:1"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:0.55297631;stroke-opacity:1"
+ id="path9453"
+ sodipodi:cx="958.9375"
+ sodipodi:cy="-287.32532"
+ sodipodi:rx="5.8125"
+ sodipodi:ry="5.8125"
+ d="m 964.75,-287.32532 a 5.8125,5.8125 0 1 1 -11.625,0 5.8125,5.8125 0 1 1 11.625,0 z"
+ transform="matrix(0.91288652,0,0,0.91480763,83.576219,-24.789586)" />
+ </g>
+ </g>
+ <path
+ transform="matrix(1.6871421,0,0,1.6794527,575.56817,441.65052)"
+ d="m 8.34375,3.625 a 3.59375,3.59375 0 1 1 -7.1875,0 3.59375,3.59375 0 1 1 7.1875,0 z"
+ sodipodi:ry="3.59375"
+ sodipodi:rx="3.59375"
+ sodipodi:cy="3.625"
+ sodipodi:cx="4.75"
+ id="path3038"
+ style="fill:url(#radialGradient4525);fill-opacity:1;stroke:none;opacity:1"
+ sodipodi:type="arc" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_convertinto3d.png b/icon-themes/tango_testing/cmd/lc_convertinto3d.png
new file mode 100644
index 000000000000..45c0bb5b19b4
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_convertinto3d.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_convertinto3d.svg b/icon-themes/tango_testing/cmd/lc_convertinto3d.svg
new file mode 100644
index 000000000000..31f66a022eb5
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_convertinto3d.svg
@@ -0,0 +1,664 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_convertinto3d.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_convertinto3d.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="-47.455069 : 39.199026 : 1"
+ inkscape:vp_y="0 : 1755.6863 : 0"
+ inkscape:vp_z="92.628242 : 39.528218 : 1"
+ inkscape:persp3d-origin="-40.96154 : 15.055851 : 1"
+ id="perspective3031" />
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="7.9100081 : 21.563919 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="62.327584 : 21.563919 : 1"
+ inkscape:persp3d-origin="12 : 8 : 1"
+ id="perspective2987" />
+ <linearGradient
+ id="linearGradient3782-1">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784-0" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3774"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)" />
+ <linearGradient
+ id="linearGradient3764-5">
+ <stop
+ id="stop3766-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-7"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3875-5"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3885-2"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3895-1"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782-1"
+ id="linearGradient3788"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient3899"
+ x1="12"
+ y1="3.9999945"
+ x2="12"
+ y2="19.999994"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4339">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3511"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ id="linearGradient3782-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-2">
+ <stop
+ id="stop3766-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3999"
+ x1="34.679577"
+ y1="6.5689983"
+ x2="4.8125076"
+ y2="14.443998"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient4007"
+ x1="-10.374998"
+ y1="11.192826"
+ x2="4.3670778"
+ y2="14.067826"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5"
+ id="linearGradient4018"
+ x1="10.062502"
+ y1="8.1493416"
+ x2="11.187508"
+ y2="2.5243413"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="716"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="true"
+ showborder="false"
+ inkscape:showpageshadow="false"
+ inkscape:zoom="1"
+ inkscape:cx="40.090391"
+ inkscape:cy="-6.3424885"
+ inkscape:window-x="0"
+ inkscape:window-y="30"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg2">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3033"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <g
+ sodipodi:type="inkscape:box3d"
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="g3003"
+ inkscape:perspectiveID="#perspective3031"
+ inkscape:corner0="-0.86598866 : 0.012199273 : 0 : 1"
+ inkscape:corner7="-0.87469587 : 0.011025136 : 0.033532132 : 1">
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3013"
+ style="fill:#afafde;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="13"
+ d="m 1.000002,20.518062 3.3670756,2.48193 18.6329304,-8.133741 -3.66154,-1.562488 z" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3015"
+ style="fill:#e9e9ff;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="11"
+ d="m 19.338468,0.99999376 3.66154,0.88801054 0,12.9782467 -3.66154,-1.562488 z" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3007"
+ style="fill:url(#linearGradient4018);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="5"
+ d="M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z" />
+ <path
+ d="m 4.3670776,6.5486891 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z"
+ inkscape:box3dsidetype="14"
+ style="fill:url(#linearGradient3999);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path4020"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3009"
+ style="fill:url(#linearGradient4007);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="3"
+ d="m 1.000002,5.13566 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z" />
+ <path
+ d="m 1.000002,5.13566 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z"
+ inkscape:box3dsidetype="3"
+ style="opacity:0.3;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path4009"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ d="M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z"
+ inkscape:box3dsidetype="5"
+ style="fill:url(#linearGradient4018);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path4024"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path3011"
+ style="fill:url(#linearGradient3999);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="14"
+ d="m 4.3670776,6.5486891 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path4022"
+ style="opacity:0.3;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="3"
+ d="m 1.000002,5.13566 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z" />
+ </g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ id="g4039"
+ style="fill:#000000;fill-opacity:1;stroke:none" />
+ <g
+ transform="matrix(0.86359063,0,0,0.86359062,1.6369132,1.6369116)"
+ style="fill:none;stroke:#ffffff;stroke-width:1.157956;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
+ id="g4186">
+ <path
+ id="path4190"
+ transform="matrix(1.1579561,0,0,1.1579561,-1.8954736,-1.8954717)"
+ style="fill:none;stroke:#ffffff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
+ d="m 3.9999999,6.9999998 0,13.6406252 M 2.5005055,6.1970192 3.9999999,6.9999998 5.6292512,7.5574629 5.647557,21.583435 2.5317555,19.746282 z M 5.6292512,7.5574629 5.647557,21.083435 21.595935,14.106088 21.587892,3.4441509 z M 2.4536305,6.0720192 3.9999999,6.9999998 5.6292512,7.5574629 21.572267,3.4441509 19.003485,2.4460392 z"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccccccccc" />
+ </g>
+ <g
+ id="g4095"
+ style="opacity:0.40000000000000002;fill:none;stroke:#000000;stroke-width:1.04185823;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+ transform="matrix(0.95982349,0,0,0.95982349,0.48211833,0.48211785)">
+ <path
+ id="path4133"
+ style="fill:none;stroke:#000000;stroke-width:1.0418582;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="m 1.000002,5.13566 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z m 0,0 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z m 3.3670756,1.4130291 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z m 3.3670756,1.4130291 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z m 18.338466,-4.13566624 3.66154,0.88801054 0,12.9782467 M 4.3670776,22.999992 23.000008,14.866251"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccc" />
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_defaultbullet-lc_outlinebullet.svg b/icon-themes/tango_testing/cmd/lc_defaultbullet-lc_outlinebullet.svg
index 356b1b8c0ed0..6aee8c016a28 100644
--- a/icon-themes/tango_testing/cmd/lc_defaultbullet-lc_outlinebullet.svg
+++ b/icon-themes/tango_testing/cmd/lc_defaultbullet-lc_outlinebullet.svg
@@ -15,8 +15,8 @@
id="svg2"
version="1.1"
inkscape:version="0.48.3.1 r9886"
- sodipodi:docname="lc_defaultbullet.svg"
- inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_defaultbullet.png"
+ sodipodi:docname="lc_defaultbullet-lc_outlinebullet.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_outlinebullet.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
@@ -337,16 +337,16 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="11.313708"
- inkscape:cx="3.9210631"
- inkscape:cy="17.989754"
+ inkscape:cx="21.726794"
+ inkscape:cy="7.7886196"
inkscape:document-units="px"
inkscape:current-layer="layer1"
- showgrid="false"
+ showgrid="true"
inkscape:snap-global="false"
inkscape:window-width="1366"
- inkscape:window-height="716"
+ inkscape:window-height="721"
inkscape:window-x="0"
- inkscape:window-y="26"
+ inkscape:window-y="24"
inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
@@ -374,7 +374,7 @@
id="layer1"
transform="translate(0,-1028.3622)">
<g
- transform="matrix(0.63020001,0,0,0.99889952,-38.403146,794.63017)"
+ transform="matrix(0.63020001,0,0,0.99889952,-38.410959,796.63185)"
style="color:#000000;fill:url(#radialGradient8572);fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1.2742455;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="g6106"
inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/bullets.png"
diff --git a/icon-themes/tango_testing/cmd/lc_defaultbullet.png b/icon-themes/tango_testing/cmd/lc_defaultbullet.png
index 6be49ff0635a..93e2f2235edb 100644
--- a/icon-themes/tango_testing/cmd/lc_defaultbullet.png
+++ b/icon-themes/tango_testing/cmd/lc_defaultbullet.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_defaultnumbering.png b/icon-themes/tango_testing/cmd/lc_defaultnumbering.png
index 5916f02263b8..ea424bdf913f 100644
--- a/icon-themes/tango_testing/cmd/lc_defaultnumbering.png
+++ b/icon-themes/tango_testing/cmd/lc_defaultnumbering.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_defaultnumbering.svg b/icon-themes/tango_testing/cmd/lc_defaultnumbering.svg
index 7369bdac3887..56571ff8b15c 100644
--- a/icon-themes/tango_testing/cmd/lc_defaultnumbering.svg
+++ b/icon-themes/tango_testing/cmd/lc_defaultnumbering.svg
@@ -261,7 +261,7 @@
xlink:href="#linearGradient6427-7-3"
id="radialGradient8598"
gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,194.29027)"
cx="13.03634"
cy="205.21869"
fx="13.03634"
@@ -276,7 +276,7 @@
y1="245"
x2="81"
y2="242"
- gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)" />
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,7.2436208)" />
<linearGradient
id="linearGradient4157-1"
inkscape:collect="always">
@@ -294,7 +294,7 @@
xlink:href="#linearGradient6427-7-3"
id="radialGradient8606"
gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,192.02762)"
cx="13.03634"
cy="205.21869"
fx="13.03634"
@@ -309,7 +309,7 @@
y1="241"
x2="73"
y2="238"
- gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)" />
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,4.1526454)" />
<radialGradient
r="11"
fy="205.21869"
@@ -352,8 +352,8 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="11.313708"
- inkscape:cx="10.230191"
- inkscape:cy="20.900425"
+ inkscape:cx="6.6946569"
+ inkscape:cy="17.364891"
inkscape:document-units="px"
inkscape:current-layer="g6235"
showgrid="true"
@@ -379,7 +379,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
+ <dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@@ -404,7 +404,7 @@
width="19.489368"
height="1.9809822"
x="22.00309"
- y="244.4377"
+ y="247.4377"
rx="0.81185097"
ry="0.49999997" />
<rect
@@ -413,7 +413,7 @@
width="19.48735"
height="1.9897547"
x="22.015604"
- y="238.43089"
+ y="241.43089"
rx="0.81185097"
ry="0.49999994" />
<rect
@@ -422,23 +422,23 @@
width="1.6744035"
height="4.0000029"
x="14.694285"
- y="237.93004" />
+ y="240.93004" />
<rect
style="fill:#333333;fill-opacity:1;stroke:none"
id="rect9681"
width="1.6237018"
height="1"
x="13.070583"
- y="238.93004" />
+ y="241.93004" />
<rect
style="opacity:0.25;fill:#333333;fill-opacity:1;stroke:none"
id="rect9683"
width="1.6237017"
height="1.0000015"
x="13.070583"
- y="237.93004" />
+ y="240.93004" />
<rect
- y="243.93004"
+ y="246.93004"
x="13.070583"
height="1.0000015"
width="1.6237017"
@@ -450,9 +450,9 @@
width="1.6237015"
height="1.0000015"
x="14.694285"
- y="244.93004" />
+ y="247.93004" />
<rect
- y="244.93004"
+ y="247.93004"
x="13.070583"
height="0.99999845"
width="1.6237017"
@@ -464,9 +464,9 @@
width="1.623703"
height="1.0000031"
x="14.694285"
- y="243.93004" />
+ y="246.93004" />
<rect
- y="245.94536"
+ y="248.94536"
x="13.106716"
height="0.98467863"
width="1.5875689"
@@ -478,7 +478,7 @@
width="3.2474058"
height="1"
x="13.106715"
- y="246.91472" />
+ y="249.91472" />
</g>
</g>
</g>
diff --git a/icon-themes/tango_testing/cmd/lc_deletemasterpage.png b/icon-themes/tango_testing/cmd/lc_deletemasterpage.png
index bd6f2251dc82..a20cf4c9e5c0 100644
--- a/icon-themes/tango_testing/cmd/lc_deletemasterpage.png
+++ b/icon-themes/tango_testing/cmd/lc_deletemasterpage.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_deletemasterpage.svg b/icon-themes/tango_testing/cmd/lc_deletemasterpage.svg
index b35c44ddffbe..aaadc82e0f65 100644
--- a/icon-themes/tango_testing/cmd/lc_deletemasterpage.svg
+++ b/icon-themes/tango_testing/cmd/lc_deletemasterpage.svg
@@ -336,6 +336,15633 @@
offset="1"
id="stop4224" />
</linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-18-1-8-1-0-4" />
+ <stop
+ id="stop6981-1-2-70-7-0-8-9-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-3-7-0-0-0-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-52-7-9-4-1-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305-4">
+ <stop
+ style="stop-color:#c67836;stop-opacity:1;"
+ offset="0"
+ id="stop75307-4" />
+ <stop
+ id="stop75388-3"
+ offset="0.5"
+ style="stop-color:#be6633;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8e3f27;stop-opacity:1;"
+ offset="1"
+ id="stop75309-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient75305">
+ <stop
+ style="stop-color:#c67836;stop-opacity:1;"
+ offset="0"
+ id="stop75307" />
+ <stop
+ id="stop75388"
+ offset="0.5"
+ style="stop-color:#be6633;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8e3f27;stop-opacity:1;"
+ offset="1"
+ id="stop75309" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-1-5-3-0-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-18-1-8-1-0" />
+ <stop
+ id="stop6981-1-2-70-7-0-8-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-3-7-0-0-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-52-7-9-4-1" />
+ </linearGradient>
+ <linearGradient
+ y2="1.0000752"
+ x2="16.583332"
+ y1="16.000101"
+ x1="16.583332"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333331e-7,1028.3844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6464"
+ xlink:href="#linearGradient4220-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8.5"
+ fy="21.026667"
+ fx="11.004584"
+ cy="21.026667"
+ cx="11.004584"
+ gradientTransform="matrix(1.500003,0,0,0.17647061,1047.5467,-22.328213)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6462"
+ xlink:href="#linearGradient3787-2-5-7-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(26.999999,1032.2789)"
+ gradientUnits="userSpaceOnUse"
+ y2="14.750033"
+ x2="11.999999"
+ y1="1.9167001"
+ x1="11.999999"
+ id="linearGradient6295"
+ xlink:href="#linearGradient6289"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3810">
+ <stop
+ id="stop3812"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3814"
+ offset="1"
+ style="stop-color:#e2e2e2;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8252"
+ xlink:href="#linearGradient3848-4-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-98"
+ xlink:href="#linearGradient7113-62-4-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-5"
+ xlink:href="#linearGradient6977-28-2-3-5-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-82"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-50" />
+ <stop
+ id="stop6981-1-2-8-5-26"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-31"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-2-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3848-4-7-1">
+ <stop
+ id="stop3850-4-6"
+ offset="0"
+ style="stop-color:#51b700;stop-opacity:1;" />
+ <stop
+ id="stop3852-3-9"
+ offset="1"
+ style="stop-color:#a1f800;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-2-5-7-3-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient25342"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="16"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4060"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4058"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4056"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4054"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)"
+ y2="14.000038"
+ x2="21.996094"
+ y1="3.8381946e-05"
+ x1="21.996094"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4052"
+ xlink:href="#linearGradient3764-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-7">
+ <stop
+ id="stop3766-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-4"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-20" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-9"
+ id="radialGradient3814"
+ cx="4.75"
+ cy="3.625"
+ fx="4.75"
+ fy="3.625"
+ r="3.59375"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient26584"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-7"
+ id="linearGradient26608"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.97777609,1.8333333e-7,1028.3844)"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="16" />
+ <linearGradient
+ id="linearGradient3764-7-8">
+ <stop
+ id="stop3766-0-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-4-8"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-2">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-5" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-6" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-9"
+ xlink:href="#linearGradient7113-62-4-79"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-1"
+ xlink:href="#linearGradient6977-28-2-3-5-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-4-79"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-98"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-9-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-52"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-1" />
+ <stop
+ id="stop6981-1-2-8-5-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-41">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-05">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-2" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4-3">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-28" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-6-5">
+ <stop
+ style="stop-color:#2e4dd6;stop-opacity:1;"
+ offset="0"
+ id="stop5974-3-0-3" />
+ <stop
+ style="stop-color:#0798ff;stop-opacity:1;"
+ offset="1"
+ id="stop5976-3-0-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4220-4"
+ id="linearGradient6144-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(5.179559,15.648604)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-9-5"
+ id="linearGradient6146-4-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1)"
+ x1="5.5"
+ y1="14.75"
+ x2="12.75"
+ y2="-1.0552727e-08" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5895-4-2-2"
+ id="linearGradient5914-7-7"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="2"
+ x2="12"
+ y2="6"
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)" />
+ <linearGradient
+ id="linearGradient5895-4-2-2">
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="0"
+ id="stop5897-1-4-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="1"
+ id="stop5899-2-0-0" />
+ </linearGradient>
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6146-0"
+ xlink:href="#linearGradient4176-9-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6144-0"
+ xlink:href="#linearGradient4220-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-3-9">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-5-1" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-2-4" />
+ </linearGradient>
+ <linearGradient
+ y2="2"
+ x2="18"
+ y1="14"
+ x1="10"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4847-1-4"
+ xlink:href="#linearGradient4176-9-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5972-7-6-8">
+ <stop
+ id="stop5974-3-0-9"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-0-8"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ id="linearGradient5968-0-9"
+ xlink:href="#linearGradient5972-7-6-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5895-4-0">
+ <stop
+ id="stop5897-1-2"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)"
+ y2="6"
+ x2="12"
+ y1="2"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5914-7"
+ xlink:href="#linearGradient5895-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6028"
+ xlink:href="#linearGradient4176-9-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6025"
+ xlink:href="#linearGradient5972-6"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-5" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-2" />
+ </linearGradient>
+ <linearGradient
+ y2="2"
+ x2="18"
+ y1="14"
+ x1="10"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4847-1"
+ xlink:href="#linearGradient4176-9-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5972-7-0">
+ <stop
+ id="stop5974-3-6"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-06"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ id="linearGradient5968-0"
+ xlink:href="#linearGradient5972-7-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5895-2">
+ <stop
+ id="stop5897-3"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.1,0,0,1,2.979559,14.648604)"
+ y2="6"
+ x2="12"
+ y1="2"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5914"
+ xlink:href="#linearGradient5895-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="2"
+ x2="18"
+ y1="14"
+ x1="10"
+ gradientTransform="translate(0,1)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4847"
+ xlink:href="#linearGradient4176-9-0"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(5.179559,15.648604)"
+ gradientUnits="userSpaceOnUse"
+ y2="-1.0552727e-08"
+ x2="12.75"
+ y1="14.75"
+ x1="5.5"
+ id="linearGradient5968"
+ xlink:href="#linearGradient5972-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8.087534"
+ fy="20.585787"
+ fx="44.238369"
+ cy="20.585787"
+ cx="44.238369"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5044-0"
+ xlink:href="#linearGradient6812-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8.087534"
+ fy="20.585787"
+ fx="44.238369"
+ cy="20.585787"
+ cx="44.238369"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5042-9"
+ xlink:href="#linearGradient6812-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="46.395184"
+ x2="-17.324116"
+ y1="31.899494"
+ x1="-18.473166"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5040-5"
+ xlink:href="#linearGradient6314-6-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="165.4688"
+ x2="280.48438"
+ y1="174.87114"
+ x1="280.48438"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5038-1"
+ xlink:href="#linearGradient6314-6-8-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="959.39551"
+ x2="1509.51"
+ y1="1009.6045"
+ x1="1533.74"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5036-2"
+ xlink:href="#linearGradient12862-4-7-8-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5034-3"
+ xlink:href="#linearGradient3787-2-5-68"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6314-6-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6316-4-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6318-2-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6314-6-8-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6316-4-4-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6318-2-8-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient12862-4-7-8-6"
+ inkscape:collect="always">
+ <stop
+ id="stop12864-9-5-2-5"
+ offset="0"
+ style="stop-color:#4e9a06;stop-opacity:1;" />
+ <stop
+ id="stop12866-9-8-0-8"
+ offset="1"
+ style="stop-color:#8ae234;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6812-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6814-9" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop6816-1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-7">
+ <stop
+ id="stop6979-4-5-5-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-1" />
+ <stop
+ id="stop6985-44-1-5-4-0-3"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4176-9-0">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4178-9-8" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop4180-0-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3787-2-5-68">
+ <stop
+ style="stop-color:#000000;stop-opacity:1"
+ offset="0"
+ id="stop3789-6-2-0" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0"
+ offset="1"
+ id="stop3791-7-7-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ id="linearGradient9584-8"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-5"
+ id="linearGradient9586-6"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ id="linearGradient5972-6">
+ <stop
+ id="stop5974-4"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-4"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4220-4">
+ <stop
+ style="stop-color:#0046ac;stop-opacity:1;"
+ offset="0"
+ id="stop4222-9" />
+ <stop
+ style="stop-color:#5d9ee4;stop-opacity:1;"
+ offset="1"
+ id="stop4224-1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4731-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4733-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4735-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958-0">
+ <stop
+ id="stop6960-3"
+ offset="0"
+ style="stop-color:#e40000;stop-opacity:1;" />
+ <stop
+ id="stop6962-3"
+ offset="1"
+ style="stop-color:#ff5050;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952-6">
+ <stop
+ id="stop6954-7"
+ offset="0"
+ style="stop-color:#600000;stop-opacity:1;" />
+ <stop
+ id="stop6956-0"
+ offset="1"
+ style="stop-color:#af0000;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913-4">
+ <stop
+ id="stop6915-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6917-8"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895-9">
+ <stop
+ id="stop6897-1"
+ offset="0"
+ style="stop-color:#0039c0;stop-opacity:1;" />
+ <stop
+ id="stop6899-2"
+ offset="1"
+ style="stop-color:#01008b;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6883-5" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6885-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839-8">
+ <stop
+ style="stop-color:#9ee400;stop-opacity:1;"
+ offset="0"
+ id="stop6841-8" />
+ <stop
+ style="stop-color:#a0ff50;stop-opacity:1;"
+ offset="1"
+ id="stop6843-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826-1">
+ <stop
+ style="stop-color:#096000;stop-opacity:1;"
+ offset="0"
+ id="stop6828-9" />
+ <stop
+ style="stop-color:#10af00;stop-opacity:1;"
+ offset="1"
+ id="stop6830-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6638-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6640-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6642-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="linearGradient3761-2"
+ x1="12.966009"
+ y1="2.2262447"
+ x2="12.30598"
+ y2="22.950687"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-2"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-0"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9582-1"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="119.67304"
+ x2="223.39351"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9580-8"
+ xlink:href="#linearGradient9593-0"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9578-6"
+ xlink:href="#linearGradient3787-2-5-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9574-6"
+ xlink:href="#linearGradient3787-2-5-6"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ id="linearGradient9567-8"
+ xlink:href="#linearGradient7113-62-4-0"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ id="linearGradient9559-1"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-0-1"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-6-6"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ id="linearGradient4256-2-6-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-9-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-0-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-6-0"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-6-6"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient7113-62-4-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient9141-3-39-97-2"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient6977-28-58-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6-7" />
+ <stop
+ id="stop6981-1-3-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67-6" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-3"
+ id="radialGradient9139-7-61-7-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient3787-2-5-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-3-0"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-5-6" />
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ id="perspective1832-6" />
+ <linearGradient
+ id="linearGradient7157-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7113-63"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-04" />
+ <stop
+ id="stop6981-31"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-45" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-1">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-4" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-62" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4388-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-2"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-6-4"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-7-3"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-7-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-7">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-9">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-86" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-5">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-59" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-24" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ id="linearGradient3820-3"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-5"
+ id="linearGradient3830-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ id="linearGradient3832-3"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ id="linearGradient3834-3"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-5"
+ id="linearGradient3844-5"
+ gradientUnits="userSpaceOnUse"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-5"
+ id="linearGradient3846-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-7"
+ id="linearGradient3848-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-6-4"
+ id="radialGradient3852-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ cx="3.403806"
+ cy="4.2001681"
+ fx="3.403806"
+ fy="4.2001681"
+ r="8" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ id="linearGradient3866-1"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-9-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-7-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-4-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-17-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-0-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-6-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-5-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-3-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ id="linearGradient4028-5"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ id="linearGradient4030-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ id="linearGradient4032-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ id="linearGradient3832-7-4-3"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-7">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-3-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-9-6-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0-4"
+ id="linearGradient3830-2-9-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-0-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-4-4-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-8-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-4-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-9-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-4-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-8-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-3-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-2-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-0">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-2-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-2-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ id="linearGradient4662-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ id="linearGradient4664-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-5"
+ id="linearGradient4666-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ id="linearGradient4840-0-8-3-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-1-0-6" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3-2-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-1-4-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-2-3-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-8-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-7-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-6-0-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-81-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ id="linearGradient4869-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ id="linearGradient4871-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-5"
+ id="linearGradient4873-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ id="linearGradient5751-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ id="linearGradient5753-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-9"
+ id="linearGradient5755-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient6433-1"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient6433-0-9"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-4">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-0" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient6584-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient6433-7-5"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-1">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6433-7-0-1"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-9">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4141-4"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4143-3"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4145-8"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4147-2"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4149-3"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4169-5"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4171-4"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4173-2"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4175-0"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4177-0"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient4179-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4187-8"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4189-2"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4191-5"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4193-1"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4201-5"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4203-4"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4205-2"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4207-7"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4209-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4211-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4213-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4215-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4294-2"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4296-5"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4298-4"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4300-8"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4302-6"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4304-3"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4306-5"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4308-3"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4310-7"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4312-9"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4320-1"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4322-9"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4324-4"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4326-8"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4328-6"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4330-6"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4338-9"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4340-6"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4342-3"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4344-9"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4346-8"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4348-81"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient4386-6"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient4660-4"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4388-8-1-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-1-7-3"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-6-1-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient5033-2"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient5151-6"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient5289-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5291-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient5293-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5295-9"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient5297-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5299-0"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient5301-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5303-1"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient5309-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient5311-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5313-0"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient5315-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5317-3"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient5319-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5321-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient5323-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5325-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient5327-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5329-7"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient5335-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5337-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5339-7"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5341-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5343-8"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5345-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5347-3"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5353-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient5355-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5357-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient5359-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5361-7"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient5363-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5365-5"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient5367-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5369-6"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient5375-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-2">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-1" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-1"
+ id="linearGradient5691-7"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4840-0-8-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-33" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-10">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-8" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-6" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6123-5"
+ xlink:href="#linearGradient5685-0-10"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-74">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-2" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6909-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6911-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6913-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6919-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-1"
+ id="linearGradient7213-4"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient7263-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7265-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient7267-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7269-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient7271-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7273-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient7275-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7277-7"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient7279-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient7285-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7287-2"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient7301-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient7345-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7347-1"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient7349-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7351-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient7353-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7355-8"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient7357-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7359-9"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient7361-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient7388-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7390-8"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient7392-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7394-2"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient7396-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7398-8"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient7400-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7402-6"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-9-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-6-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-8-7">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-3-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-3-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-9"
+ id="linearGradient7249-5-3"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-1-9">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-1-9" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-4-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-10"
+ id="linearGradient7740-4"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-9-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-1-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7910-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7912-6"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7915-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7917-2"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7920-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7922-6"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7938-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7942-22"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7950-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient7950-4-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-7-1">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-8-6" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-8-1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-2-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-9-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient7942-2-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8025-1"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8436-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8438-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8440-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8442-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8444-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8446-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8448-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8450-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8452-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8454-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8456-0"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8458-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8460-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8462-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8464-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8466-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8468-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8470-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8472-3"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8474-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8512-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8516-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8518-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8520-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8522-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8524-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8526-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8528-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8530-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8532-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-10"
+ id="linearGradient8572-8"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8639-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8641-0"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8644-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8646-4"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8649-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8651-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8677-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8681-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8685-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-1"
+ id="linearGradient8747-7"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient9121-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9123-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000003,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient9125-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9127-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient9129-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9131-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000001,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient9133-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9135-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000006,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient9139-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9141-1"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient9143-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9145-8"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient9147-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9149-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient9151-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9153-8"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient9155-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9157-9"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient9177-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9179-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient9181-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9183-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient9185-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9187-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient9189-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9191-7"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient9193-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9195-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient9197-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9199-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient9201-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9203-9"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5722-2-3"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-9" />
+ <linearGradient
+ id="linearGradient4176-9-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-3"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5726-1-7"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-0"
+ y1="38.63026"
+ y2="21.48896" />
+ <linearGradient
+ id="linearGradient3421-0-0">
+ <stop
+ id="stop3423-3-8"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop3425-4-1"
+ offset="1"
+ style="stop-color:#babdb6;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5728-0-1"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-8" />
+ <linearGradient
+ id="linearGradient4229-3-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4231-9-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4233-1-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5730-9-9"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-3"
+ y1="36.421127"
+ y2="35.581436" />
+ <linearGradient
+ id="linearGradient4248-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4250-9-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4252-3-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5732-3-5"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-8" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4137-0-0"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-9" />
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4141-7-6-4"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-0"
+ y1="38.63026"
+ y2="21.48896" />
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4143-6-6"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-8" />
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4145-6-0-0"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-3"
+ y1="36.421127"
+ y2="35.581436" />
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4147-0-8"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-8" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-4"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-58" />
+ <linearGradient
+ id="linearGradient3787-2-58"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-78"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-8"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-9"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient4256-2-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-93"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-08"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-9"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3638-9-8"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-2-9"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3082-0"
+ inkscape:collect="always"
+ x1="99.396446"
+ x2="99.881432"
+ xlink:href="#linearGradient3512-6"
+ y1="-44.57159"
+ y2="-36.90625" />
+ <linearGradient
+ id="linearGradient3512-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3514-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3516-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient2753-6"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-28" />
+ <linearGradient
+ id="linearGradient3787-28"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-75"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-8"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-4"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-8"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2759-4"
+ inkscape:collect="always"
+ x1="100.5"
+ x2="100.375"
+ xlink:href="#linearGradient3572-1"
+ y1="5.125"
+ y2="15.25" />
+ <linearGradient
+ id="linearGradient3572-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3574-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3576-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2761-7"
+ inkscape:collect="always"
+ x1="100.875"
+ x2="106.4375"
+ xlink:href="#linearGradient3580-3"
+ y1="15.6875"
+ y2="11.5" />
+ <linearGradient
+ id="linearGradient3580-3"
+ inkscape:collect="always">
+ <stop
+ id="stop3582-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3584-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7137-3"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-0" />
+ <linearGradient
+ id="linearGradient4176-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7141-9"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-9" />
+ <linearGradient
+ id="linearGradient4653-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4655-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0" />
+ <stop
+ id="stop4657-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7143-7"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-1"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ id="linearGradient4643-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4645-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4647-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7145-0"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-6"
+ y1="31.107067"
+ y2="11.313666" />
+ <linearGradient
+ id="linearGradient2512-6">
+ <stop
+ id="stop2514-1"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop2516-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7147-6"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-9" />
+ <linearGradient
+ id="linearGradient4601-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4603-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4605-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7149-9"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-9"
+ y1="9.5507469"
+ y2="17.149347" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6553-8"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-0" />
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6557-2"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-9" />
+ <linearGradient
+ gradientTransform="translate(10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6559-5"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-1"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6561-9"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-6"
+ y1="31.107067"
+ y2="11.313666" />
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6563-0"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-9" />
+ <linearGradient
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6565-8"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-9"
+ y1="9.5507469"
+ y2="17.149347" />
+ <linearGradient
+ id="linearGradient4256-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-26"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-60-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-2-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-5-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-8-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-9-3"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4285-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4293-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4301-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4309-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4437-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4439-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4441-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4348-3-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3648-8"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-5"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ id="linearGradient4256-1-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-22-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3650-1"
+ inkscape:collect="always"
+ x1="8.2643108"
+ x2="4.7950678"
+ xlink:href="#linearGradient4256-1-5"
+ y1="14.541593"
+ y2="10.431535" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3809-2"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-5"
+ y1="6.3656702"
+ y2="16.751301" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3817-5"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-9-4" />
+ <linearGradient
+ id="linearGradient3787-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-2-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-8-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4496-7"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-3" />
+ <linearGradient
+ id="linearGradient4176-1-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-2-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-4-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4488-9"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-7" />
+ <linearGradient
+ id="linearGradient4285-2-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-3-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-7-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4490-7"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-5" />
+ <linearGradient
+ id="linearGradient4293-2-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-5-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-3-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4492-2"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-6"
+ y1="36.125"
+ y2="19" />
+ <linearGradient
+ id="linearGradient4301-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-6-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-8-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4494-6"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-8"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ id="linearGradient4309-1-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-3-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-6-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5706-8"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-3" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5710-8"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-6"
+ y1="36.125"
+ y2="19" />
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5712-6"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-7" />
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5714-9"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-5" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5716-7"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-8"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ gradientTransform="translate(60,47)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5720-9"
+ inkscape:collect="always"
+ x1="20.155684"
+ x2="20.155684"
+ xlink:href="#linearGradient4348-8-3"
+ y1="43.910683"
+ y2="46" />
+ <linearGradient
+ id="linearGradient4348-8-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-5-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-0-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-8"
+ id="radialGradient6084-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ cx="-50.993778"
+ cy="13.921414"
+ fx="-50.993778"
+ fy="13.921414"
+ r="7.9160094" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient6086-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient6088-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-6-1"
+ id="radialGradient6092-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient6094-8"
+ gradientUnits="userSpaceOnUse"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-3"
+ id="radialGradient6098-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-6"
+ id="radialGradient6104-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-7"
+ id="radialGradient6106-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-9"
+ id="linearGradient6108-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-5"
+ id="linearGradient6110-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-3"
+ id="radialGradient6114-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-9"
+ id="linearGradient6118-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-6"
+ id="radialGradient6120-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-7"
+ id="radialGradient6122-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-5"
+ id="linearGradient6124-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4437-9"
+ id="linearGradient6126-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(190,0)"
+ x1="74.28125"
+ y1="28.776411"
+ x2="74.28125"
+ y2="31.960411" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4348-3-7"
+ id="linearGradient6130-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,46)"
+ x1="20.155684"
+ y1="43.910683"
+ x2="20.155684"
+ y2="46" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-2"
+ id="radialGradient9139-7-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-63"
+ id="linearGradient9141-3-32"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-4"
+ id="radialGradient9139-7-6-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-0" />
+ <stop
+ id="stop6981-9-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-4"
+ id="radialGradient7111-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="103.43681"
+ fx="39.554386"
+ fy="103.43681"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-1"
+ id="linearGradient9141-3-2-1"
+ gradientUnits="userSpaceOnUse"
+ x1="145.3887"
+ y1="39.999996"
+ x2="145.3887"
+ y2="7.9807839" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-1"
+ id="linearGradient9141-3-3-5"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.004028"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-81"
+ id="radialGradient9139-7-0-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-81">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-5" />
+ <stop
+ id="stop6981-3-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-5" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-62"
+ id="radialGradient9139-7-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="71.642067"
+ cy="119.85913"
+ fx="71.642067"
+ fy="119.85913"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-62">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-84" />
+ <stop
+ id="stop6981-39-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-24"
+ id="linearGradient9141-3-34-2"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="93"
+ x2="84.5"
+ y2="88" />
+ <linearGradient
+ id="linearGradient7113-6-24"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-42"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-2-2"
+ id="linearGradient9141-3-3-4-6"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.001797"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-2-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-2-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-6-3"
+ id="radialGradient9139-7-3-1-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="72.146278"
+ cy="120.14571"
+ fx="72.146278"
+ fy="120.14571"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-6-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-8-3" />
+ <stop
+ id="stop6981-39-2-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-2-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-4-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-2-9"
+ id="linearGradient9141-3-34-1-6"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="94"
+ x2="84.5"
+ y2="89" />
+ <linearGradient
+ id="linearGradient7113-6-2-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-4-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-8-3"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-8-1"
+ id="radialGradient9139-7-0-3-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-8-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-9-8" />
+ <stop
+ id="stop6981-3-1-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-1-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-2-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-3"
+ id="linearGradient9141-3-2-4-1"
+ gradientUnits="userSpaceOnUse"
+ x1="3.9729283"
+ y1="27.841093"
+ x2="3.9729283"
+ y2="5.1557527" />
+ <linearGradient
+ id="linearGradient7157-0-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-6"
+ id="radialGradient7111-4-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="39.814342"
+ cy="137.44762"
+ fx="39.814342"
+ fy="137.44762"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-1" />
+ <stop
+ id="stop6981-9-5-00"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-0" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-9-7"
+ id="radialGradient9139-7-06-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-9-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-3-4" />
+ <stop
+ id="stop6981-33-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-5-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-2-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9-8"
+ id="linearGradient9141-3-7-4"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-9-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-8"
+ id="linearGradient9141-3-2-4-7-7"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-9"
+ id="radialGradient7111-4-7-81"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-4" />
+ <stop
+ id="stop6981-9-5-0-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-5" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-3"
+ id="radialGradient9139-7-3-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-4" />
+ <stop
+ id="stop6981-39-27-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-1"
+ id="linearGradient9141-3-34-7-5"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-5-9"
+ id="linearGradient9141-3-2-4-7-9-2"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-5-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-7-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-3-1"
+ id="radialGradient7111-4-7-8-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-1-5" />
+ <stop
+ id="stop6981-9-5-0-3-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-0-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-3-2" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-5-0"
+ id="radialGradient9139-7-3-7-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-9-0" />
+ <stop
+ id="stop6981-39-27-5-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-6-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-2-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-0-4"
+ id="linearGradient9141-3-34-7-9-8"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-0-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-4-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-8-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-25"
+ id="radialGradient9139-7-61-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-25">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-67" />
+ <stop
+ id="stop6981-1-6"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-1"
+ id="linearGradient9141-3-39-96"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-27"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-3"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-5-6"
+ id="radialGradient9139-7-61-0-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="39.344345"
+ cy="192.03035"
+ fx="39.344345"
+ fy="192.03035"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-5-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-4-5" />
+ <stop
+ id="stop6981-1-4-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-8-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-6-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-5-1"
+ id="linearGradient9141-3-39-9-3"
+ gradientUnits="userSpaceOnUse"
+ x1="-56.866325"
+ y1="12.007"
+ x2="-56.826302"
+ y2="0.12165857" />
+ <linearGradient
+ id="linearGradient7113-62-5-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-4-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-2-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-9"
+ id="radialGradient9139-7-61-05-11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-9" />
+ <stop
+ id="stop6981-1-8-6"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-6"
+ id="linearGradient9141-3-39-1-88"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-3"
+ id="linearGradient9141-3-39-6-4"
+ gradientUnits="userSpaceOnUse"
+ x1="185.01755"
+ y1="-18.997253"
+ x2="185.01755"
+ y2="-22.000326" />
+ <linearGradient
+ id="linearGradient7113-62-7-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-1-1"
+ id="linearGradient9141-3-39-6-2-1"
+ gradientUnits="userSpaceOnUse"
+ x1="76.255684"
+ y1="-10"
+ x2="76.255684"
+ y2="-13.002928" />
+ <linearGradient
+ id="linearGradient7113-62-7-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-0-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-9-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-5-3"
+ id="radialGradient9139-7-61-05-1-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-7-4" />
+ <stop
+ id="stop6981-1-8-0-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-3-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-0-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-3-9"
+ id="linearGradient9141-3-39-1-8-0"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-8-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-4-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-5"
+ id="radialGradient9139-7-61-8-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="40.68565"
+ cy="125.0378"
+ fx="40.68565"
+ fy="125.0378"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-3" />
+ <stop
+ id="stop6981-1-2-6"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-09"
+ id="linearGradient9141-3-39-5-2"
+ gradientUnits="userSpaceOnUse"
+ x1="40"
+ y1="13.001565"
+ x2="40"
+ y2="0.99979788" />
+ <linearGradient
+ id="linearGradient7113-62-9-09"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-7-0"
+ id="radialGradient9139-7-61-8-4-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ cx="38.636917"
+ cy="223.66896"
+ fx="38.636917"
+ fy="223.66896"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-1-3" />
+ <stop
+ id="stop6981-1-2-7-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-4-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-7-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-0-3"
+ id="linearGradient9141-3-39-5-3-1"
+ gradientUnits="userSpaceOnUse"
+ x1="-65.877312"
+ y1="11.172731"
+ x2="-66.05246"
+ y2="0.24979722" />
+ <linearGradient
+ id="linearGradient7113-62-9-0-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-9-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-4-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-1"
+ id="radialGradient9139-7-61-8-44-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-8" />
+ <stop
+ id="stop6981-1-2-8-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-7"
+ id="linearGradient9141-3-39-5-6-5"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-3"
+ id="linearGradient9141-3-39-6-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="184.48721"
+ y1="-50.994797"
+ x2="184.48721"
+ y2="-54" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="radialGradient9139-7-61-8-44-8-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-5" />
+ <stop
+ id="stop6981-1-2-8-5-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-01" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-4-0"
+ id="linearGradient9141-3-39-5-6-6-9"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-4-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-1-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-6-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-5-4"
+ id="linearGradient9141-3-39-6-3-9-2"
+ gradientUnits="userSpaceOnUse"
+ x1="67.917938"
+ y1="-43.977436"
+ x2="67.917938"
+ y2="-47.001114" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-5-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-9-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-8-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8523-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8525-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8527-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8529-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8531-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8533-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8535-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8537-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8539-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8541-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8543-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8545-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8547-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8549-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8551-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8553-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8555-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8557-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8559-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8561-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8563-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8565-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8567-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8569-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8571-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8573-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8575-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8577-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8579-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8581-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8583-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8585-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8587-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8589-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient8597-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8599-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8601-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8603-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient8605-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient8607-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-10"
+ id="linearGradient8610-7"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-9"
+ id="linearGradient8612-8"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient8614-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient8616-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-1"
+ id="radialGradient8618-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40279-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40281-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40283-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40285-2"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40287-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40289-2"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40291-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40293-6"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40295-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40297-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40299-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40301-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40303-2"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40305-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40307-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40309-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40311-5"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40313-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40315-6"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40317-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40319-7"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40321-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40323-8"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40325-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40327-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40329-0"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40331-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40333-5"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40335-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40337-8"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40339-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40341-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40343-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40345-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40347-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40349-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40351-4"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40353-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40355-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40357-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40359-1"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40361-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40363-3"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40365-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-1"
+ id="linearGradient40367-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-7"
+ id="linearGradient40369-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-5"
+ id="linearGradient40371-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ id="linearGradient40373-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-5"
+ id="linearGradient40375-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-5"
+ id="linearGradient40377-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3-7"
+ id="linearGradient40379-8"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0-4"
+ id="linearGradient40381-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8-8"
+ id="linearGradient40383-0"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17-1"
+ id="linearGradient40385-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ id="linearGradient40387-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40525-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40527-7"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40529-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40531-4"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40533-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40535-6"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40537-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40539-4"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40541-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40543-2"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-5"
+ id="radialGradient40545-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40547-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40549-7"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40551-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40553-7"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40555-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40557-2"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40559-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40561-5"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40563-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40565-0"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40567-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40569-0"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8"
+ id="radialGradient40571-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40573-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40575-8"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40577-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40579-1"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40581-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40583-8"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40585-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40587-8"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40589-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40591-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40593-2"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40595-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40597-1"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40599-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40601-3"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40603-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40605-5"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40607-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40609-6"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-4"
+ id="radialGradient40611-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ id="linearGradient40613-9"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-5"
+ id="linearGradient40615-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ id="linearGradient40617-6"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ id="linearGradient40619-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-1"
+ id="linearGradient40621-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-5"
+ id="linearGradient40623-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-3"
+ id="linearGradient40625-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-9"
+ id="linearGradient40627-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-7"
+ id="linearGradient40629-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-5"
+ id="linearGradient40631-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-5"
+ id="linearGradient40633-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ id="linearGradient9593-0">
+ <stop
+ id="stop9595-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.58164877"
+ id="stop9597-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop9599-1" />
+ <stop
+ id="stop9601-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient6619-5"
+ x1="12.966009"
+ y1="2.2262447"
+ x2="12.30598"
+ y2="22.950687"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient6636-0"
+ x1="22"
+ y1="21"
+ x2="15"
+ y2="14"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6638-5"
+ id="linearGradient6644-2"
+ x1="14.09375"
+ y1="17.59375"
+ x2="21.90625"
+ y2="17.59375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-3"
+ id="linearGradient6649-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ x1="14.09375"
+ y1="17.59375"
+ x2="21.90625"
+ y2="17.59375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-3"
+ id="linearGradient6653-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="4.7533474"
+ y2="3.4821436" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient6655-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="15"
+ y2="14" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-3"
+ id="linearGradient6659-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="4.7533474"
+ y2="3.4821436" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient6661-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="15"
+ y2="14" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-0"
+ id="linearGradient6664-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="42.846115"
+ y1="39.110744"
+ x2="15"
+ y2="14" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-3"
+ id="linearGradient6666-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="42.846115"
+ y1="39.110744"
+ x2="12.667261"
+ y2="11.137995" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6826-1"
+ id="linearGradient6832-1"
+ x1="-3"
+ y1="1021.3622"
+ x2="9"
+ y2="1021.3622"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6839-8"
+ id="linearGradient6845-4"
+ x1="-1"
+ y1="-7"
+ x2="9"
+ y2="-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6826-1"
+ id="linearGradient6851-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ x1="-3"
+ y1="1021.3622"
+ x2="9"
+ y2="1021.3622" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6839-8"
+ id="linearGradient6853-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ x1="-1"
+ y1="-7"
+ x2="9"
+ y2="-7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient6887-0"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895-9"
+ id="linearGradient6893-7"
+ gradientUnits="userSpaceOnUse"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084"
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895-9"
+ id="linearGradient6911-3"
+ gradientUnits="userSpaceOnUse"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6952-6"
+ id="linearGradient6944-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ x1="-0.9375"
+ y1="1025.2997"
+ x2="6.875"
+ y2="1017.4872" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6958-0"
+ id="linearGradient6946-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ x1="0.9375"
+ y1="-3.9375"
+ x2="7.0625"
+ y2="-9.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient6948-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895-9"
+ id="linearGradient6950-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895-9"
+ id="linearGradient6964-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient6966-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6826-1"
+ id="linearGradient6968-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ x1="-3"
+ y1="1021.3622"
+ x2="9"
+ y2="1021.3622" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6839-8"
+ id="linearGradient6970-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ x1="-1"
+ y1="-7"
+ x2="9"
+ y2="-7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient6982-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895-9"
+ id="linearGradient6984-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient6994-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient6996-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient7001-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient7005-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731-3"
+ id="linearGradient4737-5"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731-3"
+ id="linearGradient4743-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731-3"
+ id="linearGradient4749-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6638-5"
+ id="linearGradient4755-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4-7"
+ id="linearGradient3862-3"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)" />
+ <linearGradient
+ id="linearGradient3848-4-7">
+ <stop
+ style="stop-color:#51b700;stop-opacity:1;"
+ offset="0"
+ id="stop3850-4" />
+ <stop
+ style="stop-color:#a1f800;stop-opacity:1;"
+ offset="1"
+ id="stop3852-3" />
+ </linearGradient>
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3025-8"
+ xlink:href="#linearGradient3848-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient4782-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0807243,0,0,0.95038373,2.4016561,-1021.2751)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881-6"
+ id="linearGradient4784-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731-3"
+ id="linearGradient4786-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731-3"
+ id="linearGradient4788-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6638-5"
+ id="linearGradient4790-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ id="linearGradient4731">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4733" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4735" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6958">
+ <stop
+ id="stop6960"
+ offset="0"
+ style="stop-color:#e40000;stop-opacity:1;" />
+ <stop
+ id="stop6962"
+ offset="1"
+ style="stop-color:#ff5050;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6952">
+ <stop
+ id="stop6954"
+ offset="0"
+ style="stop-color:#600000;stop-opacity:1;" />
+ <stop
+ id="stop6956"
+ offset="1"
+ style="stop-color:#af0000;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6913">
+ <stop
+ id="stop6915"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6917"
+ offset="1"
+ style="stop-color:#303030;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6895">
+ <stop
+ id="stop6897"
+ offset="0"
+ style="stop-color:#0039c0;stop-opacity:1;" />
+ <stop
+ id="stop6899"
+ offset="1"
+ style="stop-color:#01008b;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6881">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6883" />
+ <stop
+ style="stop-color:#303030;stop-opacity:1;"
+ offset="1"
+ id="stop6885" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6839">
+ <stop
+ style="stop-color:#9ee400;stop-opacity:1;"
+ offset="0"
+ id="stop6841" />
+ <stop
+ style="stop-color:#a0ff50;stop-opacity:1;"
+ offset="1"
+ id="stop6843" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6826">
+ <stop
+ style="stop-color:#096000;stop-opacity:1;"
+ offset="0"
+ id="stop6828" />
+ <stop
+ style="stop-color:#10af00;stop-opacity:1;"
+ offset="1"
+ id="stop6830" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6638">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6640" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6642" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="linearGradient3761"
+ x1="12.966009"
+ y1="2.2262447"
+ x2="12.30598"
+ y2="22.950687"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-3"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-9"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9582"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="119.67304"
+ x2="223.39351"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9580"
+ xlink:href="#linearGradient9593"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9578"
+ xlink:href="#linearGradient3787-2-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9574"
+ xlink:href="#linearGradient3787-2-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ id="linearGradient9567"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ id="linearGradient9559"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-0"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-6"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ id="linearGradient4256-2-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-6"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-6"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient7113-62-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9141-3-39-97"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient6977-28-58">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6" />
+ <stop
+ id="stop6981-1-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="radialGradient9139-7-61-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient3787-2-5"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-3"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-5" />
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ id="perspective1832" />
+ <linearGradient
+ id="linearGradient7157"
+ inkscape:collect="always">
+ <stop
+ id="stop7159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7113"
+ inkscape:collect="always">
+ <stop
+ id="stop7115"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979" />
+ <stop
+ id="stop6981"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4388"
+ inkscape:collect="always">
+ <stop
+ id="stop4390"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-7"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-7"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ id="linearGradient3820"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient3830"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient3832"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient3834"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient3844"
+ gradientUnits="userSpaceOnUse"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3"
+ id="linearGradient3846"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0"
+ id="linearGradient3848"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-6"
+ id="radialGradient3852"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ cx="3.403806"
+ cy="4.2001681"
+ fx="3.403806"
+ fy="4.2001681"
+ r="8" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient3866"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-9">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-17">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ id="linearGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ id="linearGradient4032"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ id="linearGradient3832-7-4"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-9-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0"
+ id="linearGradient3830-2-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-0">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-4-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-8">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ id="linearGradient4662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ id="linearGradient4664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4"
+ id="linearGradient4666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ id="linearGradient4840-0-8-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-1-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-1-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-2-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-6-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-81" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3"
+ id="linearGradient4869"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4"
+ id="linearGradient4871"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7"
+ id="linearGradient4873"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient5751"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient5753"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7"
+ id="linearGradient5755"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6433"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6433-0"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6584"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient6433-7"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6433-7-0"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4141"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4143"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4145"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4147"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4149"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4169"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4171"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4173"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4175"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4177"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient4179"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4187"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4189"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4191"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4193"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4201"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4203"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4205"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4207"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4209"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4211"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4213"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4215"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4294"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4296"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4298"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4300"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4302"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4304"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4306"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4308"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4310"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4312"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4320"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4322"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4324"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4326"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4328"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4330"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4338"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4340"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4342"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4344"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4346"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4348"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient4386"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient4660"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4388-8-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-1-7"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-6-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5033"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5151"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5289"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5291"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5293"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5295"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5297"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5299"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5303"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5309"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5311"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5313"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5315"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5317"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5319"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5321"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5323"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5325"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5327"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5329"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5335"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5337"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5339"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5341"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5343"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5347"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5355"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5357"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5359"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5361"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5363"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5365"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5367"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5369"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient5691"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4840-0-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6123"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6909"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6911"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6913"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6919"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient7213"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7263"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7265"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7267"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7269"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7271"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7273"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7275"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7277"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7279"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7285"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7287"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7347"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7349"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7351"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7355"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7357"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7359"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7361"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7388"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7390"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7392"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7394"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7396"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7398"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7400"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7402"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1"
+ id="linearGradient7249-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-1">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-1" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient7740"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7910"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7912"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7915"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7917"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7920"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7922"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7938"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7942"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7950"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient7950-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-8" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient7942-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8025"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8436"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8438"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8440"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8442"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8444"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8446"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8448"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8450"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8452"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8454"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8456"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8458"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8460"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8462"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8464"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8466"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8468"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8470"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8472"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8474"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8512"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8516"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8518"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8520"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8522"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8524"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8526"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8528"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8530"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8532"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient8572"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8639"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8641"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8644"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8646"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8649"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8651"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8677"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8681"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8685"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient8747"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9121"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9123"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000003,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9125"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9127"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9129"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9131"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000001,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9133"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9135"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000006,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9139"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9141"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9145"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9149"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9151"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9153"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9155"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9157"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9177"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9179"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9181"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9183"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9185"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9187"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9189"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9191"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9193"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9195"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9197"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9199"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9201"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9203"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5722-2"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-8" />
+ <linearGradient
+ id="linearGradient4176-9-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5726-1"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0"
+ y1="38.63026"
+ y2="21.48896" />
+ <linearGradient
+ id="linearGradient3421-0">
+ <stop
+ id="stop3423-3"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop3425-4"
+ offset="1"
+ style="stop-color:#babdb6;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5728-0"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3" />
+ <linearGradient
+ id="linearGradient4229-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4231-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4233-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5730-9"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6"
+ y1="36.421127"
+ y2="35.581436" />
+ <linearGradient
+ id="linearGradient4248-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4250-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4252-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5732-3"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4137-0"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-8" />
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4141-7-6"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0"
+ y1="38.63026"
+ y2="21.48896" />
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4143-6"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3" />
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4145-6-0"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6"
+ y1="36.421127"
+ y2="35.581436" />
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4147-0"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2" />
+ <linearGradient
+ id="linearGradient3787-2"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient4256-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3638-9"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-2"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3082"
+ inkscape:collect="always"
+ x1="99.396446"
+ x2="99.881432"
+ xlink:href="#linearGradient3512"
+ y1="-44.57159"
+ y2="-36.90625" />
+ <linearGradient
+ id="linearGradient3512"
+ inkscape:collect="always">
+ <stop
+ id="stop3514"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3516"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient2753"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787" />
+ <linearGradient
+ id="linearGradient3787"
+ inkscape:collect="always">
+ <stop
+ id="stop3789"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185"
+ inkscape:collect="always">
+ <stop
+ id="stop3187"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2759"
+ inkscape:collect="always"
+ x1="100.5"
+ x2="100.375"
+ xlink:href="#linearGradient3572"
+ y1="5.125"
+ y2="15.25" />
+ <linearGradient
+ id="linearGradient3572"
+ inkscape:collect="always">
+ <stop
+ id="stop3574"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3576"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2761"
+ inkscape:collect="always"
+ x1="100.875"
+ x2="106.4375"
+ xlink:href="#linearGradient3580"
+ y1="15.6875"
+ y2="11.5" />
+ <linearGradient
+ id="linearGradient3580"
+ inkscape:collect="always">
+ <stop
+ id="stop3582"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3584"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7137"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176" />
+ <linearGradient
+ id="linearGradient4176"
+ inkscape:collect="always">
+ <stop
+ id="stop4178"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7141"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653" />
+ <linearGradient
+ id="linearGradient4653"
+ inkscape:collect="always">
+ <stop
+ id="stop4655"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0" />
+ <stop
+ id="stop4657"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7143"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ id="linearGradient4643"
+ inkscape:collect="always">
+ <stop
+ id="stop4645"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4647"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7145"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512"
+ y1="31.107067"
+ y2="11.313666" />
+ <linearGradient
+ id="linearGradient2512">
+ <stop
+ id="stop2514"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop2516"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7147"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601" />
+ <linearGradient
+ id="linearGradient4601"
+ inkscape:collect="always">
+ <stop
+ id="stop4603"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4605"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7149"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601"
+ y1="9.5507469"
+ y2="17.149347" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6553"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176" />
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6557"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653" />
+ <linearGradient
+ gradientTransform="translate(10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6559"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6561"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512"
+ y1="31.107067"
+ y2="11.313666" />
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6563"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601" />
+ <linearGradient
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6565"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601"
+ y1="9.5507469"
+ y2="17.149347" />
+ <linearGradient
+ id="linearGradient4256"
+ inkscape:collect="always">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-60"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4285"
+ inkscape:collect="always">
+ <stop
+ id="stop4287"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4293"
+ inkscape:collect="always">
+ <stop
+ id="stop4295"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4301"
+ inkscape:collect="always">
+ <stop
+ id="stop4303"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4309"
+ inkscape:collect="always">
+ <stop
+ id="stop4311"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4437"
+ inkscape:collect="always">
+ <stop
+ id="stop4439"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4441"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4348-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4350"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3648"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ id="linearGradient4256-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-22"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3650"
+ inkscape:collect="always"
+ x1="8.2643108"
+ x2="4.7950678"
+ xlink:href="#linearGradient4256-1"
+ y1="14.541593"
+ y2="10.431535" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3809"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3817"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-9" />
+ <linearGradient
+ id="linearGradient3787-9"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4496"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1" />
+ <linearGradient
+ id="linearGradient4176-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4488"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2" />
+ <linearGradient
+ id="linearGradient4285-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4490"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2" />
+ <linearGradient
+ id="linearGradient4293-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4492"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7"
+ y1="36.125"
+ y2="19" />
+ <linearGradient
+ id="linearGradient4301-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4494"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ id="linearGradient4309-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5706"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5710"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7"
+ y1="36.125"
+ y2="19" />
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5712"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2" />
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5714"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5716"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ gradientTransform="translate(60,47)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5720"
+ inkscape:collect="always"
+ x1="20.155684"
+ x2="20.155684"
+ xlink:href="#linearGradient4348-8"
+ y1="43.910683"
+ y2="46" />
+ <linearGradient
+ id="linearGradient4348-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185"
+ id="radialGradient6084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ cx="-50.993778"
+ cy="13.921414"
+ fx="-50.993778"
+ fy="13.921414"
+ r="7.9160094" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-6"
+ id="radialGradient6092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6094"
+ gradientUnits="userSpaceOnUse"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5"
+ id="radialGradient6098"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285"
+ id="radialGradient6104"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293"
+ id="radialGradient6106"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301"
+ id="linearGradient6108"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309"
+ id="linearGradient6110"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5"
+ id="radialGradient6114"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301"
+ id="linearGradient6118"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285"
+ id="radialGradient6120"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293"
+ id="radialGradient6122"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309"
+ id="linearGradient6124"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4437"
+ id="linearGradient6126"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(190,0)"
+ x1="74.28125"
+ y1="28.776411"
+ x2="74.28125"
+ y2="31.960411" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4348-3"
+ id="linearGradient6130"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,46)"
+ x1="20.155684"
+ y1="43.910683"
+ x2="20.155684"
+ y2="46" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977"
+ id="radialGradient9139-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113"
+ id="linearGradient9141-3"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7"
+ id="radialGradient9139-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8" />
+ <stop
+ id="stop6981-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7"
+ id="radialGradient7111"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="103.43681"
+ fx="39.554386"
+ fy="103.43681"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157"
+ id="linearGradient9141-3-2"
+ gradientUnits="userSpaceOnUse"
+ x1="145.3887"
+ y1="39.999996"
+ x2="145.3887"
+ y2="7.9807839" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0"
+ id="linearGradient9141-3-3"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.004028"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5"
+ id="radialGradient9139-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0" />
+ <stop
+ id="stop6981-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14"
+ id="radialGradient9139-7-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="71.642067"
+ cy="119.85913"
+ fx="71.642067"
+ fy="119.85913"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86" />
+ <stop
+ id="stop6981-39"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6"
+ id="linearGradient9141-3-34"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="93"
+ x2="84.5"
+ y2="88" />
+ <linearGradient
+ id="linearGradient7113-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-2"
+ id="linearGradient9141-3-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.001797"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-6"
+ id="radialGradient9139-7-3-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="72.146278"
+ cy="120.14571"
+ fx="72.146278"
+ fy="120.14571"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-8" />
+ <stop
+ id="stop6981-39-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-2"
+ id="linearGradient9141-3-34-1"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="94"
+ x2="84.5"
+ y2="89" />
+ <linearGradient
+ id="linearGradient7113-6-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-8"
+ id="radialGradient9139-7-0-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-9" />
+ <stop
+ id="stop6981-3-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0"
+ id="linearGradient9141-3-2-4"
+ gradientUnits="userSpaceOnUse"
+ x1="3.9729283"
+ y1="27.841093"
+ x2="3.9729283"
+ y2="5.1557527" />
+ <linearGradient
+ id="linearGradient7157-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3"
+ id="radialGradient7111-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="39.814342"
+ cy="137.44762"
+ fx="39.814342"
+ fy="137.44762"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8" />
+ <stop
+ id="stop6981-9-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-9"
+ id="radialGradient9139-7-06"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-3" />
+ <stop
+ id="stop6981-33"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9"
+ id="linearGradient9141-3-7"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7"
+ id="linearGradient9141-3-2-4-7"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3"
+ id="radialGradient7111-4-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6" />
+ <stop
+ id="stop6981-9-5-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1"
+ id="radialGradient9139-7-3-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5" />
+ <stop
+ id="stop6981-39-27"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1"
+ id="linearGradient9141-3-34-7"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-5"
+ id="linearGradient9141-3-2-4-7-9"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-3"
+ id="radialGradient7111-4-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-1" />
+ <stop
+ id="stop6981-9-5-0-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-5"
+ id="radialGradient9139-7-3-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-9" />
+ <stop
+ id="stop6981-39-27-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-0"
+ id="linearGradient9141-3-34-7-9"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28"
+ id="radialGradient9139-7-61"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4" />
+ <stop
+ id="stop6981-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62"
+ id="linearGradient9141-3-39"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-5"
+ id="radialGradient9139-7-61-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="39.344345"
+ cy="192.03035"
+ fx="39.344345"
+ fy="192.03035"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-4" />
+ <stop
+ id="stop6981-1-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-5"
+ id="linearGradient9141-3-39-9"
+ gradientUnits="userSpaceOnUse"
+ x1="-56.866325"
+ y1="12.007"
+ x2="-56.826302"
+ y2="0.12165857" />
+ <linearGradient
+ id="linearGradient7113-62-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7"
+ id="radialGradient9139-7-61-05"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8" />
+ <stop
+ id="stop6981-1-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52"
+ id="linearGradient9141-3-39-1"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7"
+ id="linearGradient9141-3-39-6"
+ gradientUnits="userSpaceOnUse"
+ x1="185.01755"
+ y1="-18.997253"
+ x2="185.01755"
+ y2="-22.000326" />
+ <linearGradient
+ id="linearGradient7113-62-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-1"
+ id="linearGradient9141-3-39-6-2"
+ gradientUnits="userSpaceOnUse"
+ x1="76.255684"
+ y1="-10"
+ x2="76.255684"
+ y2="-13.002928" />
+ <linearGradient
+ id="linearGradient7113-62-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-5"
+ id="radialGradient9139-7-61-05-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-7" />
+ <stop
+ id="stop6981-1-8-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-3"
+ id="linearGradient9141-3-39-1-8"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2"
+ id="radialGradient9139-7-61-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="40.68565"
+ cy="125.0378"
+ fx="40.68565"
+ fy="125.0378"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5" />
+ <stop
+ id="stop6981-1-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9"
+ id="linearGradient9141-3-39-5"
+ gradientUnits="userSpaceOnUse"
+ x1="40"
+ y1="13.001565"
+ x2="40"
+ y2="0.99979788" />
+ <linearGradient
+ id="linearGradient7113-62-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-7"
+ id="radialGradient9139-7-61-8-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ cx="38.636917"
+ cy="223.66896"
+ fx="38.636917"
+ fy="223.66896"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-1" />
+ <stop
+ id="stop6981-1-2-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-0"
+ id="linearGradient9141-3-39-5-3"
+ gradientUnits="userSpaceOnUse"
+ x1="-65.877312"
+ y1="11.172731"
+ x2="-66.05246"
+ y2="0.24979722" />
+ <linearGradient
+ id="linearGradient7113-62-9-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3"
+ id="radialGradient9139-7-61-8-44"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4"
+ id="linearGradient9141-3-39-5-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0"
+ id="linearGradient9141-3-39-6-3"
+ gradientUnits="userSpaceOnUse"
+ x1="184.48721"
+ y1="-50.994797"
+ x2="184.48721"
+ y2="-54" />
+ <linearGradient
+ id="linearGradient7113-62-7-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-2"
+ id="radialGradient9139-7-61-8-44-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-8" />
+ <stop
+ id="stop6981-1-2-8-5-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-4"
+ id="linearGradient9141-3-39-5-6-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-5"
+ id="linearGradient9141-3-39-6-3-9"
+ gradientUnits="userSpaceOnUse"
+ x1="67.917938"
+ y1="-43.977436"
+ x2="67.917938"
+ y2="-47.001114" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8523"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8525"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8527"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8531"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8533"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8535"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8537"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8539"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8541"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8543"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8545"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8547"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8549"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8551"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8553"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8555"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8557"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8561"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8565"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8567"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8569"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8571"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8573"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8575"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8577"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8579"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8581"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8583"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8585"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8587"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8589"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8597"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8599"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8601"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8603"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8605"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8607"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient8610"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1"
+ id="linearGradient8612"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8614"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8616"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8618"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40279"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40281"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40283"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40285"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40287"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40289"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40291"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40293"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40295"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40297"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40299"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40303"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40305"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40307"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40309"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40311"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40313"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40315"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40317"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40319"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40321"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40323"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40325"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40327"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40329"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40331"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40333"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40335"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40337"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40339"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40341"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40343"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40347"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40349"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40351"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40355"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40357"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40359"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40361"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40363"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40365"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3"
+ id="linearGradient40367"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4"
+ id="linearGradient40369"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7"
+ id="linearGradient40371"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ id="linearGradient40373"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ id="linearGradient40375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4"
+ id="linearGradient40377"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ id="linearGradient40379"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0"
+ id="linearGradient40381"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ id="linearGradient40383"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ id="linearGradient40385"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ id="linearGradient40387"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40525"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40527"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40531"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40533"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40535"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40537"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40539"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40541"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40543"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40545"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40547"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40549"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40551"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40553"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40555"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40557"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40561"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40565"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40567"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40569"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40571"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40573"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40575"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40577"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40579"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40581"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40583"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40585"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40587"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40589"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40591"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40593"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40595"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40597"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40599"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40601"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40603"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40605"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40607"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40609"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40611"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40613"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient40615"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40617"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient40619"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ id="linearGradient40621"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40623"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient40625"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7"
+ id="linearGradient40627"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0"
+ id="linearGradient40629"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3"
+ id="linearGradient40631"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient40633"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ id="linearGradient9593">
+ <stop
+ id="stop9595"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.58164877"
+ id="stop9597" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop9599" />
+ <stop
+ id="stop9601"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient6619"
+ x1="12.966009"
+ y1="2.2262447"
+ x2="12.30598"
+ y2="22.950687"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0609338,0,0,1.0609338,-738.73509,731.57295)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient6636"
+ x1="22"
+ y1="21"
+ x2="15"
+ y2="14"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6638"
+ id="linearGradient6644"
+ x1="14.09375"
+ y1="17.59375"
+ x2="21.90625"
+ y2="17.59375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient6649"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ x1="14.09375"
+ y1="17.59375"
+ x2="21.90625"
+ y2="17.59375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient6653"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="4.7533474"
+ y2="3.4821436" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient6655"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-0.49541281,-0.078)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="15"
+ y2="14" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient6659"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="4.7533474"
+ y2="3.4821436" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient6661"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="23.459822"
+ y1="22.703125"
+ x2="15"
+ y2="14" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient6664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="42.846115"
+ y1="39.110744"
+ x2="15"
+ y2="14" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient6666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0275229,0,0,1.027523,-13.046558,1016.7937)"
+ x1="42.846115"
+ y1="39.110744"
+ x2="12.667261"
+ y2="11.137995" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6826"
+ id="linearGradient6832"
+ x1="-3"
+ y1="1021.3622"
+ x2="9"
+ y2="1021.3622"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6839"
+ id="linearGradient6845"
+ x1="-1"
+ y1="-7"
+ x2="9"
+ y2="-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6826"
+ id="linearGradient6851"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ x1="-3"
+ y1="1021.3622"
+ x2="9"
+ y2="1021.3622" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6839"
+ id="linearGradient6853"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ x1="-1"
+ y1="-7"
+ x2="9"
+ y2="-7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient6887"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895"
+ id="linearGradient6893"
+ gradientUnits="userSpaceOnUse"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084"
+ gradientTransform="matrix(1.002984,0,0,1.002984,16.178514,-14.980827)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895"
+ id="linearGradient6911"
+ gradientUnits="userSpaceOnUse"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6952"
+ id="linearGradient6944"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ x1="-0.9375"
+ y1="1025.2997"
+ x2="6.875"
+ y2="1017.4872" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6958"
+ id="linearGradient6946"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ x1="0.9375"
+ y1="-3.9375"
+ x2="7.0625"
+ y2="-9.9375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient6948"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99719671,0,0,0.99719667,0.00974777,0)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895"
+ id="linearGradient6950"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,16.189545,0)"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895"
+ id="linearGradient6964"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,15.420333,-9.4836299)"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient6966"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9971967,0,0,0.99719666,-0.75953185,-9.4827963)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6826"
+ id="linearGradient6968"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,-1017.3622,1024.3622)"
+ x1="-3"
+ y1="1021.3622"
+ x2="9"
+ y2="1021.3622" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6839"
+ id="linearGradient6970"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,11,1025.3622)"
+ x1="-1"
+ y1="-7"
+ x2="9"
+ y2="-7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient6982"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0807244,0,0,0.95038377,2.3860302,-1012.2751)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6895"
+ id="linearGradient6984"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.99728434,0,0,0.99728434,13.218376,-24.39866)"
+ x1="1.7662058"
+ y1="1090.5339"
+ x2="6.945096"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient6994"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,8.9042618,-6.8072647)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient6996"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0257104,0,0,1.0257104,2.25318,-6.8072648)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient7001"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,1.3906378,-20.932315)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient7005"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731"
+ id="linearGradient4737"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731"
+ id="linearGradient4743"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.756623,1078.6095)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731"
+ id="linearGradient4749"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6638"
+ id="linearGradient4755"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4"
+ id="linearGradient3862"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,1,1067.3622)" />
+ <linearGradient
+ id="linearGradient3848-4">
+ <stop
+ style="stop-color:#b70000;stop-opacity:1;"
+ offset="0"
+ id="stop3850" />
+ <stop
+ style="stop-color:#ff2d2d;stop-opacity:1;"
+ offset="1"
+ id="stop3852" />
+ </linearGradient>
+ <linearGradient
+ y2="18.5"
+ x2="24"
+ y1="18.5"
+ x1="15"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3025"
+ xlink:href="#linearGradient3848-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3848-4"
+ id="linearGradient4770"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,8.7236111,1069.7409)"
+ x1="15"
+ y1="18.5"
+ x2="24"
+ y2="18.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6881"
+ id="linearGradient4784"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0937869,0,0,0.96187087,8.4752454,-20.932315)"
+ x1="7.3413663"
+ y1="1090.5339"
+ x2="15.792633"
+ y2="1082.1084" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731"
+ id="linearGradient4786"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,4.9813276,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4731"
+ id="linearGradient4788"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,11.714144,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6638"
+ id="linearGradient4790"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.27035376,0,0,0.27035376,18.44696,1078.6801)"
+ x1="16.767418"
+ y1="-26.082771"
+ x2="3.4383593"
+ y2="1.7565804" />
+ <linearGradient
+ id="linearGradient5895-4-2">
+ <stop
+ id="stop5897-1-4"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7-6">
+ <stop
+ id="stop5974-3-0"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3-0"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895-4">
+ <stop
+ id="stop5897-1"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5972-7">
+ <stop
+ id="stop5974-3"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976-3"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5895">
+ <stop
+ id="stop5897"
+ offset="0"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ <stop
+ id="stop5899"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-70">
+ <stop
+ id="stop6979-4-5-5-4-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-5-12" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-5-6" />
+ <stop
+ id="stop6985-44-1-5-4-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-4-59">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-23-65" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-6-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-70"
+ id="linearGradient9584-2"
+ gradientUnits="userSpaceOnUse"
+ x1="236.32954"
+ y1="147.02293"
+ x2="224.9845"
+ y2="122.14792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-59"
+ id="linearGradient9586-27"
+ gradientUnits="userSpaceOnUse"
+ x1="236.77655"
+ y1="142.72978"
+ x2="227.56795"
+ y2="123.53689" />
+ <linearGradient
+ id="linearGradient5972">
+ <stop
+ id="stop5974"
+ offset="0"
+ style="stop-color:#2e4dd6;stop-opacity:1;" />
+ <stop
+ id="stop5976"
+ offset="1"
+ style="stop-color:#0798ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6289"
+ inkscape:collect="always">
+ <stop
+ id="stop6291"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6293"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6958-0"
+ id="linearGradient9886"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,-1,1,0,20.723222,1069.7284)"
+ x1="18.085783"
+ y1="20.621321"
+ x2="21.621317"
+ y2="17.085787" />
+ <filter
+ inkscape:collect="always"
+ id="filter10665"
+ x="-0.17374273"
+ width="1.3474855"
+ y="-0.38794323"
+ height="1.7758865">
+ <feGaussianBlur
+ inkscape:collect="always"
+ stdDeviation="0.65158089"
+ id="feGaussianBlur10667" />
+ </filter>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:collect="always"
+ id="filter10665-8"
+ x="-0.17374273"
+ width="1.3474855"
+ y="-0.38794324"
+ height="1.7758865">
+ <feGaussianBlur
+ inkscape:collect="always"
+ stdDeviation="0.65158089"
+ id="feGaussianBlur10667-3" />
+ </filter>
</defs>
<sodipodi:namedview
id="base"
@@ -344,19 +15971,19 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="8"
- inkscape:cx="4.678221"
- inkscape:cy="4.9720951"
+ inkscape:zoom="1"
+ inkscape:cx="20.320019"
+ inkscape:cy="6.6441255"
inkscape:document-units="px"
- inkscape:current-layer="layer1-17"
- showgrid="true"
- inkscape:snap-global="false"
- showborder="false"
- inkscape:window-width="681"
- inkscape:window-height="715"
+ inkscape:current-layer="g26577"
+ showgrid="false"
+ inkscape:snap-global="true"
+ showborder="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="698"
inkscape:window-x="0"
- inkscape:window-y="30"
- inkscape:window-maximized="0">
+ inkscape:window-y="25"
+ inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
id="grid7502"
@@ -493,119 +16120,386 @@
style="fill:#fce94f;stroke:none;display:inline"
transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)" />
<g
- id="g4849"
- transform="translate(0,-1.9999994)">
- <g
- id="g6132">
- <rect
- style="fill:url(#linearGradient6144);fill-opacity:1.0;stroke:none"
- id="rect5187"
- width="22"
- height="16.000002"
- x="6.1795592"
- y="17.648603"
- ry="1.0000006" />
- <path
- inkscape:connector-curvature="0"
- id="path5970"
- d="m 7.179559,18.648604 0,14 20,0 0,-14 z m 1,1 18,0 0,12 -18,0 z"
- style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
- sodipodi:nodetypes="cccccccccc" />
- <rect
- style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none"
- id="rect5978"
- width="14"
- height="1"
- x="5"
- y="7"
- transform="translate(5.179559,14.648604)"
- ry="0.5" />
- <rect
- ry="0.5"
- y="24.648603"
- x="9.1795597"
- height="1"
- width="13.000001"
- id="rect5980"
- style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none"
- rx="0.5" />
- <rect
- rx="0.5"
- style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none"
- id="rect5982"
- width="13.000001"
- height="1"
- x="9.1795588"
- y="26.648603"
- ry="0.5" />
- <rect
- ry="0.5"
- transform="matrix(0,1,-1,0,0,0)"
- y="-11.179559"
- x="20.648603"
- height="1"
- width="2.0000002"
- id="rect5984"
- style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none"
- rx="0.5" />
- <rect
- rx="0.5"
- style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none"
- id="rect5986"
- width="2.0000002"
- height="1"
- x="20.648603"
- y="-15.179559"
- transform="matrix(0,1,-1,0,0,0)"
- ry="0.5" />
- <rect
- ry="0.5"
- transform="matrix(0,1,-1,0,0,0)"
- y="-18.17956"
- x="21.648603"
- height="1"
- width="2.0000002"
- id="rect5988"
- style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none"
- rx="0.5" />
- <rect
- rx="0.5"
- style="opacity:0.6;fill:#ffffff;fill-opacity:1;stroke:none"
- id="rect5990"
- width="2.0000002"
- height="1"
- x="20.648603"
- y="-22.17956"
- transform="matrix(0,1,-1,0,0,0)"
- ry="0.5" />
- <path
- transform="translate(5.179559,14.648604)"
- id="rect6018"
- d="M 2,3 C 1.4459997,3 1,3.4459997 1,4 l 0,14 c 0,0.554 0.4459997,1 1,1 l 20,0 c 0.554,0 1,-0.446 1,-1 L 23,4 C 23,3.4459997 22.554,3 22,3 L 2,3 z M 2,4 22,4 22,18 2,18 2,4 z"
- style="opacity:0.4;fill:url(#linearGradient6146);fill-opacity:1;stroke:none"
- inkscape:connector-curvature="0" />
- </g>
- </g>
- <g
transform="translate(6.1616704,-1012.459)"
id="layer1-17"
inkscape:label="Ebene 1">
<g
- transform="translate(-8.7216474,-3.3796288)"
- id="g4766-5">
+ transform="translate(-0.98211143,-1.2546083)"
+ id="layer1-93"
+ inkscape:label="Ebene 1">
<g
- transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,750.60607,288.35844)"
- id="g4801">
- <path
- inkscape:connector-curvature="0"
- id="rect3817-5"
- d="m 22.723611,1051.7409 3,0 0,3 3,0 0,-3 3,0 0,-3 -3,0 0,-3 -3,0 0,3 -3,0 0,3 z"
- style="fill:url(#linearGradient4805);fill-opacity:1;stroke:none" />
- <path
- inkscape:connector-curvature="0"
- id="path3838-1"
- d="m 31.723611,1048.7409 -3,0 0,-3 -3,0 0,3 -3,0 0,3 3,0 0,3 3,0 0,-3 3,0 0,-3 z m -1,1 0,1 -3,0 0,3 -1,0 0,-3 -3,0 0,-1 3,0 0,-3 1,0 0,3 3,0 z"
- style="fill:#a70000;fill-opacity:1;stroke:none" />
+ transform="translate(-33.607049,-15.848364)"
+ inkscape:label="Ebene 1"
+ id="layer1-1-1">
+ <g
+ style="display:inline;enable-background:new"
+ id="g7930-5"
+ transform="translate(-217.68591,907.85387)">
+ <g
+ id="g4412-0"
+ inkscape:label="forma-text-bold"
+ style="display:inline">
+ <g
+ sodipodi:insensitive="true"
+ inkscape:groupmode="layer"
+ id="g4414-87"
+ inkscape:label="baseplate"
+ style="display:none">
+ <rect
+ height="48"
+ id="rect4416-1"
+ inkscape:label="48x48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="48"
+ x="366"
+ y="110" />
+ <rect
+ height="32"
+ id="rect4418-3"
+ inkscape:label="32x32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="32"
+ x="373"
+ y="186" />
+ <rect
+ height="24"
+ id="rect4420-8"
+ inkscape:label="24x24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="24"
+ x="372"
+ y="236" />
+ <rect
+ height="22"
+ id="rect4422-4"
+ inkscape:label="22x22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="22"
+ x="373"
+ y="237" />
+ <rect
+ height="16"
+ id="rect4424-9"
+ inkscape:label="16x16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ width="16"
+ x="373"
+ y="279" />
+ <text
+ id="text4426-3"
+ inkscape:label="context"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ x="2.9707375"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4428-46"
+ sodipodi:role="line"
+ x="2.9707375"
+ y="72.513618">actions</tspan></text>
+ <text
+ id="text4430-3"
+ inkscape:label="icon-name"
+ sodipodi:linespacing="125%"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ x="63.970734"
+ xml:space="preserve"
+ y="72.513618"><tspan
+ id="tspan4432-6"
+ sodipodi:role="line"
+ x="63.970734"
+ y="72.513618">format-text-bold</tspan></text>
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="g4434-7"
+ inkscape:label="small sizes"
+ style="display:inline" />
+ </g>
+ <g
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-2);fill-opacity:1;stroke:url(#linearGradient9586-27);stroke-opacity:1;font-family:Sans"
+ id="text8779-3"
+ transform="translate(0,-0.61871844)" />
+ <g
+ transform="translate(246.1134,121.70809)"
+ style="display:inline;enable-background:new"
+ id="g22-0">
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g80-0" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g82-7" />
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-11"
+ transform="translate(-22.820441,-1022.7135)">
+ <g
+ transform="translate(4.2499998e-7,1.0000003)"
+ id="g6260">
+ <g
+ transform="matrix(1.0909091,0,0,1.0909091,-2.5454554,-93.851279)"
+ id="g26599">
+ <g
+ id="g26577"
+ transform="translate(7.5069445e-7,5.5000254)">
+ <g
+ transform="translate(-5.5096336e-8,0.91666524)"
+ id="g6454">
+ <g
+ style="display:inline;enable-background:new"
+ inkscape:label="Ebene 1"
+ id="layer1-9"
+ transform="matrix(0.91666666,0,0,0.61111111,49.659926,407.2079)">
+ <g
+ style="font-size:13.20734406px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Open Sans;-inkscape-font-specification:Open Sans"
+ id="text2998">
+ <g
+ id="g7758"
+ transform="translate(1,-1.0625)">
+ <g
+ id="g10867"
+ transform="matrix(0,1,-1,0,1051.4247,1029.4247)">
+ <rect
+ transform="matrix(0,1,-1,0,0,0)"
+ y="-20.117622"
+ x="1052.0537"
+ height="2.9999993"
+ width="24.000051"
+ id="rect10775"
+ style="opacity:0.25;fill:url(#radialGradient6462);fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <rect
+ transform="translate(27,2.9999841)"
+ style="fill:url(#linearGradient6464);fill-opacity:1;stroke:none"
+ id="rect3808"
+ width="22"
+ height="14.666641"
+ x="1.0000002"
+ y="1029.3622"
+ rx="0.91666669"
+ ry="0.91666669" />
+ </g>
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ id="rect3976"
+ d="m 28.916666,1034.1956 0,12.8333 20.166666,0 0,-12.8333 z m 0.916667,0.9166 18.333333,0 0,11 -18.333333,0 z"
+ style="opacity:0.4;fill:url(#linearGradient6295);fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0" />
+ <g
+ id="layer1-2"
+ inkscape:label="Layer 1"
+ transform="matrix(0.91666666,0,0,0.91666666,27.904483,1008.6339)" />
+ <path
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new"
+ d="m 31.666666,1039.6956 c -0.465514,0 -0.916667,0.4512 -0.916667,0.9167 l 0,3.6666 c 0,0.4655 0.451153,0.9167 0.916667,0.9167 l 14.666667,0 c 0.465513,0 0.916666,-0.4512 0.916666,-0.9167 l 0,-3.6666 c 0,-0.4655 -0.451153,-0.9167 -0.916666,-0.9167 z m 0,0.9167 14.666667,0 0,3.6666 -14.666667,0 z"
+ id="path14799"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="sssssssssccccc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none;display:inline;filter:url(#filter10665-8);enable-background:new"
+ id="path10659"
+ sodipodi:cx="19.5"
+ sodipodi:cy="18.5"
+ sodipodi:rx="4.5"
+ sodipodi:ry="3.5"
+ d="m 15.044544,18.008762 a 4.5,3.5 0 0 1 8.920512,0.05591 L 19.5,18.5 z"
+ transform="matrix(0.91666666,0,0,0.91666666,27.541666,1030.5289)"
+ sodipodi:start="3.2824114"
+ sodipodi:end="6.1584828" />
+ </g>
+ <path
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 28.916667,1038.7789 c -0.507839,0 -0.916667,0.4089 -0.916667,0.9167 l 0,12.8333 c 0,0.5079 0.408828,0.9167 0.916667,0.9167 l 20.166666,0 c 0.507839,0 0.916667,-0.4088 0.916667,-0.9167 l 0,-12.8333 c 0,-0.5078 -0.408828,-0.9167 -0.916667,-0.9167 l -20.166666,0 z m 0,0.9167 20.166666,0 0,12.8333 -20.166666,0 0,-12.8333 z"
+ id="rect26594" />
+ </g>
+ </g>
+ <g
+ transform="matrix(1.4666286,0,0,1.4666286,87.864797,1038.1532)"
+ id="g13457">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-7-3"
+ transform="matrix(0.68183588,0,0,0.68183588,-20.703808,-674.78112)">
+ <g
+ id="layer1-1-7"
+ inkscape:label="Ebene 1"
+ transform="translate(-33.607049,-15.848364)">
+ <g
+ transform="translate(-217.68591,907.85387)"
+ id="g7930-1"
+ style="display:inline;enable-background:new">
+ <g
+ style="display:inline"
+ inkscape:label="forma-text-bold"
+ id="g4412-3">
+ <g
+ style="display:none"
+ inkscape:label="baseplate"
+ id="g4414-8"
+ inkscape:groupmode="layer"
+ sodipodi:insensitive="true">
+ <rect
+ y="110"
+ x="366"
+ width="48"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="48x48"
+ id="rect4416-0"
+ height="48" />
+ <rect
+ y="186"
+ x="373"
+ width="32"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="32x32"
+ id="rect4418-7"
+ height="32" />
+ <rect
+ y="236"
+ x="372"
+ width="24"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="24x24"
+ id="rect4420-1"
+ height="24" />
+ <rect
+ y="237"
+ x="373"
+ width="22"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="22x22"
+ id="rect4422-2"
+ height="22" />
+ <rect
+ y="279"
+ x="373"
+ width="16"
+ style="fill:#eeeeec;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+ inkscape:label="16x16"
+ id="rect4424-7"
+ height="16" />
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="2.9707375"
+ style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Bitstream Vera Sans"
+ inkscape:label="context"
+ id="text4426-0"><tspan
+ y="72.513618"
+ x="2.9707375"
+ sodipodi:role="line"
+ id="tspan4428-4">actions</tspan></text>
+ <text
+ y="72.513618"
+ xml:space="preserve"
+ x="63.970734"
+ style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;enable-background:new;font-family:Droid Sans;-inkscape-font-specification:Droid Sans Bold"
+ sodipodi:linespacing="125%"
+ inkscape:label="icon-name"
+ id="text4430-9"><tspan
+ y="72.513618"
+ x="63.970734"
+ sodipodi:role="line"
+ id="tspan4432-8">format-text-bold</tspan></text>
+ </g>
+ <g
+ style="display:inline"
+ inkscape:label="small sizes"
+ id="g4434-6"
+ inkscape:groupmode="layer" />
+ </g>
+ <g
+ transform="translate(0,-0.61871844)"
+ id="text8779-6"
+ style="font-size:24.69196129px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient9584-5);fill-opacity:1;stroke:url(#linearGradient9586-98);stroke-width:1;stroke-opacity:1;font-family:Sans" />
+ <g
+ id="g22-2"
+ style="display:inline;enable-background:new"
+ transform="translate(246.1134,121.70809)">
+ <g
+ id="g80-7"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ style="display:inline"
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)" />
+ <g
+ id="g82-4"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ style="fill:#fce94f;stroke:none;display:inline"
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)" />
+ <g
+ transform="translate(-30.84139,-1043.7006)"
+ id="layer1-2-0"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(-1.202273,-11.879196)"
+ id="g4766-8">
+ <g
+ transform="translate(-12,1.6391277e-6)"
+ id="g8247">
+ <g
+ id="g9881"
+ transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,754.11184,279.86977)">
+ <rect
+ ry="1.5"
+ rx="1.5"
+ transform="translate(7.723222,1030.7284)"
+ y="15.000002"
+ x="30"
+ height="9"
+ width="3"
+ id="rect8239"
+ style="fill:#a70000;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#a70000;fill-opacity:1;stroke:none"
+ id="rect8241"
+ width="3"
+ height="9"
+ x="1048.7284"
+ y="-43.723221"
+ transform="matrix(0,1,-1,0,0,0)"
+ rx="1.5"
+ ry="1.5" />
+ <path
+ sodipodi:nodetypes="ccccccccccccc"
+ inkscape:connector-curvature="0"
+ id="path8243"
+ d="m 35.723222,1050.7284 3,0 0,3 1,0 0,-3 3,0 0,-1 -3,0 0,-3 -1,0 0,3 -3,0 z"
+ style="fill:url(#linearGradient9886);fill-opacity:1;stroke:none" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ sodipodi:nodetypes="sssssssssccccc"
+ inkscape:connector-curvature="0"
+ id="rect14249"
+ d="m 9.179559,20.648604 c -0.507833,0 -1,0.492167 -1,1 l 0,1 c 0,0.507833 0.4921756,1.002958 1,1 l 16.09375,-0.09375 c 0.507824,-0.003 0.90625,-0.398417 0.90625,-0.90625 l 0,-1 c 0,-0.507833 -0.492167,-1 -1,-1 z m 0,1 16,0 0,1 -16,0 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none;display:inline;enable-background:new" />
+ </g>
+ </g>
</g>
</g>
</g>
@@ -712,4 +16606,2281 @@ AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
/2gAAQADAAEAAgAG&quot;)}
</style>
+ <style
+ type="text/css"
+ id="style1470-16">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-91">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-0"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-3"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-4"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-73"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8-4">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-5">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-14"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-6-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-4-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-96"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-03"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-53">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_designerdialog.svg b/icon-themes/tango_testing/cmd/lc_designerdialog.svg
index 8587443ae477..b4c56ae12a08 100644
--- a/icon-themes/tango_testing/cmd/lc_designerdialog.svg
+++ b/icon-themes/tango_testing/cmd/lc_designerdialog.svg
@@ -15,8 +15,8 @@
id="svg2"
version="1.1"
inkscape:version="0.48.3.1 r9886"
- sodipodi:docname="lc_text.svg"
- inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_text.png"
+ sodipodi:docname="lc_designerdialog.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_text.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
@@ -7434,11 +7434,11 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="1"
- inkscape:cx="13.500903"
- inkscape:cy="1.2720939"
+ inkscape:zoom="16"
+ inkscape:cx="10.1895"
+ inkscape:cy="7.2211409"
inkscape:document-units="px"
- inkscape:current-layer="g5934"
+ inkscape:current-layer="layer1"
showgrid="false"
inkscape:snap-global="false"
showborder="true"
@@ -7482,12 +7482,6 @@
id="g7670"
style="font-size:30.72760201px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:url(#linearGradient7714);fill-opacity:1;stroke:none;font-family:Nimbus Roman No9 L;-inkscape-font-specification:Nimbus Roman No9 L" />
<path
- sodipodi:nodetypes="ccccccc"
- inkscape:connector-curvature="0"
- id="path7672"
- d="m -67.375,1152.581 0,1 c 0,0 11.848818,0.125 15.6875,0.125 0.752589,0.9368 0.96875,4.0937 0.96875,4.0937 l 0.75,0 c -0.07722,-1.7397 -0.15625,-3.4777 -0.15625,-5.2187 z"
- style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none" />
- <path
transform="matrix(0.99280831,0,0,1.0072438,0.5625,0)"
d="m -68.96875,1145.3438 a 0.90052722,0.90052722 0 0 0 -0.8125,0.9062 l 0,4.375 a 0.90052722,0.90052722 0 0 0 0.90625,0.9062 l 0.9375,0 a 0.90052722,0.90052722 0 0 0 0.90625,-0.7812 l 0.28125,-2.2188 c 0.286799,-0.035 0.479329,-0.061 0.96875,-0.094 0.739629,-0.05 1.702968,-0.089 2.78125,-0.094 l 0,14.5312 -2.15625,0.2812 a 0.90052722,0.90052722 0 0 0 -0.78125,0.9063 l 0,0.75 a 0.90052722,0.90052722 0 0 0 0.90625,0.9063 l 8.5625,0 a 0.90052722,0.90052722 0 0 0 0.90625,-0.9063 l 0,-0.75 a 0.90052722,0.90052722 0 0 0 -0.78125,-0.9063 l -2.15625,-0.2812 0,-14.5 c 0.432503,0 0.863048,0.016 1.28125,0.031 0.496408,0.01 0.980441,0.035 1.40625,0.063 a 0.90052722,0.90052722 0 0 0 0.03125,0 c 0.432333,0.018 0.799059,0.037 1.09375,0.062 l 0.28125,2.2188 a 0.90052722,0.90052722 0 0 0 0.90625,0.7812 l 0.9375,0 a 0.90052722,0.90052722 0 0 0 0.90625,-0.9062 l 0,-4.375 a 0.90052722,0.90052722 0 0 0 -0.90625,-0.9062 l -16.3125,0 a 0.90052722,0.90052722 0 0 0 -0.09375,0 z"
id="path7698"
diff --git a/icon-themes/tango_testing/cmd/lc_diagramdata.png b/icon-themes/tango_testing/cmd/lc_diagramdata.png
new file mode 100644
index 000000000000..41469935671d
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_diagramdata.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_diagramtype.png b/icon-themes/tango_testing/cmd/lc_diagramtype.png
new file mode 100644
index 000000000000..5123fc7f680c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_diagramtype.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_diagramtype.svg b/icon-themes/tango_testing/cmd/lc_diagramtype.svg
new file mode 100644
index 000000000000..e38f26b5443d
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_diagramtype.svg
@@ -0,0 +1,1019 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg2992"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_diagramtype.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_diagramtype.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs2994">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3838">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3840" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3842" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="16.50366"
+ x2="11.13939"
+ y1="2.9363194"
+ x1="11.859842"
+ id="linearGradient4100"
+ xlink:href="#linearGradient4266"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="8.1334372"
+ x2="16.588043"
+ y1="8.1334372"
+ x1="-0.41297555"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4086"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="8.1334372"
+ x2="16.588043"
+ y1="8.1334372"
+ x1="-0.41297555"
+ id="linearGradient4082"
+ xlink:href="#linearGradient4088"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="16.076845"
+ x2="6.5697818"
+ y1="0.69840777"
+ x1="8.3684635"
+ id="linearGradient4068"
+ xlink:href="#linearGradient4258"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ id="stop6979-4-5-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43" />
+ <stop
+ id="stop6985-44-1-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8572"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient6427-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8556"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8702363e-7,3.6935782,-2.0071418,-2.623971e-7,484.82867,188.8817)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8558"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17535155)" />
+ <linearGradient
+ id="linearGradient4157"
+ inkscape:collect="always">
+ <stop
+ id="stop4159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8560"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.870241e-7,3.6935775,-2.0071438,-2.6239705e-7,484.82905,188.88459)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8562"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientTransform="matrix(1.0035718,0,0,0.99927966,-0.33510308,0.17828314)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8568"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8702364e-7,3.6935782,-2.0071419,-2.623971e-7,484.82869,188.87882)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8570"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17247104)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8588"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,141.96976,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8590"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(0.18066923,0,0,1,54.627495,0)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11614"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient11616"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient3197"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,192.84632)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient3199"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,4.003979)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient3203"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,196.8503)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient3205"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,8.007958)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8572-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient6427-7-3"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-1"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-2"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient11632"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8598"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-1"
+ id="linearGradient8600"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)" />
+ <linearGradient
+ id="linearGradient4157-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8606"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-1"
+ id="linearGradient8608"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11681"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11683"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient3326"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19171"
+ id="linearGradient5339"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2014178,0,0,1.2168276,-149.58638,71.496922)"
+ x1="762.9682"
+ y1="-330.68475"
+ x2="750.77057"
+ y2="-315.9939" />
+ <linearGradient
+ id="linearGradient19171">
+ <stop
+ id="stop19173"
+ offset="0"
+ style="stop-color:#bc0e0e;stop-opacity:1;" />
+ <stop
+ id="stop19175"
+ offset="1"
+ style="stop-color:#830a0a;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient5341"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6373-6-1-3-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6375-5-2-6-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6377-0-1-2-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient5343"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient5443"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient5445"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient11751"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient3401"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="translate(-18.915107,-19.26866)"
+ gradientUnits="userSpaceOnUse"
+ y2="14.337278"
+ x2="7.9375"
+ y1="2.2435279"
+ x1="10.761048"
+ id="linearGradient4272"
+ xlink:href="#linearGradient4266"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-18.915107,-19.26866)"
+ gradientUnits="userSpaceOnUse"
+ y2="11.697508"
+ x2="7.2257013"
+ y1="4.8850074"
+ x1="8.4636116"
+ id="linearGradient4264"
+ xlink:href="#linearGradient4258"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4258">
+ <stop
+ id="stop4260"
+ offset="0"
+ style="stop-color:#ef2929;stop-opacity:1;" />
+ <stop
+ id="stop4262"
+ offset="1"
+ style="stop-color:#cc0000;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4266">
+ <stop
+ id="stop4268"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4270"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4088">
+ <stop
+ id="stop4090"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4092"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3838"
+ id="linearGradient3844"
+ x1="2"
+ y1="7.00062"
+ x2="9.011039"
+ y2="7.00062"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3838"
+ id="linearGradient3846"
+ x1="2"
+ y1="2.00062"
+ x2="15.011039"
+ y2="2.00062"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3838"
+ id="linearGradient3848"
+ x1="2"
+ y1="12.0006"
+ x2="7.011039"
+ y2="12.0006"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1"
+ inkscape:cx="4.1494663"
+ inkscape:cy="8.0669793"
+ inkscape:current-layer="g4584"
+ showgrid="false"
+ inkscape:grid-bbox="true"
+ inkscape:document-units="px"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3011"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata2997">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(0,8)">
+ <g
+ inkscape:label="Layer 1"
+ id="layer1-77"
+ transform="translate(8.0055243,-7.9913596)">
+ <path
+ transform="matrix(1.0003994,0,0,0.98351999,-0.08962028,-0.00135111)"
+ d="m 16.086679,8.1334372 c 0,4.4910298 -3.581339,8.1317278 -7.999145,8.1317278 -4.4178061,0 -7.99914556,-3.640698 -7.99914556,-8.1317278 0,-4.4910295 3.58133946,-8.13172822 7.99914556,-8.13172822 4.417806,0 7.999145,3.64069872 7.999145,8.13172822 z"
+ sodipodi:ry="8.1317282"
+ sodipodi:rx="7.9991455"
+ sodipodi:cy="8.1334372"
+ sodipodi:cx="8.087534"
+ id="path2999"
+ style="fill:url(#linearGradient4068);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:end="1.3353494"
+ sodipodi:start="0"
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient4100);fill-opacity:1;stroke:none"
+ id="path4070"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="m 16.086679,8.1334372 c 0,3.7603068 -2.53618,7.0301798 -6.1331235,7.9073748 L 8.087534,8.1334372 z"
+ transform="matrix(1.005745,0,0,0.98351999,-0.17561281,-0.00135111)" />
+ <path
+ transform="matrix(1.005745,0,0,0.98351999,-0.17561281,-0.00135111)"
+ d="M 9.971811,16.036337 C 8.3128696,16.445097 6.5688027,16.303659 4.9945908,15.632701 L 8.087534,8.1334372 z"
+ sodipodi:ry="8.1317282"
+ sodipodi:rx="7.9991455"
+ sodipodi:cy="8.1334372"
+ sodipodi:cx="8.087534"
+ id="path4072"
+ style="fill:#7bbf2a;fill-opacity:1;stroke:none"
+ sodipodi:type="arc"
+ sodipodi:start="1.3330018"
+ sodipodi:end="1.9678026" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient4082);stroke-width:1.07464027;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path4074"
+ sodipodi:cx="8.087534"
+ sodipodi:cy="8.1334372"
+ sodipodi:rx="7.9991455"
+ sodipodi:ry="8.1317282"
+ d="m 16.086679,8.1334372 c 0,4.4910298 -3.581339,8.1317278 -7.999145,8.1317278 -4.4178061,0 -7.99914556,-3.640698 -7.99914556,-8.1317278 0,-4.4910295 3.58133946,-8.13172822 7.99914556,-8.13172822 4.417806,0 7.999145,3.64069872 7.999145,8.13172822 z"
+ transform="matrix(0,-0.93938772,-0.92178343,0,15.50137,15.597765)" />
+ <path
+ transform="matrix(0,0.81794424,0.79903723,0,1.4955566,1.4235182)"
+ d="m 16.086679,8.1334372 c 0,4.4910298 -3.581339,8.1317278 -7.999145,8.1317278 -4.4178061,0 -7.99914556,-3.640698 -7.99914556,-8.1317278 0,-4.4910295 3.58133946,-8.13172822 7.99914556,-8.13172822 4.417806,0 7.999145,3.64069872 7.999145,8.13172822 z"
+ sodipodi:ry="8.1317282"
+ sodipodi:rx="7.9991455"
+ sodipodi:cy="8.1334372"
+ sodipodi:cx="8.087534"
+ id="path4084"
+ style="opacity:0.4;fill:none;stroke:url(#linearGradient4086);stroke-width:1.23695719;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc" />
+ </g>
+ <g
+ inkscape:label="Layer 1"
+ id="layer1-3"
+ transform="translate(-0.0012353,0.011039)">
+ <g
+ transform="matrix(0,-1,1,0,0.0012353,17.988961)"
+ id="g4584">
+ <rect
+ style="fill:#8ae234;fill-opacity:1;stroke:none"
+ id="rect4212"
+ width="5.0110388"
+ height="4.0012355"
+ x="2.011039"
+ y="10" />
+ <rect
+ y="0.0012353"
+ x="2.011039"
+ height="4"
+ width="13"
+ id="rect4214"
+ style="fill:#ef2929;fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:#729fcf;fill-opacity:1;stroke:none"
+ id="rect4216"
+ width="7"
+ height="4"
+ x="2.0110393"
+ y="5.0012355" />
+ <path
+ style="opacity:0.40000000000000002;fill:url(#linearGradient3846);fill-opacity:1;stroke:none"
+ d="m 2,0 0,4 13.011039,0.00124 0,-4 z m 1,1 11.011039,0.00124 0,2 L 3,3 z"
+ id="rect4218"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ id="path4223"
+ d="m 2,5 0,4 7.011039,0.00124 0,-4 z m 1,1 5.011039,0.00124 0,2 L 3,8 z"
+ style="opacity:0.40000000000000002;fill:url(#linearGradient3844);fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.40000000000000002;fill:url(#linearGradient3848);fill-opacity:1;stroke:none"
+ d="m 2,10 0,4 5.011039,0.0012 0,-4 z m 1,1 3.011039,0.0012 0,2 L 3,13 z"
+ id="path4225" />
+ </g>
+ </g>
+ </g>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_drawcaption.png b/icon-themes/tango_testing/cmd/lc_drawcaption.png
new file mode 100644
index 000000000000..0bf66b99d245
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_drawcaption.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_drawcaption.svg b/icon-themes/tango_testing/cmd/lc_drawcaption.svg
new file mode 100644
index 000000000000..dbe833dde1f9
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_drawcaption.svg
@@ -0,0 +1,230 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_drawcaption.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_drawcaption.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3774"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782"
+ id="linearGradient3788"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3902"
+ x1="12"
+ y1="3"
+ x2="12"
+ y2="20"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="718"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="8"
+ inkscape:cx="17.432253"
+ inkscape:cy="17.408832"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg2">
+ <inkscape:grid
+ type="xygrid"
+ id="grid2987" />
+ </sodipodi:namedview>
+ <path
+ style="fill:url(#linearGradient3902);fill-opacity:1;stroke:none"
+ d="M 12,3 C 5.9248678,3 1,6.8055796 1,11.5 1,13.825782 2.1975919,15.934009 4.15625,17.46875 4.2142637,19.371148 2.3088147,20.059792 1,21 3.3831847,20.902942 6.1996495,20.435123 8.53125,19.5625 9.6211313,19.841938 10.788753,20 12,20 18.075132,20 23,16.19442 23,11.5 23,6.8055796 18.075132,3 12,3 z"
+ id="path2989"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="sscccsss" />
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <path
+ sodipodi:nodetypes="sscccsss"
+ inkscape:connector-curvature="0"
+ id="path3904"
+ d="m 12.114407,3.4986791 c -5.7617304,0 -10.5850786,3.5512064 -10.5850786,7.9788829 0,2.54956 1.2629296,4.309184 3.1205453,5.756719 0.055021,1.794301 -0.4555204,2.113306 -2.0019012,3.178056 2.260242,-0.09154 3.634802,-0.532779 5.8461208,-1.355819 1.033657,0.26356 2.4207047,0.438064 3.5694667,0.438064 5.761731,0 10.432537,-3.589343 10.432537,-8.01702 0,-4.4276765 -4.619959,-7.9788829 -10.38169,-7.9788829 z"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:0.99999994;stroke-opacity:1" />
+ <path
+ style="opacity:0.40000000000000002;fill:none;stroke:#ffffff;stroke-width:1;stroke-opacity:1"
+ d="m 12.101941,4.5024703 c -5.3811077,0.07304 -9.6276273,3.2017327 -9.5526769,6.9901257 0.047523,2.402089 1.4337254,4.02994 3.091568,5.242209 0.048276,1.571948 0.020164,1.785131 -0.3864797,2.364381 1.4086471,-0.256967 1.2225908,-0.444659 3.1628361,-1.05522 0.9069467,0.230899 2.8974305,0.460385 3.9053035,0.472166 4.470908,0.05226 9.051839,-3.079357 9.153669,-7.023536 0.09994,-3.8709103 -4.375738,-7.0579726 -9.37422,-6.9901257 z"
+ id="path3906"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="sscccsss" />
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_drawselect.png b/icon-themes/tango_testing/cmd/lc_drawselect.png
index 0e5a2d980eda..3cdbce2bade2 100644
--- a/icon-themes/tango_testing/cmd/lc_drawselect.png
+++ b/icon-themes/tango_testing/cmd/lc_drawselect.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_drawselect.svg b/icon-themes/tango_testing/cmd/lc_drawselect.svg
index 129d3b588165..e999e942cc8d 100644
--- a/icon-themes/tango_testing/cmd/lc_drawselect.svg
+++ b/icon-themes/tango_testing/cmd/lc_drawselect.svg
@@ -16,7 +16,7 @@
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="lc_drawselect.svg"
- inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_drawselect.png"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_selectobject.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
@@ -7357,27 +7357,6 @@
</linearGradient>
<linearGradient
inkscape:collect="always"
- xlink:href="#linearGradient7113-62-7-0-5"
- id="linearGradient6438"
- x1="6.0039101"
- y1="11.882812"
- x2="18.02383"
- y2="11.882812"
- gradientUnits="userSpaceOnUse" />
- <filter
- inkscape:collect="always"
- id="filter6442"
- x="-0.17341254"
- width="1.3468251"
- y="-0.11313923"
- height="1.2262785">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.79624677"
- id="feGaussianBlur6444" />
- </filter>
- <linearGradient
- inkscape:collect="always"
xlink:href="#linearGradient6750"
id="linearGradient6458"
x1="-79"
@@ -7385,6 +7364,59 @@
x2="88"
y2="8.5"
gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="7.8125"
+ x2="15.875"
+ y1="7.8125"
+ x1="-0.125"
+ gradientTransform="translate(-1048.4872,19.312474)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient10198"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient10885">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop10887" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop10889" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-0.00916403,1025.2269)"
+ inkscape:collect="always"
+ xlink:href="#linearGradient10885"
+ id="linearGradient10891"
+ x1="2.50455"
+ y1="0.52668285"
+ x2="19.567051"
+ y2="21.089184"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4942"
+ x1="9"
+ y1="2"
+ x2="9"
+ y2="20"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-0.03125,-0.015625)" />
</defs>
<sodipodi:namedview
id="base"
@@ -7393,19 +7425,19 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
- inkscape:zoom="2.8284271"
- inkscape:cx="-8.0832495"
- inkscape:cy="-8.6437415"
+ inkscape:zoom="1"
+ inkscape:cx="13.031385"
+ inkscape:cy="6.2672491"
inkscape:document-units="px"
- inkscape:current-layer="layer4"
+ inkscape:current-layer="g6446"
showgrid="false"
inkscape:snap-global="false"
showborder="true"
- inkscape:window-width="1366"
- inkscape:window-height="718"
- inkscape:window-x="0"
- inkscape:window-y="28"
- inkscape:window-maximized="1"
+ inkscape:window-width="750"
+ inkscape:window-height="421"
+ inkscape:window-x="345"
+ inkscape:window-y="291"
+ inkscape:window-maximized="0"
borderlayer="true">
<inkscape:grid
type="xygrid"
@@ -7442,2805 +7474,7 @@
y="564.36224"
x="-718.97119"
id="image6426"
- xlink:href="data:image/png;base64,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
-eWXFFmRyv5OPG4cYdB90UAcR9L/eH7GWKUcveddJB3UyQ2siQpbb78yzj5xcQinj/tVPPL8LkErj
-OwOqb17xGgDSxMm9Dy295+677r37rgceeer5jVajIcN9j5nZGQTtc46bAURi02uDQRyLoZFya0tb
-e3sn56HafEpSEMhqtYrIcrm8pQHjhc4D928hqq1bta6McuD5+56pMAynze6OqxgccMyxs9tZZYRN
-OGTO+FypUOjs7Bo/65TjpgBBbevGkSq1HnjxD2/6x5mFzb/4h/M+cfXqShTHnAeVanVoaKhSrdSj
-WBAQIvMWGzlytRkelFcrBQAFAS8W8sVCMQi4lCKOVX53MpYRpsaVAACBgTupq0ffLrapRUPUWwM4
-mHv1CBgASVmv10FtbwYtKZz1mXT1wARtEVCCSRCoMgN4t+75WtyackoO2+OyluOVDDHev7r2T5PF
-eWCqFc5tcAERlXkricxWalQnDBQ3qdMWoM/Y84AHIecB52oymmx/Opufm6TOfnHSAEgHQayoMr+Q
-m72GahpDRERG+qJEaeYjuNV0l6XOhh4M2Y24lp44VAihMdrUYNn9FOqxn6cupfO0dUYm3OKEJ3nV
-J3pk5FWCGJYDRzFJVLnk6gE1l3qmPtNYcxfbYO/t5gdX0NAbPLTRGDCoV+vtIiiRuemO7GCqex+A
-mSsA0BR0dAdilqtTzJ2kjjMNfNTREszbXW+sX3v827IHeKPnbBe089jayq75WIidO3cqn5+IhBAA
-0NHRMW7cuPHjx48bN667uzsMw8HBwU2bNm3bts0eJTD/olerJzScTa6NR5sElHOuhEMcRbVa7QdX
-XT1pwoR/++xnSsUiSUGkMoMiA253jqCxlxgicgbellQtDQijYRwYGthaWd+UWZoCIptYmpYv5loP
-HrQSjAFwxgKVbhSRA3IGAUP9GZExbxeAk2IIySP8CU6xGYuU3QJmT6ZC3xzmICIECjmfN2PGuWec
-purhnJ+/+Mx5Bx1UyhdLuUIxzOUYyzMeMp5HzAGGiEEiQagiPgFSIygdcfyRC+I4fnHNas74zP32
-E0Ku27QJGZswdqyUsndggHGORs5rTjbz0KsKiCiKovsffPAzV1551Te+seDQQ4894oivfeHf3vuh
-yz/2+X/54Te+sWDOoUfOnfutL/37P37+X+wZAaRmtokzXYxmIgCAOIrvf+ihkPNLzn5neuoAAEE+
-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
-7xWI6r0vPPlqOOfIWR38zaL3+8TD9PTMD180r9hvUfqjte/T4Xd8yxvo3wUDR4GL5zcy/xuEBr5t
-zpN7x0aMrHtw+fphNmXBcYfsP7u7ONiMh/fMML8jO/1OU++PBDIefu3X3/3F6joAsKA0+70feef0
-5qONPB8CQPDn14cMMsggg/9bgIitra2bN28OgmC//fZbtGhRFEWjFd67TF68ePHEiRPjOF66dOnS
-pUullJMnT168ePHvFecMMsgggz9XIKhufXZ1mR1w4rxOLTLxD5tApUmLfzpAAHyTrxBVtz67tsoP
-XDSvy+GPvGX/M//+0x8+fVreVfjGqvYq7G5rrOT3AETVLY/du+zRV4ek//gPPNBN8dA9nduBTVH6
-g7f/OzSafKvpQL+ZugwF/kfMn+Lb5jz5BrChaHhYMnbAaWefdeoRXcH/pGtvlp1+h6n3xwIWtBy4
-5H0nTkbkuaknXbRk/99zRC6DDDLIIIM3C4hYKpXa29tbW1unTp0ax/EeCu89HSAinnXWWUuXLt29
-ezcATJky5eSTT46iKEsimEEGGfwlAFFl67OrK8HMhftyWQYAoNqmZT+9feWmcnGfo89590kHlBiA
-LG987PY7H1ndU+Md0xecsvhts9ppYNU137kzOubtU9c/9PS2WsvUo059a+m5O5e/OojdB5/6niWH
-j+GyvPHR2+94ZHVvPejc7y2nLj5xZjtLtijiwXXLb71n1eu7yiLsPGDhWUveOr1opC8REVFDJQfm
-ttx39U9XDE5Y9DeXLajc+8NrnhqefNLfXHpMd6WxKjmw6prv3Fk9/NhJm1a8uDNq2feYJeedeECJ
-kazuWHnrjfetGSxMmXtwrFuT8cjrj95xx6Or+6Kwa7+3nHLWopmton/Vtd+7Wx5/xrS1968cPOh9
-l581NahseW5tNZh5zFQuhi2qot7z8Nc+f3fP1DM/cvHcPAEAyfKG+//7tlVbojGHnPbus+Z3czGy
-8bE77nx09a560Dl9wclnnTSrgwOQtBVitefhH+pK5rVCPLBm2e33PLVud8TbJs09+bwzZrdU0jW0
-yf5V137v7tr8YyZuevLFXXHL1KNVH90Qi8rmh66/YdWwgKd/8pVnu495/2ULAIBkZeNvf3r7U5sr
-7hUSo1EgPvqkKeseXrWj3jr1LacsLD5314OvDbIxs0999+LDunnjW21U3britlsfemVXnRW79zvs
-tCUn7t/CTE9nHD2ltnH5LzyULvub41teX37bPc+83lsWua4DF561+NhpBTFK1ygeWv/Qb257bP2g
-AABAHkxb8tH3zc6Xm5F3dDp84G9PHFvbM+bTDzv1rGNyT/8yQb3Dtl6tx+jQ/O43g+EhJXBjzaWs
-J8f3XSdPfvXneyR1F2vGt0QeC/k8SUQNLHRIO3MEGVp77w33bycBq3/yz1fsd+4/nD/+pSQP23rs
-ZxmnR3bRVGrOThQPvZYe0xKONvWSY7do+sA93//Zs3j4JZef2r351u9e90JUOvTCD581Yec9P7z2
-aVxw6d+dOjlUnUiM1/xTTp+1/uc/fbJ8wDkfec+sYm3TXd+/9tn4oHMuPWL7Un84pp/90Qtnl/YU
-gihOOmhqy4M94dSDJudFfbjvqZ9//97a/KMmbFr50i7Ruu/RS961aP8iWMrIaHjjwz+/5rG+cW95
-70XH8GfuuO3h1bvqrDhm/8NPW7xoelHsXrP8jnufWj8QBW2T5538rlNm0PoHb7/3mY29FZnvnrHw
-HWcu3LcQ9T/1s+/fWz70hJn9j6/cHI+dc8r5ZxzWHcRD6x+9867H1vRHua4D3nLKmSfMaPuTx04z
-yCCDDP7IQESlUkl9Xr9+vRBi+vTpoxXeu5CUUpbL5bwBIhocHJTyj7gqkUEGGWTwJwOi8uan19Zz
-sxbuG0hST7Y9vqFz3hH78MqWJ+59ulcAyeE1d/zygTW9HfOOPWp6tGHFr294vEcgzwdEux57aHDW
-KW+fkRvZ9PjN1z/XcexpR46J+1++/8FNNTny6l03LFszPO3k884+PNzw2M23vTgkUy0iK3S15sbN
-O+XsdxzRsfu1h+54oicR1aUmlYzk9z/zore2087HfrvyifufHmKTzrj4bZODplUpJPuffrIy+/RT
-ZxfLm1WPZDzw4l33rBmgsbPnjO15bodqSwyvvfvG5WvL005+11nz+frHbrnjxSECnguk3L7s9hU7
-i5OnTW5lJMqbnllbz806ZqqmmIKG7dAkacczPePnzRkT9b60dOkrg9Hw6jtvWLamv2PewiOn1Tes
-uOnGJ3YJAL9C8iqhaOD52256fP1g25xj33rEtK7u8S3UWEOPVBj2PfNUZfZppxxcKG9+4r5VfcIj
-IiJv22fm5BBZOO2kc99z9hFjA4XethUbO+YePpmZVygenQI9jz8yNOvktx0YDm984pYbXuhYeOoR
-3VHvK/c/uLna5K3BeHjNffev7svPP2PJaUfu2z5mTIl5PV24b5hGibN8V1tu/PyTl5xxeFv/aw/d
-sWJXjM27RrK29eHbHt2Ih7/3b5ccGCBvmX3OObOLojl590CHbtgr5h3dY1vCNPWSO+TfMIYl9Mea
-i4bxbeV7JXUTvoUkC/k82cBCE1oTe/UxP27GEQe3IuNjFy654JTp+b1v6SfRbGSbshNAkzFtPvXi
-hrFbMTjusP1zVN6+Y6Q+vG1HlbVgrWf7UL3cs3UICwccNinXFJ+OseM6pxx1ZLeUW9f01Cke2LBx
-hOUOOrL4lBqOv158gB6Og/fo/wNQVK0KAABZq0QEyPOBFP3PrqrNPvXkWfmRzSvuf8abZSSHX19+
-86N9+QPf+bdnTo9fvf+3a/sL809ffNpb9u3oHlOEaPfzt9/8+OtD7XMWvvWIaV1d41sDVuhqLUyY
-f/LiU+e39r368F1P7hKAPB9KOfTCyvLMk47bl3a9dO/S1YP1wbVLf/3Qa9Xpb3/nmXPZusd/c8dL
-w5mNmkEGGfzfhziOH3744e8a+OlPf7rYwJIlS2bNmrWHd/e+C6BarT722GP1en3cuHFSyoGBgYce
-emjhwoXFYvH33I8MMsgggz83IDmy8enX6vlDjpmEQi32Ietc9IFLzuzezNZ865GhXSNCjom3Pfda
-jXWccMlFiydWZ/R+7pp1L6zuXzCPABDHnHDuqW9t37T9kVdXRgefc86iA8qlZ5/89dah4VpZPLO2
-hl0nLT5hXle9+PzKn73+4vbqnJa836KEYMLbL788qFUqu+RTT93W2zsiaIxbWaPq9sZKKnPax538
-niOe/uHKex9ENv7k9y4sVsoRjVoV4phF551+bMe2/sdfVj3qqu1Yuw151wnvv/TMcUP77vrCTduB
-ZGXbc2vrvPukJSfM76gWX3zq/218eXv1oPEEwHj7kR/8l0tnh8O7dvb2vf7Ma1FhztETDcUAGpZK
-iQiQ8fEnX3zBotZN9KXvPLl5bc9w+MJrdd51wqUXnTW+PKPv8z9b/8Lq/rd0d5SbVihFdfvqTZJ3
-HnfZJWdPDjmPd2/f8kJDDWv6DptDgIyPXXT+6ce2bu1/4uVHh3eNCNne++zDq3ZGgEH7AUcdM+Pg
-yaVlG+Wkg+fN3UcOD+wiAMa7F33gktM7NrG133l8eNeIkJ310SiAjI894dxTj23dtP3RV58WB599
-zqL9h4vPPnXL9uGhWqXe+FZtv0KJA1R7B3LHnXrRKcXh3oG6jF1PJXb7KNHISA0mvv3yy4NqeaRH
-PPX0Xbv7RgR1UrOuUUd9qGcI2cHzZkzqLI/H9UPFMa1MDG9tRt4xY5w3izm/0SlysOfFN4L5oGhC
-veRAvxEMOVHsUUA0ju/Onl17IXW52sC3QOQTds8sNNCzu+aHrfJjZh0ybdnSl6pjZs6bsy8NDVRH
-52fzmafps3uEmrETjWGYT49pLIvNpl61YexeXDM095Ap8OLmdT1DxY27Ww5ZNP3V5Rt2DXWt62Fs
-v0O6UJKOWDbiU5s9v/uBZRvX7qy0b1/by8J5R3SN3K+Ho31kPG4YKo5p4URCUam+67lH1EzpOPCo
-I/drYaanusuaAATIg3GLzjt9YWlL/4rVjw/1jgjqIiIAEtWNy29fVW4/4tKLDuPl3VgoMoJq/1Dh
-+FMuPKUw3NPXt2P1Zgq6jnv/JUvMQNQLk0/+u78LqiPDO8SqZ5YO9I0I6lCtTDxpyduOKszuX/Xd
-J7au7RkMn3s14t0nLV40v61ceHHVLze+vL16yAGZjZpBBhn8H4cgCE466aSOjo4XXngBAMIw7O3t
-faPv7rXECy+8gIhjx45duHAhADz66KNDQ0MvvvjiggUL/idIZ5BBBhn8+QPRyOur1seFeUdNMCY1
-ALSPEf29fdUwB1AHDkBxtRwBtLZH/X19Me8sAFSGjCfR0iGGBgZqPAAI23FkYLAKDAAIKa5UIpJ9
-9//HZ+8HAABktWosKPZblNWtD//mx0+s3TFUE5IQA+CJtbnmlUhZFxMXLuhY+eAgTjnu8NZKFAPs
-qaqWDjE4MFDlAUAVOACJelUCtbTX+/v66vkSAhBIUalEMt5139c/e59qiteqMQEAIo47oG1gyzYJ
-FJc3PLNeFOcfNd6jWHNAKJVqu/ti0V4E6KtEtVo5Bmppq/f39tV5Rx6gMlQVIhylQhK1qgBq7Yh2
-9/YiAJCMq401qIFAaGmPBwcGazwAqAMnGQ2ueXzFGoGMjykdevgUIVWVQ0MjIalOQXt33N/XXwtz
-AGU10KNR4P9n77zjoyj6Bj6ze7fXS3LphYSQACGVKr0jAgrYaOqj+Nix9/KIDR9F5X3sPurD8zwq
-FlCKjSI19F4CBFII6b1cv9syM+8fm4T03CURfXS+fMjnbm9nfmVmd2d+UxZAoDMih93OswoIOCPj
-sts8gAUQEIjFtqkErE27btGoz77ev2/NWPw7OgAAIABJREFU+we2J82af01aAGnuOow9fHOVkKd8
-z/efHs6tkouP5ZqKr7VpADCqwBAdKanJKawMv2gHwBjMIUTadQ4GoNmANhabCXUrUDv2tqN5qlni
-W3uvVUH7pCGAqJkHcJvyBaQpt45c3bbeAgAI6qhOthXRCiR6PBIBABDB6XCrOq/PsnYKfWJr/xg6
-qE7IU9KmTDu49NqWnZNXhiSGkYuVFwvV1Th4Uky8VdqVX1RQKcGwQSFK0uittvqkBRiS0sw7My7k
-lweVVDJcyrAwLWgsjrCCpuJo3EdRtGUfPJyLIMMG61KHNoYA2jWeaI2S3W73siwAYlPNIgiXHj4P
-WWW4mXM5JVZpSLx24cgvvjmwd837B7cnz7xxRiLL8wgCnUlqKmvkLs1Y/+nhvConjzBhFKpL9yui
-UvIOhyho1QBYvYLg9YpIrN761t+2yhYreS/C9K3XFArljw7GuLa2tqqqSp7/r1T68d6VrkMAI0eO
-PHPmTFpamryp4KhRozIzM5OTkzvfY4BCoVD+9yHEUXCyAGmHXREMm82XYlp2FiBUmcwcKHVUOSSi
-9dbXeAEICdKzwAoAAAwhADSuiCVY/g8AAIzaaFBCRj/qttvHBSsAAIBRqFhSf/qSRCzZTm/85UyF
-afgtT14VcOyjd7fVg9ai28lEAZFUc2jDPhsAgJRs/vlczOwEDeosK6ZVtw1yOi0EwFXrRkDlrncR
-eR6/yaBkWMOo2xaPDWpSGFnlJKKIgAIS5Lx4qgjrho0Iau6xDt1b5ZDiDY4qFwCcUas3mZWgzFHt
-lIDaW1fLA2Cy6EiHGULOqGcBcNY4EdDL+qjMbXPQs6C+rY1QYUi5/6PJGggAEa3lpVXFcsejhYRW
-BQ2gqhMPMIQAAFsXNASAVbeTSgGxIvHGp9+cnvnDpyt3ntt1YMjA6cbWljapJNeErWerzcNvfuJK
-47GP3t9p77j4IMOFT7su6cznu//7EWSUURPnDg1gkdiOc4J0bSe0N/NDu/a20Xxo4owQ0I73WnjS
-Bw2xJDYv63bKt0Vu7bpa1abeAtBJnexYRA8gWNXSPwOvNMlqt6xO7ZdpB5deO2VnUGi18Uayp7BQ
-6dYnhAWERmid+RcLrdA0OEotKyKIRMmxrfVJnBVlSE4379x5LjPTDrjE4WGsAjYUx8eQVUZNmDs0
-gMVIdhWjNKY+8NGUhiulotwmdHZZy0XT+ihkuaj0Qe7jp3et2x/7l3GhSqJJuvGpN6489cPK/2Rk
-ZRxKj59o1LEEuGocCOgUABAs1J/evD2rJuCKm5+YbDj68YcZjksOBs5qJ+qnc1S5AOQMWr1Br2SV
-plF/uXVM81pK96uiUCh/cBBCp0+fRghFRUUFBQXl5+f7nrbrhQAIoREjRjgcDnn9PyFE/kq3A6RQ
-KH9wCLLlnywk+tEjAgHCpNnUV0xIY6eGEAKUkaPTtaePHPruW1eUmFcAYMTwJBOUSkDjGY23y2Yz
-hiFQRoxO1549emTzdlVqhNJbV4MGThmray6RAKiAAAAlJ5SdPnCqGgBFq+zay2TquDD32S07iknA
-hLtn13/2+elNu1Kjpkd3lVXTF0IAVIamxJCcgv3r1jvDXOdL5YcFFzEqTZN17MimHVxqmMJbX4cT
-p4wNbpGDaM8/VUwMo4e38lhzyxs/E4xr9m3YUKurOO1h1EmpYZrwUWma00cPfvetM1LIKwRMxLBB
-evf5DjIEUB02bKDi3NkD333r7mfw1Aj9Z89JapNDkhkKxe3YiCVXZaGrqagZlVmLccXZbZuZiOj0
-0X0vFTRs5pauPdDaXAJgO6kGTh5tyPvx24u6qHCdC0AIVGYtbuk6AJqrFJWSqoAQACXHl2UePFUD
-ANdx8REsOs4dOOdlLDH9QoPCIlQVxTZThJaLaOteM0NadpVa+GHwuKSuNQ/QQdC+99oWeqcahnMt
-PQBVrcv3mlmxnbsatK23BEuOjupku1Uo1dh89PhSS4eQNua09xmLtqyfWvhHC5vfN5pVJwLblmkH
-l56q3bKDfEIst/vkuRrVwOlGVh8bQg6dq2L1QxP0ECFP6baVnx+Xkm9YFJ+d0bK8CCD6pDTzjp1n
-i1lN6vAQgER72wrTONpPWlwpjXYiT3V+VokLY0XJ2fza0f30zbwBmtkor4FgYyfOui5QX/ju3v0b
-jyTMH1Sz49sCfWSYxgUYCFUBegWnGTqAzT53YO13zjg9XyfETxvLQgCBUuEtPX02swYAVWOpEyTV
-7NuwvlpbcdbLaJJSw7QhI1PV504c2bxDmRKm8FrrycDJYyP8GAyjUCiU/0lYlh0xYkR+fn5KSgoh
-RKPR+N4992k7QJvN1rT/X6uvFAqF8keFYHv+ySJgGjI0gHRxy2Mj595/Q3oYn386q4yLm3DbXaON
-PtyGldHXPbRoZIQzc+fmjVsPZDvUKmJrIREqzOlXT4hS1+xd/d1RZuTEYN8yceVu35ovKgfOmRAZ
-N3N6BHGc2LS3FHed1SUgq0+68YZkM6jNvSgmzR0bIB/l+lz3wIIrwp2ndm7etO1grlOtaj2u6cg/
-VQJMg4d06TEAAMOYh4wNqzt/0aEKGzbv2n4qqIyac9/1aaHe/NNZFep+E269Y6TWfqHDDCHUJsy/
-5+rkIM+Fk8czS0BQsJppncOdow0+PQ+hIiB91rhItafo9OkyvqN90GCXHvA9lUKvtp/ft33T1sM1
-wSmzbhpv8bRyXQuVRC4gbda4CK5675p1x9krJoR0LhKLrMlAcG1hbtaxPds2b/h87QkraePeO9vW
-0hZCBYbpUvOrb5oQrPTNe51r+N2xGmtLD7Qp3yB1V00Wpk29JQT5V4V6/Bo+2No/IR10RqHS3E6Z
-tn/pgfbKDgA2YFAfCCEMircoARcUFwAgZPskBbAEAFYTaOIYfYBB1aa8AIDAkJxuBpDhEoaHQNJu
-hensCsbIW7pn4+EKQpBYeujnPWUdvnoaAAAIIJh38cZx1w9WSRV7t5xyaFT283t3bN52tDY4Zeai
-8cEcq+0//+6ZgyzuvFPHT5eQ4BBjcPrMseHKyr3fbTjJjhjf7H4FGRiQGGTNLXAZoq+YN7efmlXH
-XHv/vOGh9lM7N2/efsi3q5JCoVD+CHAcN2TIEJ7neZ6Pjo72PSH0a84AhUKh/JlQGCOiLQp7WXFt
-w8p+1hDRJ0jF1xSVOTAXGBVpYt0VRZUeDACjMgUFm3VKBiDeUVdd6xRJ85NVQdERBuAoL67xMoaI
-PkEqoaa41CExnNESZNar5A0FbFWVDlVYK4laS1iwkWMw77Dx6gCjVFlY4YaXckYAtMnEzgZFheqg
-p7qkwgXNEVEBnGQvL60V1Z1nhbnAqEgj664sqvRgwKhMwSGBWlby2GySPlAvVhdXuBCrMgZaGmSJ
-Hmt1pVVgjeHRgZy3trjcgaDSFB4VwNrKS+oaluArLv2KW3+2KFx2L2fQKYngrKuqcYgEsGqTJcis
-UzJA8trra+pcwNhxhggAhdZsCTRplQxAvK26ss6DWufgFMGlJE6iCoiMMDKuyuIqT8suDlToLKFB
-Bg5ir6280qEO6yBJpx5wErUlKlxP7BUltbx8mK8tKXNIbVLZJI0lLNjAMQAQ0W2trbFL+rAWlrZR
-SRkQGiQXn51XmwxiVVGlh2lrWkVhacnBL/61G854/KnZcWpv6Y4VL6+tG3zTvVdFKds6p+26/UtC
-reUVVoHpUnOrB3XoveaF3oWGQ255cN6wvi090Lp8raIurAtX41b1VqqpcBvD/apCLfzBcOaISLPC
-U11U4cKd1+cGxYC2tX/ac0JlcZWHKHSBbcrUjTu49NopO6gwhEUHqYhQX1pmR5w5MsLMEk91cYUL
-AUYVEBZuYhwVlR59SOvyApBRB0SGm1jsri4ut1YdbioOlbt05z9eXls35KZ7p0d1PJIOWW1wdKhO
-Xv+BXZXF1aI+PDqQ89YUl7uIKjAywsC4KourvERhaDoOdcGRIVrora+wc5YgPccAgEW3rbEKac2W
-QKNWyRDE26srraI6MDTIwEHEOx2C2qQXKwvLbdasNR9urIhftPThsaFKzDvlWy1kVUaLxaRTsQBg
-0WOrrmyxqyOFQqFQWkFDABQKhUKh/GEgWKw79vkn250DJl2ZHCDVXziSkWkdsOCB2THKVmOjRHLm
-/PDFpiJe/gqVhsQ5t1wZxf1+NLzM/FYO+W1pURxmsS7/6O7fR3G0BQu2rDUfbizvd+39NyZofm/a
-USgUyv8ONARAoVAoFMofCMgwjpMbvt56ppoHkAuMGzb1umtS1Q43anMiqwuOsDTNfSeSq7q81nsZ
-hk991vAy85s55LelWXFAyAX8boqjDU0hgOvuvzGehgAoFAql29AQAIVCoVAoFAqFQqFQKH8K6GtT
-KRQKhUKhUCgUCoVC+VNAQwAUCoVCoVAoFAqFQqH8KaAhAAqFQqFQKBQKhUKhUP4U0BAAhUKhUCgU
-CoVCoVAofwpoCIBCoVAoFAqFQqFQKJQ/BTQE0BJUt+eNh//2bYHwWyvyO4SINbvfeHTpd5fPOZdf
-Yq/QQ7WJWLP7zcdeXFck9rJeHYjjS3etfOWJhx56+NHXNhT6ojLBnqyVTzz6fqb7V1fut+B/tNZR
-egbBfFXGm4+9uE6+Bgj2lOxc+fITDz38yOPLvy+idYFCoVAoFMofB0XHP/EXvnzx3cMNrXxGGxyX
-MmrazIkDzWznOfK5q97Ynv7EPcnqTk5CNXvee2N75L3P3tiX81vnFooBpSE8fuiUuTOHhal+m3fE
-trTFJ/N7H2I/9uGLn5cOWbL05v7dlEzEqj0f/N+uqHueviHW70IhxJP71f/tSn/srqRuiCfEk/fl
-y+8faepSQiZwwqPPXhvlf1aXC8xXZ27/cfuhc0VWAbC60PjBE2bMHNVX10VMrftO7k0PM5qgvqnj
-r5kzrq8OYnfuxp/PKCcseX5MIFCalf7n7Y8aGK976ZHd1pZHIRM286knrwzr4s5yKZfer2yPPDGm
-4JOGclG2OrsHsnqo1aPPXhvdewXSou5dLrt+cwhy5X79948rpj/7yHgLCwAABPOlW1a8fTTp4adn
-R5DKPR+9syf67ievi2nxLCTYlbdx01nVxPv/NjoA/trXBYVCoVAoFMrlpJMQAAAAgOCpS+64wkS8
-trKcg7/8/NFreQufvGOkpeO2OnHlH8yyovQusmV0kakjhloCfG30d6CYGUru2gv713+36lNlxDNX
-R3ZljY9A4s/ZzW3x0fxeB9VnZuQRNTidketKSNF1LxbC6iNThw8J6irG0x6EOPMP9dBwyARPufPW
-YbJ4qNAHKQCQAPC3OC4HRKjY+8mKdRctw2YtmNU3UOGpzN6/5dt3s8vufeSG/o3eb1/t7jq5dzwc
-Ou3e20cYhPqiE1vWrv/Qpn3u7mF63mpD2ujEmKAAVQ/y9lUDZtqSp0dJhPBlW//1ZUHqbX8dF8wC
-qDQG+T4f6VepbCqF2F659IasHmjVSze0BprVvctr1+8WCFlDVOrwwZa25Y54qwPp+gzsczmuCwqF
-QqFQKJTLSVdtTIUhMDgkiAWh4X0SBsVoXnt/3bozyXek6aFYdfj7dTsy88ttPNRFDJ6+aMH4aM6V
-+cWbK4+5APj0qYcAl3zPK3cmqsSqYxu++vHARSvShKVPWzBvcl8dBNhTenTvob7Dpqd1p8PZXDEQ
-Gh7gOHLom8J6CUQqAGlXHGhPWxUEqG7PitePTbx/fMHqr/eVGKc//cx0FQCQuLJ+eP8/B3Ktkjos
-fcbNCydEqyEAoIPMm2xJVZz10XxUt2fF3w+kXp9YuONATpULmBMmzP/LrEHG7kZEUO3xPcWWSTfE
-HFqfkWVPHm6CAIDOpBBv8d4132w+XuIkQBOSOH7eLTMStMhdenTf4bihV6aaWQAwX3nspzWbDuXV
-8ow6JHn23beNNgEAAOCLM/77zbYT5bwiIGHi/FtmJhqg/dQXK/5z3AnAJ089zKhT7l7+14F+2wAB
-4EwhERFBzZwgd6Kx8+z37/3nYJ4VacLTZ9y0YHxDcWCh8tiGr346WGDF2vD0aQtunBSrg0Ss2fP2
-8kPJ1w4o3Hkwt8oNAxImzL9lZqLs23aT+KspQY4z3/+Yrxuz5KEb4jUQAAD69hvQP2Tl61+t2Tnq
-qaujFJ2o3crJXehDsCN77dufZPa5bjrZ+u2JHnu44aoJCQu38NnLvj909ljR4R/2FCNS/O5TR1VJ
-d718Rz/b4e/X7Tx9sdzGM/rIwdMXzh8XrYIAEOzM3/71N1vPVAnqkEGjh2C2m2uIjCHhRgAILxqU
-QGkMCY8Ib3CXUHm0lSu0xJ75xfL/lox85PFr+qiI5+IPb71zuM/8mWTzmp67omVlI2JNU7k0GUZw
-64r90l8Hch3WurdOjL93bMGabw6Umac/+dyM8J5rJSvWPGfT5L+Oy/n3xsA7X7o9UU2Q9egHL31V
-nLj4xTtTdQA7T3/60hf45hfvSdOI7dWrxro3LZk517FdNqwLS5+64MZJsTqA+eo97/3j1Li7Rl38
-ds2hysDpjz82Udz81rtnhz3+xFVhCnmI/bVPauc8/+BwI+Gr97y74nDy7P6FOw/lVrsZy4AJN940
-I9HIAkCQp+zQ2q9+Ol7iQrKtrCr5zpfvSFQhb8Wx77/56VCBHesihkybd/3EBrkdZdWbECK5So7u
-O9Jv6LRUU9OzkIjW09//59u9RRIpevepI5rkO1+8Y6CyHT1/m2lnFAqFQqFQKD3Ej2EmqImbMD50
-78YD+e7UVB2rNgUPnHbLrOhAznZizcfrvoxKfGJKSOpfnrnT8cxK8NfXliSrAQDEe2H9B1/lJM6/
-f2E/Zdmuzz/76CvL83ekG3rPAOQqPnG0Uj3g+iglAMSb36442L62LAAACMWbPt+dNPn2R/sEWEIU
-wAYAdpw85J5/61MLdfazP/977T/XRT6/MEENO8r8koP0/pgvlm7aEX/3kpfvMnhzN6z4YNWPiS/c
-lNC98Sax/NC+yqBRi9P7uTZ+kJFZN2Rc0zyN9qWgyt1frM2NufmxxbFKe3l+CQxSt2zNEuzKWfv+
-l5nh0xc+mBwE6ivcYSY5S2Q/uq1k7k2PXG1yZn3/7/Vf/pT4/KJ4Y9otT/3V+fxnzO2v3tvr84qR
-49QR7/xbn1qotZ79+bMNn6yPfG5BvBpg94X1H32Tlzj//kV92dJdq7745zeW525P0wMAiFD6S0b8
-XUtevkvvztnw9seykirSQRKDfy15QvjiExekoEljYzVNKSFrThqXqPz01Jmaq6LCOlG7eUadmAAA
-gICItYe/+uyI7qoHFoyJUg4xunrPw5BhGQhVgSnXPdAv5O1lWyLuf35RnAoAgnhzyKBpt1wdHaCs
-P/Htv9Z/HTXwsckhDHJkrvn059KkBQ/d2U9dfXL9Zz/zKL7najTSYdEkz70xdfmqNXuHPzQO7/0u
-gx9823VXpOjSDL3oio6BTOuKTbA7r8Na5y3asmpv0qTbH+kTYAnpTT2a5xxoQYpA8WhutZgYxbiL
-TpRrApXFJ8uE1HhOqDpfisOujFaRTutVV3bFMsUZX375yWrLM4tTdQAQ7C3a8jVInnT7I30CA4MV
-oKwzTTFftnVPwp33v3yX1pn9/buffr1x4HML4jkslO/6Yn1+3G0vPJIgnFj1zuraiQ8/MDlKTSTn
-he8//jZ/0I33L4xlSnZ99fUnqwMb5bab1eUYkYdKc8p1SyJC3nttW+SS5xbEqQCRnLnt6OnvrYNC
-oVAoFArld4FfM01ZY2SQAtVWuTDQscYBEybKh0NGTYj5eVVBvQRCWg/SePK2H3UPum3OFXEaAEKu
-umr33lV7L7jT0nveci9f/8qj6wEAADDBQ65/cMFwMwuAuwNxOqZjbYnEjVx07egG1eUhqr4z54yK
-M0EQMmbujEMv/bi38PqEAapu2NJpEhg3fWqiWQGBvu+wJOOe3GIHSlB1Z5SLL9l/qD50Ynqwzjwy
-TffOnqPVo6c3ratuVwpBvEgYlSnQEqQLCgqLAwA0DrnLH7ErZ9dxd9y8RdMHmxkAoqMBAICIAAAI
-+1x17bj+ZoaQEVNSf/mgsNiB4lW9sKskIbh03SuPrgMAAMjohy5Zeks8BwAAEMbNnD0yzgRB8Og5
-0w+/unFf0XXxCUp33s7jnqTbZo+I0wASNH36nv1f78t3p6ZyAADIxF05ZaBZAYGh79BEw/78YgeK
-52AHSdL8HM3Dnvo6EQZEmZpfPBAqzeEmcL7cjkAY05Ha/Zut/yekcxMUYtHWf68tTbz5sSnRKkhw
-D/3bTLBgLzr+8y+lXOK0KBUALfb0g6xpwIQJ8mlBI8f32fx1oVUCwQpX7t6zUsKiOVfEGSEInnj9
-tCPLN/aaQh27Ik1nTL72+sQ3Vn+z2QP3WlMW3Z1sYEDPXdG6st33/IKAnuiZygEAAFaNXDh3dJub
-YLe1aroEmuVMiHdAP+32vBIXilKVnSjRD7syOnNHZoUYH2G/mO8KSIkzMO5znSjZtV3YMn36voOr
-9+e7U1IUAABANCMXzhkVzAIACPZ2agJk2LgrJw80KyAxxA5JNBwqKHGifgHIcTGrRp+yqL9JoUCD
-rohTfpZXj6dGEeS+sOskP+gv14yI0wAcdOXUfYe+bZTbblbx3bpDEiwVr3350bXNDjGKIH/St6+n
-37cOCoVCoVAolN8Dfi42JYQAwDAAAGQ7t33DlkM55U6JAciNQTJuu/ZZshVV8kLNx08/dOlYeL0H
-g56HAOS9ABjkrS04snH92x95H1kyNaQjcTrQsbZQFxNnatGuhLqQxlFxVhcWquYrqlxoAOu/LZ2a
-D7UhlsYNDFklC7AodcsRxHtx93FH2LQ0CwvYqFFDTPv2HyybPLdhG7H2pSjCJ9ww4fx/3n8xN2Xc
-5KmThsUaWjWskb2sBhmTw9vubsfowkI1DAAAAqhUK7utdltaLIRmtJbGDgujC24sDoUuNFTFV1W5
-UILeVlzp9db885JvIRNZ78GAAwAw2uB2rJY6SqLrpenFsOF/x2o3DwF0rA8HAMF8wc//vlAdd+u9
-qaZeUq9ZDxNyYelz7rkx1QBBy+IjkvXc9g2/HM6VrxQPZlIwAQDZy63YkBLSMO2BNYYHQthbBQ86
-LRqFKe3aa4+8/uU2JumWW1OMTItYVbdpW9kcPdKTAwAwuj5xPSurji+BppwhUIYmRStOnS8XBqtO
-XQSxiwYmV2/ceK5WCCg7V6eJG2hRSDWdKOmrXYwi2uolQA8gZHR9+vo4Ax9CqA0JlC892OzSIxhh
-yDANdxOm4UIhRLQVV7jdtZfkQkYR1Si3/ay6A2TY0Kl33DLU3LAdoFC5779f5vicvEM9e+/WQaFQ
-KBQKhXIZ8SsEINUXVCFlWJiORTUZ//pkM5ly52P3DQzkPJnvPvt5h6n0V9zxwJXhjYIYpb5XujRN
-ewGEhEcYa868sWNX8bh5mvbFda4to2Q6G8pp0eHohi0dJmEUsBeGkIgrO+O0B4g/LHv0h8ZjR/YU
-zVjUT9WJFMaYdN3jy8Zk7d++ae0/du296pH7r4pu2UEgoFl3tkXSzt3VbTreC6CNXo0pGOPI25dM
-a+VbDAAAjKJ95dtP4ieMJsDCkfISm5SivbR+mIj1pTZgHGpk29O7g25rxyZgVxkYnMCd2rijcNDs
-2N552QVkQqbetXi4Ra03B+g52FYxIlbvXfmvrXDKHY/dNyBA4cp8f+mXlwxoUZF6o+62Uq6jokHO
-mnqeALa+2oWAuVdeY9rOXgA+hQA61FOudcqeeaXjS6BZzpBRR6WEoe15leVMjthnbqQpIiXYeiC3
-tm9xBdNnQhjXhZL+2MXIAaJOL3kstcy2nRsOhEpj/KCAn08cypsU1k/MPpIPYq6OapjSz7CmUbff
-NzWsPbm9coeUVeBMoRERTW8EIEbO35zb05P2/ykUCoVCofxP4kcIANvP/rK3RpNyfYwaiBfPl+Co
-BeMGBnIQIEeFgwBNw2kQQoIbxthZY1SI0lXlVAcGtWy6o97SHwAACMYEEEI6FOet6lDbdvNzVVR7
-cD8VAwBylFZ4VSGhOtZXWy6z+dh2NuM8jrlmyY0DZJOw9ejn/zqQcWFO3KAuplpAdWjS5EUDU8Lf
-XPZLRsnkm+OaqcgaIwPgruIqD4lW+thWhhAQ0s5MkB6DXZXVHhynYgCQHGUVvCpMLo7IYIWr2tXa
-t51MmO8oiZ9AqIoeHKc4fXh/0aTr4hoG+gmynt17XrSMTw5SACB2qHbzblhnJkDWPHzu/GkOxZsr
-V21Ke3xOrKrnHoYAKI3BoWFBHfVcCBGrsktJ1IKxAwI5SERHhYMAnaxquBFmlNbxcn1Azso6THpx
-R4+Oi4bwZTu/3uoadvPN8Idvvs5Ie2hquOJXrGzt0FxWN2pd7+vDGmIHBjiy83KQK3xiH61CE5cc
-8MOprDyXGDIuWgMB8U1JH+wiuO24O2SUDJB4iQB5N72KKi/paoE+ZFThExdMyHz3n0sPagyBcSNv
-vmmYmQWAKIyRwUq3T3J/QyDsQE8KhUKhUCiU/0m6as9IjrrqqoqS/NP7NvzzzX8fZ4fMnzNABwFr
-CDWCysyzpTZrRda2tRnVTYOujC5IRyrP5tXYrTaeaPtPG2m+uH7V5pP55RXlhdlHd2XkOnuluYxc
-9bU1NTVVZbmHflydUa9LGhLOwQ7EdaxtBxRv/n7/xRprTf7+Db+U6dLH9OEA6Cjzllwu8xupO7k7
-n0uaPiohuoGYpIlT+kpZu7KdnXSQ+JKDe45fqLA6nXUleQV2qA/StYgFQUYXPzGdy1u3eseZovLy
-4pwTx/MdncYtIKOzXDK8O5YQAARbVVkD5VV2scEAQoo2/3DgYk199YUD32+r0KWNjuYAZHT9p4ww
-5q//csvJ/PKK8oLsoxm78zr1bTeSdJARa0iac3WcY8+HH6zJyMwvLinMObrls/e/PG8cPW9SZOML
-xNtV2z99WH3i7HmDvRlfbLro7QUv4fumAAAgAElEQVQPd20YZA0hBlKZmVVqqy/P2r5ud418pUBG
-Fz9mIJP9w8/Hi+vqq/L2/ZhR2dU15JfgjlxBhPLdX/9iTb5hzpD0q68dWLPp6z0V0uVwRXPVLskS
-QC9Vofbp8BJohSIwoa+m6ujh2uC0WB2EioD+A3Rlh45bA5Li9IyP9bwTu8rLCrKP7t7Trl0QKsx9
-whX1x3edLK6tq8zZ+/32zrYHbLIMewozDriS5z/w0IP33jZnZIy8wgiyuoTJQw35G77aciq/vLys
-4HxHcn9b/lf0pFAoFAqFQvGJrmYBVG/74LVtAADOFBmffuND00fF6VkAgDJy6oIphatWv7kUqCOv
-mHvLNa7P8+UEXPTkq4fkfPuvVw7q0u9+fvGguLkP3s6t+fGrd7bwAGqCB4ybPxz2xnLeql/ef/UX
-WaIlYfRND14zUAsBULcrrmNt24PRDVxwQ2Tml298W82rwtLn3n1dghoCAGD7mbe05XKZ38iRvSWG
-odfHN9uVijGnTUpc/1lGpjUlscNkqO7Uj2u/qxMAUJhihs5bPCm05QA1ZAyJ85bMW79my39X/CBC
-ddjQ+femdaIGhKo+k2am5X73r2WHDIPvWnZrx6I7hODq7R+/tb1BfuCER5+9NgoAwOoHzrsuPPPL
-N9ZUC+rw9Dl3XhuvhgAARttv7gO3cWt++uqdzTxgtCEDxs0f1mm3FPqfpKOcuLBxdz1p2vrDtu2f
-718nAkYbGj/4hgdnje7bVBAdqN285LvWBzL6QXPmpS//z6qfU5+8NqanHvbBrqgp8ycVfvnNm0uh
-JmrE7Jtmeb4qBAAAyJrSF91RtWr112/tl1Thg2dcO636m4u9KLhdVwChYu/Xm6rib7w9xciyJGXu
-NX2Xr/9mX/ID43tc2XxWrGXFfu7WxF6qQu3SwSXQWifAhSVHCofOBV6VYGYBIFzIoFiScVwxakCg
-AvhWzzu1CzLa4MTx84e2ZxdkdAmz54/87Lsv3zoKNKFpU66dZfs2q2vToCrY6Ny6+t3TciZsyMjb
-ltyQalLo4ufe9xfuu5++fGczDxldaOK4G9uV+9sC/0f0pFAoFAqFQvEFmJ/fSW+YQqH0JkSs2fOP
-v2+Le/BvN8R2vDsbhfLHgWChcs/H7+4JXXDvnBSLCiBv7Zl1731RMuGpxyYH0+X0FAqFQqFQKJcb
-urCRQrmcEAwBhL2+mx6F8juFIGfBiSJNyuhEiwoCABnOGB6ph8grXZ7NHCgUCoVCoVAoLaAhAArl
-8kBEV3191YXsGmAKNdALj/InATIqS6jaeu5YXr1AsOSuztnz4/bKwORUi5+vpKVQKBQKhUKh9AZ0
-IQCFclkgYsX2f7z+U5k+btriv87sp6PzACh/Egiy5+1au257ZpkLQ6gKjE0ZNf2ayYlmugqAQqFQ
-KBQK5TeAhgAoFAqFQqFQKBQKhUL5U0DnI1MoFAqFQqFQKBQKhfKngIYAKBQKhUKhUCgUCoVC+VOg
-IIRuy0yhUCgUCoVCoVAoFMofHxoCoFAoFAqFQqFQKBQK5U8BXQhAoVAoFAqFQqFQKBTKnwI6C4BC
-oVAoFAqFQqFQKJQ/BTQEQKFQKBQKhUKhUCgUyp8CGgKgUCgUCoVCoVAoFArlTwHdC4BCoVAoFAqF
-QqFQKJQ/BXQWwB8EhJBSqcQY/9aKXCaovb8TCCHnsrNCg0MtlqCOTiksKiwuKRo7enzPxRWXFBaV
-FDb5gWHY2Ji+keFR3cvtd+vV/2moV38N/mxe/bPZS/EXWkMoFAqlJ9AQwB8Er9erVqsRQr+1IpcJ
-au/vBIfDXlCQX1VVMWXSlZIktT1BFMWcnPNGo6misiI0JLQnsgghZ7POzJk9V6fVyUecTudPP/8Y
-ERbZvQx/t179n4Z69dfgz+bVP5u9FL8ghPA8T2sIhUKhdBtFTxJ7vV5BEFQqVZdn8jzPcZxare6J
-uOYU1Z3dkvXhgmEvG9SWXsnwctpSXV2BEAKwg58JUCiVQZYQv/L0er0sy/p1/mWw99eT4q+97cJg
-J2b0PcykSzDBDOzpiht/7SWEtNshl1EoFBB2VP/8gBBSVV01euTo8orKqurKIEtwqzEZQkjehdzR
-o0arNZrs7Bz/QwBEqDrtPPe16K4FBGAA6l0TrDZrQEAgy7KSJFnt9bV11SXf3ybLUuqDTSm3aELT
-fMy927XIbre//fY7O3Zsr6ysjO4TI0lSeVlpeETEjKtmPPDA/b14oystLd23b9/Zs2fPnD2rYNnk
-5OSkpKSxY8eGhPh3f+gEq9X65ptv7tix0+Gwx/aNkySpsKDAEmSZOWPmQw89qNPp/MpNbpr76FVJ
-kpYvX56WlqbR6kVJlBCSRCRKkighURDr62uPHT7wzjvvBAYGdsuyBhBCn332mdPplC+KJkRRlD+Y
-zebHH3+8h6UmSdLry5enpaWp1TpJkkQkSRISJUkUJVGUrPW1x48c7LYt/nr1768te/CBh8zmgLY5
-2Wy2vAu5dXU1EkIqlTosNKxfXILDYf/wnx8s/duL3dCtuZIX8i9s3PjTA/c/nF9m+2ZHTuaFWkFE
-Ji03Pi3i+onxotdXKX7ZKwjCjBkzmh9RqVR6vV6v1+t0OoPBoNPp9I3odDq1Wq3VaoOCgvr37++7
-dYIgzJs3TxAE35MAADiO27Bhg19JLgM8zw8fPjwsLJyAhjEgQgghgMgf5O8tk0iiGBke9u23a3yX
-QgTB88or3AsvrF69ura2lhAiiqIgCKIoKpXKu+++22LpUePN6/X6cjW53e7zOVnlZWUS6vCB2BYF
-q4iKjh6QkNjD24LX662urtZqtYQQt9sdEhLSi08HCoVC6Qk9mgWAEIqOjg4MDOw8EwhhXV1dWVlZ
-92QhhERRbH6kwnFhX+HHCyaPX7Prb/OGvKpXtW3odEfKZbClQRbB6elDlEqu3V9FUTiZecLf/Hme
-Vyj8KM3LVna/khRBEPyytw1EY9+grvmvNW4dAT0NJXROXV01x6kMelNPMvHXXo/Ho1QqAwLauTQc
-DofL5fK3a9cuhBC7zTZ0yJD+Cf2/+PKLa66e6/V6m5/g9rirqitnXDWjvr7ObrP6XV4E285+FRnT
-3xg0zeFB+8/XuSttkiReyM/DGDEMi5Dkdrmrw64a1d+kU0NrVUHRif9GTP8/H7PvRi0ihOzfv/+F
-F16IiY37aOUXyalpBoNJwqSyuubE0SP/eP2lrbPnvP76a4MHD/bP0jZgjD///PP3338/JS09LX3o
-3UumC6KYeerEN2vWvvb6648/9ti8efN6KIIQsmvXrpdffmVQcsoXq9cmp6SpNToR4Xqr7ejhw++u
-eHXOnLmvvrpsxIgRfuXp+71IPmfxXUtcXpEXkICQIGERYVFCvEicLte+3TtFUezhVDWMcWVl5VPP
-vcAo1byIRUkSEBFEJEqIF7HHUf/3Z5bY7XZfIpVd2rLotntcvOgVUWP+SBAJL0l2l3v/nl3dtsUv
-rzIM88D9DxoMxlYnE0IKCi5k5+ZcOe3KvrH9FArW7fYcP3E0Y/f2wenDH1jyYM+nBMb0ibn5lls3
-7M5d9UvO6BGDFi9IV6s4q9V1+ETOPW/teu4vQ3yU4pe9GOOysrKmrwaDAUIox3cIIYQQhmFYllUq
-lQqFgmVZQsi7774zaUpiQsILvpuGMb548aK/IQCVSvU7nGhJCGFZ9sz5XA8vuQXJw0tuXnLzkkeQ
-P4geXkL4ktoYo/MnDv7wnzf9u1VKEj5xAiFUUlLy2ONPGgODeBHxIrLZrCuWLS0tLe1JaI8QIgiC
-XJqdnIYxzsk73zc2bvbVcxQKBQBAjnA0fgCgWRCkeUJBEM6cyczOPZeanN4N3dxut8vlMpvNTqdz
-yJAhBoOBEGKz2bKzsyGEVqtVr9drtVp/c6ZQKJRepEchAIyx3JfosoPncrkwxt2TxfN8SEiIXt8w
-WltpK9yV+c/bpk1nmPoFk6as3vn8gqGvqZU9Hcu9PLa0xel0yq0KjuOabATtROG7QB7P9D1VZ/YS
-YM2s0MUFKA2qHtrbiRQCQH6tR6NkIox+SyGE+GtvcyB26CtWWOKvcfDpGBMAf90mGiHEaDDW1lYb
-jWaW7c68m27YizHWaDQmk6lVEgghxtjhcPRKBSaE2OxWCIBOb0hPS8s6d7pfXP+miQCEkPPZ56ZP
-u5KB0Ot22Z02/0MARHRWGYKmOiuz3tjomTdvwYRZ/ZWKFj584P6Hzp/LemP1d0/P0hmD+npP7f71
-apHcZ37q6aeff3HZ3ffcByHEhEiIYAIsgZbxk68cNmripx/+46933PH+e++NGjXKP2ObYbPZHnzw
-oarqqi++WTtx0hQCAMJERPiGhX/hRbT55x9fefbhLb/88v5773V7TIkQ8ssvvyxd+sKy19+6bfHt
-AIBGWxij0TR24pTBV4z77NMPliy5/6233hw/3td9HOTOG8MwPvb0vF6vW5D2n69gGUanVurVCp1a
-aTSqWAYeqbV5PB65F9c9Gy+pJAg6c9C5onoCAMsySpZRcCqVhtESUuUQPR5Pz2/psi0uQTqWV61g
-G2wxaFU6tRJCuPNEj2zxy6sAAJPJDFo+RAghlVXl+QX599x1r0ql8ng8giCpVNzECZP7xcWv/37t
-hHGTe35PgAyTVeT+cnvu3X+Zbjbpy+o8dodk0OtunD3q2OmCZZ8d/eDRib6HAHyvRQAAjuMOHz6s
-UCiYZkAIWZaFEMqfGYZBCD3++OME1D96r9YhdMdejuPuueces9lMCCkuLv7vf/8rH2dZduHChXFx
-cQAAm8320UcfyU92v7yKMd6zZ8/Ro0ebjsgj516v1+v18o0IgjB06NAnnniie5O5ul3Q/kZL5b8e
-r5fVB+dVeREmShY6BE6tM8gBmu6pAXy+eyOMKisrr555jSDwXq8HAEAaZj4Q+UMzLn0FALAsm5iY
-dOz4sZQkX+eUNSnmdDrdbvfAgQOPHTumUqk4juN5HgDAcZzD4XA4HEOGDDl37hzGuFcC8RQKhdI9
-eroXAMa4y8aT3OsA3Xrw1NXVqdXqgIAAuaVrdVV/vvfpeeMnuvhcCTnVytDZI0evPvi32YlLlSyH
-MTYYDL9bW2ROnjzBccqmr3a73W63AwCMRmNTCKC6srqspCwtzY+BRF8i4q1o117RJVz87KS71N53
-cbpJF9RzezvyKiHgQKHtdIV7fJxxxgCLX1J8HAFoNynjvaCv+Shs8IMKXaytYKPcGvAzEz9FYsJx
-XHBwaHVNlUatVan87rN1w15CCMYYIUQIQQg1DV7J0ZYeNr+aS3G6nKLAS6KYnjb435+tjI3p1/Sr
-1VavYJmIiKi6mkoJSQD7X4sIRggBQiDAQRrPRx9/3O5ZEIBBkSoINHKCX68W1dfXL1u27PU3/nHb
-4sUsAwkgEgLycJlcjRiF4tZ7HgEMu3TpC2vWrDabzT7m3ByM8euvv67VGz5c9neXw7H5pw2iJAmi
-KIgofdjo4PCoyVddnTxk5IOLr3/ppZf//vdXuyECAFBTU/Paa6+9+Y93Fy26acUbyxwOByDA4/G4
-G/55FErVM8s/RgC8/MqyNau/aXdGSVv88qrcjvfwEsfCrINbc04dBBBgjCVRFEWJF4S+ffu++uqr
-YiPyvP309PSnnnrKd0sbOude0e7m3bbqutJ8TslwClbBQIzQuaJqnU63d+9erVYrXzLy/apfv37J
-ycn+SvF4JY6F5w71si09uOM1gDHOzcu9du71HMfZ7Q3BOFEURVGIiopOTxt8IT8vceCg7mXehCTh
-z7dkz5wy3KDXnS6yYUwAADa3WOcUhiTHFBaWr92V99eru5biby0CAOj1+tTU1M67xJIkvfDCC4cO
-b9u2rr8BIbv/HVqVSrV8+fKpU6cCADDGx48fbwoBMAwzfvz40aNHyz/Fx8c/9thjwP9Hp8VikSTp
-7rvvjoyMlLOS+6XyB/mv0+m89957//Of/yxevNivzJtskSQpoW90y8n/gDR0jAFp80xEkmgytp5X
-0qUU0jAM4C6tc4oIsizkJVxc5XB5vD18BmGMRVHssoYQTBCSWJb1eDyPPPZI03GVSrXizRWgxWpM
-0vRV9rNCocDY16dJU0KXy+VyuUaOHEkImTJlitfrzcnJKS8vhxBGRUWNHTtWqVQihIYNG3bo0CEA
-AJ0LQKFQfit6tBdAiwiqD2d2QwTLsikpKQAASZIkJL6+9i+hZp3L42JYUZR4CLDd49Rq4c7iDx+f
-/e/msXN/aWuLIAgejwcAoNFoOI5rdWa3BZ09ezYlNRkAgBA6e/aszdbQGquurq6pqUlKSgIASEg6
-c+asXyEAf2mn7Aioz63M//pM4ojUOk01auxK9cTeTmoIIUCQpMHJUSV296vb8xf01/RKp7RzdRTW
-nXrPrtDBdzNCFsE1EBBN/hNYHSsax2F9KoC9uSJAEAWvxy1KIiZYlERJEoMsQfXWekEUDHpjLwpq
-F7kRI7cXEUL19fUul0upVMo/KZVKeVwCACCKIsdxzWu4Xxj1BpvdxrCMJSh0/Njxx08cHTZ0hCz3
-3PmsubOv9bhdgsAXFBZGRffpRv4YIQAIA8H8ERpe6FBJFccCAAAh+FfbHQpj/NaKFUnJqfMXLJgw
-ZsSmzZufePzx+QsW5GTnOJzOESOuWLnyX++898GMOdNe/2Ttri0/Ll++/LXXXvNXCiFk165dGbt3
-79i1943XXpk1a5Y5IECSJN5Z9+O2PWfPnHnw6ZcxAQZTwNOvfXjXjZMnT54kd0j8tuWtt4YMHX7z
-zbcoWeJyOq+dOzcsLEyuMwih7OzsN954C0B27sI7dm/9+fXXly9f/rq/Unwx1uPxuL1IpWBctpqb
-F985ZtQIBgIIIAbE7uJra2p0eqOIiIgQL2JekAryst5d/pK/Urxer8uLOAU8emi7ioWDhwwmhACC
-RYRiIyyTpkwLtIRAlkEII4RFScw6fWrTpk3//Oc//bXFJUicssGWUSOGI0wwwAgRp0ewWesMRhMh
-ABGAERYlfCHnzJvLlvrps27idru8Hk9EeKTTaW9+p0UICQKflpr+9eov/QoBYIz37d87fNiIpnko
-hIDyWndVnSd1QFRepRs3m0nuEVCllU9P7ffTloO+hAD8AkJoMpm6DFEhhD799JNPPn570+qBURzm
-bTzwZwiWYZgZM2ZMnTp10qRJvpw8YcKEd9555+eff/ZDBgAQwsTExOrq6vXr17/00ksd9Q+9Xu+K
-FSsWLFjQr18/32fotOKxRx/q6CdCgNz7le/kkiRdyM/fv/9g9wQ5HY5zJw5yhiACCMBEcDsK8s5j
-fFX3cus2arX68/+uAgB4vd477/6r18tfc/08AIBGrV6/5muP13vd/EXyad9++UW3pbhcrsTERISQ
-1+vNzs6uqamJiYkZMGAAIcRut+/YsSM8PDwhIUGhUAwYMCA3N5eGACgUym9Fj2YBNO9mdHKaPJLc
-vZ4kQqjZjq9wwZhnimqys0v29w1FgsQzwHvwfMnVQ5/gFGr5zJ50VlvZkpmZ6XQ6AQB6vX7IkCE9
-t6UVLMsmJibu3bu3trYWAGCxWBITE1mWxRg1qeSX/n5p1cpeJKGctZmeAmdicjqsZSBWnfvmhOAV
-osfH6VIDu21vuzWk1iWuyazMrnLrtOrYYNaqMZmiVO8dyZ8UDoZpfR2/9ddeQASu9COTRghKvArY
-9hLkhmoppP90jBHy2uwVu+w5K71RDxJtQjfMbAVCUr21juM4nVarUBghAyVRlKMABoPB7XLX1FYF
-mC0M4+segd2wFzdCCEEYOT01MbFxAaaQVjnIuzCUlJTI0QF/IYRERkZnncsaO3q0y2kfMCDx8NEj
-Vmu9wWCsqCiP69vXoNeVFBeo1Zrs3OyRI8b6W4vk+AUgGABg0vuwVJtg328C/nqV5/lftmzZseeg
-Rs0tXbrUaDDccccdcXFxsTExoigGBwffd+89FrPhxRdf4DTaxQ8vfeWRWysrK/3dtw8htOL//u/F
-l/8eFRUpiuItNy8A7lyA6omzOtrU598/uxEmCBNMQHRs/MK7Hnvv/Q/Gjh3r7zp2nue3bduWsf8I
-ywAAoCRJ4eHh8fHx8q8ej6e+vt7hciBMAKO4+d5nXnviNh9t8curhBCP1+sRRJVSoWCZ2JjoWrtQ
-WutkGMBAhmEAo9AjnkAGMoxSowaAYbUB4f6OHzYEGgRRpVAoFeyChQuio6N5EWFC3C73qcxTIZZA
-pUrVNz5BrzUgQkQJDRsz5an7F/srxev1ur2iWsEqWCYiMtLmEe1uAUJQXVn+tyceAgAoFYonn3tx
-4KAkBkKPIJmCI320xd+6Sgipr69zupxNR1xOp8lsBgC03UEdIaRWa9xut1/2YoLrrPU1NdXo0gML
-ZBc7THqVUsm6+ZZbrxHg5lGAUWu1e3vdXkKIxWLpfGE5Quirr7568slHvvskITWIYWq9jMAT3x43
-MizLLlu2DLR5LkMIm440VxhCOHbs2LFj/bvpEUKKiorkqf4ffPDB448/3u68Boxx//79n3nmmWef
-fXbVqlUxMTG+i5ClKBSKJ594rKNfUSMSQvIksp07dx06eMTvNgkADMMMHTpkz+Z1YjOio6Li4uJ6
-2Pj0pYaQxmX/hACE0NYdmwAA8t5SkIHyfEwlp4QQMrDhK8cpIQTNZwT4pZjJZDpy5Mj48ePz8/MR
-QmlpaU0lGBQUZLFYioqKLl68GBcXd+zYsT59+vS8JUmhUCjd41IIYOfOnU1HfYlzg2ZT1Lq8i5HG
-cLK/+iGEmm9snhA2lBBYbsvw8LwgeRnowRj1Dx8GAZQkqSfrOdvaQgiRV2q1MrDbtjRl0PRJqVSO
-GTPmp59+YllWniHW/LRuiPCri9hkr+Dkd7+xJUwfGWPobzvthCxU6jUJxhQSRMqOFOfsyY5dmOhX
-a6ldKQAAAkBetevtjKLAmJiAxD48AgUOWO2RVKwyJD5h24X881brTcldb5vXvIx80gN5FdlPBscO
-NFoiSP0+uUtJxCwAsgAALFQGhliMQRHFZ971Rt5H9AO7YeklUUiqqa0ODAxgGAZhSeJb7GQpSZKS
-U+gZXVV1RZAl2MetAfy2t0UIAFdaz/6Sc98k9sUU1dVt26/yvgDdrs/R0TH79++uqqqxBAZodfrJ
-Eydv3b597Ohxefm5tyy6pbamSqVSn8vODgy0dGNnLEIIamcqJizRjHbC1i1+jDHxEPWENwpLLhBC
-1GptaFB455m3+tD5yTk5OUqlsv+AgYKIMjIyJk+ePG7cOACAPF8XABAREeFyuTJ2ZUyPHh7bP9Xt
-cp07dy44ONhXawEAAFRXV5eWlFx/4zyCCc/zgBBQ8KIQ+Vx1tbe+utDr0ZeVlggiYlU6pdYwftqc
-VR8uv3jx4oABA3wXIduiUqsT+g9AGEgEu1wuuWeIMfZ4PG632+l0Op1uCRNMYEz/JI/Hc/78eV9s
-8derXi/v4iW1kmUgZABx80K1za1UsPJcfU7BKBUsx0AlyygVjCBhLy/5u6leY+dcUilZloEIwyqb
-x+4SEBLyc84tuX0RhFChVK54+8PRY8eYtVqnRyxHxN+AclMIwKxVMhBKEnbzkldECgaq1Nop02cx
-EDAQbN38E5L4ESNGiBLyCr7a4u8dAGOceeZkgCkwNKzhHRySmqusqoQQyOvhm5/MMIwkSRyn9Mte
-BjKzrpq1Z9+uJimEAJNe4/SKgBBOwXiEFlI4BeP2eDUq7tewNzAwsJMQACEkPz9/5cqVSALHDuMp
-YV7GLkDEk5Ae9b7k22Yrf/awR4cxzs3NPXny5OjRo0+dOvXNN98sXLiw1TnyyywwxlOnTj1y5Mgj
-jzzy2WefNd9IyBfN28o9duz4pi1bn3vmybLy8uXL33r44QdDQ4KxPDFGXh3jr3WNi+oXLFjQaptY
-0BClqieNMw3lvxBCg8HgSzza1xrS8CshhIii+OknK+XDKpUKAmjQ6wEAarWK5/mnnnmyb3SY/Ouz
-zz3z91dfBwD4a7LH47HZbBBCQRBcLldMTIws12q1QggDAgIYhomMjCwpKZHDEPX19Uajkb4jgEKh
-/CZcCgFMnDix6aiPdz3y688CkBdMZhdW1js8clzW4UXEPbGqQkJEtDEaEyvsPXFBPrm2Xqrx1gNA
-BkT6/Y6AtrbID6Smn3puS2O2Lb5yHDdjxgyGYVo99gjx79njYyym+flN9mKARQbV1tbrvQHYjQED
-WIEFAGAJG1iLVxAKNuekLBjquzLtSgEACAiv2HpR2WdAlahkahADAQBAEAlhYRURnHZvP42viz/9
-sxcqJG2StTxHqyYM5gFuvasz4a0Mw0X0iy88/4GY9DYA3X+HX119rV6vQwhJktjuCYQAt8vNMAyE
-vm7u5be9jSM58rTui7Wb02MXRZpHncxf2zdktF5zaSxXrs893AstOTltz4F906dMs9vqo6P66LWa
-k5knR48cLb8Zrbq2Nu9C3ojho7sX0pIXArQ4CICLsUyb1Nk8UkLIuu+/DbGEdX6O714lhJw7d25g
-YhIBECHc+cmIYFapiujTNysrSw4T+AghJCsrK7pPjN5gdDkdPO8F3nysiv3XV/t2Z+zBGLk8lSte
-eNjpdGLCPP/+t+aQSK3OcPr0ab9ebybbkpiYhAkQEcYIOZ1OOdjqdrubQgAuh0NCWMKYUajComKz
-srLGjh3rS+Z+edXr9bp5CSughxc8AiJQHvOHDGyAgYCBEEIAIUQYe0WpG7MAvF7ezYtGkwYQLCEs
-IUwIPnHk4GtLn95/MkfBQixJty26vr6uev7CmxDGgs+d81ZSXLwEAXF5eYdX4PQYAgAhNJpMC29Z
-rGAZgsTbFl7ft2/fEVdcgTAWRPTrzQJgGGb27Ll6fcNWrJIkfbryE6vVqtPpnE5H05kQQpVKfTbr
-TKA5yN8rtK0UDy99+PMnF0tqoizm3PJLUlgWhpnVGQfyUuICfg17OwkBEEKKi4vffvvte++9NzU1
-9aX3P/SUmF+5Wg/0Pe2uyxY/GRYAACAASURBVOo1H6XvScNABkI4ZsyYsrIyhmGefPLJv/3tbyqV
-KiQkpPFmjuUZ5i6Xy+PxuFyugQMHbt68eenSpStWrPBL8+ZfRVH8/Iuv1q7bcP99dwMADHq9xRK0
-cNFfnnv2qfHjxjQ8IDBpm7BLMYAQQRBWrlwpb3gk32Q6gRAyatSo++67zxcTfKkhpCG4ADiOW/Hm
-/93/8CMAAJVK9fb/vc3zvEGvk79CCFstE2gqVt9NxhgXFxcPHjxYpVLV19eHhITI7Z8zZ87IOyIX
-FxenpaUBAIKCgmw22xVXXOFyuTIzM5umX1EoFMrlpKd7AfjYH+52HwNjLElSbnF1/4R+CBEAgQkE
-R5L+hAC59xrToAPAGOsCuDqHRyG5e2gLz/Pys0rulkuS5HK5WJaVZ9t22xabzWa1WocMGXrw0P6t
-W7cSCEHD0HhzPQABJDAgYNTIMQUFBWazuXs7inVJc3uVGm7qc1dn/nj80LZ9/U1JaqKtcZVV8CVG
-hTlCFa1XWrJzz2OEGdbvjnFzKYSA44VWiTOwkhLwbtFaJgiCJqwfp1BhW019VeGCRNWQ2F54v2M7
-QJbE3OmoO5B76rPY+GhOSQByQaVZQlASJE7FQSgBvl6hEPQ6VV3tUWjx4y1ozZGnokAIJUmS5/nL
-wSOWZRFCcqvCZqvXaHRB5h69ErlLmkIAXtGlVOi0qqCK+pw95z4+kvt5et9F6X2vk09rCmn1RJbR
-aBrYf9D2XTtmXHmVVmtISUk5evx4v37xdTUVvCjuP3hw6JDhCkU3bzXydoCtDspDKE6Xo6FV3NA2
-lmetIoxRTHQ/QeB7YlRbvF6vWqMVESaEmTBhQru7JyiVygkTJmDAiBJWqTVNGy74CCHkwoUL8QkD
-JEQECfM8j+yZEHmshZteenD0gDHPAMkG7Pvqqi6Mue4jXpAkACNi+hUWFvpriyAICiUnIgwBRBJ2
-ulxer1feyFoOAbhcLgyAiIiIiISwQsn5+zo0H+31ejyV+acxq7HabHU2h8FiZCBkIGjW+ZcDAZAB
-ACHCi1LzeWE+4vV6vYKUWVhTZXNX2lxR+oCmjhuEAAI5xCB/BwgTXsT+SpFtqSvKqlVobHa71WY3
-BgQTQo4e2icJAsNAloGA4LCIyNraWtHrRZjwAuqGLb7DMIzb7ZYvBEJIclLSTxt/XLTgJp1O7/G4
-McYsq9DpdG63a/uOrcOHXtFzKQiTW2Ylf/fLsbtuntovVF9c6xYkbNAoYoJ1VTXWA8eyX72zm7fW
-zuloIQAhpLKycsWKFSNGjEhNTa2pqTEHWt78vvraFE4d4gW9sOoLdG9P/k7AGI8aNWrLli2xsbFL
-lixZtWqVx+PheV4UxabXAXi9XrfbXVFRIQhCSEhItxsJhJCampq3/u/durq6D99/u0+faISQWq1+
-/LGHkpMTl77w8swZ05csuYcQgnuwxNLtdj+99DWF1iBH30TUEIaTEGn6LCIsSlJdwZktaz/vnqAu
-1SCE6Bv7/C2+chwAbZYJdKtUlUqlyWTied7tdsvbi9psNp1OFx4eTggpLy+3Wq1Go1GhULjdbr1e
-bzQaWfbXfScxhUKhdMSlWQAZGRlNRydMmOBL4s4DsUfy3ymz7tNwejfvCNKMClfN6UZPo7FpjwGj
-rHd6WYYhgCDcND0NSQiLEhJFSRCRIEqCKKkkNyHdmQUggzHeu3ev/BphjUZDCLHb7YcPH0YITZw4
-Ud6BtnvBfofDMWPGDELI7n27+8UlyK9nd7lczfsJhBACiJcXZ86ciTHeunWryeTH++R916pV2UEI
-064ZGp4StfHtn6K4GJ54+l+XKPLi0fUHU4OHs0q1s85pCPL7bQukBSC/ykmgHtvrQe2Fu0aH/3Le
-e9HuEl0FkVrhr5NDEe/yUf+m0/wrhYBRkiom99zysAhTgMlIBJB3vghpYoGnRKfTREZZoLv2/9k7
-7/i4imvxz9yyvWhXvTdbstxkY1ODDbbBgHGCIcAvNJP8AoH3wEkIJfT6QkjBYDqYAKYnITwwYKop
-JqG44iLbsmTLlqwu7WrrbTNzfn9cab3quysZzI/7/YC8O3fuzJy5d++dOXPOGavNwQK1nPfoZCXV
-UVRFEARKCcZcNBpVFFUURUmWM9K9CBChJBSKpHvTzWZLUi1PQd6YIwAH/J6mjaceO397/Vsue95p
-x/7oq5q1mz9665zj/uiyZY2LFQBCKCMjMxwJf/L5utMWnLK9pmbunJM3bPi6pLh47SefTpxYabON
-stfmcAAApUR33IhHn47KivTB+x8C6Eom3ekBEGYnnXQSIFBVNZEFIpRYrwLApEmTnnvueY2AIst3
-3333kB740Wj07rvv/v2KfyqMb9xXW3j+2ckKnpub+8GHH2kUKGBFUS9Y9opZkKMyd3S4qvLgCoR4
-5F1ok1cpiqJRSoHvamtOT5+T7O1UWVn59NPPaAQAASEsEo6Ew+FwOKzP/6PRaFSSEEIqYRoBSVGb
-99cXXnBugh014MMIYIxnzTrq5aceIIQ4nc7mxoZyTy4Xm/NjjDHi4nQBgHp9epOSlzEmS9HlN1wq
-iCZvmrtx78zs7NzmxgOP3H87L2hLFh6NAGGENI089chfc/PyJlUfK2tJWwHosrz2zApCiMPpbG7c
-n5NXvP6LT/7nlmtOnj+HAQBQxiAYCv7lz29qqvx/fnGVopEEZUn2CTA4G8Z4yuSp7R0dL73ywo/P
-PMvtTsMYU0qbmg6sfvvNieWVTmdy8d6HrIXn8AULp3xT2/74ix/+ZOHR1SXpPMdJivbNrsb3P950
-8cKK0pyEaklW3iGtAACgu7v7L3/5S3l5eUVFxSuvvPLEE090dnZijI+5u+PypSdeefz4OAJYrVY9
-cnBqA4N4GGOfffbZ1q1bzWbzq6++esMNNzz22GOD80QikVAo1N7eftFFF02fPv2mm25K4YUCANu3
-1zyw4uHJVZPuuuMWs9kcszUAhBYsmF9cXHTd9Tdt2Ljp3j/cFdPkJyFMXy2BYKi2NSCDpFFGCBtW
-mwBMoVyCMSkSvEMGZNOX/U0m3RsFx75ijAa4CaQQCyA2gGSM9VWBUJw7ZCwbxthsNuurBWO/ZwwM
-DAxS45AKID6ubIKPJBa3hdLgo1EleNLMxeluV6ffv2lbIxNTmWbo5mGMMgAGjFEEjAGhTCNMI1Qj
-vTN/RdVkhSiaJqtEkAIAeclWFJMFIXTMMcds3rzZ7XbrC7kej6e7u/uYY47R50sjiDwquno4GpH2
-+Pd0dHQMzqAXa7HZotEoQijxYWiyiokhBUnL9/zk1rM/ee7j+s11+bggd0q+ppGD6xqDWshsT8iH
-c4RaAFC6leNVSQ103Tg/xyIgqmoHG7b94oTcRdOLfT6flnCvDtBfJIE1F1ff17zz0UBXR0FhESEi
-rrwWYS7Uubl2+7MTKkqAMKpEcaqvZEqIHkkoGAxZrfac7AyEUHPLQYRQVJI0TcvKyua5pHf2SkHe
-2FgEIQ5R7392vFOSb/N4aX37B1mZJpmG/vq/Z9/+s095ThijY0uM4qIStV55+701oVCIUbJpy6a6
-+rqcnNzsrJyUCwcASungHap0FYCqqfPmn4QQBtD9Zhgw6LVZBaQqo6sAkurVysrKQMDf1HQwOy9v
-7dq1brc7HA7r42YAEARBlmW327127dq1e6SmXTUcxxcUFCQre1VVVcO+feGoJJisd//1sba2Vk0l
-n69d40rLRdpG5FmAgEJ4u6IoGoVAT3d3Z1thYWGytVRUVIRCgf0HDuTmFWqEhcLhASoAKRoFAI2C
-Smjjvj28ICQoS1K9yvP8zTffjBCilL7wwgv5BcWEsNi0P6YI6NUFcL2OWclOzgVBeOCBBwKBAKX0
-iy+/9Kanq4TW7a4pKcr828pViAFigCjraatfdtWy/6xbN2HaMbKadGSZeFmef+GFwqJijTJFUc78
-yWkrn3hW1gKUMUppU9fuC35+nhSVKIPEFQ3J3qtDZuN5fsG8BTtqtr/w4ioGzGq1BoNBh8M5dfJ0
-rzc9hR/pgFMAYO/e+tVvv/3nX//m7+/vePbNzyVZs9stgVC0IMv5+wuqC9O5x5989MpfjZuZdyxz
-enq6y+WKT2lpafnggw+++uorp9NZXFz82GOPvfjiiwghi8VSVFR0wQUXnHzyyWN86OnNwxi7XC5d
-BYDGHAsAIVRdXV1fX//LX/6yu7v7/vvvv++++9LT+5mMxTaVNJvN99xzz69+9atJkyYtWbIkhbpy
-83Lz8/L27z/Q3t6RX5BPGdPvUkYpJWT37tqOjs7TTzvV404DRpOWDgAhxBgLBgKrV62wp2UwShkD
-yihjwChhAPr4ABijjBFN27NjS1ZmQrdigneIfjD2W9bn/KIoyrJy7fW/i2W7+dabl//1gRUPr9CP
-Xv3fV8fXk7C4EI1GW1tb7Xa7w+HQjUk9Hs/+/fubm5sZY7IsV1RUKIoiCILFYtH9rSRJGvs9Y2Bg
-YJACY3IE0Bn8FP5iz6OEhRu7tkwotfHRhrBiPejfGlUkezh9Wt7SpArXVQCSokQktTsoUdZnSBZT
-ARCqaZQQSmjvX16RxiiLw+GYMWPG1q1bMzIyAMDn882YMcPhcMRsuVNDlmVZliVJispKQ11dfKUD
-cqalp+tDisNqJor6Xzt9usWb+BOXzik+tsTqtSmqwtn5fT37zG4zb0r9VonVMqvY/cy6HQjAxKWr
-irag3HLmZGdBumMsWzkkDW8Rpv0u3Pjhrh2rKVEsCCGEucyjNKmrq2uLyWIHe+qOeaJoUqMKxpTn
-BZezd0gKwHp6AiaTOSc7ac1Uyuh9rvvInDrtuufWXrP3YEduhrW0IKe1o2f3/tAlJz8MDFGguvNC
-yhWxUKjzsccCb77JGAPGbPn53r/8cc1771jMZvb+h9E339rNcYjj3IsWZS1bxidj0oIQQoDYUI4A
-qqIihCghH6/9RDfFhV6hEUZo3oJ5qE9NMI7YbLbqGTMff2T5b35/+6TJhfv37z/vvPOWLVu2devW
-QCBw6qmn/uEPf3j//fezc3KefGfHu688MXv2bKczacOZgoICm832n39/fvyc+YVllfklFSqhm75e
-ZzMFQUiD4CYU2gRat6IwRaPbNvw7Jzc/IyMjBVlmzpr1yAN/uv2PD2mEhQepAHqVLIQpirbm5cdn
-z56dVLyxFCCUKhoFymKe/72L/xyKRQfQcyb7rMAYl5WVIYQopVu3bjOZrYQyjsO5OZkZ6eW061Gk
-UU4hLugs8QoYIwaMsqQdAeKhhCoaJZRhhIGxqOZ7q+bOrp6urp7uTl+3RghCsVjl3+ron+O46dOq
-p0+rZoxt27ats6uzYuKYop/GgzHOzc07Z8kSkecuXjT9ojOm90TZpi3bosGu6imVCCFN0xadsXi8
-qouv1+Vyxe5PQshTTz31xRdfKIoSCASCweC6des2btxoNpvNZvNll102b948r9c7Xpux8Tzvdrvb
-29vHpTSMcVZW1rx58/72t7/dcssttbW1l156KaVU6UMfRegfwuGwbsrx0ksvpaACwBhnZqTfcfvN
-L73891//9rrLL/v5gvnzdLeqSER66OFHPvzwo9tvu/lHPzpeVVU2SA+bIKIo/td/XdnS0tL3Phr6
-r5756OmVM2bMSK2iEYgpCxzOXhUAAAxw/kcIxY7GzkqqFo7jiouLW1pa/H7/3LlzdY0AIWTWrFl6
-OEC3260/V3VPhPXr12dmZpaUlIyrrAYGBgaJcsgK4PPPP4+lJhjCCoYJB7itcfWJMydn5ZTYrKqk
-9tis4jHTSwiTPt/83tTcS5Jqn76M3NrR7c4KNbUHdeOs3iU/3R2AMUoZoZRSpqsAQEtliT5eFsaY
-2+2urKysr69HCFVVVblcrj4PsdTDAer+e5IkaRoRrYfGHxD7gxACBIBUjeoqAEVRkqooKY31cBbg
-PM8XVBQwxhCgT/7xWSAUPGvp4qQKH64Wq8hfdmLura/teHOrbUl1RlGGyPM8F1vdS36NK+UBNF94
-CnWWk53P6cNwhBCXPjO8dzNSFK5sWsrFmkyir0cFBlarLVaIIIhOhzNlY3iUkrz68pQgCABgFqyn
-TLheYr7XttzR3oVNOOvXZzxkMdljhohJlRyP1t5+4MILCwsLZy1YwAsCIFS3a1fL9Td5lv03/8VX
-E7dun7x4MQIglO7fu3fvOecUP/usqbAw8fKhd1PAQfWqGkLAABacMh9jzHEcQr1O47E8yrg6AiCE
-MMY3/v6GpUt/PveUxWs37WuR7fc+8U8siBlVJ2uUMYR/v+Kfn+0jT62p2fzlZ5s+f/feP/xPWlpa
-CvPVpUsvueOGX//z/a/MVitloGpMktW/vfj2qUdbqNSoyV07m09UlA/93d1/f+zOiy/8mR5rKtla
-brzhhosvvmTeGWfPPPpHwVDo8l/9iucFBAAIECBKKSeYFJV++cnbNRs+veeeuz2eRAO5DfiQCABA
-CFEI4Qg7tPjPYczFOwIc8rtO7XbVbydFo4QAwggBIBZibW/iiAZhFQVURNiA/KnVQghRNEIoYASt
-bc0H/BvC0XA4GglHIxEpTKiGEMLJWBon26ujZnO53E6Xq9vnG4sOYvC5drvdbi/VP2OMCrPdvjzX
-frW3FkEQCgsSslhJSl4AcDqdugqAUvrss89++eWX1dXV7e3tGzZsaGho6Onp4Xn+tNNOO//88/Py
-8txud/xOfimjl6ArIGIp46LTqaio6OzsfOSRR26//fYlS5bEdjuKzZkjkUg4HN6+ffutt966bNmy
-+fPnpzxOEEXx4ot+VlEx4c9/Wb558ze/XvbfLS1tt9x2BwA8tfLxrMzMXju+FIY9+kANAABiPlOx
-oIbxfy0Wy9y5c5Oaeyd4h8Tebnou3e1fEET9URDv/A8I+o7qqx2pvBmtVivG2O/3K4piNpudTmdP
-T4+qqrr44XCY4ziPx4MQ0s083W53vMuAgYGBwbfJIRVAfLTnBB9JsdndgPyU8hazgrmwLxJCQDEO
-myxMZCIhSZtA6+EAVUJlRYvKCkY4tnjCmD69jIUGoEQPEKCNMvRPRBZFUfLy8vR5VHZ2dszMLz5n
-slUoiqJ7/l9/zTX6NkLDFcLz/F5ug4U6RvVnjhHTcyfYmCGvnR4BAWOsh6ihlE45rqpkRokeIH/s
-vcrz3PEVmQ8vndnUHbZarQghvS79pZt4r0IcyTYpBucutR1/l/6WRwhIpFPqaMHpk60W71iKtZgt
-oVCQ4wWrxaqnZGXqO2aNaaidrLw8zzc2NjY1NSGEKKWSJJWXlxV6ZkzJnTNnyk94ntcXXvRFpBQd
-WwBCa9cWlJZmHH30py+/rEoSx/OLzjyzZe1abvdu+5tvz7jiig9ffTXa0SFYLBVTppRPmND97rsZ
-l1+elOCUEoQGGikomooQ5jD++ONPOMxhjuMwRpjDCHEYn3raQoRQIrEAku3VkpKSX/7yF7f85pd3
-Ln966qwTQLBqlGkIEwQaZZSzSjLduumrZ/58rSJLq1evnjMnOS99nQsuvHDtxx//6a7f33D3Awyw
-RtHskxZt/PdHL34oqapbUa2yoi0878oXHrpNlqJut1uPNZVsLUVFRZdd9svbr/nVHfevvGvF87Ks
-MmCEIUqBMEYoUOA2/vuD5//6e1WR3nzzzQRlSe23CQCEEFklPKVmgdcn/3ERAXqjA2CMDtl7JI9e
-i6oRwigw+PSTT1b/7SwSDGCJYIXQKD3QpU3VJ+fjUAsllPKi+OnaL88+5QrKKKGEMkoIDfuoZYEZ
-oyRkSbZXAQZ7zwyfM1UOXy3JyqurABhjb7755tq1ay+99NLt27fv2rVr8+bNkUjE6/UuXrz4ggsu
-8Hg8+rtmXCZdevM4jotN5Mb4SoqBMT7uuOM6Ojoefvjhm266aYDtoaZpugogNzc3FAotX778+OOP
-T/bnNuDzUTNnPPTg/V9+vR4QcrmdpyyYv3jxIo7rfTuwXh/JVKQjhLz99tvHH398Tk4OoYwQqttv
-aoQSQjSNSMHgm6+9Zrfbjz02iYCUCd4hsaMAwPP8JRddqluNqao6wPlfFMRLL/lF/FkY9yshwVZ1
-dnaWl5djjGVZdjgc+fn5oVBI3xPR6XS63W5ZlkOhEM/zZWVlHR0dsT1lDQwMDL5lhDG+sfRH8ABD
-4mBEbmwN8DyXleEGkDjsbO8KMBYNR5Nb00YI6T5vmkYlRY1KStxyca/vr64IoIwxyihlgBBPU3TU
-HyBLJBLJy8tDCMXHp+G43o3cUqgiEAjU1dXFKkIjBhOGdqeGUCSSaIQ8QRBS2Ctr8LXjOC5eLb3g
-vAVtbW0JRuhJpBYO46mFnqmFh1YU9VXcZHs1BXlHgmqRb55mDKdNXjrGMl1Odzgc7u7utNvs4xjs
-N1l57XZ7aWlp7KvP57PbHVcu+ot+yx26HByX+siV0sjq1eVFRV+9/HLJSy8J2dl1J5yAAFRCJiw8
-o2XVi6S+XguHy95/H8ty3XnnHTtnzv41a9IvuyzxGgCAMdqvcbqZjKoihARBOP3003mO53me43iO
-4/TgHXr2RNRnKdxFF198cTAY/N0vzz3jnIsvvuoms9WhMSAUNAq+rs5XH7vn64/fJJqGEPrss8/u
-uuuuO++8M/HCe1vF83fdeeflV1zReKDhd3euyMwtLJ96dHHVbD0+v6bRAw11K/9nWcuBOk1VVqxY
-UVlZWVVVlWwtCKGLLrooEAhce9l5Z5xz8c+uvN7uSIvJ0tHW/M8n/7j+k7d0WT7//PO77777jjvu
-GLVMAEjtWUQpVVRipmA1DYgCeCg0AIpTAacgb+/knBDCYNLkqTZn3s0PhTDiEDJhZEIImcT0OXNP
-wnhMVvrQZ2tAET55/sK/PvQ00RSOwxzH8RziMSeI/OmnndERoYnXkmyvxrLpKt0hciRpePUt15KU
-vADgdDrtdvu2bdueeOKJ6urqN954Y+PGjZs3b9bbxnHckiVLdH+ZcXtlIMQY0zQNY5yWluZyuXp6
-epKNUjECutnCqlWr7rnnHo/Ho2kapVQfDkmSpDvs6DsFCIJw6623rlq1KvHC4xup+/8zxjyetNNO
-XUApNYniOWf/pHd3FX11pTdEYJK9BwD6MgDAGUt+JmmgaJTq6kXd+Z+CRpmvJ1JbW5tC1/E8P+od
-oh81mUwYY31bA/0+FUXTg8tXxA/B4pUFCCGMsSiakhVZvxXr6urcbjfP8z09PVar1el06rEqVVXV
-DQR4npckqb6+vqioaBxvSAMDA4OkGIdNAQcvIU4t/LG/K1zftvHoaZzLqfYEghu2h3KdFZVZ05Ot
-Qt+cT1G1nmBUkpW+MK0xFUCfGiDuFH3MOnZZACAcDg/IlrIJAELI4bB/+NGHPM9PmjSpYV+DNkw7
-RVEsLSvdvXs3pbR6eqI9ZjabhytwSIa7dgMYi7wJ1pJgSwaQrLwjQ0Kt2JbrnnkZFixjLy03J6+j
-s11WZLvNPvbSdMYor97J+gx5cPpYRiE8gMlsJj6fdvCgyW4PRaOC10u9XlNRkT8SEW220IYNtqIi
-bDJxAJjSZJtNKdUD/cf2BdCj/SOEEMYffbiW4ziO5wReOHPRmRzPY4yBMdQXL2BkUuhVnuevuuqq
-Y445ZvnyB8//+zO5RaUlE6YQQg/U7+hoaaqeOfPWW2555plnGhsbAeD9999PQQWAECouLn7+uef+
-cO8fLzv7xDN+urS0amZR+WRF0/bu3l6/Y9O/3/vHpEmVjZqKEAqFQldfffXatWtTqCVeljdeeTo7
-r6CkYqqmkcb6nd2dbUcdddQtN9/8zDPPNDU1McY+/PDDRFQACCGTyZRsr0Kv8TwNSaokaxj3Ov9z
-HOYw4jmsp0QkbSw7sPUpGqhKWGFByap/fcLznMBhnuN4HvMcFjiO43BTV2j0skaTRSW0KyApKi2Y
-cjzuU2Rg1OvasK0pFJLUpGRJtlcBoKW1OTc3d8ijUjR68GBjMvV/27UkLi/G2OFwtLW13XPPPZIk
-rVmzpq6uTp+c6wbYP//5zwdE1Bs7ANDR0fGnP/2J53mXy+V2u7u7u5cvX15eXj5cbySL1Wo999xz
-v/7667a2Nj0okq4CiH2glAqCsHDhwokTU9zeMDbJZ4Ogcf8xxmDQtiyJE41EW3wRSUOigE0CbxY5
-URD1DzzPvdvml9VUdvpM/OlNCMnLyxv8+hv5lO7u7mSbhDF2Op3Z2dlfffVVYWHh3r17BUGYPn26
-zWbTx5Pbt29HCJWVlR04cKCwsPBwB1gxMDAwGIExWQHovsS6v3F8+pmzfoMQevU/dylqAzCHrMp5
-zqnHFl2cgmcsIeSVNf9ubPX7wsqgUweOoAABRpwFpxJbbjhZBlaJccpbqVdWTnrjzdcx5hefudjr
-8Q4XrsxkMnm93rdWv8mAnfvThDbiQggJgpC41wD6VuQ9rLXwPJ+UvKOU5i50Hvc7NH5rRGM3/h/A
-GOUFgJaWlkAgMPhQKBRyOByplWw56aTOjRunTZiwddkyq8czdcaMpvZ2609+wgD4RYuaPv54amXl
-nieeaO3unlpV5evpMSdjGM8Yk6Qob/W27N+dW1ShG00jhBiAPr3nMF542qk8Lwg8z/MC0jd4Rxgw
-RolZAaTWqxjjY4455plnnt6xY8euXbsaGxvNZtuJs87NycnxeDyZmZkrV6686qqr9u/ff8cdd6R8
-ybKzs5ff/9e33nrriy++2Pbl2gMH9nM8V1ZeXl5aet21vysqKqqpqXn44YcRQsXFxSnXMlgWi8U1
-77gLcnNzPR5PRkbGscce++tf/7qxsfG2225LfL062TU9AFBV9au1qydWn6Av1gFjDPV+PBQpBdje
-mo1ojF76UrDVF231RUfKqEbHUoumad+sW1Mx44SWcZIl2V4NBgNWq+3999eMlAnj0pJyvUDGWDgc
-crmSi9aZYC35eYXRaFT3/EqQpORljO3atevJJ59sbW31+/26WZndbpckqby8fNmyZZWVlfr+vok3
-YNTmtbe3X3311a2t9dDp3QAAIABJREFUrVdeeaWuBQCApqamq6666pFHHhkvLUBGRsaZZ56ZYJMS
-L1bXhT373Ko+b8r+QNz/jDHGCCF79+5DkLQVANJvrUikpdMXJaJKaNz5fbEwGPV3tREyJVkREnl6
-AwDGOBgMHjx4UI86HAP19yYYkCgIQlpamr4JdBIiI4QQ0k0AAoFAVVVVd3e3bgsAAIFAIDMz0+v1
-dnV1lZaWphDDxcDAwGAcGZMKAGOs73cy5NGuzvAXO+sFQSBEq/TmpRaAp7Ky0uxoK8l20wTWDwVB
-sNls+TmZKVQ0sizxaJqWmZlKFRaL5cbf37J+/dePP/HYyOOhSCQyZ+7cOSfO1UPXJlK4vmaSeKu+
-BXkPay3Jyvt9Z4zy6qakQx4ym82J32YDz/3Rj/b94x8zp007+aSTNEk62NHR0NiIr7rKjJB74cLW
-l182AcwoKzNNmxbq6dm2fbt2+unmnh53YvsCqKra3eWTs89Y/8X/0rX/PDQ8w5xa8XuEUHbm0Dss
-8IhnjCUytx9Lr1qt1qOPPnr27Nm6Ua4oina7vS+UFHr00Ud37NiRWiyAGDzPL1my5JRTTgmFQsFg
-UJIkk8lkt9vtdrvH45kxY4bVan333XcffPDBMf4QRpAFAB599NGampoTTzwxwVpEUUy2VzHGc+fM
-+eKLLzZ/8oa+vKkz2NCX47gLL7wwZXlNJvGxP94Ss6nW+hiwCAkAkydPTvmhN2fOieMuS+K9Sgh5
-+pmVl/3fyxOZ0usF9vT4n3v+2Wt+c20iLUmqFsbYl199saNmx+kLz0i8cJSkvA8++KC+uZrT6eQ4
-rqysTL+f9YXWmKPZeEEpXbNmzYEDBzDGjz/+OPR5ugFAc3PzG2+8ceWVV45jdeMOxnj+/PmPPb4y
-Lk1/vKLhUjiOO2PRoqRVAG43QohRcu/vfq6738eI/2oymS44/6fJXiOTyZSIq4jXm97cfDAvL18f
-gsbP8/uaOUQKALS0NttsdkJICg59DodDX+F3uVy7d++ura1FCAmCUFlZaTabdf//H87oxcDA4MgE
-r1+//rtug8E4QCkVRZGNYXe37xeGvEcCiiy3fvyx9uyzqLWVWa3RkhL1/PMzysqKiopEUZS7ulr/
-/Ge2YwcLBlWv13/GGWlz5pSUlCRo/aivDEejUVmW4wUHgD17a3t6/HqQan0Pj74/gBAwBsBYbl7e
-qQtOG7mKI7NXv+8YvXo4+KH16g9NXoNkSeQOAYBgMLinfnc4HEpqys1xnCCI+bmFJSUlY9kK2sDA
-wOCIBX/99dffdRsMDAy+rzDGZFmORCKaplmtVqvVajabY2Mmxlg0GtX3r7bZbDabLdkVlfjFmf71
-9tmU9j8Y2xowttmkgYGBgcEPlmg02tXVpe9AnEh+xpgkSR6Px+PxJBVBwMDAwOB7BP7qq6++6zYY
-GBgYGBgYGBgYGBgYGBgcdsa6KaCBgYGBgYGBgYGBgYGBgcH3AsPGycDAwMDAwMDAwMDAwMDgB4Fh
-BWBgYGBgYGBgYGBgYGBg8IPAUAEYGBgYGBgYGBgYGBgYGPwgMBwBDAwMDAwMDAwMDAwMDAx+EAi1
-tbXfdRsMDAwMDAwMDAwMDAwMDAwOO3jv3r3fdRsMDAwMDAwMDAwMDAwMDAwOO0YsAAMDAwMDAwMD
-g/+foZQSQgBg7ONejDHGWBAEnufHpW0GBgYG3zLCd90AAwMDAwMDAwMDg8MFIaSjo2Pt2rXNzc2M
-sTGWxvN8SUnJmWeemZaWRggZlxYaGBgYfJvgurq677oNBgYGBgYGBgYGBoeFSCTyxhtvOByO8vJy
-k8mEMR5LaZqm1dXVaZp26aWXRiKR8WqkgYGBwbeG4QhgYGBgYGBg8N2gD0KOqKGIPj8c4yzR4IiC
-UtrW1nbaaaeJosjzPMeNaT8sQRAqKyvfe+89juOOqFvXwMDAIEEMFYCBgcERjSiKug/n2K03Dzcc
-x+neoZqmpVbCD0pY9MOT97DyPe1MWZZbWlqi0egRMhrBGNvt9ry8PLPZ/F23xWDc0O8u/a4TBGGM
-KoD4Mo+Q+9bAwMAgKYxYAAYGBkc0lFJFUSRJ0iM5fYctAQBZloc7ijE2m81ZWVmCIKQ8S/weCWux
-WDIzM8ciLPrhyXtY+T52pj7/LykpqaioGJdZ2dghhNTW1jY1NZWUlBwhTTIYL3AcYy9qXJpkYGBg
-8J1gWAGMCUqpKIpH/pLLDwHjWhw5jO+1IITIsmwymVwu13c76jp48GB1dfVwRxljnZ2d3d3dpaWl
-0Wg0tSqOEGEBoLm5eQRhKaVdXV3d3d0lJSUpC4t+ePIeVr6PnQkA0Wj0yJn/I4QEQZg4ceKuXbsG
-h4433jLfXwAAYwxxjGOB49JCAwMDg28TQwUwJmRZtlgslNLvuiEGxrU4ghjfa8EYo5Q6nU5RFMel
-wNTQB3wIoXA4PFyezMzMzs5OnudTfq7+oIRFPzx5Dyvfx85kjDHGjpz5v06sYQM0KcZb5vtL7LYc
-XxUAMhwBDAwMvp+k7ghAKU3kRcjzfOL7pi5duhQhtHz58pUrV+7atevss8/OyMhYuXJlRkbG8uXL
-9aM333zz559//vnnn8+ZM6e6uvqmm25au3btqCW3NDYihLLz8vzd3aqiON1uXhB6urt5ns/Oz9eP
-pmdlSZFINBKx2e0ms7m5sXHi5MkjFyvLcsq7wqqq5uvy5eRlp3b6qLS1tHszvCbTOI8F21sOutxu
-SZK8GVnjW/KQMAYcl9ByVlLXAgBqamry8/M9Hk98ektLSzAYpJTqg2lKKQCUlpamp6cn3fT+pFwy
-AOzevVvTNNqfoqKi4uLisTQJABoaGiwWCwMAxhhjAND7OT4l9g+AIssWi2WE9T2dsfwuhmRc7DbH
-pQ16Z8QS/X5//C00LmPBI0FYvRnxwgJAIBBIS0uLZRivge8PTd7DyvexM4/Mjh3cKgBQFMXYB/57
-zfhaAYxLkwwMDAy+E1K3Aujp6Zk82gwZIbRz506v15tgmffee29+fj5C6MYbb4wlnnjiiQghAFi1
-apWeUllZedlllyGEtm7dmpOTk4gIbo/H5nAghNKzDk1crTYbQohS6vJ6zWazIAgms9nt9SKEZEmy
-2myjlqwoiiCk0odSVJKi8mGNJctxXCgQstosVpt17KXpvp1msxkApGgEIaxpmqqoNrtt7IUPWZ0U
-lSPhiKqqHm9aIrWoqpr4tQCAwR6zjLFAIDB4su3z+RK/h4dkjCXb7fZwOBzzYOQ4zmQyOZ3OMd48
-AMDzfF5eHgyCxX9Ch753dXcFA4FR603qWiTCEbVIGJMrGo2uXbv23HPPHXK2kHL5R6awkUjk448/
-Puecc8ZXWPTDk/ew8n3szCPTrl5XYQxQVaT8xjf4zoG+0H3jdcvpRiKGI4CBgcH3lNRfZgBgMpko
-HelJyvNcUs/HU089taamZoRTAIDjuNgqx7Rp05577rlEyt9fX181aOlSD0QUiURMJlM4HDabzUVF
-RS6XCyFkMpszE1Au6KudyfZhMBBijHm8aYGeYHtrhyAKVuv4TNQRQlJUliSJaMRsNrvTXIGeoKpq
-LrdzjMVGIhFJkhBCrjQPpVQUTaFgWIpKmOMslnELm8wYkyU5EolSQkWTSTSJXGK3kK6hSPxaDLkU
-gDHWHX3jj2KMvV5vUpcY+uwD4xlLybpebDAjj2NGXQwEAEJIXV1d3Ko/G/BZ/6rbLOhfc3NzR25z
-stciEY6EhU2EkD7g0z8DQE1NDaV0165dkyZNiiWO3TT0CBSWMVZTU0MI2b17d2VlpZ44LsKi/3/l
-jf3Mv00Bv3edOcCs5lsDAJqbmwsKCkbIMFgFIMuHV3GfAMAY4CFM44ZL/7ZJ0Dh0HEvW1eKJlBD/
-+x37RUzkgXD4esPAwMBgjIxJBRCRSX1rgFCCEBJ4gVCNxWkERFGcmOdJSgWgTxveeuuthoYGh8OB
-ENLjG8uyLMuyJEl+v3/RokVnn322/uTdsGHDLbfc8sEHHyTY4PivkiTpIX/dbjdjjFIWDAZ37qwp
-Li7OzMyMhsMtjY0TRjNzUFU12amOr9sviqLNZlNV1eG0O11OACbLckdbZ5rHLY7Bbl9V1YA/aHfY
-3W4XxhwAU1XVarPKstzd5fOme0YvYngkWdJNAFRZUhXFancAgMlsjoQiZrNpLCUjfXVFViKRKNGI
-2WK2Wa0II0oZMABAAKO/rQEgqWsxpAoAIaRpmqqqcZbvAABOp9NkSlRGQkhbW1t6errVamWM9fT0
-6LYGg8EYU0oTmagfOHAgfhI+5Cx9wNfMzMzYvHQE9HBcAxITadLIR5P7XQDAoTr7fYm1Z8QRXqye
-uPPi0wa1o3/5g08fqsC4wvTD0Wj0wIEDubm5NTU1ic8S+4uXgrCDzxpN/EHnpiZsY2Njdnb2zp07
-KyoqEhQWId2AJFbeEHfWMPIOuicOZU9BlISyjou8MSilX3zxxf79+9PT0+fNm2exWMY4OR985wz+
-oQ7szOHu/IHSH8o3qMhEum6snfmdzKh9Pt+jjz564403ut3uITPoD9X4/gQATdOSV24CY4AxNx7K
-GSDBmpef2jDtV5fOdMX/aoCGa5578IvZ11xebf8ulQDRaPSYY44ZOY/NZlu/fn2yJcuyfP755x84
-cCCWgjF2uVxlZWXTp0+/5JJLMjIyRv6JQV/0PjTUTziFuTqMFg4wGo0ed9xxuqZe/23qb2f9s36D
-pdYbBgYGBmNnTLEAGGPhSCgYDCCEXC43x2GikUM5cG90osTLfPvttxFCxxxzjM/nu+2225zOgWvX
-oVDozDPPLCgo0F8ziWt/K6dNi/8KAG1tbRMnTjSbzcFQCADxPGe1WadOnfbNN1t6XRYPw3IK0Yim
-ana7TSMahzkAhDEFQGaz2Wq1+v0Bq81itVpSKFmKSpKkZGSmM8YIoXqxjDEGzGQSo5Eo0Yggpni5
-CSE2q1UUTYQQWZLsdpuqyJgz2WzWYDAIQy16JwQgVVWjkaiiqFarxeFwYIwJJYwyoOzbHxYCQFNT
-k6Zp+n1LCNEn3pIkxUauo5awc+dOjLF+C4VCoba2NjYM+lS5rKxs1GIx5iZMKIXh7fMHfPP7/H6/
-L5HWNjc3h8PhWHgCfbAyYcIE3RYmPqfP59PNFhLphyQAiG751zvaaefOzcSKpHVteucTsuS84wbk
-GvYGAxppra3Z2x4Bszu7fFJFtg0jIJH2fXsa2gIyE7Orjy7yb9lwIC6Eu5g78/hJab1jOSp37q2p
-bQlqnCOnYkpljo0bnMIQ4uKboffyzp073W63zWZzOp21tbWxO2SE3wIA7HvnlX2z/+9pBYQRTev4
-+s217NwLTkhUWIQASPDgzu171dLjZuVb8Ojizzhuclps2JqisIyxXbt2ud1uu92uKEqCwiIETOn4
-5vXVmyMcxgibPYXT5s6dlWcm6sjyAmjBpl3bG7SyY4/KsyAS6dhfv7+tJ6qByZVdOqkiz84j0MJt
-++oa2gMqmLKrj61K4wen9BVHpc69O2tbgpR35kycUpFjxf1SZk/KGSd5D8EY+/TTT1999dXZs2fv
-3r175cqV99xzz9SpUxM5d5ie7Nz29uf4J5fNsoYI0Zh04JPXayb8Ymmx2j1sZwIJNWzceEA6dMiU
-O/O4SS7Wv6PcEG7Zs6uhI0x4u7ewoqo4TYyVMErXjUtnficqAErphx9+KMvyRx999NOf/nTIPOPT
-MGBq57+ffOTL4l9e85PiserKEcK8vXDOGVav7Qhy9xjAyGvaKUdStFgsq1evjk8BAL/fv2/fvk8/
-/fTCCy+8/vrrFy5cmEhRg6+sLMvnnntefJbBn8wm0+uvvz6gnJErMpvNDzzwwK233irL8llnnXXF
-FVfceuutGzduLC0tvf/++zdt2vSnP/0pkQYbGBgYHA4OWQHEP84SGegMfoxKUUlRldhXjudjE5YE
-W3Prrbc+99xzmZmZs2fPfvTRR2+44YYBM3yO4+6///6LL774oYceys/Pr6iouO+++xIpv37XrglV
-VbGW64bKVqs1EAxihDmewxhjhDmOS0tL6+rqys7OLi4vH7XkZAXkBd6b7vH5ehwOOydiWZIBgdVq
-BUCaRtLSXD6fn+e4ZG0BVFWLRKJer0fTiN5j0aiEELJaLVRjgWDYm+7hhdQNsyVJ8ng9lFBN0/SV
-EACEAHies9ls0ahkS9KLARiEwxEpKomiaHPY3GluxoAQjRDa20iMEeozAEighyGOhBoQ5xYYn56R
-kREMBvUpccxCNSsrK5FiQ6EQYywYDE6YMIExpmma3W53OBy6FcAAywJdb5KZmZmIaIzR5ubm+EB9
-0D9KX3zoPgBQVFUUxURKDoVCuspD13fogvv9/gHat3A4rKs2qqurdfOckYtN6lq4ph2b/frHu2Zd
-UsV1NG7a6zxxKUC/HcVH0PRRqWX3PjlnxomFlsj+bTt2N7tm5gv+vTsaaOHU42c4RQwIobTZc4r0
-loDStv2bbk9s/Ayqv36Pz1l1wkyX3LRtW21bWnVGeEDKjMwIFg+FbNSFkmW5oaGBMdbd3Y0QCoVC
-kyZNGhD/bMi+mTArd/3X2+SyWaIS7N61X6g+f0DOkdSaTOmu37YnaLIIOAnxY3V/68ICQtjknX3u
-L0/JgVDzlnf+9cGmssuPdyjxmQbIC0zpqt9WFzgkI8YgZFQePdUlqr76rbv2dKZXZ2P/vpoDrHD6
-8TMcIgaEAFRf/5RDbVB9e+v8riknzHDKB7dt393mrk4Px1Kat29HKGec5O0n1Lx58+bPn4/61AEP
-PfTQE088kaohgG4L1e+nhRBi/UOZDOxMLDhKj+6984HJ7TXbfB4rHtBRQOW2uoZI5vQTZ9mVtp1b
-9xzMnF1q5xLounHszKEcmoAxwAgBQoAQpy+hA6OAeQ7rR9EYrN57eno2bNhQWFj49ddfn3LKKUMa
-AgwZCyDZNz4wzbdrW8SD67c0K0UlpphovW0HxhDmMB5gLgOA+kSOCQrAAHEc5yya5MAcAABjCGPd
-PAT1nqw3jumnD10RY4D78sdsE+KqRwhhjkOpuRVYrdZvvvlmuKPRaPTYY49FidnRDGaw+sDtds+a
-NWvmzJkLFy684YYbpkyZkpeXN9zp0Ldor6vg43+MZotlW12rrBGVMFUjMqGqxlRCFI0qGiWUKVL0
-uovmD7hR2WixAHieP+eccyZMmPDRRx9dd911GOMXX3zxz3/+869//ev09PSZM2fm5+dfc801KQ/M
-DAwMDMbCIRXAp59+Gks9+eSTRz1Tf4xazBbB07u2LNgddvuh6YEgCLHVzgRbs2XLFgDYvn17c3Nz
-IBBYtWrVpZdeGjudMSZJksfjufbaa6+99tpnn322s7Pzgw8+mD59+qgla6oKAD6fT5IkfcLjcDgU
-RUUIcRzHYU4HELhc7nA4nOZydXd05CUWcT2pJzgv8BmZXl+XXxAFTdNcLmePv8dsNtsdNlXV0tLS
-fN2+jKzk4s8H/AFvuldVNUHgw+GwqqgutzMYDDHGiEbSM71DWUMngaZpoiBqqgYAdoeTEGKxmBVZ
-YwzMZnOP35+s5UJUkkLBkMViEUSBEhrR+jnJH1rsRkAJNVlMicxmB3wYNf+QgzmPx+NwOOJLwxib
-TAk1oLW1taWlBSG0a9cul8tVXV3NcVzM1xR6VSdJl4wQyszM1Ec/sQaP/AEhlGCwwKKiIkVRIE43
-wXHcgAgFqqrqrrwIoZ07d86YMWPkLceSvRYql/Ojo8R/frKzaNqBLdrMn1Y5wCcNyDPM3AlouEuy
-5+c6RYzcBaVprQ0+KUNo6raWz8pxCH3GxpgXBIQQAhbtbpXTyr2mPgNmEm4PirnVXhOHxdwiZ1OT
-X7b4BqZYfVZPeqwZei9ZLJalS5fGu4eoqhqJRGBUR4DMaVPpJ9u7Z82gTdvaMo4/LROinYkJixAn
-WLyl1cXc/k0NSYjfV3PKwlqt1gHCKoqiB7YYUdi+HxcDnz9EhaxKD6sJaWAfyfEEY8HqLZ1exB3Y
-sl9P4G05JTaEEAKzK93JBxQCSrjZZy2blWPvlRExxd8/JbaOjbRIR9CUU+0x8UjMKXQebO6RLL5Y
-Sm6RK74ZY5N3CPn1DyeccMLjjz/W2HigqCihF8pQJUHfv/2eWYNb0r8z++58GvG1yWllXkH1Deg6
-xBjjLE4rjzmzwyYAYX2/3lG6bhw7c5AUjAS+vvva9yb9yLR50/4uLWfBf1174XRL23v/c8sns+65
-96yc8ObHbnjatOz+K6enYvVOKf3oo4+8Xm9aWtoIhgCDXxDJPtkQAqb6du/QquYd3/7JlmaluERk
-xL/pb0/uOvl3SytNTO1Y99SL/h8vW1KgHVj32mvr6oPUlF558qn5295qOfU3F04UQzUvPfDP6Om/
-veJol3zg7SfeNJ9/5Zyel1f8Z+ayy6bxu198qmbK0XTdR3Xus35z6UT94U81X82//vax7azLT0vf
-+ewQFe18/tGvsifxDXs7Q5pz8qILFk91Yxqs//ifb23qiEQiMnCW4lN+eZb1vWe+Klz6X6fmJW05
-ONw6f7wDRQqjEVmWf/azn8UcAXiez8rKOuqoo6688sqCgoJJkyadf/75K1euvP3224crAfpUAIOH
-QxgAAUXAEGMADAPDiCJgCEDgOMaGbfbIDwTGWF1d3XXXXdfW1jZp0qSFCxc+9dRTzz//fEtLy333
-3VdbW3vXXXel1hsGBgYGY+eQCuCkk06KpSbySNLfjoQQWZGHzGBBliFnWSPwq1/9CgAURQmFQj//
-+c9XrVp19dVXy31IkhQOhzs7OwVBaGpqWr16dWlp6UcffXTttdeOWnJOQQEABAKB7Owsh8MZCAQU
-RQEEPMcfUgBwHNGIpqkcxxFCopFIIhO/pASM4c3whAIhRVLEDG96pjcYCIXDEYvFQhkVRUFVNTFh
-o31N00STSBlFCIXDEQBIz/QihBRJMZlEb4YHje0do2ma1Wqlfa75hBKiqYIogj565DjGgFKaTCRq
-sJhNyNO78AIIEEa6FcaQuc3mhGbgSV2LIfMDwP79+yORSLwjAGOsoKCgqKho1DLLysqi0WhPT4/Z
-bK6qqsL9Q8eNpWRCiCRJ0Ld8oRebl5c3uM9VVcUY61P0RLpC07SYCiBWclpaWnzJgUAgIyOjp6cH
-IeTxeAKBwMgbGSZ7LRDihLLZVVvXvPGBveq80+yaHBp04rB3FyDUdwgLZqxG5AgNc2KwbuMen8w5
-ciZUTcyy6vcVsEhrK8mY5I7pL4AqEjVlmTFCCPFmu6CEI9KglKhs7R9GQ5druD3PRx4UUuSePNP5
-r/V15em14YqFpWYSiiQsLOIdGRmg+SBmnZqM+MkKGy9ISsLqK7gIgFGqSt3790TTJ+bZgA7U7/ST
-F/OOjHRQ/YDiywRgTA20NQXNmcUWJjWGsRDYs2GPT+WdOeWTyjyyr19K1YQsiy41o7LMTNm9Mlps
-vBKKRuNSzIe2GhmzvPHN7UXTtIaGhtrduzkO/vGPV6699vcjnzhceXE9qT85GAw9eR7y5gEaaWsl
-GVVugQYHdlSmJb3Q3VhX21jiUZq7LPlT7X1m3KN13Th15jCLBIz6du7Ieei+hzJDW5688Yl/zH7w
-8oqTf3HG2j++8MXR57W+UlNx6Z+npuj1HggEvv76a03T2traEEI9PT0LFy4c7HUIfYrR+JTknmzA
-VN+u7drEn5RXtqzfsPmgXFwq9jfo0HORSP0nXytzr759lj3c1sGc1C9u3e9TytwddX5XFqpvjRxl
-l5pbtOxTvDz4kW4bx6jmr/lP24//zzVLMuwikgAhhFTflrc/8B/1syXlFtwzqCIAAMbCTQcz/vvy
-xR55178e//Dr2RMXpPs2vrfNvXjZpYU96555tWfR0h9lafuLJ5Rm2ZIeOUSjUX0LpwGYzeYvv/xy
-LCoAs9n8v//7v7GvhJDW1tbVq1f/5je/eemll0RRnD179nvvvTdCyfG1D8gWiUSmV/TG3I0/YDKZ
-n3lnA8+4IZsNw9gSxlBVdcWKFbW1tQihu+++OxKJPPLII6qqrl27dtWqVZ999llra6vVajVUAAYG
-Bt8Jh+aZ8Y+hROwVe52ZNTUSHfoFH4t3knhrcnJyEEKzZs1qb29vaGi4++67dVfzGJIkvf766//4
-xz/+9a9/eb3epqamU089NZGSNbXXAdXj8SKgNqupvb09IzMTc5jn+d75PyGUsc7OzqKiItFs9mZm
-Jt7yFHC6nTZH75jJ5XZ2tHdZrRY9Hp4syaI4irl1DFlSzGYz0Ygg8LIkZ2Zn6OnZeVnjEmlWlmWP
-x0MIAQYIITkasdlsihTFvBmAEUIsVosUle2ORHcH7GhtRgi50ryqIstSFCHkcLopo1IkjBCy2h08
-x4dDAYSQxWozmcxd7S0Y48ycoaPip0D8OxsGBTLAg0hQu8FxXFVV1fbt2ysqKszmIXZJSK1kADh4
-8OCA3QT1GfsA9QGldOfOnRzHTZ06dRxLzsjISE9P37dvH8a4pKRk9I5IHgKOojxx496cEq8YCQ8R
-xaDfNYpdPIwEu8cUau2MenNEuaOxXYZspMmapKKJ1cdP5kIN3+zY05k2PcuEEQIaPNiOsqc7D/0m
-gJE4a2KOx0wmQ6T0ezCOPFwbfDsNkoTjC6YVrf/oveb0Yy/JJVIkYWH7UvGhUWoS4n8XwgIgpvq2
-vPjgZoww5yo/eclkF0T9I8o7SEaEQOvZs3FLi4LN3tLJeTYMXbIma3hi9fGTuWDDNzvruqpz+qfs
-6UybFpMaMO6TEfMc0wiNS+EO3Q3jcHERQggFAoG33npr79697e3tVqt1ctWEmdXFTz92zY23rUyw
-hKGqRkzzbXnpoa28bhLOGMoeMojI4PIBSLC5A2dNc3BAtEEdNTXdnZOBaxrrfcycNzXTGntujNZ1
-49SZw8ygMGctOu6oLIHjnBUnVpGnt3aQqsLiRb849vd/vu9+U/q59x6dlqo7vNfrXb58+ajZklFi
-DleC5ttdQ8qIByXGAAAgAElEQVR+nGVymqfa/7P5oFJSyg9RJCe4vGLPnl0HK48pyi1ANFyWqXzd
-JmlsX4v9qFnmbXs61CK5IZQ+OcuEDv0yMMd7p8+ZnucUEAKKEMPg37x6I5lz6Zx8E2Jk6LZjbEqf
-XOkVEUZZRU5lf4SBK9guOcozrZwIeR5S3y3hEnfZ/J+OHqRmMDabbfPmzQMSo9HoggUL9M88z4/L
-sEQQhMLCwssuu2znzp3/+c9/5s+fX1hYOHLJ+js3Nm+PP2S2WFd/uTeqkKiqEaLr15AiRa678GSB
-4xg/tPnPqD9ns9m8YsWKysrKDRs23H///VlZWVVVVbfffvuVV155+umnX3HFFXfeeeeAAAcGBgYG
-3wL6SuEhK4B169bFjs2dO3fU8/UXpNlk5l1Dh5rXt89N6j165513LlmyxO/3V1ZWfvTRRwUFBVOm
-TImvMRgMnn322du2bXvxxRd/+9vfer3eefPmJVJ+Z1tbelYWY4wxqqkSMGK1mNvbWr3edEYpx/GU
-0WhU6ursEATB6/USQvhkNplPUMB4VFX1d/fYHXaH044Q4nlOXxwWBJHEWYyPiqZpJpOJUgIAMVu7
-cCgcCUc93jTTmMP1E0I4jiOU9BnoI6YrA3p90jVRFAOBgM2eaDgAp8utyBLRNFVV7HY7pVTTNMao
-vi0i0TTGMYvFwvO8JMscx5tMJrNlFE154ssLAFBfXx8IBGRZrq+vP3DgQGVlpd1u148WFxfHAvjr
-mTmOS9BcHyEkCMKMGTPQUNv1FRUV6bb0KZTs9Xp1CwLdiACGMtcHgNra2kAggBDau3fvhAkTEmlw
-IiWjQV4GI5P8Ug/QQP1XB7Nm5Lf+e3PX4ikiDDIlPaTRABrct3FLY5RhU+b046Z6C6pKandv+XIf
-Z8/Mcppli8BFOFdRgdfCY+TKzbFs9UdZlolHoPkO+kz5R9njV5w5AUPMypNRxvHC4BSx3yBP76vh
-JIkdGkF2grzVlaY9HbMnOVG0Wxqcc3hhBwxwMedIVPzvQlhACHEm76xzfnFKnqD49v7njdfeES46
-OTdxq4deMcW0yuPnVRC5p2X3zm/I1GlO3CcjuHJyzNv8Muufst0v9ZOa9pOR75cyfvL25tm5c2dX
-V9eDDz5YWFioKkGqNFvNPZrSOrEso6mpqbCwcERhhwQQQpyYNvXs8+ZkiwgBjTas+fvWIVsyqDMB
-VH+z35Q3084hADSg63yRsLxvTzRv1gn55kjzzpptDVOOKnfxCCXSdePVmbEIqbGDRKOAeTNmhDDK
-BJuo+kIqoSZT8dxjbe+uyTnvqDSkP04PExDnGxWfOODDyGUwtbtmS2un/+l7N2DEAFk3N8olJShm
-wAHAGEIACJsLT73wlE/e+9dDX3hmn3n2/AnZ5a6efe3d8n5ccnqxvXZTXXsH89tK86wIlL4WAEK8
-Jc2s71AIAMCk/R+vE+xTjzfpThiDK9LPwmabgAEAYcwhxhASXPnOSENLqLq452C3mJluGWfT9NjI
-xGw2b9q0KeEOHB2M8cSJE9va2iilTqfzhRdeGKFk6B/Av9/sHYNV4DXKTJQnlCHQg0FjhBDPIR4j
-gcM8zw/wcYht6DNcpQDQ09Nz4YUXXnjhhQihrq6u3NzclStXIoQ6OzsZY9dff/31118/vr1tYGBg
-MDKUUl1Xe2iWO2fOnNjhBAf6AEAIUTVl5DyJP+AKCgoA4Kuvvuru7i4uLn744YcXL15M+pBlORQK
-BQKBrKysJ598csaMGQ6H4/bbb1+zZs2oJVvt9r5XIdVffllZ6Qeb28LhcEZGJsfxmqY2HWxSFXXK
-lCkAoMhye0uLo39c9LELGE80IgmCEIlE9fVzxhiljFLGcQNHHqO2QT8XIdwrHUKRiMQLQjQqjWWX
-QYSQqqpWq5VQAgCUMQCw2uyEaCazRVUpYxQAYY4hhAkhCWr3ZVlGCAuiyYKQqqkIIYvVzBhTFRkh
-ZDJbOI6TpShlxGK1CYJJ01RZUcxW+8idkPi1KC4u/uabb2Km+DabLXZWV1dXLEJ+bGBaVFQ02Ex0
-MO3t7fosOm70GBf+79DH3sh9AJCRkZmbmztqyenp6b27VPQJq39QFAUhJIoixrilpcXv9+sjko6O
-DpfLlZmAGUt6errb7Y4f2g6pmEhWBZDc74JJ7dt3wewL5pbV/fOVjw9WnZ0HAx8ph4ZrmHcWzTgm
-jyGEeROPEHIWTDm6ACFg4f0b/S6XxRwVqUwBIQyI0b5NvZjSdTBgK5hoiZ/iYsFq49WIApkCRlSO
-UFOmzUYHpljZEM0YntFtxQEzk8ibTExTh5wjjSDsIITExP9OhO2bcQB0dXVTzVRaINY0+CFnoLlQ
-YgvjWDC7s/OsBxpDNN3WJyNCjDCO40yDUnrP4gSrndeiCiABAVUiVMy02dihFDnC9f2yx+fiIlRa
-WvrZZ58VFhaqqnzOOed88eX6uu1PpbkjM6Y59+ypHWEj+uHRe5Iz21yUhgnRmKaJeiC4YZyT405l
-Sndz0JY/0YIRRoM7ioS7JGthjp3nkDOnOKNld2e01OXk0OhdN06dGf+s7DvCGAOgki+isjSeqqFu
-2VRkQZSoXRteW4dnTGx+/Z29My8oT2XrnMSBMToCAFO6du5Csy9aNjdbQEB6tv/r9c1NUnEGxsAI
-BQBGpZDMEAAgbM6qPv2SycfVvr/qzXfyrzonv1DYcmBfRMmb43WJRfDu3kae5J7s5g89h+M+6P8i
-zpR3ysUnd7z+/icNRWeWmgENURHEXAL0/xFCgIX0GQvK1r/86COetOypi39SKPZlTDV85QCsVuu6
-desURVmxYsVvf/vbkUPJJAXP80uXLtU07a9//euoJUP/KADxFxEjAKphqnGM8EBUQhFCwFSew7hr
-l8hYJscN1i8MuBZJofsIjG9vGBgYGCQCx3H6auWYHAEYYxrRItEhbFkRQtjOjbwOMJg33ngDIXTS
-SSe99tprZ5111qJFi9avX69pGiFE0zR9z/a3337bZrNdeumlxcXFPp8vwWlnTkEB6nupI4Q4zHE8
-X1Za7PP3+P1+SYpyHEIAeXl5ugk3h7GY8FbwqWF32CPhiMNp199MlFAAAAaUEF5IwlKO53lKCDAA
-DgjpDRrnTnPJkqzbF4wFWZbT0tIYZRhjfe1fd9jvG70BAkQJNZnEaERyuhJyXnB70imlUSmKEeZF
-M0JIIxQhpH+mDCij+mcGSNFUhyttXEwHY4iiOHny5G3btmVmZsYHENbDVuu2GPGG8e3t7aOqAABA
-URRPWm826P0fDTHc6Mvh8/foywKjltzQ0KAoChsGr9c7adKkvLy83Nzc+vp6URQTNNcHgL179+ol
-E0JY39aA5eXl2dnZiZQwHoDWvXNT94TTf+yOBgt+VL7x/a+az541cJaoexXpn7FotsaPmgAAUcnX
-tKeFz5vhEs0one1oaM+elIn8ze3EWWnjETCprSnqLk/v8xAnsqwJVivvyPGS2oO+3AkuuaUxZMmp
-sDqtA1Nch8xb4heRBlzSQ3b6Yx42jyTsYEYRv8LGETl6WISFxMzaAYAxoobadu+XnNVOhIYw8Rh+
-DE3VQE9UdDqtAlIDbc0Rwe2w2O1etrOhPasyE/lbOqlrotPB9UtxVlg5IkeJYDULjiwPqWv25ZQ5
-5damsCW7wuq0xKWEivoUZeMiL8bY4/F0dHQgBAL2X7Ps/AMH6tO9hGn+GRNNr767Y/78BaP22PBA
-70OJDjvlGNCZwKT2g1F3mX7nY8Ge1b+jJjqslJe6emRvuqCFOv3EUmzCCXbd+HRmbFLdXwVAqdz8
-+Sd7TvppUWj9+7tNUxanY9W/9Z+vHjz6v+48o+2xu5/94MTbFucfttnTGAPoIoQAoHvXTjphSWm6
-W0QImLVqqn3j5ib5TJeL665tDE0oUes21YbYBAQs2tEctGZnWExuj43zAQje0ozohzU0++RMk4hL
-s0Pv1PAZczNFhEYYTmFscnrKp8zLfHrNuurLT80zDaqoX/viWqp11jQ4T/2/F810C4LAI2A03PDx
-uzXZC8+cnpbim5dSGls21z8oivL3v/+9qanpnnvuGXILhtRKdjqd0Wg02ZIHTeZpqHELQkhAKP5N
-//zzz6uq+sILL1xyySWD5+qJ3yGHrzcMDAwMUuaQFcC///3vWOqQAV0GoC94mk1mnuv/koBeIyrd
-EUDPlmBrZs+evXnzZovFsnDhwkceeeS222674IIL4jOEQqElS5ace+65kydPLikpKS4ufuONNxIp
-f9/u3ZXTpunmzqC3EGOMcUZGelZWFoe5UMi3r+Eg6nusm63WgpKSBFueeDZKqaYSBkwQeAAQTQKh
-hMpUVVQ9Nj4gUBTVZk8iQozJbJIiEi/wlFBe4AM9AZPZpBeuB4ejhGKOE0WB5/mk5id6g3UvAA71
-GhxGwiGLxSxFI5gzMcYwwowyURBCoXDiGgc9Cp3VanU6nPqaMwAwYHEb3/d+VVVV01SOG2XBZ0jV
-/gjYbLYpU6bEB/9HCGGMCwoKwuFwbEiqH01kU0A9//9j773jrCiyxu9T1X375jA558DAkIeBIQcJ
-EpWgZBcVETGwrvv4291H13Vd3eSuD++uYdVFVxEDqyIgYQBFcs4wwzAMTGJynpu7q94/euZyJ98J
-MANTXz/y6eruOnXqVN+erqpTp5xOkYL8n9scAYB87tYEDACl1OFweDKB0OhLWm5BVzQBcJtGS09P
-r6mpkd1YPDFCs6N+7gsmW9LBQ7Ee3px/Lsc0erm3ZK9ygilxkHHzT3To/Y1ua/GLnNhunjt+pZIq
-tD5hiQNCtQiBMToxPD3t9MF0UTCFJySaeKBi7c1C4pPgJX/DUcmcfeZMdUzKYH/BGN3X79LlI/sd
-WBsQmxikxpyy0RnEqZqqYbVaU1NTRVGUzygUigULFsgN6oEXAKUUYdTi9FFb3Y/6hves+qj2eicr
-a7FYUlNTZa9XSqkgCPPnz/egspRSSp2VZzeuOwOAsDao/6QZg7ykimZ2QGgqoX7TBiRZi69evFjr
-IMCpjP5RA6IMPA/RfUPT004fuiIJpvCEfl4KodEZI9RknT1XGz1ikL/CFN3H92LakQNOThsQkxik
-xljpOqMLiAlvokZH63sLjuPslkKlomJ4UsiCucPs1hKFs7RvOFzLTO9Qx1J+YuSd4eqemro945rz
-AnA7SUVzQRHx6VP35ANSGBuZTsVr4/wvXz2+/6KElaaQ+L5+XE3WSQ9M14XGbGYIgAJWBcZUbnzx
-iWsWXd+ZTz0YyZmztm+8EP7Qa3E6fdjC8Tvf3HAk5RdjGq+N8ZBGMxNNl6K4Ihm5W7hdbzZCSNoV
-EjXTr/4bi9NH99McPZdPZ48dG/DFV3//o+DbZ3hSRGENUNGWf+TL7ZcrRE7tlzBhbpwWYd8offlu
-fmSgCiHJN9ZUfcmW7K+UC0byg+A6kF/M8lZ+gHV9Jo85/cn2o4MeGxPWpCD37JRSqNuOkCAtn7fz
-7T/vBIQEv6QHl0wOqLyZk89ZCTV2JOKCxWKZPn36jh07xo8fr9Fo5AMAkCTpyJEjb7zxxp/+9KcO
-iO285JZiAbhotq++Y8eOwsLCZ555ptFMgIcvhNtnDQaDwegMSF6a1QHy8vL6DRhyrbDK4bjltWvU
-a25cPh3fN7GkVhIEZUyg8fKFM567PiYnJ584cUI+zsjISE9Pf/HFF10vWVEUq6qqqqqqrly58sIL
-L7z99tulpaVvvfXW+vXr25R85eLFPv37Z2ZmRkdH8BwmhFBCCCXU9SmA4FpWrsnkJc9/Wszmwtzc
-6ISE1sVev3591KhRBQUFbSpAKXXY6/x+RVGyWq0ch+VdfSWJYITVGrUkSjzPmc0WX38fz/vqlNLS
-4jKtViOKEsdxVquVUFIvHCRJUqvUvIIDAIyxoBQ8l2y32wGBVqMlhCCEbDYbIaSmskyj0TidImAB
-Y4wQAgqYw1aL1WAyeL6RgcPhsNltCJDRaFSpVAAgT79Tt9lzhJDdbpckqdnoeo2MkJ2dnZKSIgd5
-bgWLxeK+yNOTA4NBr1K1HemgvLy8fiGAOy4318YXAMDb29vb27tNyYQQp9MJDUcVUP3+RrL1AMBm
-s8lu/G0KdJfs0hncFgI0uo1SKocDjI5uO0aU520hIwcBLS0tlRf3+vr6lpaWut+gUqnUarUoijzf
-7h2qmlXQUXT2eH5Q8pBAZTsn7IuLi4OCguTN/9LT00tLS729vcvKyqKiovr161dTU6PVagsLC6Oj
-o3NyclqRo9FoDAaD1WqVYze400MqSyktLS0NDAxsVNny8vKoqKiEhITa2lqNRlNUVNRKZRFCfn5+
-sguP/AI3m81Wa4MdAbq6vrL2xF58/uTNwGGDPa11l9RXRpKk9//13ponHxjYzwC0xG67efXS5Uvn
-M89dLN1/Unz7g087UCHZkhhj+WeCEAoMDKSUNvqJdYEx22+6ZmS0x5hpaWlpaWmPPvqooz5kLwAR
-q0/8+Zc7x//lt2NMXeKK3oCKioo333zT6XTKr1C1Wv0///M/Ol0DFzaO4z7++OMBAwao1bfe/JTS
-nJycESNGePhmuyugovna1o8OBMxbPDJYSexlZ7/69MLAx382yNDVhrdYLBMnThwzZszvfvc7TxbW
-dblki8WyefPm4cOHQwvxR2w22+rVq997770VK1aoVCr5AOrHBUaMGPH888+73y9J0qlTp5555plG
-f7C6UGcGg8G4fXga8a4pcj/KITqttlufdColb6mtjYmK4m+WAABGjcfRW+edd95x3RwXF1dcXLxq
-1Sqr1Wq1Wm02m8VikY/lKYXz58/7+PiUlpZ6Ij8qPl7uL2VkXMO4boWC21ZolBDJarX5+Pje6v55
-MNjP87wcPa5NBSRJslptgiCIoogAaTQah8NJiIQRVikVCGPRKXIcZ7Fa1RoVIcSTiO4yhBC1RmWx
-WlVKlSiKSpWSEiKKEiEEY06jUVJCnU6R53mr1cbx7YjHa7VZTUYToQQAKNQ1pVKlttsdSpXa4SRE
-IpjDUBcZirOYLQajp3/MFAqFQqGglFqtVnnDOa1Wq1arAYG8AWH9UMCtDnPr8DzfpssJpbS4uFgQ
-FG7d86Z981tIErHbbYIgJCb2b1MBL6/m42LKSJIkd35cwhFCer3ek6qVlJTIIxeuIAWU0sjISI1G
-A25PqTxQ0q5fdOuSXbhkeijck7Zw0WgEraSk8SwxdNmiVAAAoJKtRjKEegvtF4kQcr3QIiIirl27
-JghCTU2NvIkJAMiDZdCWocxms9nc/Pop6JGVDQ8PlytbW1s7dOhQDytLKZXvbLOgdivXBpKtRjSE
-tK/Wna+vi9CwsD+8sQ6AlpZW8jwfHh4eETUqcXTcrGVRHfuD28iSlNKbN2+2VIsOyHejI6ZrVg0P
-jdlSLAAA+e9z1w8B6PX65OTkrKysgICA4uLi2NhYjUbT1C+ANvFhpJR6/hf/boFQe0WFUxWn44kk
-SbbqSitv1Cna92fEIziOW7Ro0bPPPusKWnyHJbsPoDe7QFUQBHk+aePGjfKZjRs32my2xx57bMiQ
-IU888USjXHLSw++TjunMYDAYt4+OT7xQShECX4MeDLd6fVq1stzbu6Qw30erBgAOt+8vydatW4cN
-G+bqII0aNWrkyJGyZ3LdGn6MXVcBoKys7LnnnvNEcmFublh0dFhYmOyCCM2FckEIGerj/6nU6mAP
-NmxXKpXy9GybcBynEBTmWrNGqyESkUSJw5jDCABRCpQQzGG7w85xnFLVxox3M2qolE6n0+6wC4JA
-CAEKHMdxgAGQJEoYY47jzLVmjU7jef+fUio6RafTCfX1E0Unx/G8QkAIcwoFctpFSeQo58pgtznA
-4yEAGYSQIAjyWgCHw1FbW4sw0mo0SqWq3p/eUzxpC4QQx2E/Xy/Z0fjW/3UfzsjlZi+nAFBxUVFx
-cTOd0nZBKb1+/brD4Wi0A19wcHBERESbeSsqKuS1+rKjhNxdLy0tDffgEe0WyZ7/LjzE8xGxtkG8
-IXbYwI5ldetfqVSq6OjozMzMwYMHWyyWZu/pGD2wsmq1OioqKisra/Dgwe6DF13Se+/K+soghTF2
-2ID2Zuqi+mKMZ82aPWvW7HaW3zV01pgdMl0zYjw2pmtItNFCAMRhoLdlCAAAxowZc/r0aaVSWVVV
-NXbs2KYdQpdWjc4LgtC1b7ZuB3OGvhMGZWz/4K1dgBGnD02aMSPydgRaFATh5z//+W0Q3A7JHg7h
-uYMxnj59+uLFi5v21WlH9/iE22kNBoPB8JBOeQGUFt1s9P6zWCEiPKy6urq6utp1m+dFbN++/Xe/
-+93nn39eU1MzYcKEmpqaU6dOBQcHjx8//vPPPweAxYsX//TTTzdv3kxKStLr9fv27fNwHtViNlNK
-K0pKJEkyenlJklRbXS0olUYvr5LCQgDwCwysqqgoqKrSGQwcx1VVVHAcp1S18aeQ53nXmEKbqNUq
-BFBTXcsreJ7jAYDW90CJRGxWm1Kt1Go1sne950ZDCGGMdXqdudZiMVsEQcAclrvPcus4nA7RIuoN
-OpVa1a7m1mq17hsvYczxPF9eUqZUKp1Oh05vavQxpG5PCIOmuI8F1NTUIoTUajW0xwvAk7aQJJKT
-W0DdPEBc/7qfcUf2ue1wvQCAUioIgpunKwAAxlit9shiwcHBVqvVXVuO4/z8/Do/e+C5ZKPR6Plj
-2a7fhSfchonijtDoCzIiIiInJ2fYsGFNHYM7U/ceW9m8vLykpCT3ynbgk7qlgrqdO1bf28rdaMwm
-QwCAtUN/uW4owK09K7sWnU43aNCgM2fOJCcnN3UBcNeqqRdA177ZegBYEzlh8ZoJ7qfurQrW0Wju
-x8NcPM8vXbq02SzU4+AgDAaD0QPp+BCAWq1u1mW36W2eFzFr1ixKaUlJSWVlpcViqa2tLSwsVCqV
-oijKnw6iKJaVlRUWFtbW1nIcV1hYaLPZPJHv7edHKeUVCoQxwhhTyisUHM8DQrwc6BUhjud5QjDG
-CGNeofDEQUueE/C8gkqVUlAKNqvNarFJhED9om6FoPDyuRX3vgONgjHWG3Qarbq2xmyz1tsEIYyR
-RqMxmgwdCHHc/KpyBIJSsNrsmMNKrrHDQpf8LZTHAuRIPHa7XavVeiJWoVB40hYd2pe7C+rVUkQM
-TyRrtVqttplQi53XynPJ8jIHD0v0sC08p+snijuKe6XUavWkSZPcJza75KOw51TWvWuk0WgmTZpU
-W1vrOuOqYycburfV97Zy1xnTfeD1Tqo3ZsyYy5cvjx49utly3ceI3c/LS/l68gPAaInb0WN33/mC
-wWAw7i46vhDAk13H28vLL78MAM8++6zrzLhx49wvAcAjjzziujpo0CAPJfv4+wOAycfHdUZd3/OR
-LwGAwW3r9Tbn/2WaTu22CUJIrVGrNW2Hl+sAHMcZTYbbIdmFj18gAAiqzm432CYcx2k0mkaL0luh
-A23BuE10eVv0nLnNRmv4OY5zeTwBgNls7ryqPaSyAOC+wAEAMMY1NTXuV7tE1d5W39tKz9HQE2O6
-T7bf4SEAvV7/wgsvQAvLwltaCKBQKNhfmbuaLuyxs54/g8G4q+m4FwADADDG8v4xjG6HtUXPoWvb
-Qo4AolQqu7192+xfybtXtGsn1Eb0kMq6tpxshc5XFnpffW8rd68xnU7nHR4CaB3XDiyN2pr9lbl7
-cfcC6IBTZOsCu0A/BoPBuLOwIQAGg9GjkaNwK5XKbndyrqysbCUYGEJIoVB4e3vb7fYOv1d7SGUp
-pXegsgihXlXf28rdaEyHw4EQ0mg058+fHzBgQLf/wGVEUTx//rxOp+uSjiKj5+Bq0C7xBXANJbCH
-hMFg3I2wIQAGg9Gj4ThOjpHZ7T2E4ODg1vfUkANYdGa1cM+pbEhISOs6dL6yUF9fmQ4L6RLuTH1v
-K3ejMZVKpZ+f35UrV06dOtVDDCtv1xoYGCiHp+1udRhdQ6NYHl0yBABdurKAwWAw7iQdjwXAYDAY
-dwBP9pa/Z+hVlaUNt7tndIa71JgKhcJkMqlUqh7lYM9xnEqlUsihghn3ChhjV4jHzvfbCSGe77LM
-YDAYPQ3mBcBgMBgMBqN74Hlep9N1txbNwL6O7iUQQj4+PqWlpe3a3aYlKKXl5eV+fn5du/cNg8Fg
-3DHQoUOHulsHBoPBYDAYDAbjtkAIkSTp9OnTZWVlne+0Y4z9/f3HjBlDCLHb7V2iIYPBYNxJ0MGD
-B7tbBwaDwWAwGAwG47aAEFIqlTqdjue7ZgGsw+Ewm82s/89gMO5S+KtXr3a3DgwGg8FgMBiMXgdz
-pGcwGIxGtLm3bhcUkZWVdbvL6DYoIRRhjOoOAaAu1TjZq6GUyH+A601Vl24+2bthtmoXlBIKCMuv
-MWarpjAjtAf2OHkIe015DrNVe6GE1P0Ku8ZWoihu2rTpDnzsMhgMxt2CQqGYP3/+7S7lHtkRgBDS
-ZAsisWTfP/95Y8ZvHo0XrDd2ffpNhg1rE+cvnRSmtDVIqnrZn56GtpIqz3698WAplWyKvvN/NjVc
-Yb2R+unmDDun6z93ycRQoUGyd9uKEnNW6ufbMqxA9IMXLh0fyFmYrW7R+DdInWXnv/1ws23erx6J
-U1LCbOUGIQRj1NAmvc4IHiI/V5Q4ys5vXr/VMffFZXFKKtVmpX625aqD1/efu3hCiMJ8K7lkQqiy
-t1qSEIIRrbm2+8vvM6yIGgYvXDIuADNbNQchBIFYfubbLw6XAnEIfec9MiWcNzNbNYPr3U6JvWDf
-Bx/dvP+Xy6JxTdaejVuvOhXG/g8uGheMzW7J8e2zFc/zCxYsqKqqul0VYDAYjLsBhJDRaHQ4HFu3
-br0DxbVv9+BGG6tCj/Hgev755xudobVX9mUo9QoAoDWXdmX2eeTpp5fFpKVeNpOGyR6h/52koa04
-fcLUFWvWrFk91/fyoVw7qb60O6vv8jVPLY5J351WKzVI9jJbEUJeeOGFW2mEVUHJC1Y/88yqmZpz
-R286mD6vWy0AACAASURBVK1u0dhWQKXKs7suamL8eAAAymx1izpbNbJJLzOChzidzhdffBEoESvP
-7b6kjvHlAQCIVJ32Q3a/5U89uTA6fU96jeie7LWWrLMVwprg5IdWP7Nm5XTNuWMFDmarZpBthbDC
-1O/+R9esWf3EA76XD+fama2awel0/upXvwIAoESqyTh4VdDxAESsTv8pJ3H56pULIq/sTat1uifT
-e6utGAwG487T4b55+4YAtm3b1tJBD8ORf/iEOjlOhwDAWZFj8w83cJwhPNCcXWZtmBS7W9VuhlOb
-1JiI5tJqdaCOd1bm2f3CDRyvDw2wZJdZGyZ7va00PiYlotQp8hoFYrZqBcR5JS9+eLgPBwBAgdmq
-MU1s0huN4CkIK7yHLXyo/nGizso8u1+Ygef0oQHmG/LjVJ/MLu/llkScxseoREBEUaHmgdmqFRCn
-NqpR/Z8/jtmqNahku3nstDopRocoJc6qfLtfmIHn9SH+luxSq3syp9fbisFgMO4MTqdz165dzR60
-SfuGAHo4lBJCCKUgVZz/qXTQ6FCeAgBQhw1UPAJACiW1OqSGSdLdWncPLlsBNWd+/+917/6kShni
-i6nDBioOIUAKgVodpEHS2ettBUCJo/DYQcvAJH+e2aoZ3G3lfprZqgmUGaGjUKcdlDwChHiB2hxS
-wySzJFDJXnjykGVAkj/HbNUaVKq+8v2///n+QVXKYB/MbNUyVHJUXj5cPiAlpO6zymmve33xArU5
-Jfcke5sxGAxGz+deGgKw39jy3v/93zv/TS+7/tMZ77H9dEAppZRiQYPsIgWgThtSKbiGyd65vM9l
-KzNF2rhZT7zwP0sDDm06VQWycahsHIFzT6p7pa0otWVtee//1r37TbqZUslyfc/m64kPpPjygJmt
-GtHAVm7nEbNVExrZpHcaoaPUv9IpcX+c6pLMklQ0X9+79XrinBE+HLNVqyDOkDD7iedfWOR/+Osz
-9X/+mK2aQIlkzT1ywWt030afVbThZxXtus8qqTlIQ6gbnS+RwWAwehXtCwfoitra9KAHoIx6YM0v
-AMCZu213RUbO+1edZbkl2k0nHp0TpS/JrnKG0uxiVYS32qdBUtHdancL9bYCIKJIMaZYELDkJAqf
-CF1JTpUzhOSWqMK91e7JMK/eaCuEVDF1tqJi+ZnvdlrHPzLNB1MKPLNVI9xsBQDg9lHGbNUUnhmh
-YyDEe4XrSnOqHIFSXokq3Fvtngzrpa/0eihxlp/futs2btlwH0wBmK1ag4giYEyRICDRSZitWoIS
-R8nl6yWZ1z9Ic1QUVBo3Ry+eGqYrya1y+Iv5papwH42XW7LzbzOLxTJmzBhXkuM4k8lkbA6dTqdS
-qQwG/eDBQzpZKIPBYNyNdLhv3r4hgFmzZrV00INQhM167kUAkEp/+jA1+OHhvoJ9csKGz945S9R9
-5z2ix8oE92TPGcLoFhy5Oz/emiNhSRTipi/25tXaSfEbPnv3DNX0m7dczwkJ7slebStKbTd2fXu2
-1Fi8/u29vO+IhYuSE5it2gAhDACAOC2zVSMa26RXGqGd1O0IiDld/ITYjZ+9dwZ0/eYuNfAK96Su
-N1uSUmK9vmvzmWJD0fq39yj8UhY+nMRs1TyUEmv2jk+/z5UwkZRx0xf5KFQaZqtmwbwmas5zLwIl
-tuKDn+0PnjfcnzOPjf78s3+dwfp+Dy4xKPg4t2TX2YrnebVabTAY5A6/yWRyHev1eq1Wq1Aotm7d
-PDhJ1bEhALedoxsc92wa7I/K6EI68AzcPY8No9205GGEEPJ8/rtLhLSCQqGYNm1aswdtgrKysjqv
-Qbezdu3adevWdbcWdwfMVp7DbOU5zFaew2zlOcxWnsNs5SFOp/PXv/71m2++2d2K3AXY7faXX375
-L3/5y22SL4rit99+22hTQNkLQKfTVVdXt/KV7HA4/vKXP2/57t9bNsYU1La3NalkLz3+0fvHIlc8
-fX8wvnUc0rP9PYhYk/Hff37jnPv88gR1dytzL+H+PHj4DFDJVnz84w9PRD361LTgnv3YMNoHpbSo
-qOjIkSN5eXmNLmGMIyIiRo4c6ePj0+VC3DcFnD9/fucr0jrt8wJgMBgMBoPBYDBuEwghQRC8vb1b
-uUcUxQ0bPv30k3/u+DzKZHcUAFDRfO27f3x63lovhVN4pzy+ZkoArTz35UcnwxYvG1Ty7b8PByx9
-/L7Ae7C/RkXztS3vfFE6/umVw70wEGdVxo6Pv74RveDxWX207Z9sJGJt1rb/nEhcuThOeRu0bRlK
-nJWXNn+0B09fOSs4a8P/971q0QtL63SgxFF+/KN3DwQuX/tAhHBH1Wob4qy+tv2z0/0eW9iqxaho
-zj+duvPgpdwqJ+LU3mF9R86ckeyv8DB7O9SpufbdPzdcsNWlESd4J8+/z5m60zzu8YcHm7iuKOSe
-RRTFY8eOhYWFzZ07t9ElSZKOHz9+5MiRNr3gXUIefPBBSinGddH35FAmJ06c8ETIbeVeCgfYQdau
-Xdur8naGu7G+zFZ3Jm9nuBvry2x1Z/J2hruxvve2rbZu3bq2ObZu3dreQp1O5y9/+cv25uo8nSm3
-k3lffPHFjuW12+0dztsZOlOur6+vr69vS1clSdq2bdurv/vll++EhGIRl7r6OZj3G7ts9Zo1a9as
-eWr1k0tH+3EIcbrIlPvG9PUWtBEjJo9P9Lr3p76oZC068e3mdK/Ji6d3pP8PQCRz3tnM2ju/twMR
-LTf2pWZ6jZ0U3yHFuwtKxNq8c5k1DS1GJUf55X17z7t2/SXO2uupX+zKVA2d++jKJ362cObIuCB/
-Hd9C9nYU37ggAABAvOA/zvVzWLV0bHTs6HGBeXt3XzWzAJqtQggpKCgYNmyYfOzuyc9x3NChQ5tO
-7LckZMiQIadOnXr//fcJIQBgtVrffffdtLQ0D4XcVupehZIkOZ1OSZK6vACO4xQKBcexAScGg8Fg
-MHovs2bNqqysPHnypPvJYcOG9cSgQozuAyHk5+fX0hAApTQ7O/s3v/m1XqsO5ShXYoVqAGN9VsHg
-GxDgVTe9RSVr3p4P/pMx6IknY5UcCBGxJVv+8UbVlLUrBmlbKJxK1vwf5Czj/Xl5cv3dL+UsxF56
-4uMPzsVPjso9eia73MZ5x6TMmDshVosBqGQtPL1j8w8XCi1yPw7z6j6Ln18Uq+ysZKBiddbBrd8f
-yigXVb6xQ/oSrrXOMSXOqszUr/ZZBi1aMdyPryvaXnxhz/c/nMmuFnlD+ODxM6YODRRaKDRGLVVd
-2vzv/16sAdjwxqu8tu+SZ2YrD7Wi+X/WpycvGpyz/ftzZabxTz453q+joyyUiNXpB9KkmPmJJg6c
-rd0p2UtPfPzvC/1nxWf/eCSzzK4M6Dduxmh9euqeMzmVdsE/ceLc2cODlCCZc4/v+H7/xUILYG1A
-/IgZD4yL0CAq2YrO7d3+09nsSien8UuYvGTeYA0AEGLNPfTl5sOXS5yCd8zIuiagxFZ8ZveuI+m5
-JbVOXh/cf/wDM4YF3Jqsp8RReXnz+m8uVQNseONVQZ+4+NkF0UoASh21+Zcv2WPGDvSpq5+5oMhh
-HDRpTGIwDwChUX3kLTcvumfvt2jNbN25Tz+5kvTQoJztOy5Ueo1/4omxXo6C0zs2/3CxyFr3gAma
-vgt//nCsEpoWVAdCSvefAwBRxoyI+3HTwYvlcSN8WL+sbex2+4cffjhx4sSwsDCdTteB1fuiKB45
-coQQ8v777//sZz97//33AeDIkSPx8fGeS3A6nfIIQudx75XzACBJUklJSWpqan5+fleVIYMxDg0N
-nT17tq+vryiKbWdgMBgMBoNxL4IQWrJkSXV1dUZGhuvkkiVLetLWQozup5UhAEppQUHBP/7xj9de
-+8Ovf/2rYUuupv/RV+DunK86kRxFB09FLVnxwlJ1beauj7/a8kPMM7MjFJK96Og3qbmRD/9iZbj9
-0uaPv68e+fgjowLboVhLkomzKu37TQdKE2Y9vjiML7uY+s0+O41pSQqVbIXHdm7O8J/2+JRojfy7
-Ik5z1q7Ptl6LmL7smWiNOfvE9h2fbhZWP9RPaKlQU+LcVdiy7jt+4QtL45RAJWt+K5pTyZa3fxuN
-T1m0MsRo9O64lwWlojn7fAEOWxCuQtDmRDWRbAUHjsYteuyXD3PFxz77cNd/MoNGL1r5y3Cu/PR/
-16d+f67Po0mqouNb9uaGP7BqYTBXU3KzGHspERBn7bUdG7ZdDRw397F4I1SX2fz0HEhAiVRz8WjJ
-1DkrJ2trruz5eq9sDQGAV5v84ycMmBKgh/LzO7/etTU4+tERroUqCAteAx5cia1vfy889HwrSycQ
-5jV+Pora6+kFtqAwVX34dq5xdirZiqnTkn9gO/RJWfh4sNHoBdbCo5v35Ec+9IuVYdZL3326o2bk
-48tHBrTzycecKiAxQrHp/NWqYT7ebAzAE0RR3L17N8/z8kCAXq9vV3alUrlq1ar333/fbrfL/X+1
-Wr1q1Sq73e5h6QUFBXv37i0oKOh8D53n+YiIiOnTp/v4+IiiiKG+elqtdsaMGfPmzZvfdcyZM0ev
-12/btk2p7OwL+m50y2R5WV6Wl+VleVleltcFx3GPPfZYREQEAMj/tuQk2I0u93dd3s643HdX3lZA
-CDW7EIBSWlJS8tZbb02aNCk4OHj2rNkFpdbF/ywtqq73YKWSM//7/3v1lVdeeeWVV1/725Ybjq5X
-juMixo6ONvAcrwvvH6O1FhSYJUolc+7VSm2fwVF6hcIUOyiUL71RRdo3stWi5BunskjkpCmDw/18
-g+JSpo1qMQoZJZL5+o+bfripS5o40NUVJ5Ll+rFLtqgp9ydF+nn7RwyYMC0RZx65WEFaKrSdJqGA
-QDV0ztSkmOBAX21n+pXEWXajnHpH+QsemQ5xXMio5Agtzwm+Cf38ORw0MiVSx3NKU9wAf1qeW+4E
-KjklygsGk5dPQETCkOR4AwdEst44lm6PmDZnfL+I4JCIhIF9fPh6gaHj7x8e7e/jHzF4ZB9NnTUQ
-5g0xI1L6Rwb5+fhHDR4WBJV51a3NahJnzdWv//bqK6++9td/HywqO/Hh66+88urrf9uU4eB1sffN
-HESPrH/rvS/3nMqqcLQ40EERRpqhs6cMjQkO9NUgyZx3rVKXMDhKLwimmAEhfFl2FUUtFmQDAKBO
-e+42+efwu9+//tbWbAcgLPhEedOy66Vd/9O4pxFFcc+ePRs3brRarW3f3RClUrly5cqmx55gs9n2
-7dtnNBq7pIc+Y8YMpVKZmpoqCALIXgCEkLy8vBkzZsi+Aa6IBZ2H5/m+fft+8803bCEAg8FgMBgM
-eQ5kw4YNy5Yt+9///d/uVofR42jWC8A1/5+YmEgI+dOf/rRlyxaE0PYLzn9mTV4wSs6Jeb+xi+YP
-MGAAQJzKqICSrtYNq32MCgQAgChWYCCiBEApkQi4Pp8RRiC107WlJclibUkN1fX1FRAAIMTr/E0t
-7kFHofYmSRrif+7YjtODlo/w4QGAUrG2qFzS9fOt61djhXeIgaTnV4pDDS0U2l7NOXVIiL7Tn/mU
-EkdNhZXT+2g8koUQVnvrBQRAAbCCQ4JBz8tV4XgMRKQIK4OGTxly7ZuP113vO3zU6JT+IVqOUrG6
-qEIy9PVXo6YC/XyUsgjglVydNShxVF09nLr/7I0Si4hAclBlYqs+CpjXRty/8rmJotNaePTrVMfk
-JZMCFYhT6pQII+9+M56IHHb17Inj+z878mPk+IULxoY1s7kDwpw6+JZV3R8wBAjJXhItFwTglGMB
-PDyvf93PQW1SAKJYofdSkdIKiwRq1jPzDISQQqGQvQDUarWHE/gurFarPP+PMZZ9AVatWuVJRkqp
-KIpFRUUDBw7keZ7juE56zHEcFxsbu2fPnlsLAeRiZOk8z3fhEAAA8Dzf7I6IDAaDwWAweiE6nW71
-6tXdrQWjhyJ7ARgMBjlJCLl8+fI333yTnp6OMQ4JCXnzzTcvXbqk1WojIiJWr149aNCgW1kbxwJw
-F0wBaDt7uM1kwVyTLjjCvC4izvTj5bPZo3xDHdcv5tKQSW2sAvBMcn0Bbl/+CCNo3iEYcVzguJnT
-Bjm9S/+997sT0ctH+inqinL9615+G4W2Q3OObzU+gcdIDgk4RV3PBAHmEFA372dKJUKRm8KYc3VY
-EABCjauCMG/qN3NVVHLGiUM/bf/38VMTViwb4w+IIqDNdqaaqQiV7KUnvvrqEB67+MkVUTpadXnD
-P3e0UQ+EBa1R0BKx1qzmOaz38vZ228EAcZqAhFEz44YOP//tf3bsONXv8THN7n5xSxmEeV14jHF/
-+rnsFJ8Q243L+RAyKVBopSDihGZiAQBQwLzAgWiXWM/MMwRBkDv/Wm1LAURaw263f/DBBwCgVqvl
-WADymRUrVngoQe6hy3S+h+7eJb+1Zge50ckCuoSoqCj35JYtW1q5mV1lV9lVdpVdZVfZ1Xvp6tdf
-f82uuti0adPde5UQkp2d3cqd7iCEDAaD0WgEAEmSdu/e/dlnn3EcZ7Vas7Ozd+zYYTabTSbTypUr
-J06c6OPjIzu1tiAL8xxIdgkAgFLJUlLmoKo2im9/FkCcKiBl5vC0jz9587RK5xU5dO6DAw1NPtY7
-Jlnnq4XawgoHDVQgSkVLSaVEDa2pL/gNnTnpyod7vzseu2K0H494faAPd7yg1EGDFAiAOMtv1mBT
-fyPf6nJ7hBBQQjuuebtBALyKR6LNQeoqovfTkqzscmefEHkog9iLsyupfqiBh1aDBTaSy6kD+o59
-ICre76MPj58oSJkVrPM3oBMFpQ4aqGi7w0Ops/R6CQqZNSzKqADRYi61UGiuARAC2o45T4QVhuAI
-PRyvtEptZke8OjBlRlL6fz7520m1zjty6ANzBjR9wDyCOKwiKFQe1Ly3QylVKpVPPfVU0/OeC+E4
-bsyYMSdPnpRn/letWrV+/foxY8Z4LgQ1xPOiW5LmOuZdp6gbnSyglfJkKCUgD9ZRQgH3jDEHBoPB
-YDAYDEZ3ghAymUwGg0GSpKNHj27YsGHWrFlpaWmpqalnz55Vq9UDBw58/vnnQ0NDdTpdG5J4Q5Av
-d/DSscsDxofh0kt7DhYBRHRxFgAAItnyjp+1Jcx+dHyYiueUGk3TAYCOSEaI10YmRcKWvfsuGkeF
-8mWX9x4rAdTKEAAAwoLv0Jn3pX+4Z/ORmBVjA3lt5Ij+6s/37DptnBCjNeccT70oRs5M9MJQ3qII
-4NQmlZR1Nbs8JFhQaFQdsQkAlawFBz795KRu+qpFA7X2nNR/b0wPnrdqbpzSfG3rB5vy+yx9YkbE
-LWcJhAWdt5oUFJulPmoOYSFw6DC/0z/+d7N2yvBoL85ccOlAaiaXMD/RiFvwg2hUPCW2m+cuVvhE
-hHqrxNLsm2ak9dJymNNEjojnv9q19bAwNsYA5rIKRURfeZShOVsgTuejphevZBRGRUPeqd0nygEF
-Nr2N0xiV5MbVnPLgIEGh0ykRAOZ14VPWPOduj6JzxzIhKDTAqKLmwowjh8tUMff5KgBE9+y8uklM
-RSJZ806cd/Sds2JcqIrnlNoGD1jjglo1SUWFnTd5s1UArYAxDg4OPnnyZFJSUqNLkiQdP348PDzc
-QyHHjx9PSUkZPHiwHMxPoVA8+eSTkiSdOHHCEyFQ30MnhJAGDjFACEIIMG5fn51S6uqV3xoCkC80
-OwQQERFRUlJisVjaVYy79g1P2DM/fy9t7Jo5YZC77Z0DCauXtBw+k8FgMBgMBoPRezAajTqdLjc3
-9+9///uIESMOHz78008/nT9/HmNsMBiee+65+Ph4T3xiMaeJmTxz0Nfbv3nvLFL79x11/yTzjmtd
-nQUAEIDgpa09uHV9GgAAwrx/0kOPzEjQuenYIckIK4yJcxaUfvf95n+dIOrA/mOnjqnaWdBmJp8h
-syZf+TD1u0Oxj04I0kZPWfYgt23PJ+u2ipw+ZNDkJVMGGjBpeUUz4lTBKePir+/c+I8zhgFLnp4b
-1QGb1EFo/b7qFIhE6o4opU3imyOs8Ivx5y5l5VvH+OoQ4lSBI5cuw7v2HPl6faqIOK1/7LB5j43r
-q/VguwAZShyl53dt31rlQEgwhg+cMW+EDweIM8TNXHp/6o79X76fKmFNwJCZy/qGtGgLrAoeNSM5
-/7vv3vs71oQMnjhnonNnUeO7MK8OHjE25saujf88axyw6Km5Mc16SSBwlJw/cHB3rRMQ1vhFD5q5
-dGKsGgE0yL5w1fSmYeeRYFJXH9qy/jIAAOIUAUkPLZ/eR9cuVwBKRWvRtTLsl+TH+l2twPN8SkrK
-oUOHjh492ugSxjgyMnLkyJGeC3n77bc7LESm0SS9JKG0NOOrrw6Ijjb/9rfntNp2rG5y7+OjrKws
-q9W6bt26WbNmybsFNn2r3nfffeXl5WlpaTabzfNiXHz11VdvvPFGdXV1/Qln9uZ3jw9a/VAUZG16
-72zy6nmRzThxNVoIwGAwGAwGg8G462hpIYAoit9+++2CBQuqqqpcJymlFRUVVqv1o48+qqioqKys
-vHDhgiiKHMdptdr77rvvF7/4RcfW5d4mqGQvOb7x45N+c5ZN7eMlgGQrT9/5n82FKaufGMV2X28P
-xFl1edN7W5xTn31kiJ45CNdDJWvRsS8+PRMwZ8nkeC8BJGvZ5Z2fbCsZuerxke15wKhkr7z03w92
-kGlrlg1i9u15IISMRqPD4di6dev8+fMppVVVVevXr58yZYorWh8h6PJl45/+NHDq1PLr11U2G335
-5XMaTWs7VLjjdDpTU1Nfeumlmpqa+uil9QsBSHMAwN/+9rf4+Hie55u9oXWaeAHwPlH6kuwqp7My
-u1gV4d2S8w2DwWAwGAwGoxdBKS0rK3v99dcPHz588ODBS5cuCYKg1WqNRuPatWufe+65HtX/lxfH
-514qUCckxXoJCABhhd4/QIuIg4VcayeY10WPSzbdPHKi0PO1/vc8lIiWvLRCTZ+hMXUPmKDzD9BC
-ex8wKjlKLxzN1QyekKBj/f+7BpefvvyvxYLfeGPgzJmlY8aUP/xwoVKJXn11kNPZYDl/67S4EACa
-i3NAKf3jH/9oMpkeeeSRy5cvO53t+2U2GQJA2oTJCRs+e+csUfed9wgbiGIwGAwGg8FgAEiStG3b
-tqKiIkEQAgMDNRpNcnJycnJy//799Xo9zzdZJ93NIIQFo59QlXnxxnDfGD2ylV0/tedwqWnwHK+e
-pmqPB3HqwJQHxpX+dC7bHBirZf0DgLoHzEeounbxRrJPjB6spddP/XC0zGtwn3Y9YES0FVwpMI2c
-Mz5UyQx7V+HePZf/DQqyEQII0dBQ28GDRqcTcZxH40HNDwG01P93ZXjxxRe9vb2nT59++fJlSWrH
-woOm4QCRMmzio89NAACE27sbCYPBYDAYDAbjnkShUDz//PPPP/98dyviKYjXRE6cN37Hzq/fOmih
-CKlMYX1GLFw+Mog5ubYfxGtCRj+8pLvV6FFgXhs58cExO3b+960DVoqwyissYcTDs1IC2/WAYYUu
-etLC6NulJOM24R4OECGkUDhXrEj/8MM+K1bk37ihOXDA8PLLJwTB0SS0RvO4++Y3GEBqaTsA15jB
-qlWrPv/885EjR6alpREPS2sOar2x69NvMmxYmzh/6aQwFRsFYDAYDAaDwWDcfSDeED124Zqx3a0H
-494EYYUxZtyip8d1tyKM7sLVQ+c4OnbsTUrhvff6abWOtWtT169/48knnwwODvZQjuu4QSyAlhbz
-Q/1MPiFk6dKlly9fjo+Pl5MdigVAay7tyuzzyNNPL4tJS71sZmulGAwGg8FgMBgMBoPBqKNptD6M
-pXHj8l555djvf38sLo6GhYX9/ve/z8/Pb2+vvMFCANdygGY1kA9EUXzwwQf37NkTGxubkZHR0v3N
-5q3HWZFj8x9i4DgIDzSfKxOH6hQAsHbtWvebtmzZ0i4bMRgMBoPBYDDuLhBCJpOpu7VgMBi9Ak+6
-rt1FU92aXaqPEI2LqwAAAMXSpUsB4LXXXnvppZeCgoIopTU1NQaDoaUiOrgQQMZms02fPn3//v3R
-0dGZmZntqxwAAHXYQMUjAFAoqdVRt6Bg3bp17RfFYDAYDAaDwbhbkSTp5MmTFRUV3a0Ig8G492ka
-oq7nwHHcuHENFny4vACgBc05jlu0aBEh5LXXXvvVr34liuKnn3760ksvNStfkqT2hQNsWmpNTc3k
-yZMPHz4cGRl5/fr11uvTRGMsaJBdpADgtCGVoue2BIPBYDAYDAbjtlJdXT1+/Pju1oLBYDC6AYSQ
-SqXieX7nzp2Nzrv30FvqpPM8v2jRIkrpSy+9hDHW6XQtBexrcSFAS2MMjbwAZMrKyiZOnHj06NHQ
-0NDs7OzWK9ZIVZ8ofUl2lTOUZherIrxZyFQGg8FgMBiMXo1are5uFRgMBqMbaMU3ofVJehmO48aO
-Hbt7926bzaZWqymlFCgFiuuj/rmLkmnsBdBsGc0OAQDAzZs3J0yYcPjwYVEU8/LyPK4V0iZMTtjw
-2TtnibrvvEf0zAuAwWAwGAwGg8FgMBiMOtr005cv5eXl/fWvf7Xb7Rhju91ul+zfl23Ps99cGfyo
-Gqvd72w+FkBLBTQ7BODt7c1xXFlZ2cyZM3fv3u1wOIqKijytjzJs0uM/n+Th3QwGg8FgMBgMBoPB
-YPQaXB3w1ocATCbTK6+8Iied4Nxcsnl/xdFQLuFv2W/9IvznrlGAZoYAPIwFIK9JIIRwHJeRkaHT
-6RBCHMdhjMPDwwsLC1vXnsFgMBgMBoPBaB1RFDMzM3Nzc81mc0+O4A0A8uLbsLCwmJgYjuO6Wx0G
-g3FP4ckLUKvVarVaAHBS57el3x2tPL1K844WDN/a//K3nLdeCHtehVXQgSEAOQNCKCkpKSkp6V//
-+pckSZs3bx49evTFixehvpPvYShBBoPBYDAYDAajWZxO57Fjx/R6/YMPPujt7d3DPyMJIaWlpSdO
-umoFFwAAIABJREFUnDh+/HhKSoo8VZadnV1YWOhwOLpbu96OUqkMCAiIiIjAGAMAa5q7BaVSGRgY
-GB4eLjdcr8WThQDumCXz9rKdi1WvmMCPAkxTrHnb9viJ6hOjDaOhpYUAsuiWQggihGJjY7dv367X
-67/44ouqqqoXX3wxIyPDZDKVl5d3snoMBoPBYDAYDAYh5Nq1a3q9ftasWZRSQkgP9wJACPn6+k6d
-OvX777+/du1aVFTUuXPnACAyMlKj0TC/gO5CfnjMZnNRUVFVVdWgQYMIIaxpej6UUkmSzGZzcXFx
-VVXVwIEDe/gg4G2l9Vn2pmiQ5tGA5ZtK/m5EfkYUsMn++wR17HDdcNc4QjNeAK0XEBQUlJqaeu3a
-NX9//xkzZnz++efl5eUvvPDC66+/fvDgQU+0ZzAYDAaDwWAwWoFSWlBQ4Or/d7c6bSPvqIUxHjFi
-xK5du3ieB4CYmBhKqcPhuCuqcK+CMdZoNJGRkVlZWTk5OXI3hzVNzwdjrNVq5YbLy8sLCwvrbo26
-k1a2A2wKBpyiSwGAj4p/4YvD/VXaVYFPcMA1dSWoc65otOtgU7Zu3VpeXn7jxo3S0tJFixbJuT75
-5JObN29GRUW1lEumvUMAa9euXbt2bbuyMBgMBoPBYDDudiilFovFZDLJ8/93ESaTqaamprCwMCgo
-iFJqt9tZJ7N7IYTY7XaEUGBgYEFBAWuauwW54QAgICCgpUhzvQT3SXoPX0QY8AjtiEcClvbTRawK
-WCn3/120zwuAUipJUnp6OgDk5+dPnTpVqVTKP6qnnnrqxx9/zMnJcTqdrWvvOevWrWvX/QwGg8Fg
-MBiMewNKKcZYFMXuVqQdUEo5jqOUOp1OlUrlcDha+qhm3GEcDodKpZL3S2NNcxfh+il1tyLdSaNJ
-eg9zYcDJmuRkTTI07N27HzeIBdCS6F27dtlsNvmq1WotKyu777779u3bt2zZst/85jdVVVWSJLGf
-E4PBYDAYDAajS7h7PywxxmySuedACFEoFPIxa5q7CHkosLu16GY4jnPFQ+n8K1GSJHmlEjT1AnAN
-NrhjsVjckyUlJX/4wx9CQ0NramquXr1aVFTUenksFgCDwWAwGAwGo12IEtl44DoAIAQ8xhyHeQ7x
-GPMc4jDmOcxzSC3ww2O92ymYStb8na/+ZmffV978WTR/6zhG2UWa373jF/c8rGkYdwUIIZ7nAwIC
-SktLvby8oNOPLiGksrIyKChIkiRodlPANgu4ceNGbGzs8ePHKyoqPKxDZzRmMBgMBoPBYPQeXCtX
-AYDDiOcwjzHHyQfINRbAcVjBY0opcVZdeO/5Px6qn7JCnBA44/d/XhJGiw++9Vpq3C9/PS7vnd9t
-i3jx9wsjhDrx7uW4jruuClardfbs2Wo3VCqVRqNRqVSupMFgePjhhztXDiWOspMb/3M6dMnjk4MU
-ndWaiOZrWz7Y6py5ZmGcqrPC7kKcTue777779NNP3237BRBnTeaW9dvJjNUP9cqGuydRKpVjxow5
-dOjQ1atXO++9wnFceHj4pEmT5LUVvPs1D90MLBbL+fPnO6kHg8FgMBgMBoPRCgoe1037c9ht/v/W
-WIDA13fVEC+EPvCLp0d7cwCAsGDwVyBMTQnTF2q8A9RG7f2LBKNfp/vIHiB/SCOEvLy8Nm3a1NJt
-oiju2rULAKhovrHjgy8v2eorgnmv5OWPTQzgW8rao6Gi+cbO9d+Uj1q5LMmIgYg113Zv3JoTMWfZ
-tFht+ycFqWi+kfr5mYRl86I73LV1dW3a7OOIorhp06a8vLzf/va3Op2urmnSRMPAh1feHy7Uy5Ns
-BT999MkJsyL6gac70uUmztobu786l7Bkbscr1eUQZ831nf/5rnLU40uHGjElzurMPV9+nxcxe8nU
-jjRcV9Sxl7ts8Dzv6+v78MMPd9WAlCiKDodDDrNS93bp2pUG7sjxUbpQIIPBYDAYDAbj3kaelBd4
-zjXhz2PEc5hruBZAwaH6iXyElN5BYWH+dV+dVKy9uvG3fzg79g+vD1RhEBIG3PzgF4+WLnnr5bHG
-+m9dNyeAugKpaMk9+NkHX+3PrKSGyJEPPrbi/lgtSNb81NdeOTBkYWLmjh/TiqxcwIDpK1bPH2Ry
-+8J1d3qVxarV6tY/qlUqVV2pgHnflLmz+ukxAADitSbs4fd4I/07SRe4RFAKlAJQoJQSyVZ8auv3
-GaaxS++L0XSki0Gc5vwLWbWkT1f5aFBKrVbrlClTWrnn6NGjf/zjH//whz9QCpRiLHCWzHM3baER
-SgQAQER7yaUrtUoVoh0yFCVOc/7FG11YqS5ruHpZRLQWnvp+R6Zp7OJJHWq421HH3ogoircpMCoP
-ABjj4ODgkpISb29v6NIhAEppeXl5aGiovOqAwWAwGAwGg8HwCAQCj3kO160FcB24jQUo+K4MGEYc
-VZc/e/OTq4MffWl1DMra/q8P3/zQ7y/PJWkBiGTN2fZD4gsvv/uiturchj+s++C/A99cmdDaBKdK
-1cb0p1LpCj6AkELv4+dnrK8NJfaS8/t+PHk1r9QscrrAviPvnzLEXwDiKDv9xcaMIfMG5u1OvVRh
-GrV8+TAEQKWajB82fnMh10w1/gmjp08ZEqBCAEAle+mlH3ceuHjTTDX+fVOm3jcsWN1oRpeKtTnH
-du46dq1SUnpHDYwn2HVDs9mb6vDIz0b5Np3uo1Ssyfrxu8OW/g8uSfLh6wWWpe1PPXAht0bk9SH9
-R02ZMNBfoI6y019suBQ9LvzmyQs5lTZsikqeMnN0pEqqSd++YWt6LcCmdX/lNfHzH58mHP/ky6z+
-y382ypcDKlpu7Pxoc/WEVYsTNdQzrQBArVYfPHiw2RaxWq3Tpk0bMWLEr371K1fLCH4JfqVXz+ba
-wmPVCIAQe9GlTDE80b/gYp0BrTcPbNh0o/+yR0b6ckCctdd3fbKtdsLKhf20VDTnn96952hGsRWw
-xi922OSpQ/U3dmzcdqUGYNO6vyp0feavnBPO2Yov/bjr4KUCM9UG9EuZel9SkAokW+npTV9mDnog
-MW/P3rRK06jlj4x0qxElYk320dTdx69VSiqfqP6xhEOux0fsgMBbgp1VWfu2HrX1f2Dx0PqGE20l
-aft3H7yYVyMpDCH9R00eP8BfILbS019tvBw1NuzmyQu5lQ7OKyp58oxRkSqxKm27ex3nPTpFcax5
-E2mIZ1oxuhYeAHienzBhwv79+zMzM7s2TibGOCgoaNq0afLujgwGg8FgMBgMRuvUTc5TKvCca9qf
-53DdKoBbcQEwz6P6e532ax+tXfYRACBO8Br7//68REFvTfS7z3HWT5VSaHBMJLEmfecJ+6CnF46J
-11DJZ86svQc+3XulZsgQngLiFX3mzOzvxSNiiB05QH8w63qVs4+yqbe+S6THXgDucQlcQjilwTd6
-VN9xfjpUdXnv1n07/SOXDDMhSgmxFxzZBTHD5i4NMhhMmFZSIpkzr0hT5qy4X6jOPLT9x29/8l0x
-JUwJYm3Oj1/vzY+asuj+QCg8tXP3N6nGR2fHadz8FYiz+krqd0fKY6cunRfClaft+/6wg0bI2jSf
-PVbVjA636llfHclWdHLv9kzfCcvGR6jks1Sszf5x064bYZMWPB6pseae3r1303bF8jl9lJRIjuJj
-58LnLVozX2XO+vGLLTv3Rzw+LUzfZ8ZyZP1gJ//AU/OjlUAlWwGF+laFRqZrUSv3hQCttwjHcQsW
-LFizZo28xaPsXUL5oAHhGfvOZVui+2gQFa0Fl7Jo9PiA2vyL1P1xaqoVcdqKT+8+VBRy//IHArC5
-rKgMG5WCPmHGUmRbv1sx58l50UoA4qjJ/vHbHwujpyya7k8LTu3a+02qYcWsWCWlRLTePJoKsckP
-Lgk0GN3tTImjKn331mMVcVOXzgvCZWk/bT9qR5FAKaXEWZPTboEgu6MAEa2FJ3/YmeU3Ycm4CKVs
-O+KsubHvm93ZYRMXTItQm3NP7/3hvzsUy2fH8ZRI9pIT5yPmLn56vlCT9eOmbbsORjw2JdTYsI5U
-tN5s3kRyw7WgFXMguH3wAMBxnMlkeuihh26Hx74kSXa7/e7a3JXBYDAYDAaD0e0IPHYP/tdoLUAD
-LwDECyEPPL9mpBcHAIjX+QmQ187SiL0iK6+muuRPK4+6hCqjy2wS6AAw1gX6qRAAAAJO4KnkbP7j
-1tVvUavVrZd36wYqOQv3/OvNPQAAmNf3f2jl/WH6yKFJslrGAYP8j/9QWC2BiQcAQEgYeP/4gV4c
-AFDiAECYCx09bkCoFlGvQeOGp/3n+PnCCWFh2Jp3KsMZPXt8YoiSEuOI5POXfjiXb4uNczkCUCpZ
-cs7fIOH3j+8fokHUlDQxOf2z43KxUvPZY2K4Rjo0Y0nJknNgy/VC3Yjlia7VEkS05J5Kt4dPmzgo
-TIOA6kdPysv89sSVqtiBAIjjQ1OGR+g5RLUhfaPUlwuKzFKYqZ1r0JvXyn0IoPX8CoXi2WefbSJU
-FTwgCm87l22J76sWbQWXc/i4mQH8EQptqyc5RcoJOpPJS+Xl5R8KAAANplspkSx5pzOl6Fnj+oUo
-qaQfPuxC2k/n820x0QgAYawaOG3cgMZ2pkQ051zIhfBp4xJDNIgakyYMy/j8VMcF1kFEc87BbdeL
-dSlL+9U3HCWiOffMFUf4tAmDwjQIvHSjJ+Rd23LySlV0IgDiFWEpyRE6DhFdSEKEOr2oyCyFtrPh
-WtCKDQHcPurGLm/fSgPPWbt2rXtyy5Yt3aUJg8FgMBgMBqO7IHVQhRwL4NZGAPUH9WMBAsb19yKk
-MgWGhvrdigUgTz0TQggBQojkkOpShMgz/4Q2PKYEOIXvpGf/Z1ZoXeBAxAk6EyYOSgEwB5QQArQu
-fFad5DoabYCFEGpzIcCtGxDmfVPmzuyrwwCAOLWRI46qrBM/Hb2UU2YVESUOqoivc2MAhNWBQTr3
-zhLCai+DgAAAIaz28VI4KitsUqhQU1RqtVR9tS69/j5OEVjtIKB2ZaaSubyWauO963LzWj8DRnJs
-MLHF7M3p4A6lUFtIBw/wu3Rqz7l+Dyd5cwBAqWQuqZTqywJACmOwnmQWVEkDdYCQysugqDMhx3FA
-pfY7JreuVYdBWBU4IFr47nxWTXwC5F3MV/ad68t7sC0a4pQBQ8YmZu/44v0bcUNGjEiKD9Q00Y6I
-tUWlltqqr9al1WfjheAaBwElAOLUQcHN1YhKlvJaqunjJTcc5jV++roVHB0TKEslYC4kA/v7pJ3+
-4XzfBUO9OQAAIllKKkl9WYAwbwzWk+sFVVKiFhBW1jUcAuB4DkhHGq5VrRhN8GRwpPUt+XpQsNF1
-69Z1twoMBoPBYDAYjG5G/nhFCASF+0YADXYEcG0W2GhW9RYYCxxIVqm+Q3uz0EZbnZfHClN4gGJ3
-kVnj6+/lFmOAehLRyvXBXT9+QVQqVSsLbCmlgiAQQiglhCLEa00+PnWxACixl57+bssJbvic5Q9F
-aFHtlf+u/4HWD15QQByqH32oG4+glMpn5IEMkJMUMG8YNHt+sk9974pTqLXollZ1dyOoy00Ioah+
-cKPF7GIjHRrVixDgOP8R943r5zSVfXFg5+nwBUk+PFBCCAUAKrk0lZumvlIYSN0IC3FVCJF6l3HX
-4Et9SlZaJPV1bWyZW7hOyNWyWq3333+/Wq3+9ttvWzrYuXNnXTkUAAApfBNjld+ezygLUl4s1PYd
-a8K0zDUKVN8UslaEECoSWX+KOEP8fUtDB2WeO348dePZs6Mempfsz7lXihJCgVMYB82a57Iz4hQq
-LZIHnhBuzs517dWw4dCthmu3QABCKEE8H5AyeVyCw1T+1cFdp8Pmt91wAAi5N1ydbk0ariUT1Qtp
-ohVCqDk1ezVOp9Naj81ma+VOeedReRdSnm+mv9+DhgAYDAaDwWAwGAxw3xGgbv5fdv53hQZErrgA
-VKJ1y5gbBmhHvCkimN92bNeJlAfjuJvHvtqWCxDvvui+fily/YZYiNf3vT9F97eN73+nfHBYkNpa
-kXujyCdlUrzG/X5omL0F5QFAqVS2MllHKXXFAmgc059IjrKcMhQweWC4jqeS3VxmoaBtqG2D5dTE
-VlZhI8E8okSqLa5wCr4mJQak9TVxtgqrYDDqUIOSXYeA1T4adKG4yk78OESpaCmrIlQPlALgFrKT
-Vqt/6yRSePebNOrqFwd3nY54KNmHB6zxM3Jni8ptxF+LgBJHVWE1MsTpcbPmhboUgNxnlBOIxyDa
-RUIppkSylFXYqdCoHVudIZXNvm/fPjnZ0sEtYQBAAZDCOyFOff7smfPqEmO/+wyYWm5Vl1LEuWkl
-Wssq7FR1SxGs9o0fMS0symfTl2fPFQ+eHAhulaIIa32N3LlKW2M7S63UiAJWe2vgUnGVg/hxiBKn
-taxaonroqED3xwIL3v0mpmR+eXj36Yj5yT4cwho/Iz5fVGEn/hwCQpzVhTXYEK/HlLT0u2jccC2b
-yMOGYwCAUqnUaDQ8z/M8z3FcS/P8lFJJkkRRlP9tdiSlK8OoMhgMBoPBYDAYncTVFxB4LPCc618F
-jwWFfFB/UtHipyzmDf0X/mys4cx7L7/wy9e/vBG3ZF6Y0NLNdVkUhn6LXnxyND34/mu//vX/vv7u
-tou1gD1b1uzSua5nV78pYEtA/RgBrYtU2OAa1prUpOxaVnF1VXHWif3nqwC5ZWxwM6VAiVR47MCF
-/PLK8pzzB0+Xa2ISA3iKOFXo0D6q/J92Hc3ILykpvnk97fTZXDNpWJA6uH8ozT54JL2wsrI0+/yh
-M+V1RbWWvakODfWpswdSeCXeNzqo7MjOU8UOijh16NA+yryD+y/kV1RVFFw5uj9dChsSb8BNBLoi
-NQKAyqAk5Vl5FTU1tQ7AWn9vrvrK6YyiysrS7DM/HS9xy9iSVu5eAK20SGt1AcR79YnTlZ8/U+Kd
-GK3HdcXJtyBO529C1VfOXC2qrCy5cXb/iTqtiGgtvHguI7+sura2siS/yIrVBiWiFJDSIEjl1/Mq
-amrNTqwKGRKnzPspVbZz/vW0M+fyLHV2ps3bGRCnCUkMITmHDl8prKwsyb5wuL7hAHEdEFhXWfkq
-YMErceIo/9JjqaeLHYA4dciQ+LqGqywvuHL0QAYJHRwnNxxttuEa1LHWAS2ZiLamFfMCaAQhRHYE
-qKmpqaysrGiBysrKmpoaq9XqcDhasmFXegEQAnArLgbFbHiBwWAwGAwGg9EhEID7jgCutQBuOwIg
-DiMnAFYYBjz1zw8b58fKgJGPvjryUdeZOaMeAAAATh0y/fcfTpdPuh8DwuqglKX/L2VpQ1EN7+H1
-cUv/1ri0xoUjpFKpJElqGiPA/YYWMnNK/6SJg4t2p274EKsDE0dNHen8objlojht+ITRxqs7N+yu
-ktR+fcbOHhcqIADgNWHj5k/j9x7e9cVhB8Jqn8ghkxIa5sUKY/yUmRW79qR+do6o/n/27jw+qupu
-/Pg5996ZTDKTjSQkbGEnYZFVXBA39BG17hXb2qfV6s+21traH60t7Q9rH7vy0KI+VbSlLk+tVHkQ
-eNxxXxDrAiL7vi9JCFkns917zu+Pm4wBJpNMEkiAz7tU70zOPXMuAV853/M931NQcsZ5Z9S9c6Dx
-OVu9vTXS8OSMmDJ56/x3l3464Iazeqb3O/e6S8w33l/42Gu2mVlUOvma84ZnGjqapANf4bgzBu5+
-Z/ETazNLr/7m1H7Fky8a+fJbrzy1Tvryhky4YFLo7Z0pDamdpOHJGTay4NNPAqcNCEhx2HK1YWUU
-T54y/OW3Xn5qrfTlD5lw3qTwe7uFEFqr6KH1b7/5el1MSm9WnxEXXjo21xRS+wrHThyw+93FT6zN
-Gn7VN6YWF5933SXWm8tf/ecHUWlm5A9s/fdZGp7skosur37tjVf/sUql9yw5/bzT699z/4wYnkDq
-HR7RvenNHXHhpG3PLnt9Rf/rz+zpL558zcUfvLFs4WOv22ag1/DJV59XmmmollPRDfPwZ7ykX+Lf
-InQRuW3bts7q67/+q199fWNMIRCw77yzQ9/ZgQMHdsagAAAA0GWUUjt3Jpim2ba9aNGi66677s03
-35w8ebJbHt+27VdeeeW2225LvtO1GzJNc968eXl5eSUlJQ0NDbZtL1myxOfzpaen+3y+hBddPeRT
-hc/n27hxo2EY7rcmFAp96UtfSn5Lenr6iy++eHyGh4SklF6vd9u2beecc05Xj+WYk1KapvnKK6+c
-d955zz///Je//OVj/YntzwLQRx2wUVdnXXZZhRBCSvnSS/kdHxwAAABONfGfLU8g8TG72eamaV53
-3XVtaY9j7YiNAD6f74033mj1Lr5BXY5vwbGTLATgJKp/ahhaa11dXV1WVlZWVlZeXl5RUeE4boGJ
-+1977XWt1dSpU4/VeAEAAHBSS36cVfcUH3PT9mZ0O3xrAFeyEMDFF/c9cOCLBlrrQEA/+ODSjRuX
-h8PhXr169ezZc8KECXl5eV6vV0o5Z46YMuVCKSV/uQAAANA+J+JU7YQb8KmDb80Jim/csZMsBLBz
-p+e++yrda6XUjh07n3mmZN26PRdffGH//v2PDtBmZ9uvv14Yv273mCj/CAAAgBPRiRi/OLk137zM
-t+YEwjfr2GmlFoBlaSFEKBRavfpzpbTPN/bSSy/t2zfx9P6OOzqnsuP06dOFEIsXL+6U3gAAAHBi
-OXF/+mee2W3xrQFcrZcDrKur++STTyZNKk1LK1q27HhszZozZ85x+BQAAAAAJzem/SeoY/GN6z5/
-GLq24kkrIYBYLLZy5YrLLhv3gx8M/vjjmkcfPT6jAgAAwClHSllQUNDQ0NDVA0lZKBTSWh88ePDg
-wYNdPRYkxrfmRLRo0aJO7M0wjE7srR2klJmZmf379x8wYEAXDqaVEMDKlat69MhvaMjZvLl2xAjr
-tdcagsE0Idq/zx8AAABISGtdUVGRnp4eCoW6eiypsSzru9/9blePAkD3pbWur68/ePDgxo0bP/74
-4zPOOKMduQBaC6WElKIjAYRkIYCCgtCLL14spSmleOEFsWhR3e9+96M//OEPSvkbGhq6Tx4FAAAA
-0LVOuLAFgOPMsqyCggK/3//RRx/t3LlzwIABKd0eicj58zP/9Kfcq64K3nvvQav1Pf2JJYseTJ8+
-96mnXvnss50rV+587LGdUkZHjx5dWlr63nvvZWdn+3y+dn4mAAAAAACnGNM009PTS0tLd+zYkdKN
-0ah85pnMp57K/tWvarZu9d57b34spt2j9JRSzS/cypfuRcKuWgwB1NbW7t+/a+zYkrQ07f4Khxtu
-u+227Ozs66+//pZbbvF4PH6/v2srGQAAAAAAcKIwTdPv9weDwbbfYtvy3XfT//a37OnTD23f/vrp
-p7+xZo264YbP//SnP4XD4Xvuuee3v/1tWVnZww8//Otf/3rjxo3//Oc/77vvvuXLlyfsrcUQwIYN
-G0pLS61m6QWO4wSDwQceeEBKuXjx4tLS0nfffZd0AAAAAAAA2khKmdK2esPQhYW2YYhdu+T69Ruq
-q83qaqt//1jv3r0NwyguLu7Tp4/X6y0qKurbt296enp+fn7fvn0zMzMT9tbiBoLKysqioqIj3gwG
-gxdeeOGkSZOWLVtWWVk5bdq0a6655q9//atpmlQHAAAAAACgcxmGGDkyOmdO+Q9/2POSS3709tve
-O+6onTbtdCFOF0J8+9vfdptdf/317kX//v2T9NZiCODQoUMjRow44k2tdUNDw9y5c8eOHevuN1i8
-ePF77733yCOPXHTRReFwOBwOt/vB3A4BAAAAAOgObNuOxWLtm6sahuH1ek3T7PgwDEOMHh25//6y
-b31L3XRTxbRpue3uKlkWQI8ePY5+v76+vm/fvl/96leffvrpeMtp06ZdffXV8+bN60g6wPTp05u/
-XLx4cTs6AQAAAACg42zbPnTo0Lp166qrq1ONApimmZeXN27cuMzMzE5Z7TYMMWxY1dChN5977k/d
-9f/2SRwCsG07HA4HAoGEXw2Hw3PmzFm8eHFDQ0P8zSVLlrz33nuPPvroJZdcUlNTY9t2qkOZM2dO
-qrcAAAAAANDptNbhcHj9+vWBQGDYsGGWZaVUC9+27X379n3++efnn39+NBrtlCGlp6f/4Q9/KCws
-7EgnicsBKqUMw2jpCcPhsGEYRyzaCyGqqqrmzJljmqZhJDtrEAAAAACAbk4pVVNT07t3b8uyDMMw
-U5GWltanT59Dhw514iF6kUjk8ccf3717d0c6STBXV0pobWgtlRItJSyEw+G77767eb1AKeXZZ5/9
-8ssv19XVdVaQAwAAAACALuHucHcXuVOa/7s8Hk/nlsxXSm3YsKG+vr4jnSQIATz6aN8HHhgSi90/
-e/aARx/tm/C2WCwWCoV+//vfuyGN+Py/oaEhFAp1ZEAAAAAAAHQ52Rk6cTxpaWk//OEPBw0a1JFO
-EtQCqKryTJ1asXTp0osvvvSVV/JaurOhoWHatGl/+tOfVq9ezfwfAAAAJy6l1IoVK2KxWBvb+3y+
-cePGtdrnypUr254e28Y+T4hxOo6zbNmy3n36tKVDrXXZgQOTJ09u4wDid5WXl5eXlweDQcuy8vPz
-8/LyWjoIHWi3zp3Dd5DjOGvXru3Xr1/Cyv1tlLgcoGlKIZRhJEtaUEoFg8E///nPP/vZz5j/AwAA
-4MSltY7FYsNKStvSWCm1dcvmNvY5ZsxYKaU0GtcDDSmlYcQvmt6WjuMsX7481XEesdKotRZaK63d
-3OOUxhnv0+vx5ObmaK2rq2uisZj7KYGA35+REQ5HDlVVtaVPIYTH48nNbdMsRSlVefBgW1rGxWKx
-lStXVldXx99xd1xnZ2ePHz/eslo89QynOK310VP6hG8e0SAu1Y9LeYhJ2bb92muvTZgwoX///u3u
-JPFfD63FJZdMbXXAwWBwzJgxr732Wm1tLfN/AAAA4AhaaPdfUkjtvtRaum+484P2LjIaRjyZoW/F
-AAAgAElEQVSWIKWQ7mdpraUWSqlUDyHLDATq6us9Hk9OTrYbU8jJya6qqrYdJ+DP8GdkCCF8vrTs
-rCyRyngty3TvTUhrEWxoSHWoSqnPP/88Pv+XUrq/kVrrmpqa9evXn3baaSl1iFOB1rqsrKyhoaFH
-jx7Z2dnuXzu32l9VVVVmZmZBQUGqHbYlmtC5SQQej+eaa65pXpKvHRKEALKynNdf7xG/TnKz1rq2
-ttYwjEgk0pFBAAAAACcld3IqhNRCSyG0dGf+sjEaINq5UGgY0jAMw5CGNKSUjdNyrbXQSim34Ffb
-p9ZSyoyMdCFEerovfraXYRi5uTmhUMjv98db+nxpKU1oDMNIT09v6auOUmvXre3TJ3H1sZZEIpHK
-ykr3OhAInHnmmYcOHVq5cqUQQmsd/xIQp5Tau3fv+vXrhRCGYfTq1WvYsGFKqY0bNx44cEAIYZrm
-yJEjE06t4yk28SwApdTBgwcbGhpyc3OzsrLi0YTa2trq6upAIJCfn+/e22p+QaqklPn5+V6vtyOd
-JAgBfP/7u9p+f9t3IrVdqoFAAAAAnJocx1mxYkVOTs7QoUPdd9yK2aFQaPz48d1hE6/WWgop3KV/
-IZpyAhqzApoiAqnFAaSUhjSaogCGIQ3R1LnS7g/SSujU6pAppUKhkJAivmivhQiFI6FwxOfzmaYZ
-f5y299k6raMpLiVqrYPBoDseKWVeXp5hGM0LGcSHCsRprfft2+deK6X27dsXDoe11ocOHYq/eeDA
-gZZW15tvBFBK7d+/f9OmTUIIKWVRUdGQIUOUUps3by4vLxdCmKZZWlras2dPcQw2AkSj0Xnz5v3s
-Zz9z+2+f7rhPZvr06UKIxYsXd/VAAAAA0K1prRsaGqqrq2Ox2IgRI5RSa9eu3b9/fyAQ6A7zfyEa
-YwBCuJN/2XSppZsCoLQ0hG6MDLSVW1QgHgFwUwGEEFo1bjsQWmgjheVHd+e/7Tj19UEpREZGhhAi
-FArV1dUJIaqqa3Jzc0zDUEpVV9d0+qwmJe4q6EUXXRQf+YEDB9zVXSGEYRj9+vXrutGhm3Kn7vGX
-hmHk5eUppeIhANHydP2Iv0fuH7nm1240Ib4zRSlVXl4en6J37n+ITNMcP358dnZ2RzrpjiGAOXPm
-dPUQAAAAcAKwLGvChAmffvrp3r17lVJa6/3796enp7dasv64aUr3b8rUb5oOKC0MIYVsmnekmAXQ
-VFzQMKRhmoY0DCGElko4QkihpU7pNDKtdcy23Yu6+qC7s6C2ts79qm3b1VXV2dlZtXX10WOQAtxu
-SqkdO3Zs2bLFfSml7N+//4ABA7p0UOju3KX7AQMGOI5TW1vrLt0nb+9eNE8EiMcLmqcSxMUbdPpG
-AJ/P9/Of/7yDnRidMhQAAACgSwQCgQkTJni93n379rnz/9NPPz3J/vPjTOumMn1HlBXXWse/kOpG
-ACGkkEJKIRuLApimaZqmmxAgpBtwkFKIlEr3NQ1YR6LRaPSwqb6jVDQatW071d6OHbf4X3z+b5rm
-qFGj4vtBgJZ4PJ6SkhLRlLEfL37RXfKGjj1CAAAAADixZWRkZGVlCSHcY+G6z/xfNK0cNvuXaJzx
-Hx4SSC273p3dC9EUDfhixb99k5jmKQM+X1pOdnZWZsDnS4t/NTsrMyMjIzcn2zC60TSpvr7evZBS
-FhYW9urVq2vHg25LSunxeIQQhmEUFhbGj430eDyFhYXNGyS8N77yr5ro1sSbdcPIQnfcCAAAAAC0
-kbv/v6Kiwq2SXVZWtm7duhEjRnT1uJporaWMVwBszPiPlwQQ7lkBKZYNa4wkuFEEpVTjJENprZqS
-CprOImhTt1LK7Kys6pqatDRvdjyYkpWldW00Gs3OykxLSxNCeDyenKbT1LqclLJXr17xg9yoAogk
-3BISbsZ+ZmZm8/cDgYB70fZDAeMRhJbEowldWzijJYQAAAAAcKKK1/9z8/8dx3HrAgghukkUwJ2o
-uwv3bhjAfVcKKUTjoYAytVIAonkKgdJaKCUazyrTWmnV7Mtt7zMtLS0rMzM93Ref4Usps7OzQqGQ
-z+eLN2tppfT401qHw+GqqiohhJQyMzOzgzXScBIzDKNnz57utpHmR9pprd2XHo8nLy8v4b1uFoD7
-T/edvLw89w9eS5/Vo0ePeONuEjJrjo0AAAAAOFE5jnPgwIH4/v94XYADBw44jtPVoxNCiMbsf/f/
-8eX7L+bozXcItLlPoZV2Z/tKKeU4ynYc23Ec5Sjlvpdyn7Ydqw/W19UHm41c19cHg8GG5lMmp1kh
-tC5XWVm5vklZWVlXDwfdms/nGzRokFJq+/bt+/btC4VCoVBo3759O3fuNE1z8ODBLSWSHDGHNwwj
-Pz8/XkHgaB6PJzc3t6XbuwOyAAAAAHCisizrrLPO8nq9bqa6ECIQCEyaNCkajXaTzHB3H4AW0l3x
-d9f7pRDNTgpsjAm0vU+ltBRKSSGUEFpIqeMHDjRtWlYqlbm61rq6ukYpHWpoMKQMBPxa6/pgsKGh
-QQhRXVOTm5NjWZbjONVV1ak8feNafayFcwSUUt0kUoOTnmEYxcXFlZWVVVVVa9asaf5+fn5+nz59
-kt/ePK3G4/EUFxdv37796Gamafbv398wDN10IkDnPUGnIQQAAACAE5WbAX7Emx6Pp/vkq4umTflC
-NNUC+GLyL7+oCZDiVEFpLZQWQmmppTSaIgAinhuQWlqB1o5S7qCCDUE3rhAMNrhfdRxVVV2TnZVZ
-W1dvpzhjj0Zjhyr3HKo68tS0OF93qt2Ik5tlWePGjdu4ceP+/fvdvyCmafbr12/IkCFJ7jp6Gd8w
-jD59+lRVVVVXVx/xfl5eXlFRUfLbu1x7QgBuecPdu3enpaUFAgG/328YRsefTSnVwR4AAACA7iY+
-Gz+8LqD4IhyQ+mph02q/NKSUsrHEQHxfQUd+rnZjC/Lw8WitlUotTqG1jkTCQghvmveISdERIpFw
-+xZLs7OzBw4cKISQUjZPvQZaYlnWyJEjR44c2fZb4lUAmv8pdQ+h3LJlS3wHihsXGDBgQPNmJ8mJ
-AEqp+++/f8GCBeeee65hGFu2bPH5fN///vfPPPPMDj7e9OnTm79cvHhxR3oDAAAA2i4Wi+3ft7ct
-LbXWtm23pWU0Gt23b69oflbfET8xN72MlyXrknHGYrF9TX3KpqQCpVR8KmNIuV9KLYTjOG3pU0rZ
-s2fPmuq27hpwD2ZLiZQyJycnJycn1RuBTmGaZklJSUlJSVcPJGWphQAcx/n5z3/u8XjeeuutdevW
-1dXVjR49ur6+fvr06TfeeOPVV1/dkSjAnDlz2n0vAAAA0G6maZ533nn02VkMw0ieXA2cKNwZbqpH
-bLhOhiyAuXPnWpb1i1/84pvf/OaOHTvcQohTpkxZsGDB1772tSFDhowaNerYjBMAAAAAgOOqg3P4
-EzsEUFFR8T//8z/Lli37yle+cvDgwcsvv/zGG2/MyMj46KOP5s2b9x//8R9z58794x//eOzGCgAA
-AADAcSOlVErFi/ynRCnVDUMALZ5neLRHHnnk1ltvfemll6qrq2+66aa77rrr4Ycf/tnPfhaNRm+9
-9daJEydWVFQcu4ECAAAAAHDcmKaZnZ196NAh95SNlDiOU1VVlZube5yPBtRaBxuCSWqCtjULQCn1
-6quvLlu27I477ggEAtOmTbv55pt/+9vf9u7d+6GHHvr1r389a9asAwcOdNKwAQAAAADoMlJKn89X
-UlKyadOmLVu2pDqTd88IHDlyZBurcnYWpdTOPTsHFQ/y+XwJG7Q1BLBixYprrrlm3bp14XC4d+/e
-Xq+3qKjILfLxk5/85Pnnn580adLVV1/daQMHAAAAAKDrmKaZmZl55plnulXwUqWUsm27I4d0tocU
-UkrR8v6DtoYAnnnmmbvvvnv+/PmBQCA7O9u27eYncFx55ZVXXnllB4cKAAAAAED3oZSKRqNdPYoU
-mIZZOqQ0SQ2CNgUzIpHIpk2bevXqVVZW5vf7DcPIzc1duXLlcd7VAAAAAAAAWqKU2rpjayQSaalB
-m0IAS5YsueWWW1asWBEIBAKBgGVZlZWVgwcP3rBhQ+cN9QtKqeOdLAEAAAAAwAlOCx2LxbRocbU+
-cQigeSXDvXv3zps374Ybbli9erW/yYcffnjffffNnDmztrb2iFyAjqcGTJ8+ffr06R3sBAAAAACA
-U4ohjd5FvT2Wp6UGiWsB/Otf/3Kn+p9++uljjz32xBNPrF69OhKJBAIBt8GOHTtOO+203/3udzff
-fPPdd989evTotLQ0IUR9ff2ePXv8fv+AAQPaPeg5c+a0+14AAAAAAE5Z0Vg0ycJ84hDAM888M27c
-uNzc3KFDh7711ltbt25dsWJFenp68zZvvvnmmWeeuXTp0ueff/6ee+6pqKhwHMfv93s8nokTJ3Yk
-BAAAAAAAAFKllKqorMj0Z1pW4sl+4ncff/zxDRs2BIPBhoaGpUuXHjp0KOGhgp999tmWLVsGDhz4
-m9/8xu/3O47jOI5SaseOHZ34DAAAAEA3p5XS0jBaPojrmN4OAC4ppT/Dn+QUw8QhgGAw+Nlnn8Vf
-Jpz/u2zb3rx58+bNm5u/OXTo0NSHCgAAALRIa6WbzZLdl9Jo+eSrzp9Xu5Wyml598eHaiZQvf/Sh
-Dwbe9qMr+x29Abe1YWgnUr78Lw9/OPjbd13e57CfzrVWQiR9RAA4jGEYvQp7pVwLQEqZZNqfXCwW
-a9+NAAAAQELKrt+y8P6/H7zoR7ef3cPQKlq97vm/Ldgx5Gvfuao0kHCxSzvhsuX/Pe+jXjfdmWha
-njJth8rWvvv6uys27a+zhZlRMGj0pClTTi8OmEkn6B0YhrLrNi+a99Ho279R0s6fywGcehzH2bJ9
-y6DiQS3N6Ds/BMB5fgAAADh2tBPa9+GC59b3uPTbV8Tn/1qrxvX5xsV5aViBPqVjTsvLcltopbSU
-Mr6Kf3gCwVG3H/WR+5f99yNL9/ccP+X6S4uzzYbyzR+//fy8reU3ffuKIf5mDZt+FG7q5shhtP5Z
-TfkN2q7bsXJLnTNKKaWaWrZ2L4BTnmz8X0taDAEcUfyv7SKRSPtuBAAAAJLTKlq9/uX5b4cm3Hjb
-WT3dH2W1HTqw4qXFr3+2O6j9RaPOv/LKSQP8UjnBvZ99vHLg2AtGZolIxfK/PLyi5JIhe5Z/uuNQ
-2MgZfNZV119SkmW0dLtx2GfGate//MaerLNv/T9fGuCTQghRPGDIoLx//NeS5z84/c5/K5LuMGrX
-vPDXpz/bWasyik6bcu1VZ/dNl7rZMLLNFoZ62EfVbHhh3jOb+k6drN59YXWNFn//9T2ewMh//79f
-G2K1Mk4AEKZhDh44+LhuBGip8CAAAADQIdoO7f3gxUUbiy7/ztQhGe7UWcXqtr783y/tHn71bV/u
-I/Z8sHDxU4uz77px1OHLWVo7kbL3Phn6zdtm3OSr3/zSX//x3Osl068b6G3h9tMCzVIEVHjvmt06
-7/yJfX1N70rDyh525hBr/toNlRcW5QuhlV2/fo265qt3fjmtev1rC15+6tWiu64elNZ8EK0NVTuR
-shWLnludddG3rzu7pxyV1TB7oefrP7upxCeEitVubmWcAE5aWutQOCSlTPOmxeyYUso0TdMwI9GI
-lDLdlx4Oh7XQXo/XcZz9Zft7Ffbyer0Ju+r8EIBpmq22YbMAAAAAkjvyXGutnfptrz+zeU/g3NvH
-5DX9FKuchh3L10SH3XDRmL7pWmWdO/mjT1/8ZEfDyOFH/JwrTWvABecOybKkDhSPHuJfsXdfvTMw
-RyW+fdSo+OK81k64uto2sguzmncppSe7MFNsP1DniPzG/v9t6oT+mVL3OOOS8z778zuf7Lls0OBm
-t7QyVClDO99+eWlFyfW3Ty7ySnVYfa2W7h01MqMTfqsBHAeyA5t3lFbbd203pNGvT7/qmura+tqc
-rJzMQOauvbsMwygZXLJr7y7bsXsX9o5EIw3hBi10S121uGKflnZYzPLI/wS3zLKsVp9t+vTprfaz
-ePHiNn4iAAAATiZa6/r6+nXr1tXU1GitTdOccsFZQihRt1efNbHo0389/9H4W84p8AghtLZr95U1
-BKuf/M2axp9ApenpWxdVR/ycK6WRkZ/jlY1NLEM4MUcnud1vHnZ3wnEKIZp23Epp+PNz06QQQkrT
-X5DvjRysbFCDs5o9VbKhKrth5+sL9lb3n3bLiMyj0vtbuLcqFFv6/lup/NYC6AKGYfTo0WPEiBHt
-3m5vGubIkpHudcAfiL8ff3PY4GHxNwsLCpN0lTgEkJ+fbxhG82NPdJPm10d/VWs9aNCgtWvXJn+A
-OX/6U2MlE44/BQAAwOGUUhs2bOjZs+e4cePctSU7FhTSNHtfeNWl42I9yh55/X8+HPJ/zi1s3Oxq
-WTkTv/6t8xtLA0hpeDKyTXHUKVUtFdBLfPsXt0nTl5vjUQf319gj0uM/PWsVq95fJ7OKMk0hHCGE
-aL5k1tLyWUtD1VqHK4xR/T0b3nh/17Cp/X0JRproXq85ZUriTwLQbdi2vWvXrnXr1o0fP76rx9JC
-CGDz5s1HvJNkYf+IL9XW1g4YMCDph+qG7Uuffn5jSNj+MV/7xgW9OuGYFgAAAJxEampqxowZY1mW
-YRhCCCUbf2qVZlrBhKsvWTd36cJlQ2+7oMiSVqBXnrW8sj4tpzTblNJNXpXSnZW3qsXbm7cx0nuP
-6m8+t+KT3ZMuH+CTUkqtnWj1hn9tc/Iml+ZZQjhCa9VQXhFyir2m0HbtgYPRtF4FGUabPssRQpqe
-nPFfunpyrTX3n8+9VfrdS/unCSGl0I7jrpuZLY3T4EdpoLvzeDwDBw587733HMdpy8b5YypxEdG0
-o3hb5jmK+1/qlsm0ognXf/fOO797lf+z5fuOCtACAADgFKe1llIm+qlSmmn5E66e2q/irYXv7YtK
-wwoMmjzOv/PVhW+u3rlv/94dm1Z98OGOYBsLT7XpdmlYmaVTL+pX/+GTjy35YO2OPXt2bvr0jWef
-+N+duWdeMamwMTihHWffO69+uqPiYPnWfy19/2DmyAm9val8lpTSmzn0364YGfrgubd2hrW00ntk
-qIMbt1fU1NRGjY48JoCu5p5J2vb99cdO11TvNzPyc4QQoZjtyfCwEQAAAACtkdJo3EEqTW/+hKsu
-3fDIy4veL71tSu/AoEu/dYPn+aWL/vJWVJr+niVnXT1eNt7RlK/a/FpIIb7ozNPS7c0/20wvmvTN
-72W989q77z77cZ0jzYyeg0dfddtFp/fLkEJoIaTpzR52xdS8dQsfWlxlZ/QafdnXLx3ok4dX5Gr5
-s6SUhpRSGFZWydQrR879n0Vvj7z9kj6TLizd+uI/Hvgse8y//2DakNbHCQCtkdu2beuaT9axA28/
-9r/Wl289Nz9hJsTAgQOP95AAAADQqZRSO3fuPPp927YXLVp03XXXvfnmm5MnT3ZLZNm2/corr9x6
-66319fVvvvnmBRdc4PGc6Fnu2omUL3/0oQ8G3vajK/ud6A8DoN1isdg777xz/vnnW5ZVW1v74osv
-XnHFFUIIKaVpmq+88sp55533/PPPf/nLXz7WI0mesX/sqND2pQu3jrzm7MTzfwAAAOBkoLXTciVC
-ADjOuiYE4FSveu6l4AU3nJVvdIPNEAAAAECn0ypWV1VZtn1bjcws8HfVyhsANNcltQAiO19+7rPK
-7IrHH3rd7HHmV288i1QAAAAAnFy0ilR88tTDb1RkDrrgq6flEAIA0B10SQggbdDX7pullBZCyMZC
-LM0pRW1TAAAAnNikmd77wh/8+sKuHgcANNM1JwLo0I5X//7cprDhH/nlr0/p5zs8CjB9+nQhxOLF
-i7tkbAAAAAAAnJS6JASg69a+uqXkm3dMFu/NXbLuzFvGBw6LAcyZM6crRgUAAAAAwMmslU1JWmul
-lFLKcRzHcdxr3dESfrGqXeGexVmmmVVcFNxZaXesNwAAAAAA0LpkWQBKqe3bt7/08iurV69Zu26d
-1nrkyBFjTht12WWXDRw40DDaXdNER8PCZ0khhCdNh6Ls/AcAAAAA4JhrcRpvO84TTzz5tRu/vvtQ
-9KxLv/rAf7/0n48/f85lN+6rsb/ytRv/9thjtt3u1XvDmyEjthZCx8LS5+GQVAAAAAAAOkRrHQwG
-I5FIkjaJswBs2771tm8Hw87ji989Y9TAXL/HdnTEVjXjS/dXX3P1V27+470/evfd9x772zyPx5P6
-wKy8gZkVO2tiffXOcl//Hu3oAQAAAAAAfMFN5M/Nze3Tp09LbRJkAWit5/3tb6GoeOLZF6+YVJLr
-tyIxJxixgxG7IWoLofv1H/DA44scYc2dO7dddQGkv/Ti0q3/ePihpzYPuWRkJlkAAAAAAAB0lJSt
-zK8TZAFs3779sccef3zxuyP6BkJRJ2KrSEyFoqqsNmo7ypDSMgzDEPfMevima86/5JJLSktLUx5W
-Wr8Lv/WDC4QQ0jCIAAAAAAAA0DGmaY4YMSJ5FCBBFsCzzy645Jqvjykpbog6wUjjr4q6qFLaMgzL
-lJYpLUP27t3nmq988+n589sxMh3a8eq8+//85wcff3N3uIPHCwAAAAAAcMpzHGfTpk0HDhxI0iZB
-CGDN2rUjx57uT7Mamub/1UFbaRGf/DdemHLsuIkbNmxIvS6grlv76paSb95xx78PXr90XbAxBqAO
-l2KfAAAAAACc0mKxmOM4SRok2Aiwfv36mRPO+GILQEwprT2GNAwhpTSkMKQ0DGlIMXrc+A3rN8Ri
-MctKdrjg0aOq2hXuOS7LNEVxUXBVpT0+4BFCTJ8+vXmjxYsXp9InAAAAAACnLsMw+vTpk5aWlqRN
-gqm7Usrr9QQjjSEAKaVlSqPZ5F+6F1J4LFMIHYvF0tPTUxmYjoaFz5JCCE+aDkUbF/znzJmTSicA
-AAAAAOAL0Wg0+Qp9go0Aw4ePWPf5ivqIE7GVZUqPKZtKABhHbARY9/mK0uHDU0wBEEIY3gwZsbUQ
-OhaWPg/1AAEAAAAA6BClVEVFRW1tbZI2CUIAI0cOX/XpckNKr2k0r/8Xn/x7DOkxpWUaq1d+UlpS
-4vF4UhyYlTcws2JnTSxWvbPc179HqrcDAAAAAIDDSCn9fn/yjQAJQgDXXXvtovlPVFWWHV3/r+na
-sAx5qLzsqScfmzp1aupZANJfenHp1n88/NBTm4dcMjKTLAAAAAAAADrErQWQk5OTpE2C2fvw4cOn
-XX/97/7fjx78yz8sy2pe/6+xIoAhtXJm/PjOq666UmtdU1OTk50lZIJoQktkWr8pt941JeUnAgAA
-AAAACbiHAubm5vbp06elNonn7T/60V3l+/d8/9avVpYfMKQwDeFuBDANYUh9sGz/zTdOO1hRFo1G
-Kyoq/vjH2bvfny10soMHAAAAAADAsaOU0oYORUJJ2iQOAXg8nvlPPz1oQL8rLz774Tl/eP+dN2qq
-KqqrKt576/UH/vj7CyefmZOdmZOTc8MNN1x22WUxO5jnLC/Y+nuiAAAAAAAAHH8xO7Zj946MdL+j
-1P6y/S01a3Ebv8/n+9lPf3rxRRctWrz4tVee37xpkxBi2LCS0tKS2bP/c/369VlZWT6f74EHZvfq
-Uzb0prvV8hcKtvy2YvAMYaRaGgAAAAAAACSgtQ6FQkopr9crpQyHw4ZhZGRk1NfXSyl9Pl8sFgtH
-wuWVFR7Lo2La7/PX1dcJIXoV9jq6t2TTdSnlxIkTx48fb9t2OBy2bdvr9Xq9Xsuy0tPTZ/zspytX
-fDC4f+jXM/up2Mq0SQ/G3vthwZbfVAz5RQejALFYrCO3AwAAAABwclBKbd68ua6urri42LKsLVu2
-+P3+MWPGrFy50jTNESNGlJWVVddUB7ICmRlZ5VVlPl9aViCnsroi5RCAyzRN0zSPOFdgzJgxQwrU
-+MFl9/zfYlHToCPLopn3BSbfX/3OD/M2/kdlyT0diQLMmDFDCLFw4cJ29wAAAAAAwEnANM0xY8bE
-X/bu3du9OO+889yL3NxcpdWBsgPBYN2AAQNjdvRgVUXfXn0T9pZCGf/mLMv6w9yF9cEeLzyzz9gX
-tPYHjZ3vOTvuyZl8f8S0s9b8Uii7fT0LIWbPnj179ux23w4AAAAAwKnDkEZRYVGGP+NAxb6DVRW9
-C3tnZ2Unbtnuz8jMzr313vlvrM9+bnGFsS9o7g/KLe+otTPyL7g/1LAvfdW97e4ZAAAAAAC0nSGN
-PkV9SoeWDh86vKX5v+hICEAIkZmV89375i/dnveP12pEZdjcHzQ2vKXf+Vqmta9822cd6RkAAAAA
-AHSuDoUAhBCZWdl3/e7p13YVPvF+g9JCRhyxb+vHK8Phvld2yvgAAAAAAECn6GgIQAgRyMz+yax/
-vLar11/ebiirdeYti+4RJfkTb+t4zwAAAAAAoLN0QghACBHIzPr5H596c1/f7863jaE3nnfrXGl0
-Ts8AAAAAAKBTtP/oviMEApl/ePS5zuoNAAAAAAB0LtbqAQAAAAA4JXRaFkDHxWKxrh4CAAAAAAAn
-rW4UApgxY0bzlwsXLuyqkQAAAAAAcPLpRiGA2bNnd/UQAAAAAAA4aVELAAAAAACAUwIhAAAAAAAA
-TgndaCMAAAAAAABoB611OBwWQqSnpydpRhYAAAAAAAAnNq31vn37Dhw4kLwZIQAAAAAAAE5sWmtp
-SGlILXSSZoQAAAAAAAA4gSmldu3d1RBpCIaDO3fvTNKyxVoAWieLHCQhpWzfjQAAAAAAICVa61A4
-1BAKpXv9QuhwONwQashIz0jYuMUQwMrPPi0r35/qZxf3GzhyxKhU7zpCLBbrYA8AAAAAAJw6pBBS
-NO4BSLKi32IIoLKy4kuXXdkjL7ftH3mw4uD7y95PYYwtmDFjhhBi4cKFHe8KAAAAAICTmJQy3Zfu
-8/nC4ZAQIt2X7s/wt9Q42aGAPXrkeiyvbdtt+VTTNHv06JHqWBOaPXt2p/QDAAAAAAvuuZ8AACAA
-SURBVMBJzzCMAf0GbN+x3TTNAf0HJGmZLAQghLBtpy1p+Vprj8cjhEhaehAAAAAAABwTUshWp+St
-hADaQjdi+g8AAAAAQBeQUhYVFbVanr+jIQDdDDEAAAAAAACOP611TU2NlDI9PT1Jsw6FAPTh2AYA
-AAAAAECXCIVChmEkb9P+EEB85q+Uci9ayzgAAAAAAACdT0qZn59/rDYCHDH5JwUAAAAAAIBjQSkl
-hHCn91rroy/cr8ZisWOSBXD0/L8xCEAWAAAAAAAAncdxnFWrVtXX15eUlFRVVZWXl/ft29fj8Wzb
-tq1Hjx69e/devXq13+8/7bTT1q5dW1xcnJubm6S3lEMAiSb/jTEBqVuJNyTXltMHAQAAAAA4dZim
-OWbMGK21aZoFBQVDhgwxDENK2atXLymlYRiTJ08WQliWNWnSpE7OAmhh8u8GBUQH9wLMmDGj+cuF
-Cxd2pDcAAAAAAE4Cpmm6F+6c3722LKuliyRSCAEknP8fXg6gQzsBZs+e3ZHbAQAAAABAEm0KAbS8
-8t+8EgDlAAEAAAAA6L5aDwG0OvlvCgEAAAAAAIDuq9UQQOuTf+b/AAAAAAB0f8lCAFprj8cUIk00
-RQJE05GDbua/1iI+//d4LEr6AwAAAADQbbUYApBS7tq9KzenhxBCi8Zpf+N83/3XUbX/Kg9WStmh
-ioAAAAAAAOAYaTEE0Ldv/7Vr1yqlHceJxWKO4zjKcRwltBJCCGmYUkrDMA3D8ngsy3JPKejVu89x
-GzoAAAAAAGi7FkMApSXDj+c4AAAAAADAMdWmQwGPM2oKAAAAAADQ6bpjCGDGjBlCiIULF3b1QAAA
-AAAAOHl0xxDA7Nmzu3oIAAAAAACcbIyuHgAAAAAAADgeCAEAAAAAAHBKIAQAAAAAAMAJT2tdU1Pj
-OE6SNoQAAAAAAAA44TmOs2HDhnA4nKQNIQAAAAAAAE4ASqm6+rpINKK1PvqrUkqfzyelTNJDdzwR
-AAAAAAAANBeLxbbu2CqEUFrl5eYVFhQe0cA0zREjRng8niSdkAUAAAAAAEC3prWurav1WN4+Rf0K
-84sOVR1SSh3RxrbtFStWBIPBJP10oyyAWCzW1UMAAAAAAKA70loLoRsJ3dJegOSdtCcEoJRyHEcp
-ZRhG8hyDlMyYMaP5y4ULF3ZWzwAAAAAAnLiklDnZOQcPHdxXtsfdCGCa5hFtLMsaN25c8kl6CiEA
-rbVSKhaLffjhh4sXL1m2bNnIkSPuv//+7OzsViMNbTF79uyOdwIAAAAAwMnHsqxhg4cFG4Jp3jSv
-13t0A8dx1qxZU1JSkpGR0VInbaoF4M78d+7c+fDDD19xxRWvvPLG7bf/aPXqrdOn/+q2224rLy9P
-mIEAAAAAAAA6i2EYmYHMhPN/IYTWOhaLJZ+eJ8sC0Fo7jhMOh996663FixcfOFDx/e9PX7z4BxkZ
-gVAoFgw6Z599wf33P3HLLV95+OGHiouLOyUXAAAAAAAApMo9EcDn8yVp02IWQCwWW7du3R/+8IfL
-Lrt88+Y9v/jFfz733GvnnHNxXZ3avbuqqqohGnXq68XQoaOeeeaV73znOxs2bCAXAAAAAACALqGU
-2rNnTzQaTdKmxSyAb33rFqWM22//8fe+d4+URl1dZNu2Q1IKw5CWZYjGaoSivl4UFPR74YXll19+
-9u9//9uxY8caBgcNAgAAAABwXGmta2trjz4ssLnEIQDHcT777PN3311XUxPavbs2HLYtS1qW4c7/
-bVsJIbQWhiG0FvX1wu/v8cYbn1522aSf/OT/nnvuuUQBAAAAAAA4ngzD6N+/f1paWpI2LYYA/P6A
-EGLnzirLMkzTEMIQQhmGFEKYpiGEiocA3ChARkbgtdc+vvbaKXV1dZdffjlRAAAAAAAAOoW7tm8Y
-xhEXbkk+rbWUUmsdDofbkwUQi8UyMvy2rRxHu7N9IYQQhmnGd/sbzUMAWotgUKSnp/3v/75z/fVT
-8/Lyzj777M56VAAAAAAATlnBYPDjjz+2LOuss85avny5EGLMmDFbtmypr68vKSmpqqoqLy/v27ev
-x+PZtWtXfn5+S0cGiCRZAD6fz3G0bbtz/ngUQTa71lKK+C/DEA0NwrKs73znB7t2re9ICCAWi7X7
-XgAAAAAATiZ+v3/y5MlCCMuy3Lm2ZVljxozRWpumWVBQMGTIEMMwpJS9evWyrGQH/yX+mm3bPl+6
-UspxVNOpAe7Mv/m1bp4FoLWQUmgtYrFo8o9s1YwZM4QQCxcu7EgnAAAAAACcHOKz7PiFaZruhZQy
-vhO/1cl4khBAhuMIt/JfwiiAUuKIEIC7XyAWi3UwBDB79uyO3A4AAAAAAI6WLAvAcZRS8SiAdCsC
-CiGaogAJQgCGISKRSAdDAAAAAAAAoNO1GAJIS0tzHBWLKcuSQiit3fm/obV7IqBUSrUQAggHAoQA
-AAAAAADoXhIf3WfbttebrrVwHGXb2nG0e2HbyrZVJBIrK6t64YVPa2uDUmrDEPFfUpIFAAAAAABA
-d9TiiQBpaWlaayFEU0VArbWORKI7dpR//vnuWMwRQqxcueuXv5zWu3e+lNI9FMAwRDgcsqyc4/oQ
-AAAAAACgNYmzAGKxmNeb5pb3k1J4PHZNTeW//rX67bdXb968zzSFYUghRFlZzV13PbFixWatVTwL
-IBwOeTye4/kMAAAAAACgVYlDAEop05QZGTI72zl4cPf69dt27y43TZmR4cnI8Pj93kDAk55umaYR
-jdr/8R8LFy1a5ji2lG4IoCF+OAEAAAAAAOgmEm8E6Nmz59tvvzRx4qQhQ4aHwyEhDoXDtmUp23ai
-UcP9ZyymPB4nFlPRqHrqqfc3by67884vZWSkh8MhagEAAAAAANDdJM4C6Nmz54IFzy5Z8uTjj//X
-sGH548YNyMnJyMx0UwAafwUClnuRmenx+z2rVm37/e8XNjQ0BIMNrW4EiLXBMXhYAAAAAABOXS0u
-1xcWFv71r399+umnf/jDb/ziF7MmTRqyfv2+8vK6WMyORg3LUo5jer3KcVQgkF5UlFNYmGkY4pln
-Xl6+/L2bb/5a8k+dMWNGqyNbuHBhyk8DAAAAAABakCxjX0r59a9//eyzz/7pT396xhkXXHXVV3v2
-rN+69UAk4ti2yszM6NEjkJfndxy7vHz/m28+//bbL5xzzqS7754+dOjQ5J86e/ZsrR3HEaZlyk59
-HgAAAAAAkFDrm/YHDRo0f/78uXPn/vjHt9xzz+wzzhhSUxPKyvKFw+Fdu7b+938/v3LlsgsuuGDq
-1Ivvu+/utLS0Nn2sjlV9vugvi0LXzbhpWNvuAAAAAADglKXdQ/vaQMoWl9rbVLfPsqw777zz3HPP
-nTHjB9de+828vLy5c5/dsWPzRRdd9I1vfPnBB3+fav0/VfP50nX+Ifls+AcAAAAAIBnbthsaGkKh
-UDgcDofDSVqmN/H5fAnn6SlM3ceOHbtw4cKHHnqounr3XXfdMXbs2CShheSMnAlfvaHirb8sbd/t
-AAAAAACcIrxeb3p6umVZlmWZppmkpW3btm0rpdx/Ht0gtdX7jIyMn/zkJ6kNFgAAAAAAtJdSSinV
-KQfnJT4UEAAAAAAAnGQIAQAAAAAAcErowhCANExOBAQAAAAA4DhJrRZA59FK5Jxzy/XS0EIcGQeI
-RCJdMiYAAAAAAE5iXRMC0KEdS/++ZHPEyBhxzdenFPsODwLMnDlTCLFgwYIuGRsAAAAAAF3Itu1o
-NOo4Tse7klKapun1et2jBLokBKBr1yzdWvrv3ztHvP/IknVn3DI+87AYwKxZs7piVAAAAAAAdLFY
-LLZ///633npr//79WusO9maaZnFx8aWXXpqfn2/bdpeEAGLVu8MF47JMU/QrDK46ZI/P9HTFMAAA
-AAAA6F7C4fA777yTlZU1duxYr9crZYdq6MVisS1btixduvTmm2/uqhCAjoaFz5JCCE+aDkVVV4wB
-AAAAAIDuRWvtOE5ZWdno0aMtyzJNs4MhANM0hwwZ8vrrr3fhRgAjzS/DMS2EiIZkupdjAQAAAAAA
-aKS1tpoYRkcP8mu+m6BLQgBWjwFZB3dVRfuKXRXpxbnsAgAAAAAAoJE8XMd7i193SQhA+ksvHv6P
-Zx79XPlKr/1GJlkAAAAAAAA0klJqrZVSSiXbOK+1sG1DCGFZKkmgQGsdjwKkEALQWjfPIHC7aF9A
-Qqb1Of+m752rhTRMkwgAAAAAAADN6GYSNlBK7tmTce+9o9PTnV/9alVeXqSl2XnKGwHcggQVBysO
-HixvCDVEI1Ffmi/Dn16QX5iXl28YRqqBAB3asfTvSzZHjIwR13x9SrGPKAAAAAAAAEKIpiwANxEg
-YQOl5N696b/+9WkjRwa1lr/85eh77/0sLy/SQmOVQhaAUmrHzu2bt2zMzsoaOeK0/Px8r9cbiUbK
-yso/X73KjkWHDRvep3ffVEoU6No1S7eW/vv3zhHvP7Jk3Rm3jM+UQohIJPFwAQAAAAA4dbgzdnf1
-/ugsAKV0eXnavfeOGjr04KRJO7Ky8l56qfDee8f+5jefZmbGju4thY0A0Wh0xcpPpJRfveFrmZmZ
-juM4jqO19vv9BfkFY0aPrqqqev6F/y0vLxszepxltXFbQax6d7hgXJZpin6FwVWH7PGZHiHEzJkz
-mzdasGBB23oDAAAAAOCkknD+r7UOBoPr129ct86sqZmYnb119+79xcXWsGGZn36aVV3tCQSiCbtq
-UwhAKfXhRx/069vv/PPOi8Xsurq6Iz7eMIxAIPDvX//GK6++vGLlJxNPP7NtOwJ0NCx8lhRCeNJ0
-KNqY2DBr1qw23AsAAAAAwMmseTnA+CxbKVVVVbVixYqsrKxLLx02ePCGhx46fcqUlT5f72ef7fn9
-76/u3bsu4b6Btm4E2LBxfXZ21vnnnR8KhWOxBLEEx3Hq6+vT0tIuu/Sy+c/M37Fj+8CBg9rwOEaa
-X4ZjWggRDcl0L5UAAAAAAAA4TPNagFrr8vLyTz/9dNCgQSUlJUIIj2fbWWd98vrrN2VkqO99b83p
-p1e0UDewbeUAw+HQli2bvn3bd6PRaML5v1LKHVBDQ4Npmld+6cq/P/X3fv2K27AdwOoxIOvgrqpo
-X7GrIr0419NaewAAAAAAThVuFoBotoBv2/amTZsGDx48dOhQt2D/5s3rzzhDXnzxJ0KIYcOqk5we
-2KYsgF27dw4vHeHxWPX19Ud8KV6ZMH5EQW1tbUFBQUHPgv379/XrV9zq4/hLLx7+j2ce/Vz5Sq/9
-RiZZAAAAAAAANIqHAOL/rKqqCgaD/fv3j4cGqqqqRo8enZ9fJYRoaf2/eYfuRYshgMrKyvPOPde2
-7aPLD8Qn/80vIpHwqJGnbdy4sQ0hACHT+l54yw8ubLUdAAAAAACnmPihgO61Uqquri4nJ8cwDMdx
-hBC2bUejUa/X675MznGc1kMADaEG9wiA5m8mnPy7F9FoLCc7pyHU0KEHBQAAAADgFCalbJ4F4F4U
-FRUVFBSopnT/SCSitfZ6vSrJBoAmbSsHeNTif0uTf/fCbSNaSz8AAAAAAADJHXEooGmapmnGX1qW
-5fV6Dx06lJ+f38auXEZLjQL+QG1trWmaoin53xW/bn4hhPB4PNXVVX6/vwPPCAAAAADAqS6+EaAl
-hmH06dNn586dzYv0JRHPAmgxBNCzsGj1mjWWZcXX+dVR4jkJhmH6fL5Vn6/qVdS7408biUQikUjH
-+wEAAAAA4IQTn7EnmdIXFRXV19dv3LjRcZxOCAH07tVn0+aN4XAkLS0t+fq/ECInJ7uq6lBVdVXP
-noUdf9qZM2fOnDmz4/0AAAAAAHAianVW7/V6x44dW1lZuWrVqvr6esdxkmQEtF4LIC0trXTY8Jdf
-eemaq6+OxdJCoQb3zuaL/0IIKaXf7/d6PQufWzD6tLGG0WJMoe1mzZrV8U4AAAAAADgRHXEoYEsy
-MjLGjh27adOmjz76KCcnp3fv3j169HBn5fE5v9tJ61kAQohhw0pjduy1N95IT/dlZmY2343g9mhZ
-ntzc3IyMjOdffCErO7e4X/+OPyoAAAAAAKcyd8beaiKAmwswcuTIiRMn+v3+TZs2ffzxxzt27Kiq
-qopGo82TAtpwIoAQSqnhJSPXrPt8/j+fvnTqpXl5PWzbjkSiWmvDMCzL4/FYB8rKXl36ck527vCS
-kcfjdwIAAAAAgJNd8+z7Vvl8vkGDBvXv37+ioqKiomLv3r1KqVGjRuXk5IjDUwmShQDC4bBt2/36
-9N+3f+8/n302M+AfNWp0QX6+x+ON2ZG9e/etXb/WtmO9evYpLCyKRqMej8fj8XTkIQEAAAAAOMXF
-swDiOwLawjCMwsLCwsJCrXU0GvV6vfHdBG3KAvD7/T6fLz09PRAIFPfrX11TvWnz5rVr1yilpCEz
-fBn9+w7Ize2RlpaWnp6elpbWsWcEAAAAAACH1QJoewigOa/XK5rW/9saAhBCmKbp9/v9fr8Qok+f
-Pu34YAAAAAAA0HamaTqO4163LwTQnOM4pmm6162EAAAAAAAAwPEhpbQsq6ioqLKyMjc3V3Q4BKCU
-qq6u7t27txtTIAQAAAAAAEB34fP5Jk+evGzZsi1btnQ8BcA0zX79+k2ZMiUajYpuFQKIRCJdPQQA
-AAAAALqSaZp5eXnTpk2LZ+93hNbacZxoNGrbtuhWIYCZM2c2f7lgwYKuGgkAAAAAAF3Ftm13xt7p
-ulEIYNasWV09BAAAAAAATlpGVw8AAAAAAAAcD4QAAAAAAAA4JRACAAAAAADglEAIAAAAAACAU0I3
-KgcIAAAAAACOoIV2lCOFNKQhpexIV4QAAAAAAADoprTQVcGq37z1myE5Q84ecPaIXiMMaZiGKUV7
-YgGEAAAAAAAA6L4c7VRFquZvn//nHX/uoXtc2efKmyfenJuRaxqmIVPb3d/WEIBSSmttmmbqo01Z
-JBI5Dp8CAAAAAEA3J4UsCBQ89uXH3HSAxz96fMmeJU/vffqMwBnfGvutif0nWkYKS/ttChg4jrNs
-2bK///3v9fX1Wuv2jrytZs6cOXPmzGP9KQAAAAAAnCikkD38PaZfOP3NG9+8b9x9VdGqby/79k9f
-+mnUjra9k1ZCAFrrSCTy5JNPPv300xUV5T/+8fRdu3YppTo28lbMmjVr1qxZx/QjAAAAAAA4EVmm
-deWoK+dPm//AxAfeq3rv5kU3ByPBNt6bLASgta6srLzvvvvKy8v/+c+nH/rzf067/urvf/+Od955
-x3Gczhg5AAAAAABImWVYFwy74PGLH98d3v3g+w+28a4WQwBKqTVr1syYMePss8+eO/fBnEBIOmW3
-3nzVY/P+849//M8HH3wwEolord0aAZ30CAAAAAAAoE0MaQztOfQbg7/xUvlLEbtNNfUShwBs237h
-hRcefPDBX/5y5h3f+5bh7BGqRqg66ew/Y1zR20v/tn7dqttv/25FRcX777+3Zs3nnfoUAAAAAACg
-dV7Te8P4G6JOdMmqJfE3lVaOSpy5n6ByYDAYfOSRRyorK//+9yeLeqZJe4fQUaGjQseEjgoRLciV
-ryz53f/71ZM33XRTScmQnj17nnbamGP1QAAAAAAAoAWmYXqF1zAaF/hjTmzpuqV7avd855zvHN04
-QRbAs88+a9v2k08+3qsgJu1dQtUJVS9UvdB1QtcLVS+cStPZ+tMfTR0xfOi8R365bdv2+vr6Y/tM
-AAAAAADgKEqrelnfL7uf+zKmYos3LV5ZsTJh4wQhgL59+zqOY5la2PsbJ/+qVmg3ENAYDlB29f0P
-/e+dd3y1IL/gisvPWbFixTF8IAAAAAAAcBRHORvKNmhD98/rL4TQWleFqlaGVl4y4JKE7ROEAE4/
-/fQPP/wwGg0LHXXn/IeqKg8dOlhXWxUJV0cj1dFo9Uuvr2+IpF94/llC110+9YwPPnj/2D4WAAAA
-AAA4XEOsYdayWWPTxhZlF7nz/58v/XmeJ+/aMdcmbJ+gFkBubm6vXr3eefudqRcWClWvVOQn97xq
-O1JKfehQTSQSNgyllX5+0VyhqoVuGDKo9/Lly6LRqNGkfUOPRNpUwBAAAAAAAMSc2ItrX9ymt/1z
-0j+jTnRfzb7vvfy9oBGcc84cKWXCWxKEAIQQkyZNeuGlpf924e2GrjdE9Kp/K9q40/fjH//YkFqI
-iFAxIWJC1wu7SuiIaXrPmzzqumuvnHTOueecM3nChNPT0tJM00w1FjBz5szmLxcsWJDS7QAAAAAA
-nDrqo/UPrn6wxFfy4c4PZ38we2X9ymJf8WNTHyvKLmrplhZDAHfeeaeY/SOhgkJHrp7a41d/XPXS
-S8996fKp0ilrOh0gJHRY6Khwyv/8x9uj0fDKVZuffHrJT3/649Gjx1x33fWXXnpZSqOfNWtWao8L
-AAAAAMApSWlVXlceNIPrY+v3bto7NGPo3afdfe3oaz2mJ8ldiUMAQ4cOjUajK1etnlDiE87B/8/e
-fcdXUeX9Az9n5vabW1KB9JDQCVWaoYMgKChNBbuuArrYy7K7iGXXHyLYHvsj+wgoCJEmutIRKdJL
-CCX0FAik5/ap5/fHxWuE9AQSwuf9B3vnzJkz38HXXu75zimESC9PiX742QXt2ya0jG9OlCLCBMIE
-wkTCBMKKCBN0hO/Vxdaj64Nv/WNMzwF/X7v255qmAAAAAAAAAACgOjjKtYlos+e+PTqNrgZXVXRi
-4MCBK1dtVWk4I3pGzEaTffaMW+5/6AWfIBCqJcxNmIcw9+8fvISokmLYe/BM935/f/iRJ+fO/aA+
-HgoAAAAAAAAAylej/j+paBQAIWTo0KFz3n337ju7UBJBmEyITEhQdJTtzJmz7VvZiOopMxBAJNp4
-l4c8+8rXZ7O9Cxd+Fx0dXecHAQAAAAAAAID6VGEKoEePHkEWywOPzQqUyLLs8TjbtYknYjpR3YSI
-hImE+QiTCTW07PiXV//2j3++Pu66hA0AAAAAAAAANVNhCkCr1S5YsKBsSWpqqiqdp8xN1FLGmVXW
-nOdKiHiCEEqY5HL7xo5F/x8AAAAAAACgkaruvn2MsWXLlj720O2KIguk7aXCoIWp+/KLjaq2A6Ea
-QmRRlK5poAAAAAAAAABQF9VNAZw7d+5i7gVBFP9v4drkHk+Mvf+99ONS935/27YnV+ZaESYRwhRF
-uaaxAgAAAAAAAECtVTgR4Aq//fbbxUuFY+994/YRd3w9f1GLFi0IIRMmTHjhhecG94/75wsDdTqd
-KIpGo7HuMQmCUPdGAAAAAAAAAKCs6qYA7rnnnr59+8bGxpYtjIiI+PrrBe+//97wsZ9QSuorBTBj
-xgxCSGpqat2bAgAAAAAAAAC/6qYANBrNFf3/QPnLL7+yYUM3xi3QarX1EtPs2bPrpR0AAAAAAAAA
-CKhuCqByQ4cOHTp0aL00BQAAAAAAAADXQnWXAwQAAAAAAACAGxpSAAAAAAAAAAA3hfqZCAAAANVU
-j5ue6PX6+moKAAAAAG4GSAEAAFxXzzzzTL103QVB+OKLL+reDgAAAAA0JYwxt9tNCAkKCrr6LFIA
-AADX20cffVT3RiZPnuwfUICxAAAAAADgxxhzOp0FBQXNmzcvtwJSAAAAN6pp06YRQr788suGDgQA
-AAAAGl6g/9+sWTOTyVRunUaUAqjH+bEAAAAA0Kioqhr4zHFYkRoAoJ6V7f+bzeaKqjWiFMCMGTPK
-HqampjZUJAAAAABQjxRF2bhxo/8zz/NDhgxp2HgAAJqYavb/SaNKAcyePbuhQwAAAACA+sfz/LBh
-wxo6CgCApoYx5v9Qtv8fKKSUXn1JI0oBAAAAAEBThYkAAAD1SxTFwuJCQRAMeoPH7YmIiNDr9U6n
-0+Px+Hw+i8USEhJy9VU1SAEoihL47maMUUp5nsc3OAAAAABUDhMBAADql6IqmTmZhBCO8vlFBdYg
-S0lJiSAIOp3OZDI1a9asok2jqpUCUFVVEIQffvhh586dbrfb7Xa7XK6IiIgxY8YMHDhQp9PxPF/u
-GAMAAAAAAEwEAACoL4wxxpjb7RYEwWKyybKs5bWCKDQPb24ymTSaKvr4VZxmjEmStG7duk8++SQi
-ImLs2LE2m81isZjN5oyMjG+++ebtt98ePXr0/fffHxkZiSwAAAAAAJQLEwEAAOrCP8NfEASPx+Px
-eLxeL2NMlASzycwExWqxWq3W6rRTRQogPz9/ypQpWq32tdde69OnT9lTbdu2veuuu06dOrV48eJJ
-kyZ98MEHnTt3xhc6AAAAAFwBEwEAAOpCVdX8/Hx/t99oNPrfyl/KvyTIPsHhMxlNIfZypv2Xq7IU
-gCiKL730Ur9+/Z5//vmK6iQlJc2YMSMlJeXpp5+ePXt2SkoKxgIAAAAAQFmYCAAAUEd6vd5ms/ln
-+DudzuLi4pioGKPRKEqiQW+ofjsVvrRXVfXDDz/U6/XPPvtsla0MHjz4/ffff/XVV8+fP1/9ewMA
-AAAAAABA5TiOs9vtBoOB/Hn/P47jatT/J5WkANavX7927dp33303MLafMSbLsiAIJSUlLpdLkqSy
-c7p69eo1adKkV155JbAJYa15vV6v11vHRgAAAAAAAACaDMZY2f5/7RopfyIAY+zf//73//zP/9jt
-dn+JqqoXLlz48MMPt2zZIkkSz/N9+vR54IEHevToEcgRTJ06denSpceOHWvfvn3tovF74403CCFL
-liypSyMAAAAAAAAATUO99P9JRaMATpw4wfN8586dAyU7duwYN25cZGTkzz//fODAgfXr16ekpDz/
-/PPr1q0LjAXgOG7ChAlLly6tdTR+s2bNmjVrVh0bAQAAAAAAAGgC6qv/TyoaBbBly5YBAwYEDh0O
-xz/+8Y/Zs2cHCoODg++7777k5OTJkycrinLHHXf4y8eOHTt69Oi//e1v/lkKAAAAAAAAAFAXiqIU
-FhbWvf9PKhoFsGXLloEDBwYOv/jii5SUlLJJAb8OHTq89957c+fOVRTFXxIZyVBNOgAAIABJREFU
-GZmcnLxmzZo6hgUAAAAAAAAAhBCNRhMXF1f3/j+pKAWQkZGRnJwcONy1a9fdd9/t/+xfFDCw5l/P
-nj0tFsuWLVsClUePHr1hw4a6RwYAAAAAAAAAhJDAGnx1bafcUrPZ7PF4AofZ2dnx8fH+zzk5OXPm
-zCm7+d/EiRNXrlwZOAwLC3M6nfUSHAAAAAAAAADUl/JTAEFBQS6XK3AYERFRXFzs/2yxWFwu11tv
-vRU4GxcXl5+fHzg0GAzY0g8AAAAAAACgsSk/BWCxWBwOR+CwY8eOGzZs8A/+t9vtjz766KlTpwJn
-bTZbaWlp4NBoNPp8vmsWMAAAAAAAAADURvkpgJiYmPT09MDhE088sXDhwsOHD0uSJEnSrl27EhMT
-A2d5npdlOXCo1+sFQbh2EQMAAAAAAABALZS/KeD48eNnzpz56KOP+pccaNmy5WuvvTZ58uS2bdvK
-spydnf3ll18GKu/bt69r166BQ0ppYIOAikiSVPawbAYBAKDJK7vYCgAAAADAdVN+CqBnz56Kouzd
-u7dnz57+kpEjR3bu3DkzM5Pn+TZt2tjtdn85Y2zHjh233XZb4Nrdu3d379698rtOnz79T0Foyglj
-yZIl1X8MAIAbhclk+sc//oEsAAAAAABcf+WnACil99133zfffNOtW7dA/zwqKioqKuqKmgcPHty9
-e/ebb74ZKFm/fv3EiRMrv+ucOe+qiqIyQjme52gd4gcAuMG8//77hJAnn3yyoQMBAAAAgJtO+SkA
-Qsh99923Zs2aDz/88Nlnny33LT0hpLS09OWXX54xY0ZISIi/xOVyHTx48OOPP678rsx7bt3CVScF
-ztT+7vsHxxqQBACAm4zJZGroEAAAAADgplNhCsBsNn/11VePPvqooijPP/88z/P+dQH8FEVxOp0z
-Zszo3bv3qFGjAuVbt27t2rWr2Wyu9KbMkb7udNsHnkoh2z5fdbTnY90syAEAwM3lgw8+aOgQAAAA
-AOCmU/6OAH42m+0///nP9u3bJ0+e/NNPP7lcLlEURVH0eDxLliwZPXq0wWD45z//WfaSPXv2lF0X
-oAJSSbYvPMbK89aYZu7MIqwFCAAAAAAAAHDNVTgKwM9uty9ZsmTdunUrVqx4++23w8LCSkpKSktL
-u3Xr9tlnn3Xo0OGK+i+99JLBYKjqpkz0EYOGEkK0euYV1dqHDwAAAAAAANCkqapKCKGUUlrXEfRV
-pAAIIQaDYfTo0aNHj87LyyspKbHZbHa7Xa/Xl1u5erNbOb2Z+iRGCBG91KjDLAAAAAAAAACAcsiy
-vH37dsZYZGRkZGSkyWSqSy6g6hRAQERERERERO1uc8VNQ+KtBVnFYjTJyjfGBmvro00AAAAAAACA
-poZSGhoaeu7cua1btzocjtatW3fq1CkyMpLjuFokAmqQAqg/1Nx2aLtvl3yRphrajnkQawECAAAA
-AAAAlIfn+Y4dO3bs2JExlp+ff+DAgWXLlgUHB3fp0qVt27YVjdCvSIOkAAjVRw967JlBFZz1er3X
-NRoAAAAAAACAxo1SGhERMXz48P79+x8+fHj37t2HDh266667rFZr9YcDVLYjQEN544033njjjYaO
-AgAAAAAAAKDRMRqNPXv2fPDBB20223fffZefn1/9axtRCkCSJP+HWbNmzZo1q2GDAQAAAAAAAGi0
-DAbDHXfckZCQsGXLFsZYNa9qRCmAVatWCYLQ0FEAAAAAAAAA3AA0Gk3v3r0vXrx48eLFal7SiFIA
-W7duXbRoERYCAAAAAAAAAKgOo9HYqlWr48ePB0oYY6qqVlS/EaUACCEHDx6cN2+ew+Go/jAGAAAA
-uLH4f5rg33oAAIB6oaqqRnN5pX/GWElJybp16yqq3LhSAISQkydPfv7550VFRQ0dCAAAAFwTiqJs
-3LjR5XJV8o4CAAAAqoMx5na7LRaL/1BV1ezs7Ly8vIrqN7oUACEkNzd31apVDR0FAAAAXBOCINx2
-223r168vKChAFgAAAKB2VKaKiiiKYmFhoc1m8xfKspyent62bduKrqq3FICqyLIkKrLI6vZvOcdx
-LVu2vOeee+orMAAAAGhU/N3+Hj16bN68uaioCFkAAACAmhJVcWPOxvE/3rt4x2KT2RQfH08IEUVx
-z549xcXFnTp1qujC+kkBuJ3FPy5486NXh3315oS0nT/VOgvA83zHjh2ffPLJoKCgegkMAAAAGqcx
-Y8YMGDBg48aNxcXFyAIAAABUn6iKm3N++eeON5O4/l9emhfSOURRFbfb/fPPPx85cmTs2LEGg6Gi
-azV1v72rtHDR+090adn60VF/dRz87cMFb3E8n9xrZC2aSk5OnjBhgqqq2BcAAACgaTt58uTEiROX
-Ll26YcOGYcOG2Ww2jmuM8xMBAAAaFVmVt5zfMvO3f01t/oFyJkjxGd9M//e5c+dIFrHb7ZMmTQqs
-C1CuuqYAXKWFi95/skfbDmNih9Ndeyx7ch9WtF9+P7cWKQCj0ZiRkfGvf/3Lf7hkyZI6xgYAAACN
-liRJR44cefTRR+fPn79hw4bbbrvNarUiCwAAAFA5SZVWnFrdOWhge3OfdHYkRk4+LbbZrez7911v
-RkdHU0orv7xOKQBXaeG37z/Rp2vK7S36kl272b59BZmZBYrXYfOoqsJxfI1amzVrVl2CAQAAgBuI
-JEmSJKWlpT311FOff/55IAtQ5W8XAACAm5mBN7x6y0tPbXpmdfGnI7v8ZVn+T7xcOmfwFxHGiOpc
-Xvtcu6u08NsPnmjdul1ot3E7w8JyJKno7NmjPu/RKLV5VGJN+/8AAABwU5FlWZIkURT379//4osv
-DhkyZNOmTU6nkzHW0KEBAAA0XpTS2KCYTwd/tNe9clbmAyflLf9b7f4/qW0KgLlKC7/98InmIZr+
-PWJD3Jskb9HhoUMPm4yn4tihKNOdD79Rq2YBAADgJiKKon8swO7du2fOnDlw4MDNmze7XC5kAQAA
-ACrhzwJ8NfSLW2M716j/T2qVAmDOkoL5cx6JDdePHtafSg7h3A+GCwtEVTnXPW5vtOn+Zz+Liu9Q
-82YBAADg5uLv//sTAdu3b3/nnXf69eu3ZcsWt9uNLAAAAEAlKKVRQVGvdn+5Rv1/UvMUAHOWFCyY
-+1jLyKDbB6cwxevI2i76XEcPHyg+uXGPcGbiM5/GJHauYZsAAABwk/L3//1/bt269dNPP+3Tp8+2
-bds8Hg+yAAAAAPWuRssBXu7/JzQ33j74Vn//X/C69p/25hbLeeeW3//MZzFJ6P8DAABAdUlliKK4
-adMmnU73yCOP7NixIyUlxWg0YnVAAACAelT9FMDl/n98M8OIof2Y4gv0//NK5AKXZtIzn6D/DwAA
-ADWiqqooioqiLF++PDo62l9oNps7dOiQlpbWvXt3rVbbsBECAAA0JdVMAfzR/x95W/8/+v+nvBeL
-pYsOzX1Pvx+b1OXaRgoAAABNTvPmzYcPH/7DDz989913AwcOPHTokM1m02g0Op2uZcuWsiwjBQAA
-AFCPqpMCYM6Sgm/eezw+Qn9F/z+3WLrk0Nz79PsJ7XrWY0ySJNVjawAAANA4RUVFbdq0KSQkZM2a
-NQsXLvzrX/+alZU1aNAgi8VCKdVqtXq9vqFjBAAAaFKqXg7QWVLwzdzH48J1I4f9uf9fJF1y8Pc8
-9V7Ldr3qN6bp06dPnz69ftsEAACARiUmJuaXX37ZuHHjrl27nnjiCYfDMX/+/ODgYMaYzWaz2+1m
-s5njard7MQAAAJSvin9ZZVlY9OGUFiHc8GH9mCIE+v+XSuRcJ737L/8vsX3veo9pzpw5c+bMqfdm
-AQAAoPHYsmXLunXrIiMjtVrttGnTNBrNvHnz+vbte/jwYa/X29DRAQAANE1VpABOp+/kmHv0uFFE
-ER3ZvwXG/+eW0LGP/792XQZelyABAACgSWGMrV27Nj4+vk+fPr17905LS3v88ccLCgrS0tJycnK8
-Xi92BAQAALgWqkgBpO1cldKnsym2h7ZZK0US95/yni+Uch10/NS57boOvj4hAgAAQFPCcdzKlSs7
-duzYo0ePsLAws9lsMpmef/75BQsWJCUlofMPAABw7VS2HKAkek8c3jZyyOOS4wKjGmdQh6yCzflu
-et/kuUkdU65biAAAANCU6PX6QYMGaTQak8nkn+3ftWvXrVu3ZmdnZ2dnp6SkBAUFUUobOkwAAIAm
-qLIUwNmju2LiWhU5mE6X7SwuOpuZW+Dm7n7k9aTkvtctPgAAAGhieJ63Wq2U0kA/32Aw9O/fv1u3
-bpTSoKAgnU7XsBECAAA0KowxxljZfzprrbIUQPrun5K7pbw+a8Gg7uGZ5/Padxny4HMvxiR2KjtC
-D0l6AAAAqJGrf8FQSg0Gg8FgaKiQAAAAGi1FUY4ePXrx4sXmzZtHRUXZbDZCiVNyyqpMCCGUGHmj
-WWuuZmsVpgAUWTpxeMehvZt7J7eM7zZ6yMMDeY1elpULubmEEI7jNBqNRqPRabV6vV6jqSyVAAAA
-AAAAAAC1QCm12+25ubkHDhxYv359ZFRkSFLIixkva4jOn1SPMkf9MGpFNVursOt+6fyJzv3Gdug+
-3BISJUqSKIoer1MUJVmROcpptVqdXqfX6Rhjiqoa9HqM2QMAAAAAAACoXxzHxcTExMTEMMY8Hs/B
-tIMb92806ewvm5dGRka6NYUzs+6sfmsVpgAi4zpExnUghDDGVFWVFUWRFcZU/ywAjuN5ntNoNBzH
-1ddcAEmS6qUdAAAAAAAAgCaGUmo2m/v07mNJsqxb92tRcVF2dlZku7AaNVL1AH5KKc/zPM+Ta/ya
-f/r06WUPly1bdm3vBwAAAAAAAHCjoRyn1WvbtE7MzDy3/+hOElWD/XQb0Rz+OXPmNHQIAAAAAAAA
-AI0XpTRYb1c47/OnexNCSAvSXGzh8/mquapuI0oBAAAAAAAAAEAlKKHRQdG/jv3FfyiK4rJly9LS
-0nr27Fmdy7lrGBoAAAAAAAAAXDM8z3fo0OH48eNlC2VZrqg+UgAAAAAAAAAANyrGmFarDRyKovjz
-zz97vd5yKyMFAAAAAAAAAHBDYoy5XK6goKDAocPhOHnypH8vv6shBQAAAAAAAABwQ1JV9eLFi3a7
-3X8oy3J6enp8fLzJZCq3PlIAAAAAAAAAADceVVUzMzMvXLjQpUsXQogkSadOnTpy5Mgtt9xS0SXY
-EQAAAAAAAADgxiMIwrZt27p162YymXw+3/79+/fu3Tto0KDY2NiKLmmMKQBJkho6BAAAAAAAAIDG
-S1GUw4cPFxcX6/X6LVu2nDlzRlGUMWPGxMTEVHJVPaQAREnSaLWEEEoIrXtzhEyfPp0QsmzZsvpo
-DAAAAAAAAKAJUlXVYrGcOHEiJCSkf//+CQkJZbcGKFf5KQBFUcrdSPCKRQUNBoPb7Z775VcTnnvR
-SImNKDbGuDqnAebMmVPXJgAAAADgRkYpVRSlyt+yAAA3BEVROK6eV+Ljeb537969e/eu0VXlpwD2
-7t2bmpqqqqr/y1dRFFVVA38GPnz77berVq8+ceokp+G6NgvfmJlr9foSLXpaL4MBAAAAAODmwxij
-lNrt9uzs7ISEhHr/0QwAN6eKNsm7DvdVFCUrKyskJKRBArhC+SmAXr16HTt2TKvVTpw4sZKvXVVV
-Fy5a9MD0GXGWoFJBdLmFM3lOE1MjbcZrFjAAAAAANGUul4vn+Xbt2h09enTz5s0N9asdAJoY2nBv
-qjmOCw0Nbd26tT8G/7v2hgqmwrUA7r333n//+987d+7s06dPRfHt3bfPJ4qdeveOs5h35ea73YLT
-KWwqct7fKwEDAQAAAACgRiilZrO5qKgoNDTUbDbfcsstiqIgBQAATQOllOd5WZZdLpfFYmmoMCpM
-ARiNxieeeGLWrFkdOnSw2WxXV2CMLVi4cMSDDzc3m32yklPocrsFt1u4dKn0Yht3i2DztQwbAAAA
-AJoaSmlMTMzx48e7d+9uMBh4ntdoGuP2VQAAteCfEeDxeDIyMuLj4xsqjMq+VePi4nr27Ll48eLJ
-kydfPRAgLy9v585dD779brzFfKbU6XL7XC6fy+1zuYVFm088flsbu8V0LSMHAAAAgCaF47j4+Pg9
-e/bs2rWrffv2JpOpAcfKAkAT0+BDilRVdblcx48f5zguNja2ocKoIrF6zz33PPnkk0OHDk1KSrri
-1KLFi1PuuDPcbrPqtCfySvxDANxuweX27Tqfl7139Qdvv3bNwgYAAACAJkij0fTu3fvMmTM7d+50
-uVwN/pMdAJqMBl9blFJqsVgSEhIasP9PqkwBmM3miRMnfvLJJ3PmzOF5PlDOGFuydOmM+d8G63Vn
-HS6H0+d2Cy634PYIHo/gOHfAzuVe48gBAAAAoAmilCYmJiYmJjZ0IAAATVDViZCRI0cWFRVt2rSp
-bCGl1ON2W+z2M0UlezNz3W6fyyW43YLLJaiK6j63+8EH7q9pKNKf1fRyAAAAAAAAAKhE1SuscBz3
-zDPPvPbaaykpKSbTH9P7x48b9+rdd3YbPLR5y7a2qFZeWe92+zwewVN0gYnulJSUmoYyffr0sofL
-li2raQsAAAAAAAAAUJFqLbLavXv31q1bz58/f+rUqYHCrl27tmvXLijItH79zz99+X54q+4h7YdI
-iq7w6JYHJ02qxUSLOXPm1PQSAAAAAAAAAKim6nbUH3rooeXLl6uq6j9kjKWlpY0YcftTjwxZ8eVD
-J9Y+cldywaHFr53+aa5BLHig5rMAAAAAAACuO6YqiqLWfdFBpqqKXz00BgBwzVQ3BdClSxdFUdLT
-0/2Hbrf77NmzQVqnr+So7Dhh02S9dr+7ZSR//4S7VixbYjabr1nAAAAAAHCzYFd1qeury365MbHo
-0NIvFmy7VMEyVEz13+z3/60wTO+l/T8u/PKzz7/4KnVnPta0AoDGq7opAErpnXfe+dNPP/kPTSZT
-n969Rtz16MNPf5C6alNxXsani0/bIto9//wLFovlmkULAAAAADcLVXIcX/75lz9mir+XMFUsOZT6
-xf9tvCBWdmE9YYrn3Ppvv/s11+fJ3Pjtol9zK7qpqnjP79qTre969/0PTRzRLbRaM20BABpEDWbs
-Dxw4cNeuXZcv47jOXbpmZefEJvWe+vqOTvdnvfu9eeYbs69NkAAAAAAAV7g8IOD3Afh/ek//x7h8
-RVH/KGd/ql2m+h/lZRqh2rD2PW9pZeX4kPa9erUJ0ZS5L/v9EpWpqiQ4PMwQFhVmMQZZDTz9c4OB
-Fut1BAMAwBUYI4pSZa0aJCltNpvL5QocpqamjhgxwuFwdLslZebMmQ6HIz4+vhZxAgAAAADUEFPF
-4rTlS4/F9o7OP5xxwSFwQVEd+w/tnRDEEya7Lxz65dcD5wp9hBqC4zsNHNojUk+Z7Mk7vnPbvhO5
-TpnTB7e8ddRt7QyUEMK8uQfWbDp4pljmLVGdfm9EFYsy9u47dO7ihvUKZwpN6maPb27QEVUsTlv+
-/akOI9td2rrtRKmly4hbpN3bDudLSv6q/5w2Jox8cEQM5807tv2XPRn5XmIIadltwIAukSaqCPl7
-ln+fZho4cVR7S40XzgYAqBRjSnGxuGePcfhwVVUppZTScivWIAVgNps9Ho//s8vlWrNmzWefffbX
-v/71nXfeiY2NrYegAQAAAACqizFFLDhwLG7U2EdH6TxZ25f9tGlX/INDInmpKH3zzvwWt90zohnn
-KbxUxFu1lDDZnbX1x1+yI3oNHRdnVd0lUrCJIyojquw+nV7ad/CEW43uszvW7ti0K/7BIVE6QnmD
-NbRlz9YpYWbqOPnrz9s3h8Xd081OCGOqcGnfFk1i15HjIoJsIXZdi3Dr8sUHIsY8OLiFljDZnbn9
-p215LQeNva0ZyTu4cdOPv1geGJFkoJTX6LRavvxf5QAAtcYYEwS1pKRo5sywW289dOxYVFRUVFRU
-uXVrkAIQxT/mP/38889Wq9XhcBgMhkGDBtU1YgAAAACAmqKcJrJ7lxgzT5mpWVKs8eilPJ8aaWaK
-rFKqMZqCLEabNTSSEkJUyZNz6IwUPXhw9yQzRwiJIIQwVSSEcnyzW1I6Rps5ZmvTJWHf6rw8nxql
-46gmKKZjR5UxwlRTq3Zhe7ddcinEzhNCCKXG9gNT2ts5QghhatmYVMV7/tBpOW5Yz1YROqaaunQJ
-O7rt6AUhKckQ3mPCX3pc978kAGjiGFOLikree8/+yissJGT/okXHdbp27dpVVL2cFIDP5wts/kcp
-NRqNhBBVVX/88ccBAwb4y1euXDlhwoSFCxeOGzdOo6nnJU8kCcuoAgAAAEBVKKe3W7X08meeI6qi
-EMppw5JTOuRs+OHb8wkdu3RObt0iSEOZ6i1yqsbEEP2VY/ApZwwO1vlLOV6jIaqiEP/Sg2f27dh/
-6mKJV+GI4lX5pN9XD6CcMby5udzB/Iwpnvxin9fx43/OXH7dT3lNhFdgxIDX/wBwDVBK9Hrfzp2+
-EyeKW7QQ9u4d/957lSzSX07vfdy4cVlZWf6ZAzab7ZdffpFlec+ePYsXL54/f76/TnFx8dmzZw8e
-PPj222/X+yNMnz6dELJs2bJ6bxkAAAAAbhiUcjwlqlL2LbuiqoTTcJQQRgghlC/nMk5rTew/IarD
-2fQDe7euTDtyy9jRPUIvX1DuYnyaqzrnTJUK09asPajtcec9XaPN1HVy5cItlV9SBqexdBhx1y2X
-twaglOMN5ScMAADqAeV5Pjk5Y8WKC1Zrt6KiyjfpKycFcP78+ZycHLvdTgihlK5bt27Tpk179ux5
-5513WrZs6XQ6ZVmeMmXK4sWLZ86cGRcXV+8PMGfOnHpvEwAAAABuLJRqg8JM7OyFYiGhuY4SQlTZ
-U3DeSS0dTTwhcsVXMsYI1Ycldh8cHWf/funhwwXdBkWYQi3c4bwirxIedLk7XkkvnqmS43wxDR/U
-PsqiIbLgLvIwYq5W0Jwp3K5JK/FozQkW/o9iQghTFZVRjucwHAAA6gcjjBIqqep5q5UdPHjrv//t
-+ctfmM9HDYaKLql6DP+CBQtuvfXWF1980Wq1ejye22+/XRRFnU63ffv2eg0eAAAAAOAPlNOFt+sU
-fmTnuo3GPslRFt5XcGr/b+e1icOSKltRn6m+/GMZRdbIFna9VJyT5+VNdiPPaYzRnVpq127fckDT
-LdZCvKUubXRi84p+C1PKG4NNJOP02bwW0ST/+G9HnISGVydqTmOM7trGtPq3zXt03RPtWtFdXOAM
-atMxSi/l7V2xMs084L472gZhTAAA1I3KVEERioUSK2/Zs2vXJa22X3GxLTZWjIuTTp3SdexY0YXl
-fO1RSt1ut3+GP6U0IyPj8OHDX3zxhf+s1+t1OBxWq/UaPQkAAAAAACGEUE4X1mnkKLpj56FNq3Yq
-lDeGxna8bXCPliaOMJVQjufLvFGnHK/hKSGEMclxZte2rU6ZchpLizb9hyUHc4Ry5vgBo/pt/3Xf
-huW7FE4f1mZgVCKpqBHK68O7DeiUt2nLsm85Q0TbnkN6K78WBFYd4K94k1+2iGqMUSmjh2p/3bV5
-5T6Z8oaQuOQB7SghhFKOUlr+XAQAgOpTmXqk8Mgbu/99rPBoLB/Xz9fnqcce827ZIl+4EPHNN1Sn
-q+RaeubMmSuKxo8ff/z4cf/nqKiotWvXlj07fPjw8+fPX11e7xISEq5p+wAAAABwramqmpmZeXW5
-LMsrVqwYO3bspk2b+vbt619/GgDgZkMp5Xl+zZo1/fv3X7169bhx46q4gDGmKAKRX9/1pqPIeItn
-zM+uLyNb8h/cOsvx2WeGvn31t9xSeQPljAL4/vvvK7ngWvf8AQAAAAAAAOBKjCnFxZ7//pe7d8zZ
-4qw456DiQkePNoP3+BZTvd723HPVaQPzkAAAAAAAAAAaN8aYKBJZdnz0Ecsv6kDb/ML+cyxu9VrX
-Z+OSxlS/GaQAAAAAAAAAABo11eUqfPllQilNSjq2eGmLi83fvfXt5Njmc/rNuq/VfdVvp+odAQAA
-AAAAAAAaD0VRJElijDF2g62wyXGcVqvleb7qqlddKefkeA8dKggPl/bvv/ezz6xW6wAyoKbNNKIU
-gCRJDR0CAAAAAAAANGqyLAuC4PP5ZFlu6Fj+4M9KVF6HUqrX68PCwjQaTU2Dpzyv6dTpzI8/njEY
-ejmdVouldnE2ohTA9OnTyx4uW7asoSIBAAAAAACAxsmfAtDr9VarlVJa9QXXnqqqFy9eTE5OrnxU
-gqIohYWFRUVFcXFxNU0BSKqaaTbrduwY8OmnnkmTlMJCPiysFqE2ohTAnDlzGjoEAAAAAAAAaLwY
-Y6qqKoqi1+u1Wm1Dh3OZqqqUUsaY2+2upBqlNDQ0tLCwsKYTASRJ2rlnzzlFGVJUZLXZlO7d5XPn
-bvgUAAAAAAAAAECVKKWN5P1/WaqqXjEKgDF2RZy1WL9AVdWsrKyTp06Nfeghce9e6fTpsE8/JbV9
-fKQAAAAAAAAA4EbCcY1ub7urUxKqqhYXF4eGhlZZs3IcxyUkJMTGxmoYc48dSymtdf+flLspoCRJ
-oihKkiTLsqIoqqpWdLGqqljDDwAAAAAAAK6nRjgEwB8S+52qqqWlpVu3bvUPDQggtQrev48A1emC
-Jk3S9+pVlzjLGQUwb968oqIis9lst9uDg4NbtGiRnJys0+muTrScOXNm09atU6Y+Lfs8hBFCGG2M
-/y0AAAAAAACg6WiE3U5/tz8wyF+W5ePHj8uynJGR0aZNm0C1Sl6xXx/lpAAmT568Y8eORYsWFRcX
-K4qiKEpoaOhDDz3Uu3fvKxYt2LV7d5+Bg2Sj6bhXVJxejSAE6/hgk46jhBCm1WCWAQAAAADUG/9v
-67Kv0RphNwAArjVKaSOfCOBfF/D8+fPh4eEnTpxo3bp14GyDr2JQTi+dUpqSklJYWLhgwQL/XIDs
-7Ow333zzn//8Z79+/QLVGGN79+1//Kmnz3h9EiNZxZ7s7KKs7EJXiTuKvzyxAAAgAElEQVTGqobK
-uX95eNJ1fBAAAAAAaLIYY16vt6CgwOl0yrJMKdVoNBaLJTw8XK/XIxEAcLO56v/1/lfw/lMc5cr9
-UqhOnbry5yj9L/+tVqvRaBQEwZ8FKFuhAVX4on7w4MELFiwQRdGfBVAU5fvvv+/bt2/g7zovL48Q
-Fmq17szPdLp9LpfP5fa53UJBqfvgz4uH9WxTUcsAAAAAANXHGCsuLr5w4UKLFi0SExNNJpP/DduF
-CxdOnjwZExNjt9sbOkYAuK7+nAJgsq845+TpnCKPQrVB4TFJiVE23RXDBKpTp64hBUYq+Xy+nJwc
-VVVLSkoIIYIgtG3bNjAFoNGNAvALCgqy2+3+uQD+LMCuXbsKCwvDft97cO/evaPHT8h1uVd8+bnR
-HsEHNSv18k6Hy3nxtJh36o4Rz9U6JkEQan0tAAAAADQl/vf/2dnZ7du3t1gsqqp6vV5CCM/zsbGx
-drs9IyPDYDAYDIaGjhQArp8/jbqXfYUnj2a6w1p1bmdRHTknT6efNNzSPlxfpqNdnTp1Dymw4F9Q
-UND999+v1WoDZ0VR9Hg8pLxtAq+zyqbrK4oiCIJ/CIA/C5CTk+NPAaiq+tvu3SMmPXCqoDCosPDc
-ps0nzp4ukGRdSJTHkT/1yUdjYmJqHdOMGTMIIampqbVuAQAAAACaBkmSc3LOh4dHBAUFKYpS9hRj
-LCgoKDg4ODs7u3nz5g0VIQBcHzzP6/V6//p0ZXrRqioWXygmIe0SW9i1lBkTk0qLj2YXCmGRhhrV
-qU/+kUrXouW6qywFIIpi2YkAsiyHh4cTQhhj6enpx48ey3p3dpvk5KQgay97WKg2RydKZz2ul3zO
-3r16+WvWzuzZs2t9LQAAAAA0GZIs5+SXXiwo7habcEX/348xFhISsm/fvn379l3/8ADguuE4Liws
-rFevXlarlZRNATAiC04fM0QHaSghhHK8KdjIioq9aqSBr0GdOis7CqASjXctAMbY+fPn/aMA/FkA
-xlhERAQhpKSk5O9///uCBQssFtPGjeu+X/7Dof27uwXZOnChdqYmtutosViwKAsAAAAA1JFPkJZu
-OzsgTg21BUmSWG4du93unxRwnWMDgOvJPyfo4MGDt912m8vlKtPfZEQWZcrrAn15qtFSVZIUQvia
-1Kmr6neBG+lEAKfTWVBQEBgCQAhJTEzUarWyLL/11lvTpk3r3r07IWrr1q2nTv2rp+TnrZuWj5gw
-/9Zb+0575KG6DAEAAAAAAPBTFOVCoUuJMfgkhVawmbZ/I26TyXSdYwOA60yv1zscDv92gH/aFJAS
-QkjZd+vs98Ka1akzVVXVCr6pLkdBaeUVroMKUwCZmZn+IQCBkiFDhhBCFi9erCjK5MmTCRGJdIqo
-JYS4TdyR4bfamKq+8PyzLVu2tNls1yN2AAAAAGjSNBo+rpnNLfpOni9OjDBeXcG/WQClFMsBAjRt
-/qVAIyIi/F3UMi/SKdUYNKRUlAnREUIIYZLEqEFT9vV+derU1Q0/CuD8+fNl+/+UUn8K4J133iko
-yKdEdhXtJUpuUJCTSHnEm0c8l/w1kYIFAAAAgHph0OseGtp2667D+w+ltxx6y9VzaFVVPX36NCGk
-tLS0IQIEgOuE4zibzda+fXtRFEnZXjSlvMFq5i4VO8Voo44yRXQVeYmpuZEjhDGVMUq5yurUD0pp
-9dcCuHYpAMaYLMtldyK4WoUpgIKCgrKHISEh3bp1I4R4PB6j0USkU5bQFEIIc7zr7/+rroLyGwIA
-AAAAqBUNz7cItd49tMeePXt8Pp9Wq73i57UgCBzH9e3b12gsZ4wAADQliqKIoihJEiGE47jfR9RT
-ThccHa5JP3v6gi7aojovnCmiIW1CdURV3BfP5rhNsS0jTRXUqeeueOALijF2xQqmGo3mijr1jjHm
-cDjmzZv3wgsvVFKtwhRAXl5e2cNBgwb5d1+43LqSzXHUZNQSbx7x5jF3vju7FEsAAgAAAED9kmWZ
-UpqYmJiWltaiRYvQ0FC9Xk8IEQQhLy8vLy+vXbt2siw7nc6GjhQArp+yfU/Kae0tOySdPnnu8AGZ
-aIPC4zu0CtdzTPE6cs/nca3jaYV16j8k/0AAt9u9efNm/9cXY8xoNI4ePdo/foE02okAV6QAhg4d
-+scBE7My05I7tDi48UHiuUg8eY6sktTV58OC7Q2+wwEAAAAANDGU0rCwMLPZnJmZefjwYf/PaIPB
-EBoa2r17d39GAABuHv5R92ULOK0lsm23yLZlypgqexwCZ20ZouMqqnPNwjMajUlJSQUFBcHBwcXF
-xUlJSTqdLpACqDuFKYwxnuNpzZc0rDAFkJ+fH/hsMBhSUlL+OKcW/LbzwL2jWxHvJea+VHKu5F9f
-ZP+Qxr/+1r9sNltghEMlBEGoaaAAAAAAcDMzGo1t2177H+8AcCOo8kU6Y6rk9vKhsaG6en3XXyn/
-BiWEEEppdHT02bNntVqtz+fr1KlT4BV73dcC8MienRd3nnWcGxF3ewtTi5q2Vq0UQHJystls/uOc
-mr37t2NPTYpl7rzs44VTZmW5NDGvvflMmzZtqrkd4IwZM6qsk5qaWp2mAAAAAAAA4Kbyp00By0M5
-bVBs117XJxr/HcvOTaDUaDTGxcWdPXu2W7duHo+nopo15ZW9b+x+a8+Fg830CV8dmffd7YviLHE1
-aqHCFEDZ7QqTkpL+fNuTgseZ1MyXfaxgxEunO/ccPGXSg4mJidXfC2D27Nk1ihIAAAAAAADgRsFx
-XGxs7KVLlzp37nzFLPtaY4Q5JefmrC1vJPwQom3+fxen/3B29bROf61ZYBWd6NixY+Bzy5Yty57y
-Fe5vE8s7c4qeePtcx+4DHnnsiQ4dOphMJlmWRVGUZRkrAgAAAAAAAMA10giXoi+7HKC/R2w2m/v1
-6+d2u1kZpA7BU0INvMGut+cIGU6lqETJjTS3qGkjFY4C6Ny5c2pqqj9Eq9Va9tSJ9IO3JRte//hc
-KYuccv9DCQkJlNKioqJ169alpaW1b99+2LBh4eHhjfC/CgAAAAAAANzoqpwIcP35F/+/opDneZfL
-VbakjmsBGDXGJzo++t6hV2RV6hLa9fa422vaQoUpgKFDh3788ce5ubmEkD179kyYMMFfTimNMUsr
-NuQv26u+8a/nWrduzXFcZmbm1KlTT58+rdFoVq1a9f3338+bNy80NLTWDwYAAAAAAABQrqs2BWgU
-Au/5K6mgKEpdbqHltBNaTRiVMCrPmxdria1FCxWmAMLDw+fOnfvYY48JgrBz505JkrRaLSEksWVs
-9Kj91iDTK3/7e6dOnfR6/ZEjR6ZOnVpUVHT33Xffe++9oaGhOTk5R48e7devX0WNq7KkMEJ5jYZr
-dP/ZAAAAAAAAoHGilHIcxxjT6XR17E7XO6/XW2Udj8ej1+vrGLlBY6hd/59UkgIghPTu3XvmzJlz
-5869dOnS559/PnnyZK1Wu279ZkKIqqoOh8NoNP72228vvPBCXFzcJ5980rlzZ/+F8fHxld5UyFrz
-9arTaszwh8a0NSMHAAAAAAAAANXE87wsyzqdTq/XN3QslzHGSktLJUmqvBqlVKfTBQcHi6J4fQK7
-WmUpAELIvffeO3z48Hnz5n399dc+n++JJ54wmUz+2Qvp6enz589PS0ubNm3axIkTeZ6v9k318XdO
-fraOgQMAAAAAAMDNh+d5juP8fzZ0LH+IioqqTjyKovgX0b8OIZWrihQAIcRut7/44osPPvjgjh07
-li1bVlJScvHiRZvNFhIScs8997zzzjshISHXIVAAAAAAAAAAQogsyw3Yi77+VFWtzr57qqpWWafq
-FIBfRETE3XffXc3K1cFUWZKJRqe5Ok8iCEI93ggAAAAAAADgBqUoSnp6utvtrrKmIAhVjkSobgqg
-njGp8PCKeSu8Y6Y/3Pqq6RszZswghKSmpjZAYAAAAAAAAACNBmPM4/FcsblgRQIr9FWkYVIAqiNt
-47GgxLDyF0uYPXv2dY4HAAAAAAAAoBHSaDR9+vSpr9YaZvkEztb93gk9Qqu/gCAAAAAAAAAA1E0j
-WkERAAAAAAAAAK6dBloLAAAAAADg+mGKJClUq9PQqgpr1CpTZElWGSGU19W+GQCA6wYpAAAAAABo
-nJgqS5Ly+z5YlHIcz/M8V+OeNlN8l7Z+/N62VtNevStGW1lhzZqV3ec2LVq46YSL6Fv0n/r0iEhO
-UjidtvJhtkyVZVlRGeU0Gs3lh6lkrywAgHrVgCkAymvxLQcAAAAA5VNl14lFb3+2X9BqeUoIZwqL
-b9e9/5B+bcP0fGN4367K7lPrNp40DZrydO8Qqg0izmPffbqz23OPtzdUeA1TJceJNQu+25YjmmNv
-veehkW0tHFPF0mMrPvtRe8+zYxINjeHJAKAJa6gUAFNUW5+HxxKOEYIvOgAAAAAoD+W1LYZOeaSH
-RfWWnD+xZ/OG+R+dGzPt4d4RWv/bc0WWFUVlhHI8r+F5evl3ZaCcUMrx2j//4mWqLEkq9+d3UZcL
-tVoNVf1nmSwrjGp0Op4yRZYVVWWM+G+k4SlhiiS4ipyqMTK+WZDJoKFS4eE9GaVSsigIHKctfywA
-U8WiQ2t2k6EvzmybuejjH7Z3T7q9GXHnbF97KnrEMwmB/j9TJEkhvD/3AQBQj2qQAvD5fKqqXl1u
-NBoprdm3k+o5u+7b1WdEzthm9MTBcUYMBgAAAACAq1FCNZbgsPBQnjRrEd2ydZT+g3k//ni046Od
-LVSVnNm7flyx6eB5FzM169j/rrsGJtp4ylTJlb3rvz/8ciizVOKNER1GPjaph/n3BpkiFKYv/+K7
-s63uf2pUWLmFhz79n4O9H+6ZvXr1wcLQoc8+M8hasOfHVb8ey853Spy5WceB48b3j+VLj/73m+Xb
-c0T5wlf/Sje1Hj1SvyH1kEMmC/81U2fu+OjfHmilv/pxGJNKzrssSS2D9VbaPth5KN8n20r3/bzP
-0PfJVnpZlHmthieKN3vdJx9vs4x/6S89g7GFFgDUq+qmAFRVfeSRRw4dOnRFOaV0w4YNkZGRNbkp
-cx5Zf6bNA1NSyLbPVxzt9Xh3CyWECIJQk0YAAAAA4KbCacwJt/YO27VpzzlPcget88Tqr3+80GnC
-1IkxJGfrkiX/tyz01Uc7B0mOYyvnrTwVO/y+p9sFs9ICXzMrTxRCCCGUyZ7c3anfHw0eNvWu9haW
-V26hqniyN63UdR74yNPR9pAwDVWNIZHJw7uPamGlRQdWzP9p2c72zw2K6Dj6yWYhH7+7Ofqp6fcm
-6IkqtdeX/us77SNvPFnJRABCOEqZqjLCmKoSyqTiI2u2lLRolTH//633WFoNmXhv3ygt5XQGk1GP
-ObMAUP+qmwI4derU8ePH3377bZ1Op6oqY0xVVVVV58+fv2zZsmnTptXkplJJti+8q4XnSUwzz6Ei
-ubtFSwiZMWNG2Uqpqak1aRMAAAAAmjhKeUvzYE4pLfAoiub0tnSx9cTBHVsYiGpKSYn8bfXOs57k
-dsLJ7eli4j0ThnSycYRExxBCmKIQQigl7jMbVq8t6jhpWv9IPVV8FRVy1Nxrwh09wy6/gedtSb17
-KgpjTDF3uqXF+tXZpTKJ0NXmAThdcHyob3dGbinLOuKwROuzN/10ISrRmnGh+xMvtz3zzVcrDyQ/
-1Sc4eshfXx9Sb39tAAB/qG4K4Jtvvunbt68kSWlpaYqiyLKsKIrdbo+Li1u0aNGUKVO02uovpMpE
-HzFoKCFEq2de8fLkgtmzZ9c4fAAAAAC4mTBVZYTwlEmO85fc7pL5//rn5QmpVKOLdvoU2XWxSLF0
-ama68hW6KrvPrvsupzj2vsntrTwhrKJCSjlzdJzl9xH4TPHmpW38769pmQVehWOSS+WsKiO1Qjmd
-PfmOgRmL5r33qzm25/D4k+tXNhsykv+lsHXbZkFhmvbWzccuiX2CKxtGAABQF9VKAbhcrpUrV770
-0kuZmZkOh0P5ncPhMBqNPp9v586d/fr1q/ZNOb2Z80kqIUT0UqMOq5wAAAAAQNWYKhSeK2D6uGZm
-nnioRmvv+cjU21r8/oOW0wZZeMVNKWHsqj46Y6qvQNMt0XB4/S9n2o1KMtGKCgklnPaPhQV9F7cv
-/Habftjjzw1KspKSA5+9vawOj0A15pgBD786gDDFc2Hb1/9nHviX9sb1GzRheo5yepNW9vkULJcN
-ANdOtWYYrV27Ni4uzmKx5ObmSpIkCILP5xNF0efzFRcX22y2b7/9tpwv2gppQhKshZnFPl9RZoEp
-LqRW+7ACAAAAwE2BMcYYU1VZ9OSnb97rtCb3jjFQjSUqQufNd2iswcEhISHBwcF2a5COpxpLixDe
-lX3RJavs8txVRgghlNeGdB815r5xXaUdqevOuJUKC/98c1UqPJ1HI3v2TLRpmCKU5jor/NHLcZSp
-/tsSQpgqy7JSQWWmiEXH1m8TeozqEabVmbWSy6uoitcpaowG/3YDoijVdqwBAEDFqk4BqKq6ePHi
-nj17ZmdnC4IgimJubu6xY8dEURRF0ev1Wq3WLVu2lJaWVvum1NxmSLvM1K/+d+nZVre1D0KWEwAA
-AADKwwgTS/IunM86k7F/66qvP192Kqj7mNsTTZTTBCUN6G7L+Xnp+gMns7IzTx3Zs23HWQ+jmqDE
-vp0MmT8t35x2JivzzPH9B865fu/ZU6qztrn97s7ijqXrTrsv97DLLQygVGNpZqX56emZ+Zcy07f8
-d09J+VthUcqbw8wk7+iJ3MKCYq8kXNrzY+oPuy5J5VVWJdfpLesvtr2zX6SO04a2bC6dPHah5NLx
-Y87w1hEaxZuz4aOZb329v/TqlAQAQN1UnQLIyMg4ceJE69atMzMzJUkSRfHixYuXLl1yuVz+Q0qp
-yWRasWJF9e9K9VH97p8yecpTDw2ONSADAAAAAADloJyG54q3ff3xR5988fWq33KDeoyfMm18so0n
-hHDaoMQ7n5jYU3N4xbxPPv7sP8u3nxUopZTT2tqNefzu9t5dS7/45LP/XbrttEslhFBeq9dpOMJp
-rG1H3N1Z3rtqc5ZYWeHvKwzwhuiBY/o1z/nhs7kfLNjm6XrvyDjz72cpp9PrNP6UAOWNMf2GJevT
-Fn303v+uPedxndu17cB5qi/n1zZThLx9m05FjhiaaKKU01raDB8cuv/Ld7/cZR4w6pZgnhDKazUa
-DX4lA0CNVbnRHj1z5kzlNd58881z58716dNn586diqK43e4jR460a9cuLy8vNDTUvyhAcXGxxWJZ
-s2YNx1VrZoHqObP229VnRM7YZvTEwXHG8i5KSEioTlMAAAAA0GipqpqZmXl1uSzLK1asGDt27KZN
-m/r27Ws0Gq9/bNeQKjtPfj93ftGIVyb3svNV1weAmxWllOf5NWvW9O/ff/Xq1ePGjavOVf7pRvSq
-MUkej+f5559///33TSZTRddW0WP3eDzLli3r1q3buXPnAkMABgwYMHnyZKfTKf5Or9dnZ2cfPny4
-OuESwpxH1p9p88CUKZMSM9YfdWOWEwAAAAA0HYzJ7ov5+rYDOtrQ/weAesYYKy4uLigouPqULMv7
-9+9XlMomEVWRAlizZk2zZs1sNltWVpa/t19aWnrfffcNGjSIUup0OiVJUhTFPxdg8eLF1YtZKsn2
-hcdYeN4S08yTVSRX7yoAAAAAgBsA5Q3NB0yb/lAHM8byA0B9E0Xxu+++++KLL64+ZTAYXnrpJYOh
-so1FK0sBqKr6zTffdOnSJTMzUxAESZKKi4sNBkNKSopWq73zzjvdbndgIwCDwfDjjz+63e5qxMxE
-HzFoKCFUq2deUb3itCAIVU5gAAAAAAAAAIAAVVWzs7NV9coudlmaSs6dPn36xIkTI0aM2LFjhyiK
-iqI4HI7x48drNBpCyPjx45cvX84Y889A0Ol0Go1m7dq1Y8eOrSowTm/mfJJKCBG91Ki7Mjs6Y8YM
-QkhqamqVTwgAAAAAAAA3G1mWZVmuvK/bOHEcp9Vqeb42s4QEQVAURRRFQgil1OPxEEJ4ntfr9f4K
-oiguXrx48uTJgZKrVZYCWLx4cefOnV0uV2FhoaIogiA4HI4RI0b479SqVSu73e7z+QLLt2i12m++
-+WbMmDFXL0twxU1DEqyFmcW+SJZZYIoL0V5xevbs2VU9OwAAAAAAANyMZFkWBMHn8ymKEhiW3uAU
-RZGkcrcB/QOlVK/Xh4WFaTQaWa7ZjHifz/f6669v3rxZp9ONGzeuRYsWgwYN0mg0vXv3njt3rr+O
-/5ROp6uknQpTAIIgrFq1asyYMceOHfMPAfB4PIyx8ePHl61mt9sDn00m05EjR7KysuLi4ioNnprb
-DGm3OPWrdNXY9u77gzBHCgAAAAAAAKrFnwLQ6/V6vb6q18/XiaqqFy9eTE5OrjwloShKYWFhUVFR
-XFxcTVMAer3+lVdemTZtmizLa9euLSoqWr58uT+nEKjD83yHDh0qH2JQYQpg/fr1QUFBVqs1KytL
-kiRVVWNjY3v06HFFNUEQMjIy/J85jjOZTKmpqS+99FLl0VN99MBHpg2svBIAAAAAAABAGYwxVVUV
-RdHr9VrtlSPKG4qqqpRSxljlq+NRSkNDQwsLC2sxEYBSGhISQggRBEGWZZ/PFxUVdUUdr9f7+uuv
-Dx482GKxVNRO+SkAxtj8+fPbtWt35MgR/8p8/o0HfD7fFTX9Qy8CqReDwfDdd98988wzlY89AAAA
-AAAAAKgdSmkjef9flqqqV4wCKNtZDpTUcfICpVSj0fhX6LuCRqPp1atXbUYBZGZmHjlyZNSoUenp
-6f4St9vtdrvL/VuWJMlms/lPGQwGl8u1Y8eOgQMH1vRJAAAAAAAAAKrEcVVsb3/9Xd1ZVlW1uLg4
-NDS0ypo1otFoRo4cWe66A3q9fsqUKZWsBUgqSgEsXrw4ISGhsLDQv/KffzzDk08+We5wgq+//trr
-9ZpMJv+hTqdbuHDhgAEDGmFWBgAAAAAAAG50jbCz6Q8p8IafMVZaWrp169bRo0dfEW0dg+c4Ljo6
-utxTbrf7kUce2bp1a80mAgiCsGTJkuTk5NzcXH+Jz+cLDw9/7rnnym3C6/X+5z//CRyazebt27fn
-5+dHRETU4DkAAAAAAAAAqqERpgD8ixQEUgCyLB8/flyW5YyMjDZt2gSqXdONDCmlYWFhlf/llDN8
-Yv369TqdjjHmXwWAECKK4qhRo/yLLsiyLEmSJEmyLCuKoqrqsGHDvF5v4El4njeZTCtWrKj35wEA
-AAAAAIAmxt95DqhyqjyltJFPBPCPoz9//nx4ePiJEyfKPlHtVjFgjPn74P4PkiQxxvx988AHVVVN
-JtMPP/xgNpsraaqcUQCLFy9mjF24cMHr9fpLBEFo27bt0aNHA91+QgjHcTzPazQanU5nt9tdLldg
-PUZVVZcuXTp58uQaPVUg4wAAAAAAAABNHmPM6/UWFBQ4nc7/z959x0dR5n8Af56Z2ZZk0wMkJLQQ
-SEApAoJg4xAsKIoF5SwH9nreeefPOzWKZw96WM7eFRtBQLEDUlQUkI4QCC2FkLap26Y9z++PSZZN
-simTEBLk8375ks3sM8888+xkss93nqJpmjHRXWRkZHx8fMsL/oV6y3gKTwVRoI03GrsIVAjs1tz2
-phm2nCbEGRFCjIf/kZGRDodDluU9e/YMGjQoOIEpjLGCgoJvvvkmJiZm6tSpH3zwgdVqvfLKKxcv
-XizL8rnnnrt58+aSkpLx48eXlJTce++9q1atMjcQIDo6ukePHowxoy+Aruu9e/eOiIgoLCz0+Xx+
-v9+YeMBisdjtdofD4XA4Lrnkkl9++UWoJ4pi0zkPWpWZmRn8Y3Z2ttkcAAAAAAAA4LhgrDpXVFSU
-mJiYmpoaFhbGOXe73YcPH967d29ycnJ0dHRz+zYOAXCmydVFuTn7K61pp47sbTf6CHDNX1mYu6+w
-wqtTS0RCysDU3lFWofntDXJsQ5rGRTKa95xzv99fWFjIGKuqqiL1z9QDHefb0QtAUZSysjJCiK7r
-ZWVldrudMeZyufx+v6Io1dXV5eXlPp9P07Qrr7yy5eX56P79+5tuNZYZNBr8iqLIsizLsqIoiqI0
-6gVgtVqtVqvNZrPZbFar1QgK2O32kEsUmNK/f/8O5gAAAAAAXYsxlpeX13S7pmmLFy++9NJLf/jh
-h9NPP93hcBz7sgFAF+Kce73effv2ZWRkOJ3O4BHylNLq6mrjybndbm+6o9/vZ4zZbLa6VidnSs2h
-PTkHa0QH89L+9SEArvlKd23M8cSnpSc7WU1h7r6KiPTRQxKseujttuDOA83sa2um8c4YKykp6dev
-nzGhPqU0LCws0E2eEKIoitfrpZTa7fb8/Py0tLTa2lojpSiK33777Zlnnrl06dLLLrvs6NRv80I3
-1CVJioiIiIiIIIQY4/+NIQCG4BCAwViWsOXlBwEAAAAAzFI1zS+ruq53dUEA4GjinJWWFCckJERE
-RDT6BeecO53OmJiYwsLCpKQkm83WtKXZ8EE61/x+S9JJI5wVO7ZV1W9kTKksqiSxGamJ0RbKHakD
-qyt3Frjk2J4s5Pb4JDttbd/gNC2fHfd4PO2pl87X+rN6o5Hf8tKCAAAAAABHnappB4urP/nxwCFX
-bWfOog0Ax5pVJJePCOvdt3/IAB/nPCYmZtOmTfn5+WPHjo2KitI0LThBgxAAFcN6pg3mTKl2scBm
-TjS51s/tyRESJYRQQQyLcfCKSi+Lo6G2+1iSXWxl3+A0TRgDAVod6t+OuQCOro521wcAAAAA6CR+
-Wf30pwMeITJ5UBql3W4CcABoN4nqdmlPXKRTVZWQCaKjowVBYIxt2bJl8uTJLYUAQuNEUzQqWgNt
-dipZKFNVnQjNbCdi6/uSlkIArRXJdMrOgBAAAAAAAHRTuq4frvD07J+K9j/AHw0nOmN+VafN9PAx
-egdER0fX1NQ0XQKwTYsCUuM4wcckhDa/vS37tshY1LClElHacgRxYw0AACAASURBVIJjACEAAAAA
-AOimJEns28PpqiqNiOlBuvS5GQAcXYwwr0r3FlUNSGg84R+pXyzAeG0sV9coQRsepFMq2SVSrWiE
-GBPkc1Xl1CaJVAix3S6Jre7bME3T46EXAAAAAABAB9ht1lmTMz5Yvjv/4La65bkB4A9BFEhRIq3Y
-sr3/OaObDo/XdX3fvn2CIDidziFDhihK48ECrbeiKRXtkeFCSWWtkuywUq4r7gofCesVJook1HaH
-QAjnjHNKheb2dTTb9YBS2va5ABACAAAAAAAIQRLFpDjnQ9dNaFOnXwA4rtTW1q5fv97v91sslkYt
-Z1mWRVE8/fTTrVaroiiNJgIghBjTBLSYPRWsMckJ0o4D+4qsyU5WW7S/gsYOjrMKAgm5nTDdU3yg
-0BPWZ0BSWDP7ttJ0D5wF57zRNId16xdiOsCQZFnu6iIAAAAAQLdgrE7d1aUAgKOPc96/f/9t27Yl
-JibGxcUZi9D5/f6ysrKysrL09PQWfv1DPkinlAqiGHiDCpboAUMH7ss9uH2zRiwRCf2GpiXYBEJI
-yO1c99UcPlQqDOpHW9q3WUaRjI4AHo9n5cqVmqYZXQMcDse0adMCfRnQC6CxzMxMQkh2dnZXFwQA
-AAAAAAA6BaU0ISEhPDw8Pz9/+/btiqJQSm02W3x8/CmnnNLCsvRGr/smWwVLVOqp4xttcialn5KU
-3jRpk+2cad4aWYgcEGsVWtq3TeflcDgGDhxYXl4eExNTWVk5cOBAozuD6bw6QXcMAWRlZXV1EQAA
-AAAAAKDThYWFpaebbmcf9QfpnDPV4xPj+sRZ2z/siDFm9POnlCYnJx84cMBisfj9/mHDhpWWltYf
-CHMBAAAAAAAAALTZUZ8fhAqWiD4jx3Ykh6CGvdERoG/fvgcOHDjllFO8Xm9zKY89TKwCAAAAAAAA
-cDQJgtCnT5+wsLDhw4e73e6uLs4RzfYC4JxXVVWJouh0Ors2SgEAAAAAAAAQ0A2bqIHpAANbwsPD
-zzjjDI/H02gVgPYV3sik1QUFApk3d5RmQwClpaXnnnuu3W5fvny5w+HgnAeWMQAAAAAAAADoKt1w
-oVBj8v9GG0VRbNQFoH1zAWia5vV6/fVaSOlwOOx2u/H/kE34Zlv1LpdLlmVVVauqqjZt2rRv377Z
-s2czxoLr2ljwoBvWPgAAAAAAAPxRhV4UoKsZDeSWE+i63o6crVarw+GQJEmSJEEQWjh3YyVFXdd1
-XWeMNU3QbAhgyJAhb775ZklJSe/evV9//fV169bNmjVrz5496enpRtxCVdWysrKKioqkpKSoqChR
-FNtxJgAAAAAAAABtRCkVBIFzbrVa29ec7jw+n6/VNF6v12azmS05Y4wxpqpqe4t2ROgQAOe8pqbm
-5JNP/v3332tra++///7169d7PJ6VK1f269fP7XbHx8e/9NJLCxcu7NmzZ2lp6eOPP37mmWd2vDQA
-AAAAAAAALRBFUdM0q9Vqs9m6uix1OOfV1dWtNtEppVarNSYmRlGUY1OwpkKHAKqqqqZMmSKK4rJl
-y1wu14svvnjXXXcVFRXddNNNBQUFNTU1sbGxixYt+vbbb9PS0r777rt77rnn+++/7+CIAFmWO7I7
-AAAAAAAA/OGJoigIgvH/ri7LEb17925LeXRdVxRF07RjUKSQQocAKioqPB4PpbSysvLw4cNr1669
-7bbbNm7cGBUVVVBQEB0d7Xa7k5OT8/PzU1JSzjjjDJ/Pt379+oyMjKioqHYXJTMzM/jH7OzsdmcF
-AAAAAAAAf1TGiPeuLsVxKXQIIDU19Z133qGUpqSk2O32n3/+uaCgYMiQIS6Xa+DAgYcPHy4pLu6T
-0nv++29/8M4rZa6KvinJixYtSkpKuvvuu9s9K0NWVlYHTgQAAAAAAAAAWtJsR4WxY8eeeuqp1dXV
-7733HqX0zTff9Hq9mzdvDg8PHzVq1C03XyfVrhyRtPO6C5xvzJ350/K358+fX1BQUFVV1epChQAA
-AAAAAABw7DW7IgAhpLa2dtmyZdOnT1cUZe3atYMHD77mmmsIIbquF5dUvD0/RXCm8/A0FtbLrwr7
-D+5WNfmZ/8696Yab+/bt2w1XaAAAAAAAAAA4kbUUAvjwww+zsrKMCf9WrFgR2H7w4EFnuPj+94pL
-Ky5XvHllq35bv4dTNnR8cjUvveYvVy357Mv4+PjOLzwAAAAAHPfw6AgA4JhpKQQwYMCAyMjIoUOH
-Bm9UFOXOv94qW5UnVpaGRdY4I8N69I65du6oQSf3s4hWTlh1ue/bb781+gsAAAAAALTMZrNZLJau
-LgUAQNdodSnBo6ulEMCUKVPGjx8fERERvPHgwYPFlfkT/i1arJaYyOiYyLjoyNiYyHDCSU/7oGJ/
-TkpGdEFBXicXGwAAAAD+IJYvX97VRQAA6ErHMgzaUgiAENKo/U8IqaysdMY6CPVyzjlnjDPOOec8
-TIw7O+HWxYceSEhx7tlxsLPKCwAAAAB/FKIoTp48uatLAQDQ9RRFaTVNG6feb3l0VSshgKaSk5M9
-LkYI4YzVtf45Z5x5VBchPEKK75ESueLQVrPZAgAAAAAAAEBInPPKykrGWGCL0SI33gq8ppQmJSW1
-kI/pEEBiYqK3WuEa4RbOGeecGf9oTPHqteFSXEKfyMOFxebP6AhZljuyOwAAAAAAQMt0XRdFMeQL
-gG5IUZSPP/7Y5/MZD/lVVVUUpdH//X4/5/z9999vIR/TIQBBEHol9vC6Dof3ZIEYgBEI8GiuCCku
-Mi7M5/V5vd6wsLD2nVtmZiYhJDs7u327AwAAAAAAtEDX9R9++GHy5MlNX3R10QCaZbPZbrnllrS0
-tJDv6rqek5Mze/bsljMxHQIghAzoP7C2rCS8Z90QgEAgwKO7IsQ4SkmP5OhDhw41V7JWZWVltW9H
-AAAAAAAAgD+q5qYD0HVdURRZllvtUy+046jpgzPC9ARJsPKgPgCcM7fmCpfiCCHxKc7CwoJ25AwA
-AAAAAAAATem63jQEwDlXVVUO0nIm7ekFcO+99+4sG1fhLfrl8AJOfIzVdQRwa65+YWMIIQl9IvIP
-HWhHzgAAAAAAAMeAJEnNvQDonmRZbhQCMNr/xlwAhk4JARBChiScQQgZmTj5i4NP15JDdYsCaC67
-GEkJTewXfbjsUPtyBgAAAAAA6FSiKE6cODHkC4DuyWjtN1oRIHg6QKP93+righ0KdIVbY2ekPb6+
-/JNCfSPlQrVadNCzQSDSBdeMH0TP70jOAAAAAAAAABCgKEogBKBpWuD5v/GiEwcCBBOpdFrCNVXq
-xHK+h2pyoWt3Pz4pVkgTCJbTAAAAAAAAADg6FEXhnHPOjfZ/8HKAxgtZllVVbTmTozPcJdrSO5r0
-Jqz1lAAAAAAAAABgCudcURRj5v9Gz/+DxwK0mg9mvAAAAAAAAADo7ox+/kZTv2kUwHjdaibdKATQ
-6qAFAAAAAAAAgBMQ5zww2r+5EEBb2tTdKASQmZkZ/GN2dnZXlQQAAAAAAACgWwmEAJqOAjCmAzzO
-egFkZWV1dREAAAAAAAAAuh1jLoCWQwCYCwAAAAAAAADgjyDQ27+56QADSwa2ACEAAAAAAAAAgO5O
-lmWv1+v1epuGADRNY4zput5qJggBAAAAAAAAAHRrxnSAK1eu3LVrl15P0zTjhZGmsrJSEISW80EI
-AAAAAAAAAKBbE0UxIyNj7969ubm5xhbOedNk48aNazkf0yEAI/YgiqLFYjG7LwAAAAAAAACY5XA4
-5s6d2/F8Wukk0FRBQcHMmTPfeuut6urqtow0AAAAAAAAAIDuwFwIgDH23//+d/bs2RERETNnzvzu
-u+/8fn9bZh0EAAAAAAAAgK5lLgSwfv36ysrKv95114P3//vHNWtWLF9+xx137Ny5U1GUkOMQ2sdY
-6vBo5QYAAAAAAAAAxNRcAKqqZmVlLV68mGt+IvvjnI7PFi7csnXrdX/5y5gxY2688caEhARJOgrz
-C2ZmZhJCsrOzO54VAAAAAAAAABja2mLnnC9cuHD8+PF9U5KZu5JwxjWF+DzD09O2bN786YIFV199
-9axZsy699NLw8HBKaUfKlJWV1ZHdAQAAAAAAAKCptoYAqqurX3vttd937OCeaqIphHPCGeecq34q
-ilddesklF0976OE5l19++auvvtqvX7/OLDMAAAAAAADAH5amabIsH60J+EVRtNvtoiiSNoYAOOev
-vPLKQw89FGazsEoXIZxwTjg3XnCVM7/HZo94+snHs7MXHDp0CCEAAAAAAAAAgHZQVbWoqGjVqlXF
-xcUdn3RPFMWUlJRzzz03ISFB07Q2hQD27t27evXqV155iVccJrpKOOf17f8jgQDJsuHXdampAydM
-mNDBIgIAAAAAAACcmPx+/+rVq6OiokaOHGmxWDo40F5V1X379i1btmzWrFltCgHouv7ss8++9+47
-xFvL/J7gZj/hnBNOOKcWmy5Yb7j5lhdefLEjhQMAAAAAAAA4YXHOdV0vLS0dPny4KIqiKHYwBCCK
-Ympq6vLly9s6EGDNmjWUkFNHjdJL9hFNreuH0DAQIMQmffDpgvETJqSmpnakcAAAAAAAAAAnOM65
-VE8QhI7nFnjdSghAluW5c+eu+P47VlXCZR9p2P+fG+3/sMhav/LwI48uXbq0gyUDAAAAAAAAOMHR
-hjqeW+B1SyEAzvmHH3540YVTe8ZG64dyOGONxv8TzgmlJDLh4Yceve2226KiojpYMgAAAAAAAIAT
-HKWUc84YY4wFNmoapZSIIieEcE5UVbBaWatvEUIYY4EoQEs9CsrLy997991HHryfleVxVSG6SrS6
-/3j9f4IzpqCoeMXKVTNmzGj7+cht0PbcAAAAAAAAAP5IeEOKQpcs6b12bTznnDHuclkfe2xoq28F
-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
-SUVORK5CYII=
-"
+ xlink:href="data:image/png;base64,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 eWXFFmRyv5OPG4cYdB90UAcR9L/eH7GWKUcveddJB3UyQ2siQpbb78yzj5xcQinj/tVPPL8LkErj OwOqb17xGgDSxMm9Dy295+677r37rgceeer5jVajIcN9j5nZGQTtc46bAURi02uDQRyLoZFya0tb e3sn56HafEpSEMhqtYrIcrm8pQHjhc4D928hqq1bta6McuD5+56pMAynze6OqxgccMyxs9tZZYRN OGTO+FypUOjs7Bo/65TjpgBBbevGkSq1HnjxD2/6x5mFzb/4h/M+cfXqShTHnAeVanVoaKhSrdSj WBAQIvMWGzlytRkelFcrBQAFAS8W8sVCMQi4lCKOVX53MpYRpsaVAACBgTupq0ffLrapRUPUWwM4 mHv1CBgASVmv10FtbwYtKZz1mXT1wARtEVCCSRCoMgN4t+75WtyackoO2+OyluOVDDHev7r2T5PF eWCqFc5tcAERlXkricxWalQnDBQ3qdMWoM/Y84AHIecB52oymmx/Opufm6TOfnHSAEgHQayoMr+Q m72GahpDRERG+qJEaeYjuNV0l6XOhh4M2Y24lp44VAihMdrUYNn9FOqxn6cupfO0dUYm3OKEJ3nV J3pk5FWCGJYDRzFJVLnk6gE1l3qmPtNYcxfbYO/t5gdX0NAbPLTRGDCoV+vtIiiRuemO7GCqex+A mSsA0BR0dAdilqtTzJ2kjjMNfNTREszbXW+sX3v827IHeKPnbBe089jayq75WIidO3cqn5+IhBAA 0NHRMW7cuPHjx48bN667uzsMw8HBwU2bNm3bts0eJTD/olerJzScTa6NR5sElHOuhEMcRbVa7QdX XT1pwoR/++xnSsUiSUGkMoMiA253jqCxlxgicgbellQtDQijYRwYGthaWd+UWZoCIptYmpYv5loP HrQSjAFwxgKVbhSRA3IGAUP9GZExbxeAk2IIySP8CU6xGYuU3QJmT6ZC3xzmICIECjmfN2PGuWec purhnJ+/+Mx5Bx1UyhdLuUIxzOUYyzMeMp5HzAGGiEEiQagiPgFSIygdcfyRC+I4fnHNas74zP32 E0Ku27QJGZswdqyUsndggHGORs5rTjbz0KsKiCiKovsffPAzV1551Te+seDQQ4894oivfeHf3vuh yz/2+X/54Te+sWDOoUfOnfutL/37P37+X+wZAaRmtokzXYxmIgCAOIrvf+ihkPNLzn5neuoAAEE+ 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 7xWI6r0vPPlqOOfIWR38zaL3+8TD9PTMD180r9hvUfqjte/T4Xd8yxvo3wUDR4GL5zcy/xuEBr5t zpN7x0aMrHtw+fphNmXBcYfsP7u7ONiMh/fMML8jO/1OU++PBDIefu3X3/3F6joAsKA0+70feef0 5qONPB8CQPDn14cMMsggg/9bgIitra2bN28OgmC//fZbtGhRFEWjFd67TF68ePHEiRPjOF66dOnS pUullJMnT168ePHvFecMMsgggz9XIKhufXZ1mR1w4rxOLTLxD5tApUmLfzpAAHyTrxBVtz67tsoP XDSvy+GPvGX/M//+0x8+fVreVfjGqvYq7G5rrOT3AETVLY/du+zRV4ek//gPPNBN8dA9nduBTVH6 g7f/OzSafKvpQL+ZugwF/kfMn+Lb5jz5BrChaHhYMnbAaWefdeoRXcH/pGtvlp1+h6n3xwIWtBy4 5H0nTkbkuaknXbRk/99zRC6DDDLIIIM3C4hYKpXa29tbW1unTp0ax/EeCu89HSAinnXWWUuXLt29 ezcATJky5eSTT46iKEsimEEGGfwlAFFl67OrK8HMhftyWQYAoNqmZT+9feWmcnGfo89590kHlBiA LG987PY7H1ndU+Md0xecsvhts9ppYNU137kzOubtU9c/9PS2WsvUo059a+m5O5e/OojdB5/6niWH j+GyvPHR2+94ZHVvPejc7y2nLj5xZjtLtijiwXXLb71n1eu7yiLsPGDhWUveOr1opC8REVFDJQfm ttx39U9XDE5Y9DeXLajc+8NrnhqefNLfXHpMd6WxKjmw6prv3Fk9/NhJm1a8uDNq2feYJeedeECJ kazuWHnrjfetGSxMmXtwrFuT8cjrj95xx6Or+6Kwa7+3nHLWopmton/Vtd+7Wx5/xrS1968cPOh9 l581NahseW5tNZh5zFQuhi2qot7z8Nc+f3fP1DM/cvHcPAEAyfKG+//7tlVbojGHnPbus+Z3czGy 8bE77nx09a560Dl9wclnnTSrgwOQtBVitefhH+pK5rVCPLBm2e33PLVud8TbJs09+bwzZrdU0jW0 yf5V137v7tr8YyZuevLFXXHL1KNVH90Qi8rmh66/YdWwgKd/8pVnu495/2ULAIBkZeNvf3r7U5sr 7hUSo1EgPvqkKeseXrWj3jr1LacsLD5314OvDbIxs0999+LDunnjW21U3britlsfemVXnRW79zvs tCUn7t/CTE9nHD2ltnH5LzyULvub41teX37bPc+83lsWua4DF561+NhpBTFK1ygeWv/Qb257bP2g AABAHkxb8tH3zc6Xm5F3dDp84G9PHFvbM+bTDzv1rGNyT/8yQb3Dtl6tx+jQ/O43g+EhJXBjzaWs J8f3XSdPfvXneyR1F2vGt0QeC/k8SUQNLHRIO3MEGVp77w33bycBq3/yz1fsd+4/nD/+pSQP23rs ZxmnR3bRVGrOThQPvZYe0xKONvWSY7do+sA93//Zs3j4JZef2r351u9e90JUOvTCD581Yec9P7z2 aVxw6d+dOjlUnUiM1/xTTp+1/uc/fbJ8wDkfec+sYm3TXd+/9tn4oHMuPWL7Un84pp/90Qtnl/YU gihOOmhqy4M94dSDJudFfbjvqZ9//97a/KMmbFr50i7Ruu/RS961aP8iWMrIaHjjwz+/5rG+cW95 70XH8GfuuO3h1bvqrDhm/8NPW7xoelHsXrP8jnufWj8QBW2T5538rlNm0PoHb7/3mY29FZnvnrHw HWcu3LcQ9T/1s+/fWz70hJn9j6/cHI+dc8r5ZxzWHcRD6x+9867H1vRHua4D3nLKmSfMaPuTx04z yCCDDP7IQESlUkl9Xr9+vRBi+vTpoxXeu5CUUpbL5bwBIhocHJTyj7gqkUEGGWTwJwOi8uan19Zz sxbuG0hST7Y9vqFz3hH78MqWJ+59ulcAyeE1d/zygTW9HfOOPWp6tGHFr294vEcgzwdEux57aHDW KW+fkRvZ9PjN1z/XcexpR46J+1++/8FNNTny6l03LFszPO3k884+PNzw2M23vTgkUy0iK3S15sbN O+XsdxzRsfu1h+54oicR1aUmlYzk9z/zore2087HfrvyifufHmKTzrj4bZODplUpJPuffrIy+/RT ZxfLm1WPZDzw4l33rBmgsbPnjO15bodqSwyvvfvG5WvL005+11nz+frHbrnjxSECnguk3L7s9hU7 i5OnTW5lJMqbnllbz806ZqqmmIKG7dAkacczPePnzRkT9b60dOkrg9Hw6jtvWLamv2PewiOn1Tes uOnGJ3YJAL9C8iqhaOD52256fP1g25xj33rEtK7u8S3UWEOPVBj2PfNUZfZppxxcKG9+4r5VfcIj IiJv22fm5BBZOO2kc99z9hFjA4XethUbO+YePpmZVygenQI9jz8yNOvktx0YDm984pYbXuhYeOoR 3VHvK/c/uLna5K3BeHjNffev7svPP2PJaUfu2z5mTIl5PV24b5hGibN8V1tu/PyTl5xxeFv/aw/d sWJXjM27RrK29eHbHt2Ih7/3b5ccGCBvmX3OObOLojl590CHbtgr5h3dY1vCNPWSO+TfMIYl9Mea i4bxbeV7JXUTvoUkC/k82cBCE1oTe/UxP27GEQe3IuNjFy654JTp+b1v6SfRbGSbshNAkzFtPvXi hrFbMTjusP1zVN6+Y6Q+vG1HlbVgrWf7UL3cs3UICwccNinXFJ+OseM6pxx1ZLeUW9f01Cke2LBx hOUOOrL4lBqOv158gB6Og/fo/wNQVK0KAABZq0QEyPOBFP3PrqrNPvXkWfmRzSvuf8abZSSHX19+ 86N9+QPf+bdnTo9fvf+3a/sL809ffNpb9u3oHlOEaPfzt9/8+OtD7XMWvvWIaV1d41sDVuhqLUyY f/LiU+e39r368F1P7hKAPB9KOfTCyvLMk47bl3a9dO/S1YP1wbVLf/3Qa9Xpb3/nmXPZusd/c8dL w5mNmkEGGfzfhziOH3744e8a+OlPf7rYwJIlS2bNmrWHd/e+C6BarT722GP1en3cuHFSyoGBgYce emjhwoXFYvH33I8MMsgggz83IDmy8enX6vlDjpmEQi32Ietc9IFLzuzezNZ865GhXSNCjom3Pfda jXWccMlFiydWZ/R+7pp1L6zuXzCPABDHnHDuqW9t37T9kVdXRgefc86iA8qlZ5/89dah4VpZPLO2 hl0nLT5hXle9+PzKn73+4vbqnJa836KEYMLbL788qFUqu+RTT93W2zsiaIxbWaPq9sZKKnPax538 niOe/uHKex9ENv7k9y4sVsoRjVoV4phF551+bMe2/sdfVj3qqu1Yuw151wnvv/TMcUP77vrCTduB ZGXbc2vrvPukJSfM76gWX3zq/218eXv1oPEEwHj7kR/8l0tnh8O7dvb2vf7Ma1FhztETDcUAGpZK iQiQ8fEnX3zBotZN9KXvPLl5bc9w+MJrdd51wqUXnTW+PKPv8z9b/8Lq/rd0d5SbVihFdfvqTZJ3 HnfZJWdPDjmPd2/f8kJDDWv6DptDgIyPXXT+6ce2bu1/4uVHh3eNCNne++zDq3ZGgEH7AUcdM+Pg yaVlG+Wkg+fN3UcOD+wiAMa7F33gktM7NrG133l8eNeIkJ310SiAjI894dxTj23dtP3RV58WB599 zqL9h4vPPnXL9uGhWqXe+FZtv0KJA1R7B3LHnXrRKcXh3oG6jF1PJXb7KNHISA0mvv3yy4NqeaRH PPX0Xbv7RgR1UrOuUUd9qGcI2cHzZkzqLI/H9UPFMa1MDG9tRt4xY5w3izm/0SlysOfFN4L5oGhC veRAvxEMOVHsUUA0ju/Onl17IXW52sC3QOQTds8sNNCzu+aHrfJjZh0ybdnSl6pjZs6bsy8NDVRH 52fzmafps3uEmrETjWGYT49pLIvNpl61YexeXDM095Ap8OLmdT1DxY27Ww5ZNP3V5Rt2DXWt62Fs v0O6UJKOWDbiU5s9v/uBZRvX7qy0b1/by8J5R3SN3K+Ho31kPG4YKo5p4URCUam+67lH1EzpOPCo I/drYaanusuaAATIg3GLzjt9YWlL/4rVjw/1jgjqIiIAEtWNy29fVW4/4tKLDuPl3VgoMoJq/1Dh +FMuPKUw3NPXt2P1Zgq6jnv/JUvMQNQLk0/+u78LqiPDO8SqZ5YO9I0I6lCtTDxpyduOKszuX/Xd J7au7RkMn3s14t0nLV40v61ceHHVLze+vL16yAGZjZpBBhn8H4cgCE466aSOjo4XXngBAMIw7O3t faPv7rXECy+8gIhjx45duHAhADz66KNDQ0MvvvjiggUL/idIZ5BBBhn8+QPRyOur1seFeUdNMCY1 ALSPEf29fdUwB1AHDkBxtRwBtLZH/X19Me8sAFSGjCfR0iGGBgZqPAAI23FkYLAKDAAIKa5UIpJ9 9//HZ+8HAABktWosKPZblNWtD//mx0+s3TFUE5IQA+CJtbnmlUhZFxMXLuhY+eAgTjnu8NZKFAPs qaqWDjE4MFDlAUAVOACJelUCtbTX+/v66vkSAhBIUalEMt5139c/e59qiteqMQEAIo47oG1gyzYJ FJc3PLNeFOcfNd6jWHNAKJVqu/ti0V4E6KtEtVo5Bmppq/f39tV5Rx6gMlQVIhylQhK1qgBq7Yh2 9/YiAJCMq401qIFAaGmPBwcGazwAqAMnGQ2ueXzFGoGMjykdevgUIVWVQ0MjIalOQXt33N/XXwtz AGU10KNR4P9n77zjoyj6Bj6ze7fXS3LphYSQACGVKr0jAgrYaOqj+Nix9/KIDR9F5X3sPurD8zwq FlCKjSI19F4CBFII6b1cv9syM+8fm4T03CURfXS+fMjnbm9nfmVmd2d+UxZAoDMih93OswoIOCPj sts8gAUQEIjFtqkErE27btGoz77ev2/NWPw7OgAAIABJREFU+we2J82af01aAGnuOow9fHOVkKd8 z/efHs6tkouP5ZqKr7VpADCqwBAdKanJKawMv2gHwBjMIUTadQ4GoNmANhabCXUrUDv2tqN5qlni W3uvVUH7pCGAqJkHcJvyBaQpt45c3bbeAgAI6qhOthXRCiR6PBIBABDB6XCrOq/PsnYKfWJr/xg6 qE7IU9KmTDu49NqWnZNXhiSGkYuVFwvV1Th4Uky8VdqVX1RQKcGwQSFK0uittvqkBRiS0sw7My7k lweVVDJcyrAwLWgsjrCCpuJo3EdRtGUfPJyLIMMG61KHNoYA2jWeaI2S3W73siwAYlPNIgiXHj4P WWW4mXM5JVZpSLx24cgvvjmwd837B7cnz7xxRiLL8wgCnUlqKmvkLs1Y/+nhvConjzBhFKpL9yui UvIOhyho1QBYvYLg9YpIrN761t+2yhYreS/C9K3XFArljw7GuLa2tqqqSp7/r1T68d6VrkMAI0eO PHPmTFpamryp4KhRozIzM5OTkzvfY4BCoVD+9yHEUXCyAGmHXREMm82XYlp2FiBUmcwcKHVUOSSi 9dbXeAEICdKzwAoAAAwhADSuiCVY/g8AAIzaaFBCRj/qttvHBSsAAIBRqFhSf/qSRCzZTm/85UyF afgtT14VcOyjd7fVg9ai28lEAZFUc2jDPhsAgJRs/vlczOwEDeosK6ZVtw1yOi0EwFXrRkDlrncR eR6/yaBkWMOo2xaPDWpSGFnlJKKIgAIS5Lx4qgjrho0Iau6xDt1b5ZDiDY4qFwCcUas3mZWgzFHt lIDaW1fLA2Cy6EiHGULOqGcBcNY4EdDL+qjMbXPQs6C+rY1QYUi5/6PJGggAEa3lpVXFcsejhYRW BQ2gqhMPMIQAAFsXNASAVbeTSgGxIvHGp9+cnvnDpyt3ntt1YMjA6cbWljapJNeErWerzcNvfuJK 47GP3t9p77j4IMOFT7su6cznu//7EWSUURPnDg1gkdiOc4J0bSe0N/NDu/a20Xxo4owQ0I73WnjS Bw2xJDYv63bKt0Vu7bpa1abeAtBJnexYRA8gWNXSPwOvNMlqt6xO7ZdpB5deO2VnUGi18Uayp7BQ 6dYnhAWERmid+RcLrdA0OEotKyKIRMmxrfVJnBVlSE4379x5LjPTDrjE4WGsAjYUx8eQVUZNmDs0 gMVIdhWjNKY+8NGUhiulotwmdHZZy0XT+ihkuaj0Qe7jp3et2x/7l3GhSqJJuvGpN6489cPK/2Rk ZRxKj59o1LEEuGocCOgUABAs1J/evD2rJuCKm5+YbDj68YcZjksOBs5qJ+qnc1S5AOQMWr1Br2SV plF/uXVM81pK96uiUCh/cBBCp0+fRghFRUUFBQXl5+f7nrbrhQAIoREjRjgcDnn9PyFE/kq3A6RQ KH9wCLLlnywk+tEjAgHCpNnUV0xIY6eGEAKUkaPTtaePHPruW1eUmFcAYMTwJBOUSkDjGY23y2Yz hiFQRoxO1549emTzdlVqhNJbV4MGThmray6RAKiAAAAlJ5SdPnCqGgBFq+zay2TquDD32S07iknA hLtn13/2+elNu1Kjpkd3lVXTF0IAVIamxJCcgv3r1jvDXOdL5YcFFzEqTZN17MimHVxqmMJbX4cT p4wNbpGDaM8/VUwMo4e38lhzyxs/E4xr9m3YUKurOO1h1EmpYZrwUWma00cPfvetM1LIKwRMxLBB evf5DjIEUB02bKDi3NkD333r7mfw1Aj9Z89JapNDkhkKxe3YiCVXZaGrqagZlVmLccXZbZuZiOj0 0X0vFTRs5pauPdDaXAJgO6kGTh5tyPvx24u6qHCdC0AIVGYtbuk6AJqrFJWSqoAQACXHl2UePFUD ANdx8REsOs4dOOdlLDH9QoPCIlQVxTZThJaLaOteM0NadpVa+GHwuKSuNQ/QQdC+99oWeqcahnMt PQBVrcv3mlmxnbsatK23BEuOjupku1Uo1dh89PhSS4eQNua09xmLtqyfWvhHC5vfN5pVJwLblmkH l56q3bKDfEIst/vkuRrVwOlGVh8bQg6dq2L1QxP0ECFP6baVnx+Xkm9YFJ+d0bK8CCD6pDTzjp1n i1lN6vAQgER72wrTONpPWlwpjXYiT3V+VokLY0XJ2fza0f30zbwBmtkor4FgYyfOui5QX/ju3v0b jyTMH1Sz49sCfWSYxgUYCFUBegWnGTqAzT53YO13zjg9XyfETxvLQgCBUuEtPX02swYAVWOpEyTV 7NuwvlpbcdbLaJJSw7QhI1PV504c2bxDmRKm8FrrycDJYyP8GAyjUCiU/0lYlh0xYkR+fn5KSgoh RKPR+N4992k7QJvN1rT/X6uvFAqF8keFYHv+ySJgGjI0gHRxy2Mj595/Q3oYn386q4yLm3DbXaON PtyGldHXPbRoZIQzc+fmjVsPZDvUKmJrIREqzOlXT4hS1+xd/d1RZuTEYN8yceVu35ovKgfOmRAZ N3N6BHGc2LS3FHed1SUgq0+68YZkM6jNvSgmzR0bIB/l+lz3wIIrwp2ndm7etO1grlOtaj2u6cg/ VQJMg4d06TEAAMOYh4wNqzt/0aEKGzbv2n4qqIyac9/1aaHe/NNZFep+E269Y6TWfqHDDCHUJsy/ 5+rkIM+Fk8czS0BQsJppncOdow0+PQ+hIiB91rhItafo9OkyvqN90GCXHvA9lUKvtp/ft33T1sM1 wSmzbhpv8bRyXQuVRC4gbda4CK5675p1x9krJoR0LhKLrMlAcG1hbtaxPds2b/h87QkraePeO9vW 0hZCBYbpUvOrb5oQrPTNe51r+N2xGmtLD7Qp3yB1V00Wpk29JQT5V4V6/Bo+2No/IR10RqHS3E6Z tn/pgfbKDgA2YFAfCCEMircoARcUFwAgZPskBbAEAFYTaOIYfYBB1aa8AIDAkJxuBpDhEoaHQNJu hensCsbIW7pn4+EKQpBYeujnPWUdvnoaAAAIIJh38cZx1w9WSRV7t5xyaFT283t3bN52tDY4Zeai 8cEcq+0//+6ZgyzuvFPHT5eQ4BBjcPrMseHKyr3fbTjJjhjf7H4FGRiQGGTNLXAZoq+YN7efmlXH XHv/vOGh9lM7N2/efsi3q5JCoVD+CHAcN2TIEJ7neZ6Pjo72PSH0a84AhUKh/JlQGCOiLQp7WXFt w8p+1hDRJ0jF1xSVOTAXGBVpYt0VRZUeDACjMgUFm3VKBiDeUVdd6xRJ85NVQdERBuAoL67xMoaI PkEqoaa41CExnNESZNar5A0FbFWVDlVYK4laS1iwkWMw77Dx6gCjVFlY4YaXckYAtMnEzgZFheqg p7qkwgXNEVEBnGQvL60V1Z1nhbnAqEgj664sqvRgwKhMwSGBWlby2GySPlAvVhdXuBCrMgZaGmSJ Hmt1pVVgjeHRgZy3trjcgaDSFB4VwNrKS+oaluArLv2KW3+2KFx2L2fQKYngrKuqcYgEsGqTJcis UzJA8trra+pcwNhxhggAhdZsCTRplQxAvK26ss6DWufgFMGlJE6iCoiMMDKuyuIqT8suDlToLKFB Bg5ir6280qEO6yBJpx5wErUlKlxP7BUltbx8mK8tKXNIbVLZJI0lLNjAMQAQ0W2trbFL+rAWlrZR SRkQGiQXn51XmwxiVVGlh2lrWkVhacnBL/61G854/KnZcWpv6Y4VL6+tG3zTvVdFKds6p+26/UtC reUVVoHpUnOrB3XoveaF3oWGQ255cN6wvi090Lp8raIurAtX41b1VqqpcBvD/apCLfzBcOaISLPC U11U4cKd1+cGxYC2tX/ac0JlcZWHKHSBbcrUjTu49NopO6gwhEUHqYhQX1pmR5w5MsLMEk91cYUL AUYVEBZuYhwVlR59SOvyApBRB0SGm1jsri4ut1YdbioOlbt05z9eXls35KZ7p0d1PJIOWW1wdKhO Xv+BXZXF1aI+PDqQ89YUl7uIKjAywsC4KourvERhaDoOdcGRIVrora+wc5YgPccAgEW3rbEKac2W QKNWyRDE26srraI6MDTIwEHEOx2C2qQXKwvLbdasNR9urIhftPThsaFKzDvlWy1kVUaLxaRTsQBg 0WOrrmyxqyOFQqFQWkFDABQKhUKh/GEgWKw79vkn250DJl2ZHCDVXziSkWkdsOCB2THKVmOjRHLm /PDFpiJe/gqVhsQ5t1wZxf1+NLzM/FYO+W1pURxmsS7/6O7fR3G0BQu2rDUfbizvd+39NyZofm/a USgUyv8ONARAoVAoFMofCMgwjpMbvt56ppoHkAuMGzb1umtS1Q43anMiqwuOsDTNfSeSq7q81nsZ hk991vAy85s55LelWXFAyAX8boqjDU0hgOvuvzGehgAoFAql29AQAIVCoVAoFAqFQqFQKH8K6GtT KRQKhUKhUCgUCoVC+VNAQwAUCoVCoVAoFAqFQqH8KaAhAAqFQqFQKBQKhUKhUP4U0BAAhUKhUCgU CoVCoVAofwpoCIBCoVAoFAqFQqFQKJQ/BTQE0BJUt+eNh//2bYHwWyvyO4SINbvfeHTpd5fPOZdf Yq/QQ7WJWLP7zcdeXFck9rJeHYjjS3etfOWJhx56+NHXNhT6ojLBnqyVTzz6fqb7V1fut+B/tNZR egbBfFXGm4+9uE6+Bgj2lOxc+fITDz38yOPLvy+idYFCoVAoFMofB0XHP/EXvnzx3cMNrXxGGxyX MmrazIkDzWznOfK5q97Ynv7EPcnqTk5CNXvee2N75L3P3tiX81vnFooBpSE8fuiUuTOHhal+m3fE trTFJ/N7H2I/9uGLn5cOWbL05v7dlEzEqj0f/N+uqHueviHW70IhxJP71f/tSn/srqRuiCfEk/fl y+8faepSQiZwwqPPXhvlf1aXC8xXZ27/cfuhc0VWAbC60PjBE2bMHNVX10VMrftO7k0PM5qgvqnj r5kzrq8OYnfuxp/PKCcseX5MIFCalf7n7Y8aGK976ZHd1pZHIRM286knrwzr4s5yKZfer2yPPDGm 4JOGclG2OrsHsnqo1aPPXhvdewXSou5dLrt+cwhy5X79948rpj/7yHgLCwAABPOlW1a8fTTp4adn R5DKPR+9syf67ievi2nxLCTYlbdx01nVxPv/NjoA/trXBYVCoVAoFMrlpJMQAAAAgOCpS+64wkS8 trKcg7/8/NFreQufvGOkpeO2OnHlH8yyovQusmV0kakjhloCfG30d6CYGUru2gv713+36lNlxDNX R3ZljY9A4s/ZzW3x0fxeB9VnZuQRNTidketKSNF1LxbC6iNThw8J6irG0x6EOPMP9dBwyARPufPW YbJ4qNAHKQCQAPC3OC4HRKjY+8mKdRctw2YtmNU3UOGpzN6/5dt3s8vufeSG/o3eb1/t7jq5dzwc Ou3e20cYhPqiE1vWrv/Qpn3u7mF63mpD2ujEmKAAVQ/y9lUDZtqSp0dJhPBlW//1ZUHqbX8dF8wC qDQG+T4f6VepbCqF2F659IasHmjVSze0BprVvctr1+8WCFlDVOrwwZa25Y54qwPp+gzsczmuCwqF QqFQKJTLSVdtTIUhMDgkiAWh4X0SBsVoXnt/3bozyXek6aFYdfj7dTsy88ttPNRFDJ6+aMH4aM6V +cWbK4+5APj0qYcAl3zPK3cmqsSqYxu++vHARSvShKVPWzBvcl8dBNhTenTvob7Dpqd1p8PZXDEQ Gh7gOHLom8J6CUQqAGlXHGhPWxUEqG7PitePTbx/fMHqr/eVGKc//cx0FQCQuLJ+eP8/B3Ktkjos fcbNCydEqyEAoIPMm2xJVZz10XxUt2fF3w+kXp9YuONATpULmBMmzP/LrEHG7kZEUO3xPcWWSTfE HFqfkWVPHm6CAIDOpBBv8d4132w+XuIkQBOSOH7eLTMStMhdenTf4bihV6aaWQAwX3nspzWbDuXV 8ow6JHn23beNNgEAAOCLM/77zbYT5bwiIGHi/FtmJhqg/dQXK/5z3AnAJ089zKhT7l7+14F+2wAB 4EwhERFBzZwgd6Kx8+z37/3nYJ4VacLTZ9y0YHxDcWCh8tiGr346WGDF2vD0aQtunBSrg0Ss2fP2 8kPJ1w4o3Hkwt8oNAxImzL9lZqLs23aT+KspQY4z3/+Yrxuz5KEb4jUQAAD69hvQP2Tl61+t2Tnq qaujFJ2o3crJXehDsCN77dufZPa5bjrZ+u2JHnu44aoJCQu38NnLvj909ljR4R/2FCNS/O5TR1VJ d718Rz/b4e/X7Tx9sdzGM/rIwdMXzh8XrYIAEOzM3/71N1vPVAnqkEGjh2C2m2uIjCHhRgAILxqU QGkMCY8Ib3CXUHm0lSu0xJ75xfL/lox85PFr+qiI5+IPb71zuM/8mWTzmp67omVlI2JNU7k0GUZw 64r90l8Hch3WurdOjL93bMGabw6Umac/+dyM8J5rJSvWPGfT5L+Oy/n3xsA7X7o9UU2Q9egHL31V nLj4xTtTdQA7T3/60hf45hfvSdOI7dWrxro3LZk517FdNqwLS5+64MZJsTqA+eo97/3j1Li7Rl38 ds2hysDpjz82Udz81rtnhz3+xFVhCnmI/bVPauc8/+BwI+Gr97y74nDy7P6FOw/lVrsZy4AJN940 I9HIAkCQp+zQ2q9+Ol7iQrKtrCr5zpfvSFQhb8Wx77/56VCBHesihkybd/3EBrkdZdWbECK5So7u O9Jv6LRUU9OzkIjW09//59u9RRIpevepI5rkO1+8Y6CyHT1/m2lnFAqFQqFQKD3Ej2EmqImbMD50 78YD+e7UVB2rNgUPnHbLrOhAznZizcfrvoxKfGJKSOpfnrnT8cxK8NfXliSrAQDEe2H9B1/lJM6/ f2E/Zdmuzz/76CvL83ekG3rPAOQqPnG0Uj3g+iglAMSb36442L62LAAACMWbPt+dNPn2R/sEWEIU wAYAdpw85J5/61MLdfazP/977T/XRT6/MEENO8r8koP0/pgvlm7aEX/3kpfvMnhzN6z4YNWPiS/c lNC98Sax/NC+yqBRi9P7uTZ+kJFZN2Rc0zyN9qWgyt1frM2NufmxxbFKe3l+CQxSt2zNEuzKWfv+ l5nh0xc+mBwE6ivcYSY5S2Q/uq1k7k2PXG1yZn3/7/Vf/pT4/KJ4Y9otT/3V+fxnzO2v3tvr84qR 49QR7/xbn1qotZ79+bMNn6yPfG5BvBpg94X1H32Tlzj//kV92dJdq7745zeW525P0wMAiFD6S0b8 XUtevkvvztnw9seykirSQRKDfy15QvjiExekoEljYzVNKSFrThqXqPz01Jmaq6LCOlG7eUadmAAA gICItYe/+uyI7qoHFoyJUg4xunrPw5BhGQhVgSnXPdAv5O1lWyLuf35RnAoAgnhzyKBpt1wdHaCs P/Htv9Z/HTXwsckhDHJkrvn059KkBQ/d2U9dfXL9Zz/zKL7najTSYdEkz70xdfmqNXuHPzQO7/0u gx9823VXpOjSDL3oio6BTOuKTbA7r8Na5y3asmpv0qTbH+kTYAnpTT2a5xxoQYpA8WhutZgYxbiL TpRrApXFJ8uE1HhOqDpfisOujFaRTutVV3bFMsUZX375yWrLM4tTdQAQ7C3a8jVInnT7I30CA4MV oKwzTTFftnVPwp33v3yX1pn9/buffr1x4HML4jkslO/6Yn1+3G0vPJIgnFj1zuraiQ8/MDlKTSTn he8//jZ/0I33L4xlSnZ99fUnqwMb5bab1eUYkYdKc8p1SyJC3nttW+SS5xbEqQCRnLnt6OnvrYNC oVAoFArld4FfM01ZY2SQAtVWuTDQscYBEybKh0NGTYj5eVVBvQRCWg/SePK2H3UPum3OFXEaAEKu umr33lV7L7jT0nveci9f/8qj6wEAADDBQ65/cMFwMwuAuwNxOqZjbYnEjVx07egG1eUhqr4z54yK M0EQMmbujEMv/bi38PqEAapu2NJpEhg3fWqiWQGBvu+wJOOe3GIHSlB1Z5SLL9l/qD50Ynqwzjwy TffOnqPVo6c3ratuVwpBvEgYlSnQEqQLCgqLAwA0DrnLH7ErZ9dxd9y8RdMHmxkAoqMBAICIAAAI +1x17bj+ZoaQEVNSf/mgsNiB4lW9sKskIbh03SuPrgMAAMjohy5Zeks8BwAAEMbNnD0yzgRB8Og5 0w+/unFf0XXxCUp33s7jnqTbZo+I0wASNH36nv1f78t3p6ZyAADIxF05ZaBZAYGh79BEw/78YgeK 52AHSdL8HM3Dnvo6EQZEmZpfPBAqzeEmcL7cjkAY05Ha/Zut/yekcxMUYtHWf68tTbz5sSnRKkhw D/3bTLBgLzr+8y+lXOK0KBUALfb0g6xpwIQJ8mlBI8f32fx1oVUCwQpX7t6zUsKiOVfEGSEInnj9 tCPLN/aaQh27Ik1nTL72+sQ3Vn+z2QP3WlMW3Z1sYEDPXdG6st33/IKAnuiZygEAAFaNXDh3dJub YLe1aroEmuVMiHdAP+32vBIXilKVnSjRD7syOnNHZoUYH2G/mO8KSIkzMO5znSjZtV3YMn36voOr 9+e7U1IUAABANCMXzhkVzAIACPZ2agJk2LgrJw80KyAxxA5JNBwqKHGifgHIcTGrRp+yqL9JoUCD rohTfpZXj6dGEeS+sOskP+gv14yI0wAcdOXUfYe+bZTbblbx3bpDEiwVr3350bXNDjGKIH/St6+n 37cOCoVCoVAolN8Dfi42JYQAwDAAAGQ7t33DlkM55U6JAciNQTJuu/ZZshVV8kLNx08/dOlYeL0H g56HAOS9ABjkrS04snH92x95H1kyNaQjcTrQsbZQFxNnatGuhLqQxlFxVhcWquYrqlxoAOu/LZ2a D7UhlsYNDFklC7AodcsRxHtx93FH2LQ0CwvYqFFDTPv2HyybPLdhG7H2pSjCJ9ww4fx/3n8xN2Xc 5KmThsUaWjWskb2sBhmTw9vubsfowkI1DAAAAqhUK7utdltaLIRmtJbGDgujC24sDoUuNFTFV1W5 UILeVlzp9db885JvIRNZ78GAAwAw2uB2rJY6SqLrpenFsOF/x2o3DwF0rA8HAMF8wc//vlAdd+u9 qaZeUq9ZDxNyYelz7rkx1QBBy+IjkvXc9g2/HM6VrxQPZlIwAQDZy63YkBLSMO2BNYYHQthbBQ86 LRqFKe3aa4+8/uU2JumWW1OMTItYVbdpW9kcPdKTAwAwuj5xPSurji+BppwhUIYmRStOnS8XBqtO XQSxiwYmV2/ceK5WCCg7V6eJG2hRSDWdKOmrXYwi2uolQA8gZHR9+vo4Ax9CqA0JlC892OzSIxhh yDANdxOm4UIhRLQVV7jdtZfkQkYR1Si3/ay6A2TY0Kl33DLU3LAdoFC5779f5vicvEM9e+/WQaFQ KBQKhXIZ8SsEINUXVCFlWJiORTUZ//pkM5ly52P3DQzkPJnvPvt5h6n0V9zxwJXhjYIYpb5XujRN ewGEhEcYa868sWNX8bh5mvbFda4to2Q6G8pp0eHohi0dJmEUsBeGkIgrO+O0B4g/LHv0h8ZjR/YU zVjUT9WJFMaYdN3jy8Zk7d++ae0/du296pH7r4pu2UEgoFl3tkXSzt3VbTreC6CNXo0pGOPI25dM a+VbDAAAjKJ95dtP4ieMJsDCkfISm5SivbR+mIj1pTZgHGpk29O7g25rxyZgVxkYnMCd2rijcNDs 2N552QVkQqbetXi4Ra03B+g52FYxIlbvXfmvrXDKHY/dNyBA4cp8f+mXlwxoUZF6o+62Uq6jokHO mnqeALa+2oWAuVdeY9rOXgA+hQA61FOudcqeeaXjS6BZzpBRR6WEoe15leVMjthnbqQpIiXYeiC3 tm9xBdNnQhjXhZL+2MXIAaJOL3kstcy2nRsOhEpj/KCAn08cypsU1k/MPpIPYq6OapjSz7CmUbff NzWsPbm9coeUVeBMoRERTW8EIEbO35zb05P2/ykUCoVCofxP4kcIANvP/rK3RpNyfYwaiBfPl+Co BeMGBnIQIEeFgwBNw2kQQoIbxthZY1SI0lXlVAcGtWy6o97SHwAACMYEEEI6FOet6lDbdvNzVVR7 cD8VAwBylFZ4VSGhOtZXWy6z+dh2NuM8jrlmyY0DZJOw9ejn/zqQcWFO3KAuplpAdWjS5EUDU8Lf XPZLRsnkm+OaqcgaIwPgruIqD4lW+thWhhAQ0s5MkB6DXZXVHhynYgCQHGUVvCpMLo7IYIWr2tXa t51MmO8oiZ9AqIoeHKc4fXh/0aTr4hoG+gmynt17XrSMTw5SACB2qHbzblhnJkDWPHzu/GkOxZsr V21Ke3xOrKrnHoYAKI3BoWFBHfVcCBGrsktJ1IKxAwI5SERHhYMAnaxquBFmlNbxcn1Azso6THpx R4+Oi4bwZTu/3uoadvPN8Idvvs5Ie2hquOJXrGzt0FxWN2pd7+vDGmIHBjiy83KQK3xiH61CE5cc 8MOprDyXGDIuWgMB8U1JH+wiuO24O2SUDJB4iQB5N72KKi/paoE+ZFThExdMyHz3n0sPagyBcSNv vmmYmQWAKIyRwUq3T3J/QyDsQE8KhUKhUCiU/0m6as9IjrrqqoqS/NP7NvzzzX8fZ4fMnzNABwFr CDWCysyzpTZrRda2tRnVTYOujC5IRyrP5tXYrTaeaPtPG2m+uH7V5pP55RXlhdlHd2XkOnuluYxc 9bU1NTVVZbmHflydUa9LGhLOwQ7EdaxtBxRv/n7/xRprTf7+Db+U6dLH9OEA6Cjzllwu8xupO7k7 n0uaPiohuoGYpIlT+kpZu7KdnXSQ+JKDe45fqLA6nXUleQV2qA/StYgFQUYXPzGdy1u3eseZovLy 4pwTx/MdncYtIKOzXDK8O5YQAARbVVkD5VV2scEAQoo2/3DgYk199YUD32+r0KWNjuYAZHT9p4ww 5q//csvJ/PKK8oLsoxm78zr1bTeSdJARa0iac3WcY8+HH6zJyMwvLinMObrls/e/PG8cPW9SZOML xNtV2z99WH3i7HmDvRlfbLro7QUv4fumAAAgAElEQVQPd20YZA0hBlKZmVVqqy/P2r5ud418pUBG Fz9mIJP9w8/Hi+vqq/L2/ZhR2dU15JfgjlxBhPLdX/9iTb5hzpD0q68dWLPp6z0V0uVwRXPVLskS QC9Vofbp8BJohSIwoa+m6ujh2uC0WB2EioD+A3Rlh45bA5Li9IyP9bwTu8rLCrKP7t7Trl0QKsx9 whX1x3edLK6tq8zZ+/32zrYHbLIMewozDriS5z/w0IP33jZnZIy8wgiyuoTJQw35G77aciq/vLys 4HxHcn9b/lf0pFAoFAqFQvGJrmYBVG/74LVtAADOFBmffuND00fF6VkAgDJy6oIphatWv7kUqCOv mHvLNa7P8+UEXPTkq4fkfPuvVw7q0u9+fvGguLkP3s6t+fGrd7bwAGqCB4ybPxz2xnLeql/ef/UX WaIlYfRND14zUAsBULcrrmNt24PRDVxwQ2Tml298W82rwtLn3n1dghoCAGD7mbe05XKZ38iRvSWG odfHN9uVijGnTUpc/1lGpjUlscNkqO7Uj2u/qxMAUJhihs5bPCm05QA1ZAyJ85bMW79my39X/CBC ddjQ+femdaIGhKo+k2am5X73r2WHDIPvWnZrx6I7hODq7R+/tb1BfuCER5+9NgoAwOoHzrsuPPPL N9ZUC+rw9Dl3XhuvhgAARttv7gO3cWt++uqdzTxgtCEDxs0f1mm3FPqfpKOcuLBxdz1p2vrDtu2f 718nAkYbGj/4hgdnje7bVBAdqN285LvWBzL6QXPmpS//z6qfU5+8NqanHvbBrqgp8ycVfvnNm0uh JmrE7Jtmeb4qBAAAyJrSF91RtWr112/tl1Thg2dcO636m4u9KLhdVwChYu/Xm6rib7w9xciyJGXu NX2Xr/9mX/ID43tc2XxWrGXFfu7WxF6qQu3SwSXQWifAhSVHCofOBV6VYGYBIFzIoFiScVwxakCg AvhWzzu1CzLa4MTx84e2ZxdkdAmz54/87Lsv3zoKNKFpU66dZfs2q2vToCrY6Ny6+t3TciZsyMjb ltyQalLo4ufe9xfuu5++fGczDxldaOK4G9uV+9sC/0f0pFAoFAqFQvEFmJ/fSW+YQqH0JkSs2fOP v2+Le/BvN8R2vDsbhfLHgWChcs/H7+4JXXDvnBSLCiBv7Zl1731RMuGpxyYH0+X0FAqFQqFQKJcb urCRQrmcEAwBhL2+mx6F8juFIGfBiSJNyuhEiwoCABnOGB6ph8grXZ7NHCgUCoVCoVAoLaAhAArl 8kBEV3191YXsGmAKNdALj/InATIqS6jaeu5YXr1AsOSuztnz4/bKwORUi5+vpKVQKBQKhUKh9AZ0 IQCFclkgYsX2f7z+U5k+btriv87sp6PzACh/Egiy5+1au257ZpkLQ6gKjE0ZNf2ayYlmugqAQqFQ KBQK5TeAhgAoFAqFQqFQKBQKhUL5U0DnI1MoFAqFQqFQKBQKhfKngIYAKBQKhUKhUCgUCoVC+VOg IIRuy0yhUCgUCoVCoVAoFMofHxoCoFAoFAqFQqFQKBQK5U8BXQhAoVAoFAqFQqFQKBTKnwI6C4BC oVAoFAqFQqFQKJQ/BTQEQKFQKBQKhUKhUCgUyp8CGgKgUCgUCoVCoVAoFArlTwHdC4BCoVAoFAqF QqFQKJQ/BXQWwB8EhJBSqcQY/9aKXCaovb8TCCHnsrNCg0MtlqCOTiksKiwuKRo7enzPxRWXFBaV FDb5gWHY2Ji+keFR3cvtd+vV/2moV38N/mxe/bPZS/EXWkMoFAqlJ9AQwB8Er9erVqsRQr+1IpcJ au/vBIfDXlCQX1VVMWXSlZIktT1BFMWcnPNGo6misiI0JLQnsgghZ7POzJk9V6fVyUecTudPP/8Y ERbZvQx/t179n4Z69dfgz+bVP5u9FL8ghPA8T2sIhUKhdBtFTxJ7vV5BEFQqVZdn8jzPcZxare6J uOYU1Z3dkvXhgmEvG9SWXsnwctpSXV2BEAKwg58JUCiVQZYQv/L0er0sy/p1/mWw99eT4q+97cJg J2b0PcykSzDBDOzpiht/7SWEtNshl1EoFBB2VP/8gBBSVV01euTo8orKqurKIEtwqzEZQkjehdzR o0arNZrs7Bz/QwBEqDrtPPe16K4FBGAA6l0TrDZrQEAgy7KSJFnt9bV11SXf3ybLUuqDTSm3aELT fMy927XIbre//fY7O3Zsr6ysjO4TI0lSeVlpeETEjKtmPPDA/b14oystLd23b9/Zs2fPnD2rYNnk 5OSkpKSxY8eGhPh3f+gEq9X65ptv7tix0+Gwx/aNkySpsKDAEmSZOWPmQw89qNPp/MpNbpr76FVJ kpYvX56WlqbR6kVJlBCSRCRKkighURDr62uPHT7wzjvvBAYGdsuyBhBCn332mdPplC+KJkRRlD+Y zebHH3+8h6UmSdLry5enpaWp1TpJkkQkSRISJUkUJVGUrPW1x48c7LYt/nr1768te/CBh8zmgLY5 2Wy2vAu5dXU1EkIqlTosNKxfXILDYf/wnx8s/duL3dCtuZIX8i9s3PjTA/c/nF9m+2ZHTuaFWkFE Ji03Pi3i+onxotdXKX7ZKwjCjBkzmh9RqVR6vV6v1+t0OoPBoNPp9I3odDq1Wq3VaoOCgvr37++7 dYIgzJs3TxAE35MAADiO27Bhg19JLgM8zw8fPjwsLJyAhjEgQgghgMgf5O8tk0iiGBke9u23a3yX QgTB88or3AsvrF69ura2lhAiiqIgCKIoKpXKu+++22LpUePN6/X6cjW53e7zOVnlZWUS6vCB2BYF q4iKjh6QkNjD24LX662urtZqtYQQt9sdEhLSi08HCoVC6Qk9mgWAEIqOjg4MDOw8EwhhXV1dWVlZ 92QhhERRbH6kwnFhX+HHCyaPX7Prb/OGvKpXtW3odEfKZbClQRbB6elDlEqu3V9FUTiZecLf/Hme Vyj8KM3LVna/khRBEPyytw1EY9+grvmvNW4dAT0NJXROXV01x6kMelNPMvHXXo/Ho1QqAwLauTQc DofL5fK3a9cuhBC7zTZ0yJD+Cf2/+PKLa66e6/V6m5/g9rirqitnXDWjvr7ObrP6XV4E285+FRnT 3xg0zeFB+8/XuSttkiReyM/DGDEMi5Dkdrmrw64a1d+kU0NrVUHRif9GTP8/H7PvRi0ihOzfv/+F F16IiY37aOUXyalpBoNJwqSyuubE0SP/eP2lrbPnvP76a4MHD/bP0jZgjD///PP3338/JS09LX3o 3UumC6KYeerEN2vWvvb6648/9ti8efN6KIIQsmvXrpdffmVQcsoXq9cmp6SpNToR4Xqr7ejhw++u eHXOnLmvvrpsxIgRfuXp+71IPmfxXUtcXpEXkICQIGERYVFCvEicLte+3TtFUezhVDWMcWVl5VPP vcAo1byIRUkSEBFEJEqIF7HHUf/3Z5bY7XZfIpVd2rLotntcvOgVUWP+SBAJL0l2l3v/nl3dtsUv rzIM88D9DxoMxlYnE0IKCi5k5+ZcOe3KvrH9FArW7fYcP3E0Y/f2wenDH1jyYM+nBMb0ibn5lls3 7M5d9UvO6BGDFi9IV6s4q9V1+ETOPW/teu4vQ3yU4pe9GOOysrKmrwaDAUIox3cIIYQQhmFYllUq lQqFgmVZQsi7774zaUpiQsILvpuGMb548aK/IQCVSvU7nGhJCGFZ9sz5XA8vuQXJw0tuXnLzkkeQ P4geXkL4ktoYo/MnDv7wnzf9u1VKEj5xAiFUUlLy2ONPGgODeBHxIrLZrCuWLS0tLe1JaI8QIgiC XJqdnIYxzsk73zc2bvbVcxQKBQBAjnA0fgCgWRCkeUJBEM6cyczOPZeanN4N3dxut8vlMpvNTqdz yJAhBoOBEGKz2bKzsyGEVqtVr9drtVp/c6ZQKJRepEchAIyx3JfosoPncrkwxt2TxfN8SEiIXt8w WltpK9yV+c/bpk1nmPoFk6as3vn8gqGvqZU9Hcu9PLa0xel0yq0KjuOabATtROG7QB7P9D1VZ/YS YM2s0MUFKA2qHtrbiRQCQH6tR6NkIox+SyGE+GtvcyB26CtWWOKvcfDpGBMAf90mGiHEaDDW1lYb jWaW7c68m27YizHWaDQmk6lVEgghxtjhcPRKBSaE2OxWCIBOb0hPS8s6d7pfXP+miQCEkPPZ56ZP u5KB0Ot22Z02/0MARHRWGYKmOiuz3tjomTdvwYRZ/ZWKFj584P6Hzp/LemP1d0/P0hmD+npP7f71 apHcZ37q6aeff3HZ3ffcByHEhEiIYAIsgZbxk68cNmripx/+46933PH+e++NGjXKP2ObYbPZHnzw oarqqi++WTtx0hQCAMJERPiGhX/hRbT55x9fefbhLb/88v5773V7TIkQ8ssvvyxd+sKy19+6bfHt AIBGWxij0TR24pTBV4z77NMPliy5/6233hw/3td9HOTOG8MwPvb0vF6vW5D2n69gGUanVurVCp1a aTSqWAYeqbV5PB65F9c9Gy+pJAg6c9C5onoCAMsySpZRcCqVhtESUuUQPR5Pz2/psi0uQTqWV61g G2wxaFU6tRJCuPNEj2zxy6sAAJPJDFo+RAghlVXl+QX599x1r0ql8ng8giCpVNzECZP7xcWv/37t hHGTe35PgAyTVeT+cnvu3X+Zbjbpy+o8dodk0OtunD3q2OmCZZ8d/eDRib6HAHyvRQAAjuMOHz6s UCiYZkAIWZaFEMqfGYZBCD3++OME1D96r9YhdMdejuPuueces9lMCCkuLv7vf/8rH2dZduHChXFx cQAAm8320UcfyU92v7yKMd6zZ8/Ro0ebjsgj516v1+v18o0IgjB06NAnnniie5O5ul3Q/kZL5b8e r5fVB+dVeREmShY6BE6tM8gBmu6pAXy+eyOMKisrr555jSDwXq8HAEAaZj4Q+UMzLn0FALAsm5iY dOz4sZQkX+eUNSnmdDrdbvfAgQOPHTumUqk4juN5HgDAcZzD4XA4HEOGDDl37hzGuFcC8RQKhdI9 eroXAMa4y8aT3OsA3Xrw1NXVqdXqgIAAuaVrdVV/vvfpeeMnuvhcCTnVytDZI0evPvi32YlLlSyH MTYYDL9bW2ROnjzBccqmr3a73W63AwCMRmNTCKC6srqspCwtzY+BRF8i4q1o117RJVz87KS71N53 cbpJF9RzezvyKiHgQKHtdIV7fJxxxgCLX1J8HAFoNynjvaCv+Shs8IMKXaytYKPcGvAzEz9FYsJx XHBwaHVNlUatVan87rN1w15CCMYYIUQIQQg1DV7J0ZYeNr+aS3G6nKLAS6KYnjb435+tjI3p1/Sr 1VavYJmIiKi6mkoJSQD7X4sIRggBQiDAQRrPRx9/3O5ZEIBBkSoINHKCX68W1dfXL1u27PU3/nHb 4sUsAwkgEgLycJlcjRiF4tZ7HgEMu3TpC2vWrDabzT7m3ByM8euvv67VGz5c9neXw7H5pw2iJAmi KIgofdjo4PCoyVddnTxk5IOLr3/ppZf//vdXuyECAFBTU/Paa6+9+Y93Fy26acUbyxwOByDA4/G4 G/55FErVM8s/RgC8/MqyNau/aXdGSVv88qrcjvfwEsfCrINbc04dBBBgjCVRFEWJF4S+ffu++uqr YiPyvP309PSnnnrKd0sbOude0e7m3bbqutJ8TslwClbBQIzQuaJqnU63d+9erVYrXzLy/apfv37J ycn+SvF4JY6F5w71si09uOM1gDHOzcu9du71HMfZ7Q3BOFEURVGIiopOTxt8IT8vceCg7mXehCTh z7dkz5wy3KDXnS6yYUwAADa3WOcUhiTHFBaWr92V99eru5biby0CAOj1+tTU1M67xJIkvfDCC4cO b9u2rr8BIbv/HVqVSrV8+fKpU6cCADDGx48fbwoBMAwzfvz40aNHyz/Fx8c/9thjwP9Hp8VikSTp 7rvvjoyMlLOS+6XyB/mv0+m89957//Of/yxevNivzJtskSQpoW90y8n/gDR0jAFp80xEkmgytp5X 0qUU0jAM4C6tc4oIsizkJVxc5XB5vD18BmGMRVHssoYQTBCSWJb1eDyPPPZI03GVSrXizRWgxWpM 0vRV9rNCocDY16dJU0KXy+VyuUaOHEkImTJlitfrzcnJKS8vhxBGRUWNHTtWqVQihIYNG3bo0CEA AJ0LQKFQfit6tBdAiwiqD2d2QwTLsikpKQAASZIkJL6+9i+hZp3L42JYUZR4CLDd49Rq4c7iDx+f /e/msXN/aWuLIAgejwcAoNFoOI5rdWa3BZ09ezYlNRkAgBA6e/aszdbQGquurq6pqUlKSgIASEg6 c+asXyEAf2mn7Aioz63M//pM4ojUOk01auxK9cTeTmoIIUCQpMHJUSV296vb8xf01/RKp7RzdRTW nXrPrtDBdzNCFsE1EBBN/hNYHSsax2F9KoC9uSJAEAWvxy1KIiZYlERJEoMsQfXWekEUDHpjLwpq F7kRI7cXEUL19fUul0upVMo/KZVKeVwCACCKIsdxzWu4Xxj1BpvdxrCMJSh0/Njxx08cHTZ0hCz3 3PmsubOv9bhdgsAXFBZGRffpRv4YIQAIA8H8ERpe6FBJFccCAAAh+FfbHQpj/NaKFUnJqfMXLJgw ZsSmzZufePzx+QsW5GTnOJzOESOuWLnyX++898GMOdNe/2Ttri0/Ll++/LXXXvNXCiFk165dGbt3 79i1943XXpk1a5Y5IECSJN5Z9+O2PWfPnHnw6ZcxAQZTwNOvfXjXjZMnT54kd0j8tuWtt4YMHX7z zbcoWeJyOq+dOzcsLEyuMwih7OzsN954C0B27sI7dm/9+fXXly9f/rq/Unwx1uPxuL1IpWBctpqb F985ZtQIBgIIIAbE7uJra2p0eqOIiIgQL2JekAryst5d/pK/Urxer8uLOAU8emi7ioWDhwwmhACC RYRiIyyTpkwLtIRAlkEII4RFScw6fWrTpk3//Oc//bXFJUicssGWUSOGI0wwwAgRp0ewWesMRhMh ABGAERYlfCHnzJvLlvrps27idru8Hk9EeKTTaW9+p0UICQKflpr+9eov/QoBYIz37d87fNiIpnko hIDyWndVnSd1QFRepRs3m0nuEVCllU9P7ffTloO+hAD8AkJoMpm6DFEhhD799JNPPn570+qBURzm bTzwZwiWYZgZM2ZMnTp10qRJvpw8YcKEd9555+eff/ZDBgAQwsTExOrq6vXr17/00ksd9Q+9Xu+K FSsWLFjQr18/32fotOKxRx/q6CdCgNz7le/kkiRdyM/fv/9g9wQ5HY5zJw5yhiACCMBEcDsK8s5j fFX3cus2arX68/+uAgB4vd477/6r18tfc/08AIBGrV6/5muP13vd/EXyad9++UW3pbhcrsTERISQ 1+vNzs6uqamJiYkZMGAAIcRut+/YsSM8PDwhIUGhUAwYMCA3N5eGACgUym9Fj2YBNO9mdHKaPJLc vZ4kQqjZjq9wwZhnimqys0v29w1FgsQzwHvwfMnVQ5/gFGr5zJ50VlvZkpmZ6XQ6AQB6vX7IkCE9 t6UVLMsmJibu3bu3trYWAGCxWBITE1mWxRg1qeSX/n5p1cpeJKGctZmeAmdicjqsZSBWnfvmhOAV osfH6VIDu21vuzWk1iWuyazMrnLrtOrYYNaqMZmiVO8dyZ8UDoZpfR2/9ddeQASu9COTRghKvArY 9hLkhmoppP90jBHy2uwVu+w5K71RDxJtQjfMbAVCUr21juM4nVarUBghAyVRlKMABoPB7XLX1FYF mC0M4+segd2wFzdCCEEYOT01MbFxAaaQVjnIuzCUlJTI0QF/IYRERkZnncsaO3q0y2kfMCDx8NEj Vmu9wWCsqCiP69vXoNeVFBeo1Zrs3OyRI8b6W4vk+AUgGABg0vuwVJtg328C/nqV5/lftmzZseeg Rs0tXbrUaDDccccdcXFxsTExoigGBwffd+89FrPhxRdf4DTaxQ8vfeWRWysrK/3dtw8htOL//u/F l/8eFRUpiuItNy8A7lyA6omzOtrU598/uxEmCBNMQHRs/MK7Hnvv/Q/Gjh3r7zp2nue3bduWsf8I ywAAoCRJ4eHh8fHx8q8ej6e+vt7hciBMAKO4+d5nXnviNh9t8curhBCP1+sRRJVSoWCZ2JjoWrtQ WutkGMBAhmEAo9AjnkAGMoxSowaAYbUB4f6OHzYEGgRRpVAoFeyChQuio6N5EWFC3C73qcxTIZZA pUrVNz5BrzUgQkQJDRsz5an7F/srxev1ur2iWsEqWCYiMtLmEe1uAUJQXVn+tyceAgAoFYonn3tx 4KAkBkKPIJmCI320xd+6Sgipr69zupxNR1xOp8lsBgC03UEdIaRWa9xut1/2YoLrrPU1NdXo0gML ZBc7THqVUsm6+ZZbrxHg5lGAUWu1e3vdXkKIxWLpfGE5Quirr7568slHvvskITWIYWq9jMAT3x43 MizLLlu2DLR5LkMIm440VxhCOHbs2LFj/bvpEUKKiorkqf4ffPDB448/3u68Boxx//79n3nmmWef fXbVqlUxMTG+i5ClKBSKJ594rKNfUSMSQvIksp07dx06eMTvNgkADMMMHTpkz+Z1YjOio6Li4uJ6 2Pj0pYaQxmX/hACE0NYdmwAA8t5SkIHyfEwlp4QQMrDhK8cpIQTNZwT4pZjJZDpy5Mj48ePz8/MR QmlpaU0lGBQUZLFYioqKLl68GBcXd+zYsT59+vS8JUmhUCjd41IIYOfOnU1HfYlzg2ZT1Lq8i5HG cLK/+iGEmm9snhA2lBBYbsvw8LwgeRnowRj1Dx8GAZQkqSfrOdvaQgiRV2q1MrDbtjRl0PRJqVSO GTPmp59+YllWniHW/LRuiPCri9hkr+Dkd7+xJUwfGWPobzvthCxU6jUJxhQSRMqOFOfsyY5dmOhX a6ldKQAAAkBetevtjKLAmJiAxD48AgUOWO2RVKwyJD5h24X881brTcldb5vXvIx80gN5FdlPBscO NFoiSP0+uUtJxCwAsgAALFQGhliMQRHFZ971Rt5H9AO7YeklUUiqqa0ODAxgGAZhSeJb7GQpSZKS U+gZXVV1RZAl2MetAfy2t0UIAFdaz/6Sc98k9sUU1dVt26/yvgDdrs/R0TH79++uqqqxBAZodfrJ Eydv3b597Ohxefm5tyy6pbamSqVSn8vODgy0dGNnLEIIamcqJizRjHbC1i1+jDHxEPWENwpLLhBC 1GptaFB455m3+tD5yTk5OUqlsv+AgYKIMjIyJk+ePG7cOACAPF8XABAREeFyuTJ2ZUyPHh7bP9Xt cp07dy44ONhXawEAAFRXV5eWlFx/4zyCCc/zgBBQ8KIQ+Vx1tbe+utDr0ZeVlggiYlU6pdYwftqc VR8uv3jx4oABA3wXIduiUqsT+g9AGEgEu1wuuWeIMfZ4PG632+l0Op1uCRNMYEz/JI/Hc/78eV9s 8derXi/v4iW1kmUgZABx80K1za1UsPJcfU7BKBUsx0AlyygVjCBhLy/5u6leY+dcUilZloEIwyqb x+4SEBLyc84tuX0RhFChVK54+8PRY8eYtVqnRyxHxN+AclMIwKxVMhBKEnbzkldECgaq1Nop02cx EDAQbN38E5L4ESNGiBLyCr7a4u8dAGOceeZkgCkwNKzhHRySmqusqoQQyOvhm5/MMIwkSRyn9Mte BjKzrpq1Z9+uJimEAJNe4/SKgBBOwXiEFlI4BeP2eDUq7tewNzAwsJMQACEkPz9/5cqVSALHDuMp YV7GLkDEk5Ae9b7k22Yrf/awR4cxzs3NPXny5OjRo0+dOvXNN98sXLiw1TnyyywwxlOnTj1y5Mgj jzzy2WefNd9IyBfN28o9duz4pi1bn3vmybLy8uXL33r44QdDQ4KxPDFGXh3jr3WNi+oXLFjQaptY 0BClqieNMw3lvxBCg8HgSzza1xrS8CshhIii+OknK+XDKpUKAmjQ6wEAarWK5/mnnnmyb3SY/Ouz zz3z91dfBwD4a7LH47HZbBBCQRBcLldMTIws12q1QggDAgIYhomMjCwpKZHDEPX19Uajkb4jgEKh /CZcCgFMnDix6aiPdz3y688CkBdMZhdW1js8clzW4UXEPbGqQkJEtDEaEyvsPXFBPrm2Xqrx1gNA BkT6/Y6AtrbID6Smn3puS2O2Lb5yHDdjxgyGYVo99gjx79njYyym+flN9mKARQbV1tbrvQHYjQED WIEFAGAJG1iLVxAKNuekLBjquzLtSgEACAiv2HpR2WdAlahkahADAQBAEAlhYRURnHZvP42viz/9 sxcqJG2StTxHqyYM5gFuvasz4a0Mw0X0iy88/4GY9DYA3X+HX119rV6vQwhJktjuCYQAt8vNMAyE vm7u5be9jSM58rTui7Wb02MXRZpHncxf2zdktF5zaSxXrs893AstOTltz4F906dMs9vqo6P66LWa k5knR48cLb8Zrbq2Nu9C3ojho7sX0pIXArQ4CICLsUyb1Nk8UkLIuu+/DbGEdX6O714lhJw7d25g YhIBECHc+cmIYFapiujTNysrSw4T+AghJCsrK7pPjN5gdDkdPO8F3nysiv3XV/t2Z+zBGLk8lSte eNjpdGLCPP/+t+aQSK3OcPr0ab9ebybbkpiYhAkQEcYIOZ1OOdjqdrubQgAuh0NCWMKYUajComKz srLGjh3rS+Z+edXr9bp5CSughxc8AiJQHvOHDGyAgYCBEEIAIUQYe0WpG7MAvF7ezYtGkwYQLCEs IUwIPnHk4GtLn95/MkfBQixJty26vr6uev7CmxDGgs+d81ZSXLwEAXF5eYdX4PQYAgAhNJpMC29Z rGAZgsTbFl7ft2/fEVdcgTAWRPTrzQJgGGb27Ll6fcNWrJIkfbryE6vVqtPpnE5H05kQQpVKfTbr TKA5yN8rtK0UDy99+PMnF0tqoizm3PJLUlgWhpnVGQfyUuICfg17OwkBEEKKi4vffvvte++9NzU1 9aX3P/SUmF+5Wg/0Pe2uyxY/GRYAACAASURBVOo1H6XvScNABkI4ZsyYsrIyhmGefPLJv/3tbyqV KiQkpPFmjuUZ5i6Xy+PxuFyugQMHbt68eenSpStWrPBL8+ZfRVH8/Iuv1q7bcP99dwMADHq9xRK0 cNFfnnv2qfHjxjQ8IDBpm7BLMYAQQRBWrlwpb3gk32Q6gRAyatSo++67zxcTfKkhpCG4ADiOW/Hm /93/8CMAAJVK9fb/vc3zvEGvk79CCFstE2gqVt9NxhgXFxcPHjxYpVLV19eHhITI7Z8zZ87IOyIX FxenpaUBAIKCgmw22xVXXOFyuTIzM5umX1EoFMrlpKd7AfjYH+52HwNjLElSbnF1/4R+CBEAgQkE R5L+hAC59xrToAPAGOsCuDqHRyG5e2gLz/Pys0rulkuS5HK5WJaVZ9t22xabzWa1WocMGXrw0P6t W7cSCEHD0HhzPQABJDAgYNTIMQUFBWazuXs7inVJc3uVGm7qc1dn/nj80LZ9/U1JaqKtcZVV8CVG hTlCFa1XWrJzz2OEGdbvjnFzKYSA44VWiTOwkhLwbtFaJgiCJqwfp1BhW019VeGCRNWQ2F54v2M7 QJbE3OmoO5B76rPY+GhOSQByQaVZQlASJE7FQSgBvl6hEPQ6VV3tUWjx4y1ozZGnokAIJUmS5/nL wSOWZRFCcqvCZqvXaHRB5h69ErlLmkIAXtGlVOi0qqCK+pw95z4+kvt5et9F6X2vk09rCmn1RJbR aBrYf9D2XTtmXHmVVmtISUk5evx4v37xdTUVvCjuP3hw6JDhCkU3bzXydoCtDspDKE6Xo6FV3NA2 lmetIoxRTHQ/QeB7YlRbvF6vWqMVESaEmTBhQru7JyiVygkTJmDAiBJWqTVNGy74CCHkwoUL8QkD JEQECfM8j+yZEHmshZteenD0gDHPAMkG7Pvqqi6Mue4jXpAkACNi+hUWFvpriyAICiUnIgwBRBJ2 ulxer1feyFoOAbhcLgyAiIiIiISwQsn5+zo0H+31ejyV+acxq7HabHU2h8FiZCBkIGjW+ZcDAZAB ACHCi1LzeWE+4vV6vYKUWVhTZXNX2lxR+oCmjhuEAAI5xCB/BwgTXsT+SpFtqSvKqlVobHa71WY3 BgQTQo4e2icJAsNAloGA4LCIyNraWtHrRZjwAuqGLb7DMIzb7ZYvBEJIclLSTxt/XLTgJp1O7/G4 McYsq9DpdG63a/uOrcOHXtFzKQiTW2Ylf/fLsbtuntovVF9c6xYkbNAoYoJ1VTXWA8eyX72zm7fW zuloIQAhpLKycsWKFSNGjEhNTa2pqTEHWt78vvraFE4d4gW9sOoLdG9P/k7AGI8aNWrLli2xsbFL lixZtWqVx+PheV4UxabXAXi9XrfbXVFRIQhCSEhItxsJhJCampq3/u/durq6D99/u0+faISQWq1+ /LGHkpMTl77w8swZ05csuYcQgnuwxNLtdj+99DWF1iBH30TUEIaTEGn6LCIsSlJdwZktaz/vnqAu 1SCE6Bv7/C2+chwAbZYJdKtUlUqlyWTied7tdsvbi9psNp1OFx4eTggpLy+3Wq1Go1GhULjdbr1e bzQaWfbXfScxhUKhdMSlWQAZGRlNRydMmOBL4s4DsUfy3ymz7tNwejfvCNKMClfN6UZPo7FpjwGj rHd6WYYhgCDcND0NSQiLEhJFSRCRIEqCKKkkNyHdmQUggzHeu3ev/BphjUZDCLHb7YcPH0YITZw4 Ud6BtnvBfofDMWPGDELI7n27+8UlyK9nd7lczfsJhBACiJcXZ86ciTHeunWryeTH++R916pV2UEI 064ZGp4StfHtn6K4GJ54+l+XKPLi0fUHU4OHs0q1s85pCPL7bQukBSC/ykmgHtvrQe2Fu0aH/3Le e9HuEl0FkVrhr5NDEe/yUf+m0/wrhYBRkiom99zysAhTgMlIBJB3vghpYoGnRKfTREZZoLv2/9k7 7/i4imvxz9yyvWhXvTdbstxkY1ODDbbBgHGCIcAvNJP8AoH3wEkIJfT6QkjBYDqYAKYnITwwYKop JqG44iLbsmTLlqwu7WrrbTNzfn9cab3quysZzI/7/YC8O3fuzJy5d++dOXPOGavNwQK1nPfoZCXV UVRFEARKCcZcNBpVFFUURUmWM9K9CBChJBSKpHvTzWZLUi1PQd6YIwAH/J6mjaceO397/Vsue95p x/7oq5q1mz9665zj/uiyZY2LFQBCKCMjMxwJf/L5utMWnLK9pmbunJM3bPi6pLh47SefTpxYabON stfmcAAApUR33IhHn47KivTB+x8C6Eom3ekBEGYnnXQSIFBVNZEFIpRYrwLApEmTnnvueY2AIst3 3333kB740Wj07rvv/v2KfyqMb9xXW3j+2ckKnpub+8GHH2kUKGBFUS9Y9opZkKMyd3S4qvLgCoR4 5F1ok1cpiqJRSoHvamtOT5+T7O1UWVn59NPPaAQAASEsEo6Ew+FwOKzP/6PRaFSSEEIqYRoBSVGb 99cXXnBugh014MMIYIxnzTrq5aceIIQ4nc7mxoZyTy4Xm/NjjDHi4nQBgHp9epOSlzEmS9HlN1wq iCZvmrtx78zs7NzmxgOP3H87L2hLFh6NAGGENI089chfc/PyJlUfK2tJWwHosrz2zApCiMPpbG7c n5NXvP6LT/7nlmtOnj+HAQBQxiAYCv7lz29qqvx/fnGVopEEZUn2CTA4G8Z4yuSp7R0dL73ywo/P PMvtTsMYU0qbmg6sfvvNieWVTmdy8d6HrIXn8AULp3xT2/74ix/+ZOHR1SXpPMdJivbNrsb3P950 8cKK0pyEaklW3iGtAACgu7v7L3/5S3l5eUVFxSuvvPLEE090dnZijI+5u+PypSdeefz4OAJYrVY9 cnBqA4N4GGOfffbZ1q1bzWbzq6++esMNNzz22GOD80QikVAo1N7eftFFF02fPv2mm25K4YUCANu3 1zyw4uHJVZPuuuMWs9kcszUAhBYsmF9cXHTd9Tdt2Ljp3j/cFdPkJyFMXy2BYKi2NSCDpFFGCBtW mwBMoVyCMSkSvEMGZNOX/U0m3RsFx75ijAa4CaQQCyA2gGSM9VWBUJw7ZCwbxthsNuurBWO/ZwwM DAxS45AKID6ubIKPJBa3hdLgo1EleNLMxeluV6ffv2lbIxNTmWbo5mGMMgAGjFEEjAGhTCNMI1Qj vTN/RdVkhSiaJqtEkAIAeclWFJMFIXTMMcds3rzZ7XbrC7kej6e7u/uYY47R50sjiDwquno4GpH2 +Pd0dHQMzqAXa7HZotEoQijxYWiyiokhBUnL9/zk1rM/ee7j+s11+bggd0q+ppGD6xqDWshsT8iH c4RaAFC6leNVSQ103Tg/xyIgqmoHG7b94oTcRdOLfT6flnCvDtBfJIE1F1ff17zz0UBXR0FhESEi rrwWYS7Uubl2+7MTKkqAMKpEcaqvZEqIHkkoGAxZrfac7AyEUHPLQYRQVJI0TcvKyua5pHf2SkHe 2FgEIQ5R7392vFOSb/N4aX37B1mZJpmG/vq/Z9/+s095ThijY0uM4qIStV55+701oVCIUbJpy6a6 +rqcnNzsrJyUCwcASungHap0FYCqqfPmn4QQBtD9Zhgw6LVZBaQqo6sAkurVysrKQMDf1HQwOy9v 7dq1brc7HA7r42YAEARBlmW327127dq1e6SmXTUcxxcUFCQre1VVVcO+feGoJJisd//1sba2Vk0l n69d40rLRdpG5FmAgEJ4u6IoGoVAT3d3Z1thYWGytVRUVIRCgf0HDuTmFWqEhcLhASoAKRoFAI2C Smjjvj28ICQoS1K9yvP8zTffjBCilL7wwgv5BcWEsNi0P6YI6NUFcL2OWclOzgVBeOCBBwKBAKX0 iy+/9Kanq4TW7a4pKcr828pViAFigCjraatfdtWy/6xbN2HaMbKadGSZeFmef+GFwqJijTJFUc78 yWkrn3hW1gKUMUppU9fuC35+nhSVKIPEFQ3J3qtDZuN5fsG8BTtqtr/w4ioGzGq1BoNBh8M5dfJ0 rzc9hR/pgFMAYO/e+tVvv/3nX//m7+/vePbNzyVZs9stgVC0IMv5+wuqC9O5x5989MpfjZuZdyxz enq6y+WKT2lpafnggw+++uorp9NZXFz82GOPvfjiiwghi8VSVFR0wQUXnHzyyWN86OnNwxi7XC5d BYDGHAsAIVRdXV1fX//LX/6yu7v7/vvvv++++9LT+5mMxTaVNJvN99xzz69+9atJkyYtWbIkhbpy 83Lz8/L27z/Q3t6RX5BPGdPvUkYpJWT37tqOjs7TTzvV404DRpOWDgAhxBgLBgKrV62wp2UwShkD yihjwChhAPr4ABijjBFN27NjS1ZmQrdigneIfjD2W9bn/KIoyrJy7fW/i2W7+dabl//1gRUPr9CP Xv3fV8fXk7C4EI1GW1tb7Xa7w+HQjUk9Hs/+/fubm5sZY7IsV1RUKIoiCILFYtH9rSRJGvs9Y2Bg YJACY3IE0Bn8FP5iz6OEhRu7tkwotfHRhrBiPejfGlUkezh9Wt7SpArXVQCSokQktTsoUdZnSBZT ARCqaZQQSmjvX16RxiiLw+GYMWPG1q1bMzIyAMDn882YMcPhcMRsuVNDlmVZliVJispKQ11dfKUD cqalp+tDisNqJor6Xzt9usWb+BOXzik+tsTqtSmqwtn5fT37zG4zb0r9VonVMqvY/cy6HQjAxKWr irag3HLmZGdBumMsWzkkDW8Rpv0u3Pjhrh2rKVEsCCGEucyjNKmrq2uLyWIHe+qOeaJoUqMKxpTn BZezd0gKwHp6AiaTOSc7ac1Uyuh9rvvInDrtuufWXrP3YEduhrW0IKe1o2f3/tAlJz8MDFGguvNC yhWxUKjzsccCb77JGAPGbPn53r/8cc1771jMZvb+h9E339rNcYjj3IsWZS1bxidj0oIQQoDYUI4A qqIihCghH6/9RDfFhV6hEUZo3oJ5qE9NMI7YbLbqGTMff2T5b35/+6TJhfv37z/vvPOWLVu2devW QCBw6qmn/uEPf3j//fezc3KefGfHu688MXv2bKczacOZgoICm832n39/fvyc+YVllfklFSqhm75e ZzMFQUiD4CYU2gRat6IwRaPbNvw7Jzc/IyMjBVlmzpr1yAN/uv2PD2mEhQepAHqVLIQpirbm5cdn z56dVLyxFCCUKhoFymKe/72L/xyKRQfQcyb7rMAYl5WVIYQopVu3bjOZrYQyjsO5OZkZ6eW061Gk UU4hLugs8QoYIwaMsqQdAeKhhCoaJZRhhIGxqOZ7q+bOrp6urp7uTl+3RghCsVjl3+ron+O46dOq p0+rZoxt27ats6uzYuKYop/GgzHOzc07Z8kSkecuXjT9ojOm90TZpi3bosGu6imVCCFN0xadsXi8 qouv1+Vyxe5PQshTTz31xRdfKIoSCASCweC6des2btxoNpvNZvNll102b948r9c7Xpux8Tzvdrvb 29vHpTSMcVZW1rx58/72t7/dcssttbW1l156KaVU6UMfRegfwuGwbsrx0ksvpaACwBhnZqTfcfvN L73891//9rrLL/v5gvnzdLeqSER66OFHPvzwo9tvu/lHPzpeVVU2SA+bIKIo/td/XdnS0tL3Phr6 r5756OmVM2bMSK2iEYgpCxzOXhUAAAxw/kcIxY7GzkqqFo7jiouLW1pa/H7/3LlzdY0AIWTWrFl6 OEC3260/V3VPhPXr12dmZpaUlIyrrAYGBgaJcsgK4PPPP4+lJhjCCoYJB7itcfWJMydn5ZTYrKqk 9tis4jHTSwiTPt/83tTcS5Jqn76M3NrR7c4KNbUHdeOs3iU/3R2AMUoZoZRSpqsAQEtliT5eFsaY 2+2urKysr69HCFVVVblcrj4PsdTDAer+e5IkaRoRrYfGHxD7gxACBIBUjeoqAEVRkqooKY31cBbg PM8XVBQwxhCgT/7xWSAUPGvp4qQKH64Wq8hfdmLura/teHOrbUl1RlGGyPM8F1vdS36NK+UBNF94 CnWWk53P6cNwhBCXPjO8dzNSFK5sWsrFmkyir0cFBlarLVaIIIhOhzNlY3iUkrz68pQgCABgFqyn TLheYr7XttzR3oVNOOvXZzxkMdljhohJlRyP1t5+4MILCwsLZy1YwAsCIFS3a1fL9Td5lv03/8VX E7dun7x4MQIglO7fu3fvOecUP/usqbAw8fKhd1PAQfWqGkLAABacMh9jzHEcQr1O47E8yrg6AiCE MMY3/v6GpUt/PveUxWs37WuR7fc+8U8siBlVJ2uUMYR/v+Kfn+0jT62p2fzlZ5s+f/feP/xPWlpa CvPVpUsvueOGX//z/a/MVitloGpMktW/vfj2qUdbqNSoyV07m09UlA/93d1/f+zOiy/8mR5rKtla brzhhosvvmTeGWfPPPpHwVDo8l/9iucFBAAIECBKKSeYFJV++cnbNRs+veeeuz2eRAO5DfiQCABA CFEI4Qg7tPjPYczFOwIc8rtO7XbVbydFo4QAwggBIBZibW/iiAZhFQVURNiA/KnVQghRNEIoYASt bc0H/BvC0XA4GglHIxEpTKiGEMLJWBon26ujZnO53E6Xq9vnG4sOYvC5drvdbi/VP2OMCrPdvjzX frW3FkEQCgsSslhJSl4AcDqdugqAUvrss89++eWX1dXV7e3tGzZsaGho6Onp4Xn+tNNOO//88/Py 8txud/xOfimjl6ArIGIp46LTqaio6OzsfOSRR26//fYlS5bEdjuKzZkjkUg4HN6+ffutt966bNmy +fPnpzxOEEXx4ot+VlEx4c9/Wb558ze/XvbfLS1tt9x2BwA8tfLxrMzMXju+FIY9+kANAABiPlOx oIbxfy0Wy9y5c5Oaeyd4h8Tebnou3e1fEET9URDv/A8I+o7qqx2pvBmtVivG2O/3K4piNpudTmdP T4+qqrr44XCY4ziPx4MQ0s083W53vMuAgYGBwbfJIRVAfLTnBB9JsdndgPyU8hazgrmwLxJCQDEO myxMZCIhSZtA6+EAVUJlRYvKCkY4tnjCmD69jIUGoEQPEKCNMvRPRBZFUfLy8vR5VHZ2dszMLz5n slUoiqJ7/l9/zTX6NkLDFcLz/F5ug4U6RvVnjhHTcyfYmCGvnR4BAWOsh6ihlE45rqpkRokeIH/s vcrz3PEVmQ8vndnUHbZarQghvS79pZt4r0IcyTYpBucutR1/l/6WRwhIpFPqaMHpk60W71iKtZgt oVCQ4wWrxaqnZGXqO2aNaaidrLw8zzc2NjY1NSGEKKWSJJWXlxV6ZkzJnTNnyk94ntcXXvRFpBQd WwBCa9cWlJZmHH30py+/rEoSx/OLzjyzZe1abvdu+5tvz7jiig9ffTXa0SFYLBVTppRPmND97rsZ l1+elOCUEoQGGikomooQ5jD++ONPOMxhjuMwRpjDCHEYn3raQoRQIrEAku3VkpKSX/7yF7f85pd3 Ln966qwTQLBqlGkIEwQaZZSzSjLduumrZ/58rSJLq1evnjMnOS99nQsuvHDtxx//6a7f33D3Awyw RtHskxZt/PdHL34oqapbUa2yoi0878oXHrpNlqJut1uPNZVsLUVFRZdd9svbr/nVHfevvGvF87Ks MmCEIUqBMEYoUOA2/vuD5//6e1WR3nzzzQRlSe23CQCEEFklPKVmgdcn/3ERAXqjA2CMDtl7JI9e i6oRwigw+PSTT1b/7SwSDGCJYIXQKD3QpU3VJ+fjUAsllPKi+OnaL88+5QrKKKGEMkoIDfuoZYEZ oyRkSbZXAQZ7zwyfM1UOXy3JyqurABhjb7755tq1ay+99NLt27fv2rVr8+bNkUjE6/UuXrz4ggsu 8Hg8+rtmXCZdevM4jotN5Mb4SoqBMT7uuOM6Ojoefvjhm266aYDtoaZpugogNzc3FAotX778+OOP T/bnNuDzUTNnPPTg/V9+vR4QcrmdpyyYv3jxIo7rfTuwXh/JVKQjhLz99tvHH398Tk4OoYwQqttv aoQSQjSNSMHgm6+9Zrfbjz02iYCUCd4hsaMAwPP8JRddqluNqao6wPlfFMRLL/lF/FkY9yshwVZ1 dnaWl5djjGVZdjgc+fn5oVBI3xPR6XS63W5ZlkOhEM/zZWVlHR0dsT1lDQwMDL5lhDG+sfRH8ABD 4mBEbmwN8DyXleEGkDjsbO8KMBYNR5Nb00YI6T5vmkYlRY1KStxyca/vr64IoIwxyihlgBBPU3TU HyBLJBLJy8tDCMXHp+G43o3cUqgiEAjU1dXFKkIjBhOGdqeGUCSSaIQ8QRBS2Ctr8LXjOC5eLb3g vAVtbW0JRuhJpBYO46mFnqmFh1YU9VXcZHs1BXlHgmqRb55mDKdNXjrGMl1Odzgc7u7utNvs4xjs N1l57XZ7aWlp7KvP57PbHVcu+ot+yx26HByX+siV0sjq1eVFRV+9/HLJSy8J2dl1J5yAAFRCJiw8 o2XVi6S+XguHy95/H8ty3XnnHTtnzv41a9IvuyzxGgCAMdqvcbqZjKoihARBOP3003mO53me43iO 4/TgHXr2RNRnKdxFF198cTAY/N0vzz3jnIsvvuoms9WhMSAUNAq+rs5XH7vn64/fJJqGEPrss8/u uuuuO++8M/HCe1vF83fdeeflV1zReKDhd3euyMwtLJ96dHHVbD0+v6bRAw11K/9nWcuBOk1VVqxY UVlZWVVVlWwtCKGLLrooEAhce9l5Z5xz8c+uvN7uSIvJ0tHW/M8n/7j+k7d0WT7//PO77777jjvu GLVMAEjtWUQpVVRipmA1DYgCeCg0AIpTAacgb+/knBDCYNLkqTZn3s0PhTDiEDJhZEIImcT0OXNP wnhMVvrQZ2tAET55/sK/PvQ00RSOwxzH8RziMSeI/OmnndERoYnXkmyvxrLpKt0hciRpePUt15KU vADgdDrtdvu2bdueeOKJ6urqN954Y+PGjZs3b9bbxnHckiVLdH+ZcXtlIMQY0zQNY5yWluZyuXp6 epKNUjECutnCqlWr7rnnHo/Ho2kapVQfDkmSpDvs6DsFCIJw6623rlq1KvHC4xup+/8zxjyetNNO XUApNYniOWf/pHd3FX11pTdEYJK9BwD6MgDAGUt+JmmgaJTq6kXd+Z+CRpmvJ1JbW5tC1/E8P+od oh81mUwYY31bA/0+FUXTg8tXxA/B4pUFCCGMsSiakhVZvxXr6urcbjfP8z09PVar1el06rEqVVXV DQR4npckqb6+vqioaBxvSAMDA4OkGIdNAQcvIU4t/LG/K1zftvHoaZzLqfYEghu2h3KdFZVZ05Ot Qt+cT1G1nmBUkpW+MK0xFUCfGiDuFH3MOnZZACAcDg/IlrIJAELI4bB/+NGHPM9PmjSpYV+DNkw7 RVEsLSvdvXs3pbR6eqI9ZjabhytwSIa7dgMYi7wJ1pJgSwaQrLwjQ0Kt2JbrnnkZFixjLy03J6+j s11WZLvNPvbSdMYor97J+gx5cPpYRiE8gMlsJj6fdvCgyW4PRaOC10u9XlNRkT8SEW220IYNtqIi bDJxAJjSZJtNKdUD/cf2BdCj/SOEEMYffbiW4ziO5wReOHPRmRzPY4yBMdQXL2BkUuhVnuevuuqq Y445ZvnyB8//+zO5RaUlE6YQQg/U7+hoaaqeOfPWW2555plnGhsbAeD9999PQQWAECouLn7+uef+ cO8fLzv7xDN+urS0amZR+WRF0/bu3l6/Y9O/3/vHpEmVjZqKEAqFQldfffXatWtTqCVeljdeeTo7 r6CkYqqmkcb6nd2dbUcdddQtN9/8zDPPNDU1McY+/PDDRFQACCGTyZRsr0Kv8TwNSaokaxj3Ov9z HOYw4jmsp0QkbSw7sPUpGqhKWGFByap/fcLznMBhnuN4HvMcFjiO43BTV2j0skaTRSW0KyApKi2Y cjzuU2Rg1OvasK0pFJLUpGRJtlcBoKW1OTc3d8ijUjR68GBjMvV/27UkLi/G2OFwtLW13XPPPZIk rVmzpq6uTp+c6wbYP//5zwdE1Bs7ANDR0fGnP/2J53mXy+V2u7u7u5cvX15eXj5cbySL1Wo999xz v/7667a2Nj0okq4CiH2glAqCsHDhwokTU9zeMDbJZ4Ogcf8xxmDQtiyJE41EW3wRSUOigE0CbxY5 URD1DzzPvdvml9VUdvpM/OlNCMnLyxv8+hv5lO7u7mSbhDF2Op3Z2dlfffVVYWHh3r17BUGYPn26 zWbTx5Pbt29HCJWVlR04cKCwsPBwB1gxMDAwGIExWQHovsS6v3F8+pmzfoMQevU/dylqAzCHrMp5 zqnHFl2cgmcsIeSVNf9ubPX7wsqgUweOoAABRpwFpxJbbjhZBlaJccpbqVdWTnrjzdcx5hefudjr 8Q4XrsxkMnm93rdWv8mAnfvThDbiQggJgpC41wD6VuQ9rLXwPJ+UvKOU5i50Hvc7NH5rRGM3/h/A GOUFgJaWlkAgMPhQKBRyOByplWw56aTOjRunTZiwddkyq8czdcaMpvZ2609+wgD4RYuaPv54amXl nieeaO3unlpV5evpMSdjGM8Yk6Qob/W27N+dW1ShG00jhBiAPr3nMF542qk8Lwg8z/MC0jd4Rxgw RolZAaTWqxjjY4455plnnt6xY8euXbsaGxvNZtuJs87NycnxeDyZmZkrV6686qqr9u/ff8cdd6R8 ybKzs5ff/9e33nrriy++2Pbl2gMH9nM8V1ZeXl5aet21vysqKqqpqXn44YcRQsXFxSnXMlgWi8U1 77gLcnNzPR5PRkbGscce++tf/7qxsfG2225LfL062TU9AFBV9au1qydWn6Av1gFjDPV+PBQpBdje mo1ojF76UrDVF231RUfKqEbHUoumad+sW1Mx44SWcZIl2V4NBgNWq+3999eMlAnj0pJyvUDGWDgc crmSi9aZYC35eYXRaFT3/EqQpORljO3atevJJ59sbW31+/26WZndbpckqby8fNmyZZWVlfr+vok3 YNTmtbe3X3311a2t9dDp3QAAIABJREFUrVdeeaWuBQCApqamq6666pFHHhkvLUBGRsaZZ56ZYJMS L1bXhT373Ko+b8r+QNz/jDHGCCF79+5DkLQVANJvrUikpdMXJaJKaNz5fbEwGPV3tREyJVkREnl6 AwDGOBgMHjx4UI86HAP19yYYkCgIQlpamr4JdBIiI4QQ0k0AAoFAVVVVd3e3bgsAAIFAIDMz0+v1 dnV1lZaWphDDxcDAwGAcGZMKAGOs73cy5NGuzvAXO+sFQSBEq/TmpRaAp7Ky0uxoK8l20wTWDwVB sNls+TmZKVQ0sizxaJqWmZlKFRaL5cbf37J+/dePP/HYyOOhSCQyZ+7cOSfO1UPXJlK4vmaSeKu+ BXkPay3Jyvt9Z4zy6qakQx4ym82J32YDz/3Rj/b94x8zp007+aSTNEk62NHR0NiIr7rKjJB74cLW l182AcwoKzNNmxbq6dm2fbt2+unmnh53YvsCqKra3eWTs89Y/8X/0rX/PDQ8w5xa8XuEUHbm0Dss 8IhnjCUytx9Lr1qt1qOPPnr27Nm6Ua4oina7vS+UFHr00Ud37NiRWiyAGDzPL1my5JRTTgmFQsFg UJIkk8lkt9vtdrvH45kxY4bVan333XcffPDBMf4QRpAFAB599NGampoTTzwxwVpEUUy2VzHGc+fM +eKLLzZ/8oa+vKkz2NCX47gLL7wwZXlNJvGxP94Ss6nW+hiwCAkAkydPTvmhN2fOieMuS+K9Sgh5 +pmVl/3fyxOZ0usF9vT4n3v+2Wt+c20iLUmqFsbYl199saNmx+kLz0i8cJSkvA8++KC+uZrT6eQ4 rqysTL+f9YXWmKPZeEEpXbNmzYEDBzDGjz/+OPR5ugFAc3PzG2+8ceWVV45jdeMOxnj+/PmPPb4y Lk1/vKLhUjiOO2PRoqRVAG43QohRcu/vfq6738eI/2oymS44/6fJXiOTyZSIq4jXm97cfDAvL18f gsbP8/uaOUQKALS0NttsdkJICg59DodDX+F3uVy7d++ura1FCAmCUFlZaTabdf//H87oxcDA4MgE r1+//rtug8E4QCkVRZGNYXe37xeGvEcCiiy3fvyx9uyzqLWVWa3RkhL1/PMzysqKiopEUZS7ulr/ /Ge2YwcLBlWv13/GGWlz5pSUlCRo/aivDEejUVmW4wUHgD17a3t6/HqQan0Pj74/gBAwBsBYbl7e qQtOG7mKI7NXv+8YvXo4+KH16g9NXoNkSeQOAYBgMLinfnc4HEpqys1xnCCI+bmFJSUlY9kK2sDA wOCIBX/99dffdRsMDAy+rzDGZFmORCKaplmtVqvVajabY2Mmxlg0GtX3r7bZbDabLdkVlfjFmf71 9tmU9j8Y2xowttmkgYGBgcEPlmg02tXVpe9AnEh+xpgkSR6Px+PxJBVBwMDAwOB7BP7qq6++6zYY GBgYGBgYGBgYGBgYGBgcdsa6KaCBgYGBgYGBgYGBgYGBgcH3AsPGycDAwMDAwMDAwMDAwMDgB4Fh BWBgYGBgYGBgYGBgYGBg8IPAUAEYGBgYGBgYGBgYGBgYGPwgMBwBDAwMDAwMDAwMDAwMDAx+EAi1 tbXfdRsMDAwMDAwMDAwMDAwMDAwOO3jv3r3fdRsMDAwMDAwMDAwMDAwMDAwOO0YsAAMDAwMDAwMD g/+foZQSQgBg7ONejDHGWBAEnufHpW0GBgYG3zLCd90AAwMDAwMDAwMDg8MFIaSjo2Pt2rXNzc2M sTGWxvN8SUnJmWeemZaWRggZlxYaGBgYfJvgurq677oNBgYGBgYGBgYGBoeFSCTyxhtvOByO8vJy k8mEMR5LaZqm1dXVaZp26aWXRiKR8WqkgYGBwbeG4QhgYGBgYGBg8N2gD0KOqKGIPj8c4yzR4IiC UtrW1nbaaaeJosjzPMeNaT8sQRAqKyvfe+89juOOqFvXwMDAIEEMFYCBgcERjSiKug/n2K03Dzcc x+neoZqmpVbCD0pY9MOT97DyPe1MWZZbWlqi0egRMhrBGNvt9ry8PLPZ/F23xWDc0O8u/a4TBGGM KoD4Mo+Q+9bAwMAgKYxYAAYGBkc0lFJFUSRJ0iM5fYctAQBZloc7ijE2m81ZWVmCIKQ8S/weCWux WDIzM8ciLPrhyXtY+T52pj7/LykpqaioGJdZ2dghhNTW1jY1NZWUlBwhTTIYL3AcYy9qXJpkYGBg 8J1gWAGMCUqpKIpH/pLLDwHjWhw5jO+1IITIsmwymVwu13c76jp48GB1dfVwRxljnZ2d3d3dpaWl 0Wg0tSqOEGEBoLm5eQRhKaVdXV3d3d0lJSUpC4t+ePIeVr6PnQkA0Wj0yJn/I4QEQZg4ceKuXbsG h4433jLfXwAAYwxxjGOB49JCAwMDg28TQwUwJmRZtlgslNLvuiEGxrU4ghjfa8EYo5Q6nU5RFMel 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 AAAAAAAAAKBbE0UxIyNj7969ubm5xhbOedNk48aNazkf0yEAI/YgiqLFYjG7LwAAAAAAAACY5XA4 5s6d2/F8Wukk0FRBQcHMmTPfeuut6urqtow0AAAAAAAAAIDuwFwIgDH23//+d/bs2RERETNnzvzu u+/8fn9bZh0EAAAAAAAAgK5lLgSwfv36ysrKv95114P3//vHNWtWLF9+xx137Ny5U1GUkOMQ2sdY 6vBo5QYAAAAAAAAAxNRcAKqqZmVlLV68mGt+IvvjnI7PFi7csnXrdX/5y5gxY2688caEhARJOgrz C2ZmZhJCsrOzO54VAAAAAAAAABja2mLnnC9cuHD8+PF9U5KZu5JwxjWF+DzD09O2bN786YIFV199 9axZsy699NLw8HBKaUfKlJWV1ZHdAQAAAAAAAKCptoYAqqurX3vttd937OCeaqIphHPCGeecq34q ilddesklF0976OE5l19++auvvtqvX7/OLDMAAAAAAADAH5amabIsH60J+EVRtNvtoiiSNoYAOOev vPLKQw89FGazsEoXIZxwTjg3XnCVM7/HZo94+snHs7MXHDp0CCEAAAAAAAAAgHZQVbWoqGjVqlXF xcUdn3RPFMWUlJRzzz03ISFB07Q2hQD27t27evXqV155iVccJrpKOOf17f8jgQDJsuHXdampAydM mNDBIgIAAAAAAACcmPx+/+rVq6OiokaOHGmxWDo40F5V1X379i1btmzWrFltCgHouv7ss8++9+47 xFvL/J7gZj/hnBNOOKcWmy5Yb7j5lhdefLEjhQMAAAAAAAA4YXHOdV0vLS0dPny4KIqiKHYwBCCK Ympq6vLly9s6EGDNmjWUkFNHjdJL9hFNreuH0DAQIMQmffDpgvETJqSmpnakcAAAAAAAAAAnOM65 VE8QhI7nFnjdSghAluW5c+eu+P47VlXCZR9p2P+fG+3/sMhav/LwI48uXbq0gyUDAAAAAAAAOMHR hjqeW+B1SyEAzvmHH3540YVTe8ZG64dyOGONxv8TzgmlJDLh4Yceve2226KiojpYMgAAAAAAAIAT HKWUc84YY4wFNmoapZSIIieEcE5UVbBaWatvEUIYY4EoQEs9CsrLy997991HHryfleVxVSG6SrS6 /3j9f4IzpqCoeMXKVTNmzGj7+cht0PbcAAAAAAAAAP5IeEOKQpcs6b12bTznnDHuclkfe2xoq28F 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 SUVORK5CYII= "
height="768"
width="1366" />
</g>
@@ -10252,17 +7486,320 @@ SUVORK5CYII=
<g
id="g6446">
<path
- style="fill:#3f3f3f;fill-opacity:1;stroke:none;filter:url(#filter6442)"
- d="m 8.1183653,4.421875 -0.00508,16.25 3.5273397,-3.6875 2.625,4.328125 2.375,-1.421875 -2.78125,-4.406575 5.27383,0.01105 z"
- id="path6440"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cccccccc" />
- <path
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="path6430"
- d="m 6.5089903,3.4375 -0.00508,16.25 L 10.03125,16 l 2.625,4.328125 2.375,-1.421875 -2.78125,-4.406575 5.27383,0.01105 z"
- style="opacity:1;fill:url(#linearGradient6438);stroke:#ffffff;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1" />
+ d="m 7,3 0,17 3.3125,-3.671875 2.015625,3.953125 2.6875,-1.3125 -2.046875,-3.984375 5,0 z"
+ style="fill:url(#linearGradient4942);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="ccccccc"
+ inkscape:connector-curvature="0"
+ id="path4944"
+ d="m 8.5244914,6.8623088 -0.03125,9.2561552 2.0757586,-2.453309 2.65684,5.041356 -2.253394,-5.198262 3.672816,0.009 z"
+ style="fill:none;stroke:#ffffff;stroke-width:1;stroke-opacity:1;stroke-linecap:round;stroke-linejoin:round" />
+ <path
+ style="opacity:0.6;fill:none;stroke:#000000;stroke-width:1;stroke-opacity:1"
+ d="m 7.5027087,4.2817379 -0.00334,14.5173581 2.9371233,-3.339537 2.111353,4.148436 1.808536,-0.876417 -2.167412,-4.255131 4.743897,0.0404 z"
+ id="path4926"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccc" />
</g>
</g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_drawtext.png b/icon-themes/tango_testing/cmd/lc_drawtext.png
new file mode 100644
index 000000000000..5384b00e0520
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_drawtext.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_ellipse.png b/icon-themes/tango_testing/cmd/lc_ellipse.png
new file mode 100644
index 000000000000..233b97965fbd
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_ellipse.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_ellipse.svg b/icon-themes/tango_testing/cmd/lc_ellipse.svg
new file mode 100644
index 000000000000..c14c46e39cdd
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_ellipse.svg
@@ -0,0 +1,278 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_ellipse.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_ellipse.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3774"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782"
+ id="linearGradient3788"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3899"
+ x1="12"
+ y1="3.9999945"
+ x2="12"
+ y2="19.999994"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="783"
+ inkscape:window-height="480"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="1"
+ inkscape:cx="22.366624"
+ inkscape:cy="2.8230057"
+ inkscape:window-x="0"
+ inkscape:window-y="131"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="svg2">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3121" />
+ </sodipodi:namedview>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ id="g3102"
+ transform="translate(33.694915,3.8983054)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1"
+ transform="translate(-2,-1036.3622)">
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient3899);fill-opacity:1;stroke:none"
+ id="path3123"
+ sodipodi:cx="12"
+ sodipodi:cy="12"
+ sodipodi:rx="11"
+ sodipodi:ry="8"
+ d="M 23,12 A 11,8 0 1 1 1,12 11,8 0 1 1 23,12 z"
+ transform="translate(-31.694915,1032.4639)" />
+ <path
+ transform="matrix(0.9546735,0,0,0.93764076,-31.145957,1033.2121)"
+ d="M 23,12 A 11,8 0 1 1 1,12 11,8 0 1 1 23,12 z"
+ sodipodi:ry="8"
+ sodipodi:rx="11"
+ sodipodi:cy="12"
+ sodipodi:cx="12"
+ id="path3901"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.05694962;stroke-opacity:1"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:none;stroke:#ffffff;stroke-width:1.19166255;stroke-opacity:1"
+ id="path3903"
+ sodipodi:cx="12"
+ sodipodi:cy="12"
+ sodipodi:rx="11"
+ sodipodi:ry="8"
+ d="M 23,12 A 11,8 0 1 1 1,12 11,8 0 1 1 23,12 z"
+ transform="matrix(0.86447463,0,0,0.81459388,-30.071383,1034.6887)" />
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_ellipsetoolbox.png b/icon-themes/tango_testing/cmd/lc_ellipsetoolbox.png
new file mode 100644
index 000000000000..233b97965fbd
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_ellipsetoolbox.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.png b/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.png
index 984a40cd4b4e..9912475ba230 100644
--- a/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.png
+++ b/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.svg b/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.svg
index 540e802fe72a..21f3b41933b6 100644
--- a/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.svg
+++ b/icon-themes/tango_testing/cmd/lc_exportdirecttopdf.svg
@@ -20,260 +20,148 @@
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
- id="defs10178"><linearGradient
- inkscape:collect="always"
- id="linearGradient3775">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop3777" />
- <stop
- style="stop-color:#000000;stop-opacity:0;"
- offset="1"
- id="stop3779" />
-</linearGradient>
-<filter
- color-interpolation-filters="sRGB"
- inkscape:collect="always"
- id="filter10139"
- x="-0.1275"
- width="1.255"
- y="-0.11333333"
- height="1.2266667">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.85"
- id="feGaussianBlur10141" />
-</filter>
-<linearGradient
- gradientTransform="matrix(1,0,0,1.2132953,-249,428.7486)"
- inkscape:collect="always"
- xlink:href="#linearGradient144843"
- id="linearGradient145268"
- gradientUnits="userSpaceOnUse"
- x1="269.88217"
- y1="-333.36053"
- x2="252.47137"
- y2="-314.26865" />
-<linearGradient
- inkscape:collect="always"
- id="linearGradient144843">
- <stop
- style="stop-color:#ffffff;stop-opacity:1;"
- offset="0"
- id="stop144845" />
- <stop
- style="stop-color:#ffffff;stop-opacity:0;"
- offset="1"
- id="stop144847" />
-</linearGradient>
-<linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4457"
- id="linearGradient145275"
- gradientUnits="userSpaceOnUse"
- x1="252"
- y1="-323.63782"
- x2="270"
- y2="-323.63782" />
-<linearGradient
- id="linearGradient4457">
- <stop
- style="stop-color:#cc0000;stop-opacity:1;"
- offset="0"
- id="stop4459" />
- <stop
- style="stop-color:#a40000;stop-opacity:1;"
- offset="1"
- id="stop4461" />
-</linearGradient>
-<radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4457"
- id="radialGradient10747"
- cx="12"
- cy="27.560417"
- fx="12"
- fy="27.560417"
- r="9"
- gradientTransform="matrix(1,0,0,1.3333333,0,-12)"
- gradientUnits="userSpaceOnUse" />
-<radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3775"
- id="radialGradient3781"
- cx="12"
- cy="23"
- fx="12"
- fy="23"
- r="10"
- gradientTransform="matrix(1,0,0,0.1,0,20.7)"
- gradientUnits="userSpaceOnUse" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-</defs>
+ id="defs10178">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3793">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3795" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3797" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient3775">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3777" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3779" />
+ </linearGradient>
+ <filter
+ color-interpolation-filters="sRGB"
+ inkscape:collect="always"
+ id="filter10139"
+ x="-0.1275"
+ width="1.255"
+ y="-0.11333333"
+ height="1.2266667">
+ <feGaussianBlur
+ inkscape:collect="always"
+ stdDeviation="0.85"
+ id="feGaussianBlur10141" />
+ </filter>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,1.2132953,-249,428.7486)"
+ inkscape:collect="always"
+ xlink:href="#linearGradient144843"
+ id="linearGradient145268"
+ gradientUnits="userSpaceOnUse"
+ x1="269.88217"
+ y1="-333.36053"
+ x2="252.47137"
+ y2="-314.26865" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient144843">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop144845" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop144847" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4457"
+ id="linearGradient145275"
+ gradientUnits="userSpaceOnUse"
+ x1="252"
+ y1="-323.63782"
+ x2="270"
+ y2="-323.63782" />
+ <linearGradient
+ id="linearGradient4457">
+ <stop
+ style="stop-color:#cc0000;stop-opacity:1;"
+ offset="0"
+ id="stop4459" />
+ <stop
+ style="stop-color:#a40000;stop-opacity:1;"
+ offset="1"
+ id="stop4461" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4457"
+ id="radialGradient10747"
+ cx="12"
+ cy="27.560417"
+ fx="12"
+ fy="27.560417"
+ r="9"
+ gradientTransform="matrix(1,0,0,1.3333333,0,-12)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3775"
+ id="radialGradient3781"
+ cx="12"
+ cy="23"
+ fx="12"
+ fy="23"
+ r="10"
+ gradientTransform="matrix(1,0,0,0.1,0,20.7)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient144843"
+ id="linearGradient3797"
+ x1="8.6225443"
+ y1="21.75"
+ x2="15.119642"
+ y2="43"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient144843"
+ id="linearGradient3011"
+ gradientUnits="userSpaceOnUse"
+ x1="8.6225443"
+ y1="21.75"
+ x2="15.119642"
+ y2="43"
+ gradientTransform="translate(-21.875001,-2.1250001)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4457"
+ id="radialGradient3017"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3333333,0,-36)"
+ cx="12"
+ cy="27.560417"
+ fx="12"
+ fy="27.560417"
+ r="9" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3793"
+ id="linearGradient3799"
+ x1="12"
+ y1="1"
+ x2="12"
+ y2="20"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
@@ -282,17 +170,20 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="8"
- inkscape:cx="28.614346"
- inkscape:cy="4.2100672"
+ inkscape:cx="24.552523"
+ inkscape:cy="17.723225"
inkscape:current-layer="layer1"
- showgrid="true"
+ showgrid="false"
inkscape:grid-bbox="true"
inkscape:document-units="px"
inkscape:window-width="1366"
- inkscape:window-height="716"
+ inkscape:window-height="698"
inkscape:window-x="0"
- inkscape:window-y="30"
- inkscape:window-maximized="1">
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:snap-global="true"
+ inkscape:showpageshadow="false"
+ showborder="false">
<inkscape:grid
type="xygrid"
id="grid10233"
@@ -309,7 +200,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title />
+ <dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -318,29 +209,15 @@
inkscape:label="Layer 1"
inkscape:groupmode="layer"
transform="translate(0,-24)">
- <path
- sodipodi:type="arc"
- style="opacity:0.4;fill:url(#radialGradient3781);fill-opacity:1;stroke:none"
- id="path3005"
- sodipodi:cx="12"
- sodipodi:cy="23"
- sodipodi:rx="10"
- sodipodi:ry="1"
- d="M 22,23 A 10,1 0 1 1 2,23 10,1 0 1 1 22,23 z"
- transform="matrix(1,0,0,2,0,-1)" />
<rect
y="24"
x="3"
height="21"
width="18"
id="rect144056"
- style="fill:url(#radialGradient10747);fill-opacity:1;stroke:none" />
- <path
- inkscape:connector-curvature="0"
- id="rect144826"
- d="M 3.0000004,24 3,45 21,45 21,24 z M 4.0000044,25 20.000004,25 20,44 4,44 z"
- style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
- sodipodi:nodetypes="cccccccccc" />
+ style="fill:url(#radialGradient10747);fill-opacity:1;stroke:none"
+ rx="1.0494047"
+ ry="1.0494047" />
<g
transform="matrix(1,0,0,1.2132953,-249,427.74859)"
id="g10123"
@@ -387,11 +264,15 @@
sodipodi:nodetypes="ccccc" />
</g>
<path
- sodipodi:nodetypes="cccccccccc"
- inkscape:connector-curvature="0"
- style="opacity:0.4;fill:url(#linearGradient145268);fill-opacity:1;stroke:none"
- d="m 4,25 0,19 16,0 0,-19 z m 1,1 14,0 0,17 -14,0 z"
- id="path144841" />
+ style="fill:#000000;fill-opacity:1;stroke:none;opacity:0.4"
+ d="M 4.0625 0 C 3.4811298 0 3 0.48112977 3 1.0625 L 3 19.9375 C 3 20.51887 3.4811298 21 4.0625 21 L 19.9375 21 C 20.51887 21 21 20.51887 21 19.9375 L 21 1.0625 C 21 0.48112977 20.51887 0 19.9375 0 L 4.0625 0 z M 4 1 L 20 1 L 20 20 L 4 20 L 4 1 z "
+ transform="translate(0,24)"
+ id="rect3015" />
+ <path
+ style="opacity:0.40000000000000002;fill:url(#linearGradient3799);fill-opacity:1;stroke:none"
+ d="M 4 1 L 4 20 L 20 20 L 20 1 L 4 1 z M 5 2 L 19 2 L 19 19 L 5 19 L 5 2 z "
+ transform="translate(0,24)"
+ id="rect3020" />
</g>
<style
id="style1470"
diff --git a/icon-themes/tango_testing/cmd/lc_extrusion3dcolor.png b/icon-themes/tango_testing/cmd/lc_extrusion3dcolor.png
new file mode 100644
index 000000000000..fc69d88fc6ca
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_extrusion3dcolor.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_extrusion3dcolor.svg b/icon-themes/tango_testing/cmd/lc_extrusion3dcolor.svg
new file mode 100644
index 000000000000..d7fde6c0e604
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_extrusion3dcolor.svg
@@ -0,0 +1,1590 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="26"
+ height="26"
+ sodipodi:docname="lc_extrusion3dcolor.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_extrusion3dcolor.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ id="linearGradient3764-2">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop3766-7" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop3768-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782-3">
+ <stop
+ id="stop3784-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop3786-9"
+ offset="1"
+ style="stop-color:#646464;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3511"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4339">
+ <stop
+ id="stop4341"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4343"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="19.999994"
+ x2="12"
+ y1="3.9999945"
+ x1="12"
+ id="linearGradient3899"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895-1"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885-2"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875-5"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-3" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-7" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-1">
+ <stop
+ id="stop3784-0"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786-8"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective2987"
+ inkscape:persp3d-origin="12 : 8 : 1"
+ inkscape:vp_z="62.327584 : 21.563919 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="7.9100081 : 21.563919 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <inkscape:perspective
+ id="perspective3031"
+ inkscape:persp3d-origin="-66.181884 : 39.92512 : 1"
+ inkscape:vp_z="67.407898 : 64.397487 : 1"
+ inkscape:vp_y="0 : 1755.6863 : 0"
+ inkscape:vp_x="-72.675413 : 64.068295 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="-284.59897"
+ x2="1012.0714"
+ y1="-283.31735"
+ x1="1017.8604"
+ id="linearGradient3832"
+ xlink:href="#linearGradient3825"
+ inkscape:collect="always" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="6"
+ fy="6"
+ fx="7"
+ cy="6"
+ cx="7"
+ id="radialGradient3837"
+ xlink:href="#linearGradient3831"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient9635-5-6"
+ id="linearGradient9707"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.80211024,0,0,0.86840287,201.67522,-37.824905)"
+ x1="1017.8835"
+ y1="-283.02554"
+ x2="1013.6024"
+ y2="-295.22311" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9-3-6"
+ id="linearGradient9705"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.80211024,0,0,-0.86840287,1833.6568,-536.69965)"
+ x1="1012.5"
+ y1="-291.85657"
+ x2="1022.375"
+ y2="-282.41907" />
+ <linearGradient
+ id="linearGradient9635-5-6">
+ <stop
+ id="stop9637-0-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ style="stop-color:#444542;stop-opacity:0.74400002;"
+ offset="0.70555556"
+ id="stop11309-2-2" />
+ <stop
+ id="stop9639-0-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7113-9-3-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71-3-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8-2-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient13260"
+ inkscape:collect="always">
+ <stop
+ id="stop13262"
+ offset="0"
+ style="stop-color:#bd6116;stop-opacity:1;" />
+ <stop
+ id="stop13264"
+ offset="1"
+ style="stop-color:#bd6116;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="-292.21875"
+ x2="1022.5"
+ y1="-289.90625"
+ x1="1019.8125"
+ id="linearGradient13266"
+ xlink:href="#linearGradient13260"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-294.29736"
+ x2="1017.4827"
+ y1="-286.57553"
+ x1="1023.8649"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient13244"
+ xlink:href="#linearGradient10903"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient12847-0-6">
+ <stop
+ style="stop-color:#fff900;stop-opacity:1;"
+ offset="0"
+ id="stop12849-4-2" />
+ <stop
+ id="stop12853-5-6"
+ offset="0.5"
+ style="stop-color:#f7f2bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffde11;stop-opacity:1;"
+ offset="1"
+ id="stop12851-2-5" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="-280.18057"
+ x2="1011.5743"
+ y1="-282.57776"
+ x1="1009.1449"
+ id="linearGradient12845-6-7"
+ xlink:href="#linearGradient12847-0-6"
+ inkscape:collect="always"
+ gradientTransform="translate(0.71707603,-0.47714533)" />
+ <linearGradient
+ id="linearGradient13246">
+ <stop
+ id="stop13248"
+ offset="0"
+ style="stop-color:#ee7012;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f8c63a;stop-opacity:1;"
+ offset="1"
+ id="stop13268" />
+ <stop
+ id="stop13250"
+ offset="1"
+ style="stop-color:#f8c63a;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.3333353,0,0,1.3333326,-335.43293,92.404554)"
+ gradientUnits="userSpaceOnUse"
+ y2="-279.13782"
+ x2="1012"
+ y1="-279.13782"
+ x1="1003"
+ id="linearGradient13258"
+ xlink:href="#linearGradient13246"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient10903">
+ <stop
+ style="stop-color:#ee7012;stop-opacity:1;"
+ offset="0"
+ id="stop10905" />
+ <stop
+ id="stop10907"
+ offset="0.77061909"
+ style="stop-color:#f8c63a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f8c63a;stop-opacity:0;"
+ offset="1"
+ id="stop10909" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3831">
+ <stop
+ id="stop3833"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3835"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3825"
+ inkscape:collect="always">
+ <stop
+ id="stop3827"
+ offset="0"
+ style="stop-color:#951a00;stop-opacity:1;" />
+ <stop
+ id="stop3829"
+ offset="1"
+ style="stop-color:#951a00;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="2.5243413"
+ x2="11.187508"
+ y1="8.1493416"
+ x1="10.062502"
+ id="linearGradient4018-4"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always"
+ gradientTransform="translate(0,-1.875)" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="14.067826"
+ x2="4.3670778"
+ y1="11.192826"
+ x1="-10.374998"
+ id="linearGradient4007-7"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always"
+ gradientTransform="translate(0,-1.875)" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="14.443998"
+ x2="4.8125076"
+ y1="6.5689983"
+ x1="34.679577"
+ id="linearGradient3999-5"
+ xlink:href="#linearGradient3764-9"
+ inkscape:collect="always"
+ gradientTransform="translate(0,-1.875)" />
+ <linearGradient
+ id="linearGradient3764-2-6">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop3766-7-7" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop3768-3-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782-3-2">
+ <stop
+ id="stop3784-4-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop3786-9-3"
+ offset="1"
+ style="stop-color:#646464;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3511-6"
+ xlink:href="#linearGradient3764-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895-8"
+ xlink:href="#linearGradient3764-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885-5"
+ xlink:href="#linearGradient3764-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875-4"
+ xlink:href="#linearGradient3764-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-1" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782-0">
+ <stop
+ id="stop3784-7"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786-2"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4339-1">
+ <stop
+ id="stop4341-4"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4343-3"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="19.999994"
+ x2="12"
+ y1="3.9999945"
+ x1="12"
+ id="linearGradient3899-1"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788-1"
+ xlink:href="#linearGradient3782-1-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895-1-3"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885-2-0"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875-5-5"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-5-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-3-7" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-7-5" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774-0"
+ xlink:href="#linearGradient3764-5-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-1-7">
+ <stop
+ id="stop3784-0-0"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786-8-7"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <inkscape:perspective
+ id="perspective2987-2"
+ inkscape:persp3d-origin="12 : 8 : 1"
+ inkscape:vp_z="62.327584 : 21.563919 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="7.9100081 : 21.563919 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <inkscape:perspective
+ id="perspective3031-4"
+ inkscape:persp3d-origin="-28.73008 : 18.988204 : 1"
+ inkscape:vp_z="85.292427 : 39.876035 : 1"
+ inkscape:vp_y="0 : 1498.5259 : 0"
+ inkscape:vp_x="-34.272483 : 39.595059 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-5-9"
+ id="linearGradient3741"
+ gradientUnits="userSpaceOnUse"
+ x1="10.062502"
+ y1="8.1493416"
+ x2="11.187508"
+ y2="2.5243413"
+ gradientTransform="translate(0,-1.875)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-9"
+ id="linearGradient3743"
+ gradientUnits="userSpaceOnUse"
+ x1="34.679577"
+ y1="6.5689983"
+ x2="4.8125076"
+ y2="14.443998"
+ gradientTransform="translate(0,-1.875)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3831"
+ id="radialGradient3779"
+ gradientUnits="userSpaceOnUse"
+ cx="7"
+ cy="6"
+ fx="7"
+ fy="6"
+ r="6" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="717"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="1"
+ inkscape:cx="11.853015"
+ inkscape:cy="21.333592"
+ inkscape:window-x="0"
+ inkscape:window-y="28"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g6199">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3745" />
+ </sodipodi:namedview>
+ <g
+ id="g3724"
+ transform="matrix(0.85352717,0,0,0.85352717,6.2317069,-0.72896952)">
+ <g
+ inkscape:corner7="-0.87469587 : 0.011025136 : 0.033532132 : 1"
+ inkscape:corner0="-0.86598866 : 0.012199273 : 0 : 1"
+ inkscape:perspectiveID="#perspective3031-4"
+ id="g3003"
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ sodipodi:type="inkscape:box3d">
+ <path
+ d="M 0.99999926,20.643061 4.3670746,23.124992 23.000005,14.991251 19.338465,13.428763 z"
+ inkscape:box3dsidetype="13"
+ style="fill:#afafde;fill-rule:evenodd;stroke:none"
+ id="path3013"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ d="m 19.338465,1.1249941 3.66154,0.8880104 0,12.9782465 -3.66154,-1.562488 z"
+ inkscape:box3dsidetype="11"
+ style="fill:#e9e9ff;fill-rule:evenodd;stroke:none"
+ id="path3015"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path4024"
+ style="fill:url(#linearGradient3741);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="5"
+ d="M 0.99999926,5.2606605 4.3670746,6.6736896 23.000005,2.0130045 19.338465,1.1249941 z" />
+ <path
+ d="m 4.3670746,6.6736896 0,16.4513024 18.6329304,-8.133741 0,-12.9782465 z"
+ inkscape:box3dsidetype="14"
+ style="fill:url(#linearGradient3743);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path3011"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ d="m 0.99999926,5.2606605 3.36707534,1.4130291 0,16.4513024 -3.36707534,-2.481931 z"
+ inkscape:box3dsidetype="3"
+ style="opacity:0.3;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path4022"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ d="M 0.99999926,5.2606605 4.3670746,6.6736896 23.000005,2.0130045 19.338465,1.1249941 z"
+ inkscape:box3dsidetype="5"
+ style="fill:url(#linearGradient4018-4);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path3007"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path4020"
+ style="fill:url(#linearGradient3999-5);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="14"
+ d="m 4.3670746,6.6736896 0,16.4513024 18.6329304,-8.133741 0,-12.9782465 z" />
+ <path
+ d="m 0.99999926,5.2606605 3.36707534,1.4130291 0,16.4513024 -3.36707534,-2.481931 z"
+ inkscape:box3dsidetype="3"
+ style="fill:url(#linearGradient4007-7);fill-opacity:1;fill-rule:evenodd;stroke:none"
+ id="path3009"
+ sodipodi:type="inkscape:box3dside" />
+ <path
+ sodipodi:type="inkscape:box3dside"
+ id="path4009"
+ style="opacity:0.3;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none"
+ inkscape:box3dsidetype="3"
+ d="m 0.99999926,5.2606605 3.36707534,1.4130291 0,16.4513024 -3.36707534,-2.481931 z" />
+ </g>
+ <g
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="g4039" />
+ <g
+ id="g4186"
+ style="fill:none;stroke:#ffffff;stroke-width:1.35667145;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
+ transform="matrix(0.86359063,0,0,0.86359062,1.6369132,1.6369116)">
+ <path
+ sodipodi:nodetypes="ccccccccccccccccccc"
+ inkscape:connector-curvature="0"
+ d="m 3.9999999,6.9999998 0,13.6406252 M 2.5005055,6.1970192 3.9999999,6.9999998 5.6292512,7.5574629 5.647557,21.583435 2.5317555,19.746282 z M 5.6292512,7.5574629 5.647557,21.083435 21.595935,14.106088 21.587892,3.4441509 z M 2.4536305,6.0720192 3.9999999,6.9999998 5.6292512,7.5574629 21.572267,3.4441509 19.003485,2.4460392 z"
+ style="fill:none;stroke:#ffffff;stroke-width:1.17160892px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
+ transform="matrix(1.1579561,0,0,1.1579561,-1.8954736,-1.8954717)"
+ id="path4190" />
+ </g>
+ <g
+ transform="matrix(0.95982349,0,0,0.95982349,0.48211833,0.48211785)"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.22065032;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="g4095">
+ <path
+ sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccc"
+ inkscape:connector-curvature="0"
+ d="m 1.000002,5.13566 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z m 0,0 3.3670756,1.4130291 0,16.4513029 -3.3670756,-2.48193 z m 3.3670756,1.4130291 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z m 3.3670756,1.4130291 0,16.4513029 18.6329304,-8.133741 0,-12.9782467 z M 1.000002,5.13566 4.3670776,6.5486891 23.000008,1.8880043 19.338468,0.99999376 z m 18.338466,-4.13566624 3.66154,0.88801054 0,12.9782467 M 4.3670776,22.999992 23.000008,14.866251"
+ style="fill:none;stroke:#000000;stroke-width:1.22065032;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path4133" />
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ transform="translate(-27.974568,-1034.809)"
+ id="layer1"
+ inkscape:label="Ebene 1">
+ <g
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/bg_color.png"
+ id="g6199"
+ transform="translate(-1001.9023,1323.1412)">
+ <g
+ id="g3747"
+ transform="matrix(0.90254863,0,0,0.90254863,124.7342,-22.289117)">
+ <g
+ id="g12759"
+ transform="translate(50.033485,-1.0637484)">
+ <path
+ transform="translate(-0.25,-0.375)"
+ d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
+ sodipodi:ry="6"
+ sodipodi:rx="6"
+ sodipodi:cy="-287.26282"
+ sodipodi:cx="959.25"
+ id="path12761"
+ style="fill:#707070;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ inkscape:transform-center-y="3"
+ inkscape:connector-curvature="0"
+ id="path12763"
+ d="m 959,-287.63782 -1,6 2,0 z"
+ style="fill:#ff0909;fill-opacity:1;stroke:none" />
+ <path
+ inkscape:transform-center-x="-1.25942"
+ style="fill:#ff2c09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
+ id="path12765"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.027185" />
+ <path
+ inkscape:transform-center-y="2.848075"
+ inkscape:connector-curvature="0"
+ id="path12767"
+ d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
+ style="fill:#ffb509;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.933015" />
+ <path
+ inkscape:transform-center-x="-2.474875"
+ style="fill:#ffc109;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
+ id="path12769"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.47487" />
+ <path
+ inkscape:transform-center-y="1.93301"
+ inkscape:connector-curvature="0"
+ id="path12771"
+ d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
+ style="fill:#adff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.84808" />
+ <path
+ inkscape:transform-center-x="-3.02719"
+ style="fill:#92ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
+ id="path12773"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.259415" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12775"
+ d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
+ style="fill:#84ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.000005" />
+ <path
+ inkscape:transform-center-y="-1.259415"
+ inkscape:transform-center-x="-3.027185"
+ style="fill:#43ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
+ id="path12777"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12779"
+ d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
+ style="fill:#09ff11;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.848075"
+ inkscape:transform-center-y="-1.93301" />
+ <path
+ inkscape:transform-center-y="-2.474875"
+ inkscape:transform-center-x="-2.474875"
+ style="fill:#09ff59;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
+ id="path12781"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12783"
+ d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
+ style="fill:#09ff68;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.933015"
+ inkscape:transform-center-y="-2.84808" />
+ <path
+ inkscape:transform-center-y="-3.000005"
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ id="path12785"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12787"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ style="fill:#09ffff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.000005" />
+ <path
+ inkscape:transform-center-x="-1.259415"
+ inkscape:transform-center-y="-3.02719"
+ style="fill:#09ffa9;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
+ id="path12789"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12791"
+ d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
+ style="fill:#09d2ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.027185"
+ inkscape:transform-center-x="1.25942" />
+ <path
+ inkscape:transform-center-x="1.933015"
+ inkscape:transform-center-y="-2.848075"
+ style="fill:#0985ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
+ id="path12793"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12795"
+ d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
+ style="fill:#0947ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-2.47487"
+ inkscape:transform-center-x="2.47488" />
+ <path
+ inkscape:transform-center-x="2.848085"
+ inkscape:transform-center-y="-1.93301"
+ style="fill:#092fff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
+ id="path12797"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path12799"
+ d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
+ style="fill:#5c09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-1.259415"
+ inkscape:transform-center-x="3.027195" />
+ <path
+ inkscape:transform-center-x="3.00001"
+ style="fill:#8d09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
+ id="path12801"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:transform-center-y="1.25942"
+ inkscape:connector-curvature="0"
+ id="path12803"
+ d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
+ style="fill:#cb09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="3.02719" />
+ <path
+ inkscape:transform-center-x="2.84808"
+ style="fill:#b709ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
+ id="path12805"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.933015" />
+ <path
+ inkscape:transform-center-y="2.47488"
+ inkscape:connector-curvature="0"
+ id="path12807"
+ d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
+ style="fill:#f709ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="2.474875" />
+ <path
+ inkscape:transform-center-x="1.933015"
+ style="fill:#ff099d;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
+ id="path12809"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.848085" />
+ <path
+ inkscape:transform-center-y="3.0272"
+ inkscape:connector-curvature="0"
+ id="path12811"
+ d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
+ style="fill:#ff0951;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="1.25942" />
+ <path
+ transform="matrix(0.95698925,0,0,0.95698925,41.275874,-12.670578)"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ sodipodi:ry="5.8125"
+ sodipodi:rx="5.8125"
+ sodipodi:cy="-287.32532"
+ sodipodi:cx="958.9375"
+ id="path12813"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.15777004;stroke-opacity:1"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.39245307;stroke-opacity:1"
+ id="path12815"
+ sodipodi:cx="958.9375"
+ sodipodi:cy="-287.32532"
+ sodipodi:rx="5.8125"
+ sodipodi:ry="5.8125"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ transform="matrix(0.79569892,0,0,0.79569892,195.91197,-59.044622)" />
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient3779);fill-opacity:1;stroke:none"
+ id="path3061"
+ sodipodi:cx="7"
+ sodipodi:cy="6"
+ sodipodi:rx="6"
+ sodipodi:ry="6"
+ d="M 13,6 C 13,9.3137085 10.313708,12 7,12 3.6862915,12 1,9.3137085 1,6 1,2.6862915 3.6862915,0 7,0 c 3.313708,0 6,2.6862915 6,6 z"
+ transform="translate(1001.9023,-294.779)" />
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1-3"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_extrusionlightningfloater.png b/icon-themes/tango_testing/cmd/lc_extrusionlightingfloater.png
index e86bcc5cfd8a..e86bcc5cfd8a 100644
--- a/icon-themes/tango_testing/cmd/lc_extrusionlightningfloater.png
+++ b/icon-themes/tango_testing/cmd/lc_extrusionlightingfloater.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_extrusiontoggle.png b/icon-themes/tango_testing/cmd/lc_extrusiontoggle.png
new file mode 100644
index 000000000000..45c0bb5b19b4
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_extrusiontoggle.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_fillshadow.png b/icon-themes/tango_testing/cmd/lc_fillshadow.png
index 355367d84014..db1641289d8d 100644
--- a/icon-themes/tango_testing/cmd/lc_fillshadow.png
+++ b/icon-themes/tango_testing/cmd/lc_fillshadow.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_fillshadow.svg b/icon-themes/tango_testing/cmd/lc_fillshadow.svg
index 9fb0d061cd95..6640ac32c99c 100644
--- a/icon-themes/tango_testing/cmd/lc_fillshadow.svg
+++ b/icon-themes/tango_testing/cmd/lc_fillshadow.svg
@@ -20,7387 +20,7559 @@
inkscape:export-xdpi="90"
inkscape:export-ydpi="90">
<defs
- id="defs4">
- <linearGradient
- id="linearGradient4784">
- <stop
- style="stop-color:#fffc8a;stop-opacity:1;"
- offset="0"
- id="stop4786" />
- <stop
- style="stop-color:#fab800;stop-opacity:1;"
- offset="1"
- id="stop4788" />
- </linearGradient>
- <linearGradient
- id="linearGradient7648">
- <stop
- id="stop7650"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="0.46662426"
- id="stop7652" />
- <stop
- style="stop-color:#888a85;stop-opacity:1"
- offset="0.85851747"
- id="stop7654" />
- <stop
- id="stop7656"
- offset="1"
- style="stop-color:#2e3436;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- y2="123.53689"
- x2="227.56795"
- y1="142.72978"
- x1="236.77655"
- gradientUnits="userSpaceOnUse"
- id="linearGradient9586"
- xlink:href="#linearGradient7113-62-4"
- inkscape:collect="always" />
- <linearGradient
- y2="122.14792"
- x2="224.9845"
- y1="147.02293"
- x1="236.32954"
- gradientUnits="userSpaceOnUse"
- id="linearGradient9584"
- xlink:href="#linearGradient6977-28-2-3-5"
- inkscape:collect="always" />
- <linearGradient
- y2="123.53689"
- x2="227.56795"
- y1="142.72978"
- x1="236.77655"
- gradientUnits="userSpaceOnUse"
- id="linearGradient9582"
- xlink:href="#linearGradient7113-62-4"
- inkscape:collect="always" />
- <linearGradient
- y2="119.67304"
- x2="223.39351"
- y1="147.02293"
- x1="236.32954"
- gradientUnits="userSpaceOnUse"
- id="linearGradient9580"
- xlink:href="#linearGradient9593"
- inkscape:collect="always" />
- <radialGradient
- r="9.84375"
- fy="17.125"
- fx="12.47341"
- cy="17.125"
- cx="12.47341"
- gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient9578"
- xlink:href="#linearGradient3787-2-5"
- inkscape:collect="always" />
- <radialGradient
- r="9.84375"
- fy="17.125"
- fx="11.03125"
- cy="17.125"
- cx="11.03125"
- gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient9574"
- xlink:href="#linearGradient3787-2-5"
- inkscape:collect="always" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- y2="123.53689"
- x2="227.56795"
- y1="142.72978"
- x1="236.77655"
- id="linearGradient9567"
- xlink:href="#linearGradient7113-62-4"
- inkscape:collect="always" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- y2="122.14792"
- x2="224.9845"
- y1="147.02293"
- x1="236.32954"
- id="linearGradient9559"
- xlink:href="#linearGradient6977-28-2-3-5"
- inkscape:collect="always" />
- <linearGradient
- gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient4237-9-0"
- inkscape:collect="always"
- x1="0.5915947"
- x2="16.993088"
- xlink:href="#linearGradient4256-2-6"
- y1="11.553171"
- y2="0.059782967" />
- <linearGradient
- id="linearGradient4256-2-6"
- inkscape:collect="always">
- <stop
- id="stop4258-8-9"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4260-2-0"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="matrix(1,0,0,-1,33,21.001565)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient3782-7-6"
- inkscape:collect="always"
- x1="10.386932"
- x2="14.555588"
- xlink:href="#linearGradient4256-2-6"
- y1="15.424131"
- y2="8.153533" />
- <linearGradient
- id="linearGradient7113-62-4"
- inkscape:collect="always">
- <stop
- id="stop7115-8-23"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-6"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-4"
- id="linearGradient9141-3-39-97"
- gradientUnits="userSpaceOnUse"
- x1="39"
- y1="14.000207"
- x2="39"
- y2="-1.0002024" />
- <linearGradient
- id="linearGradient6977-28-58">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-6" />
- <stop
- id="stop6981-1-3"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-6"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-67" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58"
- id="radialGradient9139-7-61-7"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
- cx="37.839142"
- cy="126.90098"
- fx="37.839142"
- fy="126.90098"
- r="22" />
- <linearGradient
- id="linearGradient3787-2-5"
- inkscape:collect="always">
- <stop
- id="stop3789-6-2"
- offset="0"
- style="stop-color:#000000;stop-opacity:1" />
- <stop
- id="stop3791-7-7"
- offset="1"
- style="stop-color:#000000;stop-opacity:0" />
- </linearGradient>
- <radialGradient
- cx="11.03125"
- cy="17.125"
- fx="11.03125"
- fy="17.125"
- gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient3793-6-3"
- inkscape:collect="always"
- r="9.84375"
- xlink:href="#linearGradient3787-2-5" />
- <inkscape:perspective
- sodipodi:type="inkscape:persp3d"
- inkscape:vp_x="0 : 150 : 1"
- inkscape:vp_y="0 : 1000 : 0"
- inkscape:vp_z="600 : 150 : 1"
- inkscape:persp3d-origin="300 : 100 : 1"
- id="perspective1832" />
- <linearGradient
- id="linearGradient7157"
- inkscape:collect="always">
- <stop
- id="stop7159"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7161"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- id="linearGradient7113"
- inkscape:collect="always">
- <stop
- id="stop7115"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- id="linearGradient6977">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979" />
- <stop
- id="stop6981"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5685">
- <stop
- style="stop-color:#bb5400;stop-opacity:1"
- offset="0"
- id="stop5687" />
- <stop
- style="stop-color:#f57900;stop-opacity:1"
- offset="1"
- id="stop5689" />
- </linearGradient>
- <linearGradient
- id="linearGradient4388"
- inkscape:collect="always">
- <stop
- id="stop4390"
- offset="0"
- style="stop-color:#d3d7cf;stop-opacity:1" />
- <stop
- id="stop4392"
- offset="1"
- style="stop-color:#2e3436;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4157">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop4159" />
- <stop
- style="stop-color:#888a85;stop-opacity:1"
- offset="1"
- id="stop4161" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4996">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4998" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop5000" />
- </linearGradient>
- <linearGradient
- id="linearGradient3185-6"
- inkscape:collect="always">
- <stop
- id="stop3187-7"
- offset="0"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- id="stop3189-7"
- offset="1"
- style="stop-color:#555753;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- id="linearGradient4840-0">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4832-3">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4834-2" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4836-0" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5297-7">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop5299-8" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop5301-3" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4832-3-0-6">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4834-2-6-2" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4836-0-3-7" />
- </linearGradient>
- <linearGradient
- id="linearGradient4840-0-6-1">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-5" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-7-0" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4832-3-0-6-1">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4834-2-6-2-5" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4836-0-3-7-8" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-1"
- id="linearGradient3820"
- gradientUnits="userSpaceOnUse"
- x1="337.69534"
- y1="71.508186"
- x2="337.69534"
- y2="55.674088"
- gradientTransform="translate(-290,60)" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996"
- id="linearGradient3830"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-291,63)"
- x1="330.25"
- y1="139.5625"
- x2="330.25"
- y2="132.61122" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1"
- id="linearGradient3832"
- gradientUnits="userSpaceOnUse"
- x1="7.5860305"
- y1="20.245487"
- x2="7.5860305"
- y2="17.187613" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6"
- id="linearGradient3834"
- gradientUnits="userSpaceOnUse"
- x1="337.69534"
- y1="69.747467"
- x2="337.69534"
- y2="55.674088"
- gradientTransform="translate(-290,60)" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996"
- id="linearGradient3844"
- gradientUnits="userSpaceOnUse"
- x1="317.31418"
- y1="228.31705"
- x2="316.5"
- y2="222.30664"
- gradientTransform="translate(-290,60)" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3"
- id="linearGradient3846"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0"
- id="linearGradient3848"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3185-6"
- id="radialGradient3852"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
- cx="3.403806"
- cy="4.2001681"
- fx="3.403806"
- fy="4.2001681"
- r="8" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1"
- id="linearGradient3866"
- gradientUnits="userSpaceOnUse"
- x1="6.7499995"
- y1="24.504543"
- x2="6.7499995"
- y2="16.620459" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4832-3-0-6-1-9">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4834-2-6-2-5-7" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4836-0-3-7-8-4" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4832-3-0-6-17">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4834-2-6-2-0" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4836-0-3-7-6" />
- </linearGradient>
- <linearGradient
- id="linearGradient4840-0-6-1-8">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-5-5" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-7-0-3" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1-8"
- id="linearGradient4028"
- gradientUnits="userSpaceOnUse"
- x1="6.7499995"
- y1="24.504543"
- x2="6.7499995"
- y2="16.620459" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-17"
- id="linearGradient4030"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-265,60)"
- x1="337.69534"
- y1="69.747467"
- x2="337.69534"
- y2="55.674088" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-1-9"
- id="linearGradient4032"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-265,60)"
- x1="337.69534"
- y1="71.508186"
- x2="337.69534"
- y2="55.674088" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1-3-3"
- id="linearGradient3832-7-4"
- gradientUnits="userSpaceOnUse"
- x1="7.5860305"
- y1="20.245487"
- x2="7.5860305"
- y2="17.187613" />
- <linearGradient
- id="linearGradient4840-0-6-1-3-3">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-5-3-3" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-7-0-9-6" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996-4-0"
- id="linearGradient3830-2-9"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-291,63)"
- x1="330.25"
- y1="139.5625"
- x2="330.25"
- y2="132.61122" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4996-4-0">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4998-4-4" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop5000-4-8" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5297-7-4">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop5299-8-9" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop5301-3-4" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4832-3-0-6-8">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4834-2-6-2-3" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4836-0-3-7-2" />
- </linearGradient>
- <linearGradient
- id="linearGradient4840-0-6-1-6">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-5-2" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-7-0-2" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1-6"
- id="linearGradient4662"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-8"
- id="linearGradient4664"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5297-7-4"
- id="linearGradient4666"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-231,60)"
- x1="324"
- y1="190.5"
- x2="323.5"
- y2="183" />
- <linearGradient
- id="linearGradient4840-0-8-3">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-1-0" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-3-2" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4832-3-1-4">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4834-2-2-3" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop4836-0-3-8" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient4996-4-7">
- <stop
- style="stop-color:#fcaf3e;stop-opacity:1;"
- offset="0"
- id="stop4998-6-0" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop5000-4-81" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-8-3"
- id="linearGradient4869"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-1-4"
- id="linearGradient4871"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996-4-7"
- id="linearGradient4873"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-230,60)"
- x1="317.31418"
- y1="228.31705"
- x2="316.5"
- y2="222.30664" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1"
- id="linearGradient5751"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6"
- id="linearGradient5753"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5297-7"
- id="linearGradient5755"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-291,60)"
- x1="324"
- y1="190.5"
- x2="323.5"
- y2="183" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient6433"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient6433-0"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient6427-7">
- <stop
- style="stop-color:#d3d7cf;stop-opacity:1"
- offset="0"
- id="stop6429-5" />
- <stop
- style="stop-color:#555753;stop-opacity:1"
- offset="1"
- id="stop6431-3" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient6584"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient6433-7"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient6427-7-6">
- <stop
- style="stop-color:#d3d7cf;stop-opacity:1"
- offset="0"
- id="stop6429-5-3" />
- <stop
- style="stop-color:#555753;stop-opacity:1"
- offset="1"
- id="stop6431-3-1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient6433-7-0"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient6427-7-6-3">
- <stop
- style="stop-color:#d3d7cf;stop-opacity:1"
- offset="0"
- id="stop6429-5-3-40" />
- <stop
- style="stop-color:#555753;stop-opacity:1"
- offset="1"
- id="stop6431-3-1-3" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4141"
- x1="22"
- y1="241"
- x2="22"
- y2="238"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4143"
- x1="13"
- y1="245"
- x2="13"
- y2="242"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4145"
- x1="13"
- y1="249"
- x2="13"
- y2="246"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4147"
- x1="13"
- y1="253"
- x2="13"
- y2="250"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4149"
- x1="22"
- y1="257"
- x2="22"
- y2="254"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4169"
- x1="73"
- y1="257"
- x2="73"
- y2="254"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4171"
- x1="81"
- y1="253"
- x2="81"
- y2="250"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4173"
- x1="81"
- y1="249"
- x2="81"
- y2="246"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4175"
- x1="81"
- y1="245"
- x2="81"
- y2="242"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4177"
- x1="73"
- y1="241"
- x2="73"
- y2="238"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient4179"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4187"
- x1="17"
- y1="282"
- x2="17"
- y2="279"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4189"
- x1="13"
- y1="286"
- x2="13"
- y2="283"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4191"
- x1="13"
- y1="290"
- x2="13"
- y2="287"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4193"
- x1="17"
- y1="294"
- x2="17"
- y2="291"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4201"
- x1="73"
- y1="282"
- x2="73"
- y2="279"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4203"
- x1="80"
- y1="286"
- x2="80"
- y2="283"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4205"
- x1="80"
- y1="290"
- x2="80"
- y2="287"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4207"
- x1="73"
- y1="294"
- x2="73"
- y2="291"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient4209"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient4211"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient4213"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient4215"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4294"
- x1="73"
- y1="216"
- x2="73"
- y2="212"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4296"
- x1="85"
- y1="210"
- x2="85"
- y2="206"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4298"
- x1="85"
- y1="204"
- x2="85"
- y2="200"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4300"
- x1="85"
- y1="198"
- x2="85"
- y2="194"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4302"
- x1="73"
- y1="192"
- x2="73"
- y2="188"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4304"
- x1="25"
- y1="192"
- x2="25"
- y2="188"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4306"
- x1="13"
- y1="198"
- x2="13"
- y2="194"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4308"
- x1="13"
- y1="204"
- x2="13"
- y2="200"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4310"
- x1="13"
- y1="210"
- x2="13"
- y2="206"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4312"
- x1="25"
- y1="216"
- x2="25"
- y2="212"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4320"
- x1="27"
- y1="117"
- x2="27"
- y2="113"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4322"
- x1="8"
- y1="124"
- x2="8"
- y2="120"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4324"
- x1="8"
- y1="131"
- x2="8"
- y2="127"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4326"
- x1="8"
- y1="138"
- x2="8"
- y2="134"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4328"
- x1="27"
- y1="152"
- x2="27"
- y2="148"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4330"
- x1="27"
- y1="145"
- x2="27"
- y2="141"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4338"
- x1="68"
- y1="152"
- x2="68"
- y2="148"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4340"
- x1="68"
- y1="145"
- x2="68"
- y2="141"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4342"
- x1="82"
- y1="138"
- x2="82"
- y2="134"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4344"
- x1="82"
- y1="131"
- x2="82"
- y2="127"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4346"
- x1="82"
- y1="124"
- x2="82"
- y2="120"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient4348"
- x1="68"
- y1="117"
- x2="68"
- y2="113"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient4386"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient4660"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- id="linearGradient4388-8-1"
- inkscape:collect="always">
- <stop
- id="stop4390-1-7"
- offset="0"
- style="stop-color:#d3d7cf;stop-opacity:1" />
- <stop
- id="stop4392-6-1"
- offset="1"
- style="stop-color:#2e3436;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient5033"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient5151"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient5289"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5291"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="192"
- x2="73"
- y2="188"
- gradientTransform="translate(-1,0)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient5293"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5295"
- gradientUnits="userSpaceOnUse"
- x1="85"
- y1="198"
- x2="85"
- y2="194"
- gradientTransform="translate(-1,0)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient5297"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5299"
- gradientUnits="userSpaceOnUse"
- x1="85"
- y1="204"
- x2="85"
- y2="200"
- gradientTransform="translate(-1,0)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient5301"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5303"
- gradientUnits="userSpaceOnUse"
- x1="85"
- y1="210"
- x2="85"
- y2="206"
- gradientTransform="translate(-1,0)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient5309"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient5311"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5313"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="117"
- x2="68"
- y2="113" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient5315"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5317"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="124"
- x2="82"
- y2="120" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient5319"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5321"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="131"
- x2="82"
- y2="127" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient5323"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5325"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="138"
- x2="82"
- y2="134" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient5327"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5329"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="145"
- x2="68"
- y2="141" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient5335"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient5337"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5339"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="282"
- x2="73"
- y2="279"
- gradientTransform="translate(0,1)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient5341"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5343"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="286"
- x2="80"
- y2="283"
- gradientTransform="translate(0,1)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient5345"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5347"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="290"
- x2="80"
- y2="287"
- gradientTransform="translate(0,1)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient5353"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient5355"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5357"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="245"
- x2="81"
- y2="242" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient5359"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5361"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="249"
- x2="81"
- y2="246" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient5363"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5365"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="253"
- x2="81"
- y2="250" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient5367"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient5369"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="241"
- x2="73"
- y2="238" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient5375"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- id="linearGradient4840-0-6-1-61">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-5-7" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-7-0-0" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685"
- id="linearGradient5691"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- id="linearGradient4840-0-8">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-4" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-4" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5685-0">
- <stop
- style="stop-color:#bb5400;stop-opacity:1"
- offset="0"
- id="stop5687-7" />
- <stop
- style="stop-color:#f57900;stop-opacity:1"
- offset="1"
- id="stop5689-6" />
- </linearGradient>
- <linearGradient
- y2="150.31085"
- x2="151.5"
- y1="152.68915"
- x1="151.5"
- gradientUnits="userSpaceOnUse"
- id="linearGradient6123"
- xlink:href="#linearGradient5685-0"
- inkscape:collect="always" />
- <linearGradient
- id="linearGradient4840-0-5-1">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-8" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-6-7" />
- </linearGradient>
- <linearGradient
- id="linearGradient4840-0-5-1-7">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-8-3" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-6-7-0" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient6909"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient6911"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient6913"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient6919"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685"
- id="linearGradient7213"
- gradientUnits="userSpaceOnUse"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient7263"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7265"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="73"
- y1="192"
- x2="73"
- y2="188" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient7267"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7269"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="85"
- y1="198"
- x2="85"
- y2="194" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient7271"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7273"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="85"
- y1="204"
- x2="85"
- y2="200" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient7275"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7277"
- gradientUnits="userSpaceOnUse"
- x1="85"
- y1="210"
- x2="85"
- y2="206"
- gradientTransform="translate(-1,0)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient7279"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient7285"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7287"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="124"
- x2="82"
- y2="120" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient7301"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient7345"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7347"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="245"
- x2="81"
- y2="242" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient7349"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7351"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="249"
- x2="81"
- y2="246" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient7353"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7355"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="253"
- x2="81"
- y2="250" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient7357"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7359"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="241"
- x2="73"
- y2="238" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient7361"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient7388"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7390"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="117"
- x2="68"
- y2="113" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient7392"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7394"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="145"
- x2="68"
- y2="141" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient7396"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7398"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="131"
- x2="82"
- y2="127" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient7400"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7402"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="138"
- x2="82"
- y2="134" />
- <linearGradient
- id="linearGradient4840-0-6-1-61-5">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-5-7-9" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-7-0-0-6" />
- </linearGradient>
- <linearGradient
- id="linearGradient4840-0-8-8">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-4-3" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-4-3" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685-0-1"
- id="linearGradient7249-5"
- gradientUnits="userSpaceOnUse"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient5685-0-1">
- <stop
- style="stop-color:#bb5400;stop-opacity:1"
- offset="0"
- id="stop5687-7-1" />
- <stop
- style="stop-color:#f57900;stop-opacity:1"
- offset="1"
- id="stop5689-6-4" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685-0"
- id="linearGradient7740"
- gradientUnits="userSpaceOnUse"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085" />
- <linearGradient
- id="linearGradient4840-0-5-1-6">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-8-9" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-6-7-1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient7910"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7912"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="290"
- x2="80"
- y2="287"
- gradientTransform="translate(120,2)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient7915"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7917"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="286"
- x2="80"
- y2="283"
- gradientTransform="translate(120,2)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient7920"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient7922"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="282"
- x2="73"
- y2="279"
- gradientTransform="translate(120,2)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient7938"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient7942"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient7950"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3-7"
- id="radialGradient7950-4"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient6427-7-6-3-7">
- <stop
- style="stop-color:#d3d7cf;stop-opacity:1"
- offset="0"
- id="stop6429-5-3-40-8" />
- <stop
- style="stop-color:#555753;stop-opacity:1"
- offset="1"
- id="stop6431-3-1-3-8" />
- </linearGradient>
- <linearGradient
- id="linearGradient4840-0-5-1-7-9">
- <stop
- style="stop-color:#a64a00;stop-opacity:1;"
- offset="0"
- id="stop4842-0-8-8-3-2" />
- <stop
- style="stop-color:#ce5c00;stop-opacity:1"
- offset="1"
- id="stop4844-4-6-7-0-9" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3-7"
- id="radialGradient7942-2"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- r="11"
- fy="194.34859"
- fx="24.391739"
- cy="194.34859"
- cx="24.391739"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient8025"
- xlink:href="#linearGradient6427-7-6-3-7"
- inkscape:collect="always" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8436"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8438"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="73"
- y1="192"
- x2="73"
- y2="188" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8440"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8442"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="85"
- y1="198"
- x2="85"
- y2="194" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8444"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8446"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="85"
- y1="204"
- x2="85"
- y2="200" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8448"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8450"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="85"
- y1="210"
- x2="85"
- y2="206" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8452"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8454"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8456"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="117"
- x2="68"
- y2="113" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8458"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8460"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="124"
- x2="82"
- y2="120" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8462"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8464"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="131"
- x2="82"
- y2="127" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8466"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8468"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="138"
- x2="82"
- y2="134" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8470"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8472"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="145"
- x2="68"
- y2="141" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8474"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8512"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8516"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8518"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="245"
- x2="81"
- y2="242" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8520"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8522"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="249"
- x2="81"
- y2="246" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8524"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8526"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="253"
- x2="81"
- y2="250" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8528"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8530"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="241"
- x2="73"
- y2="238" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8532"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685-0"
- id="linearGradient8572"
- gradientUnits="userSpaceOnUse"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8639"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8641"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="290"
- x2="80"
- y2="287"
- gradientTransform="translate(180,2)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8644"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8646"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="286"
- x2="80"
- y2="283"
- gradientTransform="translate(180,2)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8649"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient8651"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="282"
- x2="73"
- y2="279"
- gradientTransform="translate(180,2)" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8677"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8681"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8685"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685"
- id="linearGradient8747"
- gradientUnits="userSpaceOnUse"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient9121"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9123"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1.0000003,0)"
- x1="73"
- y1="192"
- x2="73"
- y2="188" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient9125"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9127"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1,0)"
- x1="85"
- y1="198"
- x2="85"
- y2="194" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient9129"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9131"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1.0000001,0)"
- x1="85"
- y1="204"
- x2="85"
- y2="200" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient9133"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9135"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-1.0000006,0)"
- x1="85"
- y1="210"
- x2="85"
- y2="206" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient9139"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9141"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="117"
- x2="68"
- y2="113" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient9143"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9145"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="124"
- x2="82"
- y2="120" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient9147"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9149"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="131"
- x2="82"
- y2="127" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient9151"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9153"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="138"
- x2="82"
- y2="134" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient9155"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9157"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="145"
- x2="68"
- y2="141" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient9177"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9179"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(240,2)"
- x1="80"
- y1="290"
- x2="80"
- y2="287" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient9181"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9183"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(240,2)"
- x1="80"
- y1="286"
- x2="80"
- y2="283" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient9185"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9187"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(240,2)"
- x1="73"
- y1="282"
- x2="73"
- y2="279" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient9189"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9191"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="245"
- x2="81"
- y2="242" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient9193"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9195"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="249"
- x2="81"
- y2="246" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient9197"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9199"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="253"
- x2="81"
- y2="250" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient9201"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient9203"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="241"
- x2="73"
- y2="238" />
- <radialGradient
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient5722-2"
- inkscape:collect="always"
- r="22.22967"
- xlink:href="#linearGradient4176-9" />
- <linearGradient
- id="linearGradient4176-9"
- inkscape:collect="always">
- <stop
- id="stop4178-9"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop4180-0"
- offset="1"
- style="stop-color:#000000;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="translate(-3,-3)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient5726-1"
- inkscape:collect="always"
- x1="28.216566"
- x2="20.90625"
- xlink:href="#linearGradient3421-0"
- y1="38.63026"
- y2="21.48896" />
- <linearGradient
- id="linearGradient3421-0">
- <stop
- id="stop3423-3"
- offset="0"
- style="stop-color:#babdb6;stop-opacity:1" />
- <stop
- id="stop3425-4"
- offset="1"
- style="stop-color:#babdb6;stop-opacity:0" />
- </linearGradient>
- <radialGradient
- cx="-42.750153"
- cy="5.3468766"
- fx="-42.750153"
- fy="5.3468766"
- gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient5728-0"
- inkscape:collect="always"
- r="15.500008"
- xlink:href="#linearGradient4229-3" />
- <linearGradient
- id="linearGradient4229-3"
- inkscape:collect="always">
- <stop
- id="stop4231-9"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4233-1"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="translate(60,0)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient5730-9"
- inkscape:collect="always"
- x1="-18.296389"
- x2="-21.478369"
- xlink:href="#linearGradient4248-6"
- y1="36.421127"
- y2="35.581436" />
- <linearGradient
- id="linearGradient4248-6"
- inkscape:collect="always">
- <stop
- id="stop4250-9"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4252-3"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="-49.9375"
- cy="18.890318"
- fx="-49.9375"
- fy="18.890318"
- gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient5732-3"
- inkscape:collect="always"
- r="18.5"
- xlink:href="#linearGradient4229-3" />
- <radialGradient
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient4137-0"
- inkscape:collect="always"
- r="22.22967"
- xlink:href="#linearGradient4176-9" />
- <linearGradient
- gradientTransform="translate(-3,-3)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient4141-7-6"
- inkscape:collect="always"
- x1="28.216566"
- x2="20.90625"
- xlink:href="#linearGradient3421-0"
- y1="38.63026"
- y2="21.48896" />
- <radialGradient
- cx="-42.750153"
- cy="5.3468766"
- fx="-42.750153"
- fy="5.3468766"
- gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient4143-6"
- inkscape:collect="always"
- r="15.500008"
- xlink:href="#linearGradient4229-3" />
- <linearGradient
- gradientTransform="translate(60,0)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient4145-6-0"
- inkscape:collect="always"
- x1="-18.296389"
- x2="-21.478369"
- xlink:href="#linearGradient4248-6"
- y1="36.421127"
- y2="35.581436" />
- <radialGradient
- cx="-49.9375"
- cy="18.890318"
- fx="-49.9375"
- fy="18.890318"
- gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient4147-0"
- inkscape:collect="always"
- r="18.5"
- xlink:href="#linearGradient4229-3" />
- <radialGradient
- cx="11.03125"
- cy="17.125"
- fx="11.03125"
- fy="17.125"
- gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient3793-6"
- inkscape:collect="always"
- r="9.84375"
- xlink:href="#linearGradient3787-2" />
- <linearGradient
- id="linearGradient3787-2"
- inkscape:collect="always">
- <stop
- id="stop3789-6"
- offset="0"
- style="stop-color:#000000;stop-opacity:1" />
- <stop
- id="stop3791-7"
- offset="1"
- style="stop-color:#000000;stop-opacity:0" />
- </linearGradient>
- <linearGradient
- gradientTransform="matrix(1,0,0,-1,33,21.001565)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient3782-7"
- inkscape:collect="always"
- x1="10.386932"
- x2="14.555588"
- xlink:href="#linearGradient4256-2"
- y1="15.424131"
- y2="8.153533" />
- <linearGradient
- id="linearGradient4256-2"
- inkscape:collect="always">
- <stop
- id="stop4258-8"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4260-2"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient4237-9"
- inkscape:collect="always"
- x1="0.5915947"
- x2="16.993088"
- xlink:href="#linearGradient4256-2"
- y1="11.553171"
- y2="0.059782967" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="linearGradient3638-9"
- inkscape:collect="always"
- x1="7.2478447"
- x2="12.993087"
- xlink:href="#linearGradient4256-2"
- y1="6.3656702"
- y2="16.751301" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="linearGradient3082"
- inkscape:collect="always"
- x1="99.396446"
- x2="99.881432"
- xlink:href="#linearGradient3512"
- y1="-44.57159"
- y2="-36.90625" />
- <linearGradient
- id="linearGradient3512"
- inkscape:collect="always">
- <stop
- id="stop3514"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop3516"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="11.03125"
- cy="17.125"
- fx="11.03125"
- fy="17.125"
- gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient2753"
- inkscape:collect="always"
- r="9.84375"
- xlink:href="#linearGradient3787" />
- <linearGradient
- id="linearGradient3787"
- inkscape:collect="always">
- <stop
- id="stop3789"
- offset="0"
- style="stop-color:#000000;stop-opacity:1" />
- <stop
- id="stop3791"
- offset="1"
- style="stop-color:#000000;stop-opacity:0" />
- </linearGradient>
- <linearGradient
- id="linearGradient3185"
- inkscape:collect="always">
- <stop
- id="stop3187"
- offset="0"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- id="stop3189"
- offset="1"
- style="stop-color:#555753;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- gradientTransform="translate(30,-30)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient2759"
- inkscape:collect="always"
- x1="100.5"
- x2="100.375"
- xlink:href="#linearGradient3572"
- y1="5.125"
- y2="15.25" />
- <linearGradient
- id="linearGradient3572"
- inkscape:collect="always">
- <stop
- id="stop3574"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop3576"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="translate(30,-30)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient2761"
- inkscape:collect="always"
- x1="100.875"
- x2="106.4375"
- xlink:href="#linearGradient3580"
- y1="15.6875"
- y2="11.5" />
- <linearGradient
- id="linearGradient3580"
- inkscape:collect="always">
- <stop
- id="stop3582"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop3584"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient7137"
- inkscape:collect="always"
- r="22.22967"
- xlink:href="#linearGradient4176" />
- <linearGradient
- id="linearGradient4176"
- inkscape:collect="always">
- <stop
- id="stop4178"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop4180"
- offset="1"
- style="stop-color:#000000;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="137.56113"
- cy="29.419594"
- fx="137.56113"
- fy="29.419594"
- gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient7141"
- inkscape:collect="always"
- r="14.90584"
- xlink:href="#linearGradient4653" />
- <linearGradient
- id="linearGradient4653"
- inkscape:collect="always">
- <stop
- id="stop4655"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:0" />
- <stop
- id="stop4657"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient7143"
- inkscape:collect="always"
- x1="145.31044"
- x2="142.30525"
- xlink:href="#linearGradient4643"
- y1="33.41592"
- y2="31.533039" />
- <linearGradient
- id="linearGradient4643"
- inkscape:collect="always">
- <stop
- id="stop4645"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4647"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="linearGradient7145"
- inkscape:collect="always"
- x1="133.16072"
- x2="129.729"
- xlink:href="#linearGradient2512"
- y1="31.107067"
- y2="11.313666" />
- <linearGradient
- id="linearGradient2512">
- <stop
- id="stop2514"
- offset="0"
- style="stop-color:#babdb6;stop-opacity:1" />
- <stop
- id="stop2516"
- offset="1"
- style="stop-color:#555753;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- cx="143.15497"
- cy="8.3315935"
- fx="143.15497"
- fy="8.3315935"
- gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient7147"
- inkscape:collect="always"
- r="3.3585801"
- xlink:href="#linearGradient4601" />
- <linearGradient
- id="linearGradient4601"
- inkscape:collect="always">
- <stop
- id="stop4603"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4605"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient7149"
- inkscape:collect="always"
- x1="128.99229"
- x2="134.42435"
- xlink:href="#linearGradient4601"
- y1="9.5507469"
- y2="17.149347" />
- <radialGradient
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient6553"
- inkscape:collect="always"
- r="22.22967"
- xlink:href="#linearGradient4176" />
- <radialGradient
- cx="137.56113"
- cy="29.419594"
- fx="137.56113"
- fy="29.419594"
- gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient6557"
- inkscape:collect="always"
- r="14.90584"
- xlink:href="#linearGradient4653" />
- <linearGradient
- gradientTransform="translate(10,0)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient6559"
- inkscape:collect="always"
- x1="145.31044"
- x2="142.30525"
- xlink:href="#linearGradient4643"
- y1="33.41592"
- y2="31.533039" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="linearGradient6561"
- inkscape:collect="always"
- x1="133.16072"
- x2="129.729"
- xlink:href="#linearGradient2512"
- y1="31.107067"
- y2="11.313666" />
- <radialGradient
- cx="143.15497"
- cy="8.3315935"
- fx="143.15497"
- fy="8.3315935"
- gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient6563"
- inkscape:collect="always"
- r="3.3585801"
- xlink:href="#linearGradient4601" />
- <linearGradient
- gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient6565"
- inkscape:collect="always"
- x1="128.99229"
- x2="134.42435"
- xlink:href="#linearGradient4601"
- y1="9.5507469"
- y2="17.149347" />
- <linearGradient
- id="linearGradient4256"
- inkscape:collect="always">
- <stop
- id="stop4258"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4260"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- id="linearGradient3787-6"
- inkscape:collect="always">
- <stop
- id="stop3789-60"
- offset="0"
- style="stop-color:#000000;stop-opacity:1" />
- <stop
- id="stop3791-2"
- offset="1"
- style="stop-color:#000000;stop-opacity:0" />
- </linearGradient>
- <linearGradient
- id="linearGradient4176-5"
- inkscape:collect="always">
- <stop
- id="stop4178-8"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop4180-9"
- offset="1"
- style="stop-color:#000000;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- id="linearGradient4285"
- inkscape:collect="always">
- <stop
- id="stop4287"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4289"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- id="linearGradient4293"
- inkscape:collect="always">
- <stop
- id="stop4295"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4297"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- id="linearGradient4301"
- inkscape:collect="always">
- <stop
- id="stop4303"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4305"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- id="linearGradient4309"
- inkscape:collect="always">
- <stop
- id="stop4311"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4313"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- id="linearGradient4437"
- inkscape:collect="always">
- <stop
- id="stop4439"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop4441"
- offset="1"
- style="stop-color:#000000;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- id="linearGradient4348-3"
- inkscape:collect="always">
- <stop
- id="stop4350"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4352"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="translate(-59.984835,-4.0298118)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient3648"
- inkscape:collect="always"
- x1="7.2478447"
- x2="12.993087"
- xlink:href="#linearGradient4256-1"
- y1="6.3656702"
- y2="16.751301" />
- <linearGradient
- id="linearGradient4256-1"
- inkscape:collect="always">
- <stop
- id="stop4258-7"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4260-22"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="translate(-59.984835,-4.0298118)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient3650"
- inkscape:collect="always"
- x1="8.2643108"
- x2="4.7950678"
- xlink:href="#linearGradient4256-1"
- y1="14.541593"
- y2="10.431535" />
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="linearGradient3809"
- inkscape:collect="always"
- x1="7.2478447"
- x2="12.993087"
- xlink:href="#linearGradient4256-1"
- y1="6.3656702"
- y2="16.751301" />
- <radialGradient
- cx="11.03125"
- cy="17.125"
- fx="11.03125"
- fy="17.125"
- gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient3817"
- inkscape:collect="always"
- r="9.84375"
- xlink:href="#linearGradient3787-9" />
- <linearGradient
- id="linearGradient3787-9"
- inkscape:collect="always">
- <stop
- id="stop3789-2"
- offset="0"
- style="stop-color:#000000;stop-opacity:1" />
- <stop
- id="stop3791-8"
- offset="1"
- style="stop-color:#000000;stop-opacity:0" />
- </linearGradient>
- <radialGradient
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient4496"
- inkscape:collect="always"
- r="22.22967"
- xlink:href="#linearGradient4176-1" />
- <linearGradient
- id="linearGradient4176-1"
- inkscape:collect="always">
- <stop
- id="stop4178-2"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop4180-4"
- offset="1"
- style="stop-color:#000000;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="21.40613"
- cy="8.5665998"
- fx="21.40613"
- fy="8.5665998"
- gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient4488"
- inkscape:collect="always"
- r="11"
- xlink:href="#linearGradient4285-2" />
- <linearGradient
- id="linearGradient4285-2"
- inkscape:collect="always">
- <stop
- id="stop4287-3"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4289-7"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="13.499985"
- cy="22.762897"
- fx="13.499985"
- fy="22.762897"
- gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient4490"
- inkscape:collect="always"
- r="10.000016"
- xlink:href="#linearGradient4293-2" />
- <linearGradient
- id="linearGradient4293-2"
- inkscape:collect="always">
- <stop
- id="stop4295-5"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4297-3"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient4492"
- inkscape:collect="always"
- x1="22.75"
- x2="18.625"
- xlink:href="#linearGradient4301-7"
- y1="36.125"
- y2="19" />
- <linearGradient
- id="linearGradient4301-7"
- inkscape:collect="always">
- <stop
- id="stop4303-6"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4305-8"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient4494"
- inkscape:collect="always"
- x1="35.875"
- x2="32.4375"
- xlink:href="#linearGradient4309-1"
- y1="36.5625"
- y2="36.25" />
- <linearGradient
- id="linearGradient4309-1"
- inkscape:collect="always">
- <stop
- id="stop4311-3"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4313-6"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient5706"
- inkscape:collect="always"
- r="22.22967"
- xlink:href="#linearGradient4176-1" />
- <linearGradient
- gradientTransform="translate(1,0)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient5710"
- inkscape:collect="always"
- x1="22.75"
- x2="18.625"
- xlink:href="#linearGradient4301-7"
- y1="36.125"
- y2="19" />
- <radialGradient
- cx="21.40613"
- cy="8.5665998"
- fx="21.40613"
- fy="8.5665998"
- gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient5712"
- inkscape:collect="always"
- r="11"
- xlink:href="#linearGradient4285-2" />
- <radialGradient
- cx="13.499985"
- cy="22.762897"
- fx="13.499985"
- fy="22.762897"
- gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient5714"
- inkscape:collect="always"
- r="10.000016"
- xlink:href="#linearGradient4293-2" />
- <linearGradient
- gradientTransform="translate(1,0)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient5716"
- inkscape:collect="always"
- x1="35.875"
- x2="32.4375"
- xlink:href="#linearGradient4309-1"
- y1="36.5625"
- y2="36.25" />
- <linearGradient
- gradientTransform="translate(60,47)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient5720"
- inkscape:collect="always"
- x1="20.155684"
- x2="20.155684"
- xlink:href="#linearGradient4348-8"
- y1="43.910683"
- y2="46" />
- <linearGradient
- id="linearGradient4348-8"
- inkscape:collect="always">
- <stop
- id="stop4350-5"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop4352-0"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3185"
- id="radialGradient6084"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
- cx="-50.993778"
- cy="13.921414"
- fx="-50.993778"
- fy="13.921414"
- r="7.9160094" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4256"
- id="linearGradient6086"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-59.984835,-4.0298118)"
- x1="7.2478447"
- y1="6.3656702"
- x2="12.993087"
- y2="16.751301" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4256"
- id="linearGradient6088"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-59.984835,-4.0298118)"
- x1="8.2643108"
- y1="14.541593"
- x2="4.7950678"
- y2="10.431535" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3787-6"
- id="radialGradient6092"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
- cx="11.03125"
- cy="17.125"
- fx="11.03125"
- fy="17.125"
- r="9.84375" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4256"
- id="linearGradient6094"
- gradientUnits="userSpaceOnUse"
- x1="7.2478447"
- y1="6.3656702"
- x2="12.993087"
- y2="16.751301" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4176-5"
- id="radialGradient6098"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- r="22.22967" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4285"
- id="radialGradient6104"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
- cx="21.40613"
- cy="8.5665998"
- fx="21.40613"
- fy="8.5665998"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4293"
- id="radialGradient6106"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
- cx="13.499985"
- cy="22.762897"
- fx="13.499985"
- fy="22.762897"
- r="10.000016" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4301"
- id="linearGradient6108"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
- x1="22.75"
- y1="36.125"
- x2="18.625"
- y2="19" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4309"
- id="linearGradient6110"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
- x1="35.875"
- y1="36.5625"
- x2="32.4375"
- y2="36.25" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4176-5"
- id="radialGradient6114"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
- cx="24.174213"
- cy="38.763416"
- fx="24.174213"
- fy="38.763416"
- r="22.22967" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4301"
- id="linearGradient6118"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(1,0)"
- x1="22.75"
- y1="36.125"
- x2="18.625"
- y2="19" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4285"
- id="radialGradient6120"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
- cx="21.40613"
- cy="8.5665998"
- fx="21.40613"
- fy="8.5665998"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4293"
- id="radialGradient6122"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
- cx="13.499985"
- cy="22.762897"
- fx="13.499985"
- fy="22.762897"
- r="10.000016" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4309"
- id="linearGradient6124"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(1,0)"
- x1="35.875"
- y1="36.5625"
- x2="32.4375"
- y2="36.25" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4437"
- id="linearGradient6126"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(190,0)"
- x1="74.28125"
- y1="28.776411"
- x2="74.28125"
- y2="31.960411" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4348-3"
- id="linearGradient6130"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(60,46)"
- x1="20.155684"
- y1="43.910683"
- x2="20.155684"
- y2="46" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977"
- id="radialGradient9139-7"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="39.554386"
- cy="137.48907"
- fx="39.554386"
- fy="137.48907"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113"
- id="linearGradient9141-3"
- gradientUnits="userSpaceOnUse"
- x1="18"
- y1="41.016068"
- x2="18"
- y2="5.9995542" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-7"
- id="radialGradient9139-7-6"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="39.554386"
- cy="137.48907"
- fx="39.554386"
- fy="137.48907"
- r="22" />
- <linearGradient
- id="linearGradient6977-7">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-8" />
- <stop
- id="stop6981-9"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-7"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-4" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-7"
- id="radialGradient7111"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="39.554386"
- cy="103.43681"
- fx="39.554386"
- fy="103.43681"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7157"
- id="linearGradient9141-3-2"
- gradientUnits="userSpaceOnUse"
- x1="145.3887"
- y1="39.999996"
- x2="145.3887"
- y2="7.9807839" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-0"
- id="linearGradient9141-3-3"
- gradientUnits="userSpaceOnUse"
- x1="18"
- y1="41.004028"
- x2="18"
- y2="5.9995542" />
- <linearGradient
- id="linearGradient7113-0"
- inkscape:collect="always">
- <stop
- id="stop7115-5"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-7"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-5"
- id="radialGradient9139-7-0"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="39.554386"
- cy="137.48907"
- fx="39.554386"
- fy="137.48907"
- r="22" />
- <linearGradient
- id="linearGradient6977-5">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-0" />
- <stop
- id="stop6981-3"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-4"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-7" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-14"
- id="radialGradient9139-7-3"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="71.642067"
- cy="119.85913"
- fx="71.642067"
- fy="119.85913"
- r="22" />
- <linearGradient
- id="linearGradient6977-14">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-86" />
- <stop
- id="stop6981-39"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-2"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-3" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-6"
- id="linearGradient9141-3-34"
- gradientUnits="userSpaceOnUse"
- x1="84.5"
- y1="93"
- x2="84.5"
- y2="88" />
- <linearGradient
- id="linearGradient7113-6"
- inkscape:collect="always">
- <stop
- id="stop7115-7"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-74"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-0-2"
- id="linearGradient9141-3-3-4"
- gradientUnits="userSpaceOnUse"
- x1="18"
- y1="41.001797"
- x2="18"
- y2="5.9995542" />
- <linearGradient
- id="linearGradient7113-0-2"
- inkscape:collect="always">
- <stop
- id="stop7115-5-2"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-7-1"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-14-6"
- id="radialGradient9139-7-3-1"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="72.146278"
- cy="120.14571"
- fx="72.146278"
- fy="120.14571"
- r="22" />
- <linearGradient
- id="linearGradient6977-14-6">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-86-8" />
- <stop
- id="stop6981-39-2"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-2-2"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-3-4" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-6-2"
- id="linearGradient9141-3-34-1"
- gradientUnits="userSpaceOnUse"
- x1="84.5"
- y1="94"
- x2="84.5"
- y2="89" />
- <linearGradient
- id="linearGradient7113-6-2"
- inkscape:collect="always">
- <stop
- id="stop7115-7-4"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-74-8"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-5-8"
- id="radialGradient9139-7-0-3"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="39.554386"
- cy="137.48907"
- fx="39.554386"
- fy="137.48907"
- r="22" />
- <linearGradient
- id="linearGradient6977-5-8">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-0-9" />
- <stop
- id="stop6981-3-1"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-4-1"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-7-2" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7157-0"
- id="linearGradient9141-3-2-4"
- gradientUnits="userSpaceOnUse"
- x1="3.9729283"
- y1="27.841093"
- x2="3.9729283"
- y2="5.1557527" />
- <linearGradient
- id="linearGradient7157-0"
- inkscape:collect="always">
- <stop
- id="stop7159-7"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7161-6"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-7-3"
- id="radialGradient7111-4"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
- cx="39.814342"
- cy="137.44762"
- fx="39.814342"
- fy="137.44762"
- r="22" />
- <linearGradient
- id="linearGradient6977-7-3">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-8-8" />
- <stop
- id="stop6981-9-5"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-7-8"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-4-3" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-9"
- id="radialGradient9139-7-06"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="39.554386"
- cy="137.48907"
- fx="39.554386"
- fy="137.48907"
- r="22" />
- <linearGradient
- id="linearGradient6977-9">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-3" />
- <stop
- id="stop6981-33"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-5"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-2" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-9"
- id="linearGradient9141-3-7"
- gradientUnits="userSpaceOnUse"
- x1="18"
- y1="41.016068"
- x2="18"
- y2="5.9995542" />
- <linearGradient
- id="linearGradient7113-9"
- inkscape:collect="always">
- <stop
- id="stop7115-71"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-8"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7157-0-7"
- id="linearGradient9141-3-2-4-7"
- gradientUnits="userSpaceOnUse"
- x1="65.988487"
- y1="25.515911"
- x2="65.988487"
- y2="1.9788401" />
- <linearGradient
- id="linearGradient7157-0-7"
- inkscape:collect="always">
- <stop
- id="stop7159-7-5"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7161-6-0"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-7-3-3"
- id="radialGradient7111-4-7"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
- cx="38.709511"
- cy="112.64323"
- fx="38.709511"
- fy="112.64323"
- r="22" />
- <linearGradient
- id="linearGradient6977-7-3-3">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-8-8-6" />
- <stop
- id="stop6981-9-5-0"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-7-8-8"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-4-3-9" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-14-1"
- id="radialGradient9139-7-3-7"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="45.43713"
- cy="120.16309"
- fx="45.43713"
- fy="120.16309"
- r="22" />
- <linearGradient
- id="linearGradient6977-14-1">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-86-5" />
- <stop
- id="stop6981-39-27"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-2-7"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-3-7" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-6-1"
- id="linearGradient9141-3-34-7"
- gradientUnits="userSpaceOnUse"
- x1="62"
- y1="30"
- x2="62"
- y2="26" />
- <linearGradient
- id="linearGradient7113-6-1"
- inkscape:collect="always">
- <stop
- id="stop7115-7-2"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-74-4"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7157-0-7-5"
- id="linearGradient9141-3-2-4-7-9"
- gradientUnits="userSpaceOnUse"
- x1="65.988487"
- y1="25.515911"
- x2="65.988487"
- y2="1.9788401" />
- <linearGradient
- id="linearGradient7157-0-7-5"
- inkscape:collect="always">
- <stop
- id="stop7159-7-5-9"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7161-6-0-7"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-7-3-3-3"
- id="radialGradient7111-4-7-8"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
- cx="38.709511"
- cy="112.64323"
- fx="38.709511"
- fy="112.64323"
- r="22" />
- <linearGradient
- id="linearGradient6977-7-3-3-3">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-8-8-6-1" />
- <stop
- id="stop6981-9-5-0-3"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-7-8-8-0"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-4-3-9-3" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-14-1-5"
- id="radialGradient9139-7-3-7-1"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
- cx="45.43713"
- cy="120.16309"
- fx="45.43713"
- fy="120.16309"
- r="22" />
- <linearGradient
- id="linearGradient6977-14-1-5">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-86-5-9" />
- <stop
- id="stop6981-39-27-5"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-2-7-6"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-3-7-2" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-6-1-0"
- id="linearGradient9141-3-34-7-9"
- gradientUnits="userSpaceOnUse"
- x1="62"
- y1="30"
- x2="62"
- y2="26" />
- <linearGradient
- id="linearGradient7113-6-1-0"
- inkscape:collect="always">
- <stop
- id="stop7115-7-2-4"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-74-4-8"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28"
- id="radialGradient9139-7-61"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
- cx="37.839142"
- cy="126.90098"
- fx="37.839142"
- fy="126.90098"
- r="22" />
- <linearGradient
- id="linearGradient6977-28">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4" />
- <stop
- id="stop6981-1"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62"
- id="linearGradient9141-3-39"
- gradientUnits="userSpaceOnUse"
- x1="39"
- y1="14.000207"
- x2="39"
- y2="-1.0002024" />
- <linearGradient
- id="linearGradient7113-62"
- inkscape:collect="always">
- <stop
- id="stop7115-8"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-5"
- id="radialGradient9139-7-61-0"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
- cx="39.344345"
- cy="192.03035"
- fx="39.344345"
- fy="192.03035"
- r="22" />
- <linearGradient
- id="linearGradient6977-28-5">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-4" />
- <stop
- id="stop6981-1-4"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-8"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-6" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-5"
- id="linearGradient9141-3-39-9"
- gradientUnits="userSpaceOnUse"
- x1="-56.866325"
- y1="12.007"
- x2="-56.826302"
- y2="0.12165857" />
- <linearGradient
- id="linearGradient7113-62-5"
- inkscape:collect="always">
- <stop
- id="stop7115-8-4"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-2"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-7"
- id="radialGradient9139-7-61-05"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
- cx="37.839142"
- cy="126.90098"
- fx="37.839142"
- fy="126.90098"
- r="22" />
- <linearGradient
- id="linearGradient6977-28-7">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-8" />
- <stop
- id="stop6981-1-8"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-2"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-5" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-52"
- id="linearGradient9141-3-39-1"
- gradientUnits="userSpaceOnUse"
- x1="39"
- y1="14.000207"
- x2="39"
- y2="-1.0002024" />
- <linearGradient
- id="linearGradient7113-62-52"
- inkscape:collect="always">
- <stop
- id="stop7115-8-2"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-4"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-7"
- id="linearGradient9141-3-39-6"
- gradientUnits="userSpaceOnUse"
- x1="185.01755"
- y1="-18.997253"
- x2="185.01755"
- y2="-22.000326" />
- <linearGradient
- id="linearGradient7113-62-7"
- inkscape:collect="always">
- <stop
- id="stop7115-8-8"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-5"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-7-1"
- id="linearGradient9141-3-39-6-2"
- gradientUnits="userSpaceOnUse"
- x1="76.255684"
- y1="-10"
- x2="76.255684"
- y2="-13.002928" />
- <linearGradient
- id="linearGradient7113-62-7-1"
- inkscape:collect="always">
- <stop
- id="stop7115-8-8-0"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-5-9"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-7-5"
- id="radialGradient9139-7-61-05-1"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
- cx="37.839142"
- cy="126.90098"
- fx="37.839142"
- fy="126.90098"
- r="22" />
- <linearGradient
- id="linearGradient6977-28-7-5">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-8-7" />
- <stop
- id="stop6981-1-8-0"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-2-3"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-5-0" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-52-3"
- id="linearGradient9141-3-39-1-8"
- gradientUnits="userSpaceOnUse"
- x1="39"
- y1="14.000207"
- x2="39"
- y2="-1.0002024" />
- <linearGradient
- id="linearGradient7113-62-52-3"
- inkscape:collect="always">
- <stop
- id="stop7115-8-2-8"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-4-4"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-2"
- id="radialGradient9139-7-61-8"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
- cx="40.68565"
- cy="125.0378"
- fx="40.68565"
- fy="125.0378"
- r="22" />
- <linearGradient
- id="linearGradient6977-28-2">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-5" />
- <stop
- id="stop6981-1-2"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-5"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-9"
- id="linearGradient9141-3-39-5"
- gradientUnits="userSpaceOnUse"
- x1="40"
- y1="13.001565"
- x2="40"
- y2="0.99979788" />
- <linearGradient
- id="linearGradient7113-62-9"
- inkscape:collect="always">
- <stop
- id="stop7115-8-20"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-9"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-2-7"
- id="radialGradient9139-7-61-8-4"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
- cx="38.636917"
- cy="223.66896"
- fx="38.636917"
- fy="223.66896"
- r="22" />
- <linearGradient
- id="linearGradient6977-28-2-7">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-5-1" />
- <stop
- id="stop6981-1-2-7"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-5-4"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-1-7" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-9-0"
- id="linearGradient9141-3-39-5-3"
- gradientUnits="userSpaceOnUse"
- x1="-65.877312"
- y1="11.172731"
- x2="-66.05246"
- y2="0.24979722" />
- <linearGradient
- id="linearGradient7113-62-9-0"
- inkscape:collect="always">
- <stop
- id="stop7115-8-20-9"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-9-4"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-2-3"
- id="radialGradient9139-7-61-8-44"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
- cx="39.088383"
- cy="219.06908"
- fx="39.088383"
- fy="219.06908"
- r="22" />
- <linearGradient
- id="linearGradient6977-28-2-3">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-5-5" />
- <stop
- id="stop6981-1-2-8"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-5-43"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-1-5" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-9-4"
- id="linearGradient9141-3-39-5-6"
- gradientUnits="userSpaceOnUse"
- x1="-57.984837"
- y1="11.971753"
- x2="-58.111061"
- y2="-0.03020489" />
- <linearGradient
- id="linearGradient7113-62-9-4"
- inkscape:collect="always">
- <stop
- id="stop7115-8-20-7"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-9-41"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-7-0"
- id="linearGradient9141-3-39-6-3"
- gradientUnits="userSpaceOnUse"
- x1="184.48721"
- y1="-50.994797"
- x2="184.48721"
- y2="-54" />
- <linearGradient
- id="linearGradient7113-62-7-0"
- inkscape:collect="always">
- <stop
- id="stop7115-8-8-5"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-5-1"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-2-3-5"
- id="radialGradient9139-7-61-8-44-8"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
- cx="39.088383"
- cy="219.06908"
- fx="39.088383"
- fy="219.06908"
- r="22" />
- <linearGradient
- id="linearGradient6977-28-2-3-5">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-5-5-4" />
- <stop
- id="stop6981-1-2-8-5"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-5-43-5"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-1-5-4" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-9-4-4"
- id="linearGradient9141-3-39-5-6-6"
- gradientUnits="userSpaceOnUse"
- x1="-57.984837"
- y1="11.971753"
- x2="-58.111061"
- y2="-0.03020489" />
- <linearGradient
- id="linearGradient7113-62-9-4-4"
- inkscape:collect="always">
- <stop
- id="stop7115-8-20-7-1"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-9-41-6"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-7-0-5"
- id="linearGradient9141-3-39-6-3-9"
- gradientUnits="userSpaceOnUse"
- x1="67.917938"
- y1="-43.977436"
- x2="67.917938"
- y2="-47.001114" />
- <linearGradient
- id="linearGradient7113-62-7-0-5"
- inkscape:collect="always">
- <stop
- id="stop7115-8-8-5-9"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop7117-6-5-1-8"
- offset="1"
- style="stop-color:#888a85;stop-opacity:1" />
- </linearGradient>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8523"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8525"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8527"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8529"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8531"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient8533"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient8535"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient8537"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient8539"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8541"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8543"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8545"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8547"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8549"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8551"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8553"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8555"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8557"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8559"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8561"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8563"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8565"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8567"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8569"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8571"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8573"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8575"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8577"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8579"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8581"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8583"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8585"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8587"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8589"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient8597"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8599"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8601"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient8603"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient8605"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient8607"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685-0"
- id="linearGradient8610"
- gradientUnits="userSpaceOnUse"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5685-0-1"
- id="linearGradient8612"
- gradientUnits="userSpaceOnUse"
- x1="151.5"
- y1="152.68915"
- x2="151.5"
- y2="150.31085" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3-7"
- id="radialGradient8614"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3-7"
- id="radialGradient8616"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3-7"
- id="radialGradient8618"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40279"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40281"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="192"
- x2="73"
- y2="188" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40283"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40285"
- gradientUnits="userSpaceOnUse"
- x1="85"
- y1="198"
- x2="85"
- y2="194" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40287"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40289"
- gradientUnits="userSpaceOnUse"
- x1="85"
- y1="204"
- x2="85"
- y2="200" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40291"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40293"
- gradientUnits="userSpaceOnUse"
- x1="85"
- y1="210"
- x2="85"
- y2="206" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40295"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40297"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="216"
- x2="73"
- y2="212" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40299"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
- cx="73"
- cy="183.71428"
- fx="73"
- fy="183.71428"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40301"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40303"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="117"
- x2="68"
- y2="113" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40305"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40307"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="124"
- x2="82"
- y2="120" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40309"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40311"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="131"
- x2="82"
- y2="127" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40313"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40315"
- gradientUnits="userSpaceOnUse"
- x1="82"
- y1="138"
- x2="82"
- y2="134" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40317"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40319"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="145"
- x2="68"
- y2="141" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40321"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40323"
- gradientUnits="userSpaceOnUse"
- x1="68"
- y1="152"
- x2="68"
- y2="148" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40325"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
- cx="66"
- cy="107.39743"
- fx="66"
- fy="107.39743"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient40327"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40329"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="282"
- x2="73"
- y2="279" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient40331"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40333"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="286"
- x2="80"
- y2="283" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient40335"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40337"
- gradientUnits="userSpaceOnUse"
- x1="80"
- y1="290"
- x2="80"
- y2="287" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient40339"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40341"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="294"
- x2="73"
- y2="291" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6-3"
- id="radialGradient40343"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="194.34859"
- fx="24.391739"
- fy="194.34859"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40345"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40347"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="245"
- x2="81"
- y2="242" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40349"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40351"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="249"
- x2="81"
- y2="246" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40353"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40355"
- gradientUnits="userSpaceOnUse"
- x1="81"
- y1="253"
- x2="81"
- y2="250" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40357"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40359"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="241"
- x2="73"
- y2="238" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40361"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40363"
- gradientUnits="userSpaceOnUse"
- x1="73"
- y1="257"
- x2="73"
- y2="254" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40365"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="13.03634"
- cy="205.21869"
- fx="13.03634"
- fy="205.21869"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-8-3"
- id="linearGradient40367"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-1-4"
- id="linearGradient40369"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996-4-7"
- id="linearGradient40371"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-230,60)"
- x1="317.31418"
- y1="228.31705"
- x2="316.5"
- y2="222.30664" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1-6"
- id="linearGradient40373"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-8"
- id="linearGradient40375"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5297-7-4"
- id="linearGradient40377"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-231,60)"
- x1="324"
- y1="190.5"
- x2="323.5"
- y2="183" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1-3-3"
- id="linearGradient40379"
- gradientUnits="userSpaceOnUse"
- x1="7.5860305"
- y1="20.245487"
- x2="7.5860305"
- y2="17.187613" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996-4-0"
- id="linearGradient40381"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-291,63)"
- x1="330.25"
- y1="139.5625"
- x2="330.25"
- y2="132.61122" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1-8"
- id="linearGradient40383"
- gradientUnits="userSpaceOnUse"
- x1="6.7499995"
- y1="24.504543"
- x2="6.7499995"
- y2="16.620459" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-17"
- id="linearGradient40385"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-265,60)"
- x1="337.69534"
- y1="69.747467"
- x2="337.69534"
- y2="55.674088" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-1-9"
- id="linearGradient40387"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-265,60)"
- x1="337.69534"
- y1="71.508186"
- x2="337.69534"
- y2="55.674088" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40525"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40527"
- gradientUnits="userSpaceOnUse"
- x1="25"
- y1="192"
- x2="25"
- y2="188" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40529"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40531"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="198"
- x2="13"
- y2="194" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40533"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40535"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="204"
- x2="13"
- y2="200" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40537"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40539"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="210"
- x2="13"
- y2="206" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40541"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40543"
- gradientUnits="userSpaceOnUse"
- x1="25"
- y1="216"
- x2="25"
- y2="212" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388-8-1"
- id="radialGradient40545"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
- cx="12.999999"
- cy="183.81726"
- fx="12.999999"
- fy="183.81726"
- r="16" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40547"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40549"
- gradientUnits="userSpaceOnUse"
- x1="27"
- y1="117"
- x2="27"
- y2="113" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40551"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40553"
- gradientUnits="userSpaceOnUse"
- x1="8"
- y1="124"
- x2="8"
- y2="120" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40555"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40557"
- gradientUnits="userSpaceOnUse"
- x1="8"
- y1="131"
- x2="8"
- y2="127" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40559"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40561"
- gradientUnits="userSpaceOnUse"
- x1="8"
- y1="138"
- x2="8"
- y2="134" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40563"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40565"
- gradientUnits="userSpaceOnUse"
- x1="27"
- y1="145"
- x2="27"
- y2="141" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40567"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40569"
- gradientUnits="userSpaceOnUse"
- x1="27"
- y1="152"
- x2="27"
- y2="148" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4388"
- id="radialGradient40571"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
- cx="5.75"
- cy="106.83335"
- fx="5.75"
- fy="106.83335"
- r="22" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient40573"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40575"
- gradientUnits="userSpaceOnUse"
- x1="17"
- y1="282"
- x2="17"
- y2="279" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient40577"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40579"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="286"
- x2="13"
- y2="283" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient40581"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40583"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="290"
- x2="13"
- y2="287" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient40585"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40587"
- gradientUnits="userSpaceOnUse"
- x1="17"
- y1="294"
- x2="17"
- y2="291" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7-6"
- id="radialGradient40589"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
- cx="24.391739"
- cy="235.21867"
- fx="24.391739"
- fy="235.21867"
- r="11" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40591"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40593"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="245"
- x2="13"
- y2="242" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40595"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40597"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="249"
- x2="13"
- y2="246" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40599"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40601"
- gradientUnits="userSpaceOnUse"
- x1="13"
- y1="253"
- x2="13"
- y2="250" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40603"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40605"
- gradientUnits="userSpaceOnUse"
- x1="22"
- y1="241"
- x2="22"
- y2="238" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40607"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4157"
- id="linearGradient40609"
- gradientUnits="userSpaceOnUse"
- x1="22"
- y1="257"
- x2="22"
- y2="254" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6427-7"
- id="radialGradient40611"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
- cx="12.999998"
- cy="235.21867"
- fx="12.999998"
- fy="235.21867"
- r="11" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1"
- id="linearGradient40613"
- gradientUnits="userSpaceOnUse"
- x1="7.5860305"
- y1="20.245487"
- x2="7.5860305"
- y2="17.187613" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996"
- id="linearGradient40615"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-291,63)"
- x1="330.25"
- y1="139.5625"
- x2="330.25"
- y2="132.61122" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1"
- id="linearGradient40617"
- gradientUnits="userSpaceOnUse"
- x1="6.7499995"
- y1="24.504543"
- x2="6.7499995"
- y2="16.620459" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6"
- id="linearGradient40619"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-290,60)"
- x1="337.69534"
- y1="69.747467"
- x2="337.69534"
- y2="55.674088" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6-1"
- id="linearGradient40621"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-290,60)"
- x1="337.69534"
- y1="71.508186"
- x2="337.69534"
- y2="55.674088" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0-6-1"
- id="linearGradient40623"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3-0-6"
- id="linearGradient40625"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient5297-7"
- id="linearGradient40627"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-291,60)"
- x1="324"
- y1="190.5"
- x2="323.5"
- y2="183" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4840-0"
- id="linearGradient40629"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
- x1="324.52679"
- y1="191.375"
- x2="322.05136"
- y2="186.12825" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4832-3"
- id="linearGradient40631"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
- x1="321.5"
- y1="188.71875"
- x2="321.5"
- y2="183.05904" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4996"
- id="linearGradient40633"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-290,60)"
- x1="317.31418"
- y1="228.31705"
- x2="316.5"
- y2="222.30664" />
- <linearGradient
- id="linearGradient9593">
- <stop
- id="stop9595"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="0.58164877"
- id="stop9597" />
- <stop
- style="stop-color:#888a85;stop-opacity:1"
- offset="0.85851747"
- id="stop9599" />
- <stop
- id="stop9601"
- offset="1"
- style="stop-color:#2e3436;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58"
- id="linearGradient7500"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-67.821548,122.72101)" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58"
- id="linearGradient7518"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-62.446548,126.09601)"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58"
- id="linearGradient7528"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-46.321548,122.84601)"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58-0"
- id="linearGradient7500-4"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-67.821548,122.72101)" />
- <linearGradient
- id="linearGradient6977-28-58-0">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop6979-4-6-5" />
- <stop
- id="stop6981-1-3-2"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop6983-3-6-5"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop6985-44-67-2" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58-0"
- id="linearGradient7559"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-67.821548,122.72101)" />
- <linearGradient
- id="linearGradient7561">
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="0"
- id="stop7563" />
- <stop
- id="stop7565"
- offset="0.6102711"
- style="stop-color:#2e3436;stop-opacity:1" />
- <stop
- id="stop7567"
- offset="0.85851747"
- style="stop-color:#888a85;stop-opacity:1" />
- <stop
- style="stop-color:#2e3436;stop-opacity:1"
- offset="1"
- id="stop7569" />
- </linearGradient>
- <linearGradient
- y2="1031.1951"
- x2="3.7127507"
- y1="1054.8558"
- x1="24.8298"
- gradientTransform="translate(-71.414437,122.42098)"
- gradientUnits="userSpaceOnUse"
- id="linearGradient7573"
- xlink:href="#linearGradient6977-28-58-0"
- inkscape:collect="always" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58"
- id="linearGradient7634"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-67.821548,122.72101)"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7648"
- id="linearGradient7636"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92152716,0,0,0.92152715,-70.959444,196.49947)"
- x1="24.8298"
- y1="1054.8558"
- x2="-1.0691936"
- y2="1022.5572" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58-0"
- id="linearGradient7642"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-71.039437,124.07543)"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3787-2-5"
- id="radialGradient7684"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
- cx="12.47341"
- cy="17.125"
- fx="12.47341"
- fy="17.125"
- r="9.84375" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58"
- id="linearGradient7686"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-67.821548,122.72101)"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7648"
- id="linearGradient7690"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92152718,0,0,0.92152717,-71.274209,196.75217)"
- x1="24.8298"
- y1="1054.8558"
- x2="-1.0691936"
- y2="1022.5572" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7648"
- id="linearGradient7696"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92152717,0,0,0.92152716,-71.840783,196.75217)"
- x1="24.8298"
- y1="1054.8558"
- x2="-1.0691936"
- y2="1022.5572" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7113-62-4"
- id="linearGradient7700"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92152717,0,0,0.92152716,-71.840783,196.75217)"
- x1="24.8298"
- y1="1054.8558"
- x2="-1.0691936"
- y2="1022.5572" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6977-28-58"
- id="linearGradient7714"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(-67.821548,122.72101)"
- x1="24.8298"
- y1="1054.8558"
- x2="3.7127507"
- y2="1031.1951" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient7648"
- id="linearGradient7718"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.92152718,0,0,0.92152717,-71.274209,196.75217)"
- x1="24.8298"
- y1="1054.8558"
- x2="-1.0691936"
- y2="1022.5572" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient12775-6"
- id="radialGradient4897"
- cx="302.96338"
- cy="234.81979"
- fx="302.96338"
- fy="234.81979"
- r="7.9805799"
- gradientTransform="matrix(1.4908524,0,0,1.1208602,-139.55399,-29.474876)"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient12775-6">
- <stop
- style="stop-color:#8ae234;stop-opacity:0.8"
- offset="0"
- id="stop12777-8" />
- <stop
- style="stop-color:#73d216;stop-opacity:0.8"
- offset="1"
- id="stop12779-5" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3554"
- id="linearGradient3560"
- x1="305.69009"
- y1="227.32491"
- x2="304"
- y2="233.27061"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3554">
- <stop
- style="stop-color:#ffffff;stop-opacity:1;"
- offset="0"
- id="stop3556" />
- <stop
- style="stop-color:#ffffff;stop-opacity:0;"
- offset="1"
- id="stop3558" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3554"
- id="linearGradient3564"
- gradientUnits="userSpaceOnUse"
- x1="306.21338"
- y1="234.88963"
- x2="305.99554"
- y2="229.95312" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3585"
- id="linearGradient3591"
- x1="310.70715"
- y1="228.67061"
- x2="310.70715"
- y2="233.0009"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(0.1988738,0.1325825)" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3585">
- <stop
- style="stop-color:#000000;stop-opacity:1;"
- offset="0"
- id="stop3587" />
- <stop
- style="stop-color:#000000;stop-opacity:0;"
- offset="1"
- id="stop3589" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3484"
- id="linearGradient3490"
- x1="311.06967"
- y1="228.93777"
- x2="310.54883"
- y2="228.63707"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.9659258,0.258819,-0.258819,0.9659258,67.761406,-73.78709)" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3484">
- <stop
- style="stop-color:#dcdfd9;stop-opacity:1;"
- offset="0"
- id="stop3486" />
- <stop
- style="stop-color:#ffffff;stop-opacity:1"
- offset="1"
- id="stop3488" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3484"
- id="linearGradient3502"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(-0.9659258,0.258819,0.258819,0.9659258,557.26713,-73.78709)"
- x1="310.26974"
- y1="228.6685"
- x2="310.88495"
- y2="229.02368" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3595"
- id="linearGradient3601"
- x1="314.4332"
- y1="223.31906"
- x2="314.48813"
- y2="224.83525"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient3595">
- <stop
- style="stop-color:#777974;stop-opacity:1;"
- offset="0"
- id="stop3597" />
- <stop
- style="stop-color:#babdb6;stop-opacity:1"
- offset="1"
- id="stop3599" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3389"
- id="linearGradient4453"
- x1="83.716774"
- y1="20.596703"
- x2="94.862404"
- y2="9.4887915"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- id="linearGradient3389">
- <stop
- style="stop-color:#d9d6d0;stop-opacity:1;"
- offset="0"
- id="stop3391" />
- <stop
- id="stop3393"
- offset="0.2851688"
- style="stop-color:#ffffff;stop-opacity:1" />
- <stop
- id="stop3395"
- offset="0.45965657"
- style="stop-color:#d3d7cf;stop-opacity:1" />
- <stop
- style="stop-color:#eeeeec;stop-opacity:1"
- offset="0.64107072"
- id="stop3397" />
- <stop
- style="stop-color:#babdb6;stop-opacity:1"
- offset="1"
- id="stop3399" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient3389"
- id="linearGradient4445"
- x1="91.163292"
- y1="10.278765"
- x2="102.16363"
- y2="15.608976"
- gradientUnits="userSpaceOnUse" />
- <linearGradient
- id="linearGradient5528">
- <stop
- style="stop-color:#d9d6d0;stop-opacity:1;"
- offset="0"
- id="stop5530" />
- <stop
- id="stop5532"
- offset="0.2851688"
- style="stop-color:#ffffff;stop-opacity:1" />
- <stop
- id="stop5534"
- offset="0.45965657"
- style="stop-color:#d3d7cf;stop-opacity:1" />
- <stop
- style="stop-color:#eeeeec;stop-opacity:1"
- offset="0.64107072"
- id="stop5536" />
- <stop
- style="stop-color:#babdb6;stop-opacity:1"
- offset="1"
- id="stop5538" />
- </linearGradient>
- <radialGradient
- cx="30.849609"
- cy="23.045898"
- fx="30.849609"
- fy="23.045898"
- gradientTransform="matrix(0.6028295,0,0,0.6028295,12.252556,9.1531519)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient6980"
- inkscape:collect="always"
- r="1.6249996"
- xlink:href="#linearGradient6639" />
- <linearGradient
- id="linearGradient6639"
- inkscape:collect="always">
- <stop
- id="stop6641"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1" />
- <stop
- id="stop6643"
- offset="1"
- style="stop-color:#eeeeec;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- gradientUnits="userSpaceOnUse"
- id="linearGradient6982"
- inkscape:collect="always"
- x1="32.228985"
- x2="32.228985"
- xlink:href="#linearGradient6750"
- y1="22.906866"
- y2="21.861177" />
- <linearGradient
- id="linearGradient6750">
- <stop
- id="stop6752"
- offset="0"
- style="stop-color:#888a85;stop-opacity:1;" />
- <stop
- id="stop6754"
- offset="1"
- style="stop-color:#d3d7cf;stop-opacity:1" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6798"
- id="linearGradient4473"
- gradientUnits="userSpaceOnUse"
- gradientTransform="translate(365.5625,188.93571)"
- x1="42.415516"
- y1="13.343618"
- x2="42.415516"
- y2="20.753693" />
- <linearGradient
- id="linearGradient6798"
- inkscape:collect="always">
- <stop
- id="stop6800"
- offset="0"
- style="stop-color:#000000;stop-opacity:1" />
- <stop
- id="stop6802"
- offset="1"
- style="stop-color:#000000;stop-opacity:0" />
- </linearGradient>
- <radialGradient
- cx="44.238369"
- cy="20.585787"
- fx="44.238369"
- fy="20.585787"
- gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient6818"
- inkscape:collect="always"
- r="8.087534"
- xlink:href="#linearGradient6812" />
- <linearGradient
- id="linearGradient6812"
- inkscape:collect="always">
- <stop
- id="stop6814"
- offset="0"
- style="stop-color:#000000;stop-opacity:1;" />
- <stop
- id="stop6816"
- offset="1"
- style="stop-color:#000000;stop-opacity:0;" />
- </linearGradient>
- <radialGradient
- cx="44.238369"
- cy="20.585787"
- fx="44.238369"
- fy="20.585787"
- gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
- gradientUnits="userSpaceOnUse"
- id="radialGradient6824"
- inkscape:collect="always"
- r="8.087534"
- xlink:href="#linearGradient6812" />
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient12862-4-7-8"
- id="linearGradient4844"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
- x1="1533.74"
- y1="1009.6045"
- x2="1509.51"
- y2="959.39551" />
- <linearGradient
- inkscape:collect="always"
- id="linearGradient12862-4-7-8">
- <stop
- style="stop-color:#4e9a06;stop-opacity:1;"
- offset="0"
- id="stop12864-9-5-2" />
- <stop
- style="stop-color:#8ae234;stop-opacity:1"
- offset="1"
- id="stop12866-9-8-0" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6314-6-8"
- id="linearGradient4846"
- gradientUnits="userSpaceOnUse"
- x1="280.48438"
- y1="174.87114"
- x2="280.48438"
- y2="165.4688" />
- <linearGradient
- id="linearGradient6314-6-8"
- inkscape:collect="always">
- <stop
- id="stop6316-4-4"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop6318-2-8"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <linearGradient
- inkscape:collect="always"
- xlink:href="#linearGradient6314-6"
- id="linearGradient4848"
- gradientUnits="userSpaceOnUse"
- x1="-18.473166"
- y1="31.899494"
- x2="-17.324116"
- y2="46.395184" />
- <linearGradient
- id="linearGradient6314-6"
- inkscape:collect="always">
- <stop
- id="stop6316-4"
- offset="0"
- style="stop-color:#ffffff;stop-opacity:1;" />
- <stop
- id="stop6318-2"
- offset="1"
- style="stop-color:#ffffff;stop-opacity:0;" />
- </linearGradient>
- <filter
- inkscape:collect="always"
- id="filter5147"
- x="-0.105"
- width="1.21"
- y="-0.14"
- height="1.28">
- <feGaussianBlur
- inkscape:collect="always"
- stdDeviation="0.875"
- id="feGaussianBlur5149" />
- </filter>
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4784"
- id="radialGradient4790"
- cx="16.17956"
- cy="15.81527"
- fx="16.17956"
- fy="15.81527"
- r="10"
- gradientTransform="matrix(1.6364916,-8.0626814e-8,8.1373925e-8,1.6516558,-10.298155,-7.9727773)"
- gradientUnits="userSpaceOnUse" />
- <radialGradient
- inkscape:collect="always"
- xlink:href="#linearGradient4784"
- id="radialGradient4797"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(1.6364916,-8.0626814e-8,8.1373925e-8,1.6516558,-10.298155,-7.9727773)"
- cx="16.17956"
- cy="15.81527"
- fx="16.17956"
- fy="15.81527"
- r="10" />
- </defs>
+ id="defs4"><linearGradient
+ id="linearGradient4784">
+ <stop
+ style="stop-color:#fce94f;stop-opacity:1;"
+ offset="0"
+ id="stop4786" />
+ <stop
+ style="stop-color:#edd400;stop-opacity:1;"
+ offset="1"
+ id="stop4788" />
+</linearGradient>
+<linearGradient
+ id="linearGradient7648">
+ <stop
+ id="stop7650"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.46662426"
+ id="stop7652" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop7654" />
+ <stop
+ id="stop7656"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586"
+ xlink:href="#linearGradient7113-62-4"
+ inkscape:collect="always" />
+<linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ inkscape:collect="always" />
+<linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9582"
+ xlink:href="#linearGradient7113-62-4"
+ inkscape:collect="always" />
+<linearGradient
+ y2="119.67304"
+ x2="223.39351"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9580"
+ xlink:href="#linearGradient9593"
+ inkscape:collect="always" />
+<radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9578"
+ xlink:href="#linearGradient3787-2-5"
+ inkscape:collect="always" />
+<radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9574"
+ xlink:href="#linearGradient3787-2-5"
+ inkscape:collect="always" />
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ id="linearGradient9567"
+ xlink:href="#linearGradient7113-62-4"
+ inkscape:collect="always" />
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ id="linearGradient9559"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ inkscape:collect="always" />
+<linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-0"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-6"
+ y1="11.553171"
+ y2="0.059782967" />
+<linearGradient
+ id="linearGradient4256-2-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-6"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-6"
+ y1="15.424131"
+ y2="8.153533" />
+<linearGradient
+ id="linearGradient7113-62-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4"
+ id="linearGradient9141-3-39-97"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+<linearGradient
+ id="linearGradient6977-28-58">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6" />
+ <stop
+ id="stop6981-1-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="radialGradient9139-7-61-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+<linearGradient
+ id="linearGradient3787-2-5"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+</linearGradient>
+<radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-3"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-5" />
+<inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ id="perspective1832" />
+<linearGradient
+ id="linearGradient7157"
+ inkscape:collect="always">
+ <stop
+ id="stop7159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ id="linearGradient7113"
+ inkscape:collect="always">
+ <stop
+ id="stop7115"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ id="linearGradient6977">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979" />
+ <stop
+ id="stop6981"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4388"
+ inkscape:collect="always">
+ <stop
+ id="stop4390"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3185-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-7"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-7"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4840-0">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4840-0-6-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ id="linearGradient3820"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient3830"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient3832"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient3834"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient3844"
+ gradientUnits="userSpaceOnUse"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664"
+ gradientTransform="translate(-290,60)" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3"
+ id="linearGradient3846"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0"
+ id="linearGradient3848"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-6"
+ id="radialGradient3852"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ cx="3.403806"
+ cy="4.2001681"
+ fx="3.403806"
+ fy="4.2001681"
+ r="8" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient3866"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-9">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-17">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-6" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4840-0-6-1-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-3" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ id="linearGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ id="linearGradient4032"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ id="linearGradient3832-7-4"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+<linearGradient
+ id="linearGradient4840-0-6-1-3-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-9-6" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0"
+ id="linearGradient3830-2-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-0">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-4-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-8" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-8">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-2" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4840-0-6-1-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-2" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ id="linearGradient4662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ id="linearGradient4664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4"
+ id="linearGradient4666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+<linearGradient
+ id="linearGradient4840-0-8-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-1-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3-2" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-1-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-2-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-8" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-6-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-81" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3"
+ id="linearGradient4869"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4"
+ id="linearGradient4871"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7"
+ id="linearGradient4873"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient5751"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient5753"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7"
+ id="linearGradient5755"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6433"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6433-0"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6584"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient6433-7"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6433-7-0"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4141"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4143"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4145"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4147"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4149"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4169"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4171"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4173"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4175"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4177"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient4179"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4187"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4189"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4191"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4193"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4201"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4203"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4205"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4207"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4209"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4211"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4213"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4215"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4294"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4296"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4298"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4300"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4302"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4304"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4306"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4308"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4310"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4312"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4320"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4322"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4324"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4326"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4328"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4330"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4338"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4340"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4342"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4344"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4346"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4348"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient4386"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient4660"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ id="linearGradient4388-8-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-1-7"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-6-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5033"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5151"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5289"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5291"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientTransform="translate(-1,0)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5293"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5295"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientTransform="translate(-1,0)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5297"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5299"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientTransform="translate(-1,0)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5303"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5309"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5311"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5313"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5315"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5317"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5319"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5321"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5323"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5325"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5327"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5329"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5335"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5337"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5339"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(0,1)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5341"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5343"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(0,1)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5347"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(0,1)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5355"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5357"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5359"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5361"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5363"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5365"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5367"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5369"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ id="linearGradient4840-0-6-1-61">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient5691"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ id="linearGradient4840-0-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6" />
+</linearGradient>
+<linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6123"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+<linearGradient
+ id="linearGradient4840-0-5-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4840-0-5-1-7">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6909"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6911"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6913"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6919"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient7213"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7263"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7265"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7267"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7269"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7271"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7273"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7275"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7277"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7279"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7285"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7287"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7347"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7349"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7351"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7355"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7357"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7359"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7361"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7388"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7390"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7392"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7394"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7396"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7398"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7400"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7402"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+<linearGradient
+ id="linearGradient4840-0-6-1-61-5">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-6" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4840-0-8-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-3" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1"
+ id="linearGradient7249-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-1">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-1" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient7740"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+<linearGradient
+ id="linearGradient4840-0-5-1-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7910"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7912"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(120,2)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7915"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7917"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(120,2)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7920"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7922"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(120,2)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7938"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7942"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7950"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient7950-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-8" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-8" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4840-0-5-1-7-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-9" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient7942-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8025"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8436"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8438"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8440"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8442"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8444"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8446"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8448"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8450"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8452"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8454"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8456"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8458"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8460"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8462"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8464"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8466"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8468"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8470"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8472"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8474"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8512"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8516"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8518"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8520"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8522"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8524"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8526"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8528"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8530"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8532"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient8572"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8639"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8641"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(180,2)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8644"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8646"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(180,2)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8649"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8651"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(180,2)" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8677"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8681"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8685"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient8747"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9121"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9123"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000003,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9125"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9127"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9129"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9131"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000001,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9133"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9135"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000006,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9139"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9141"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9145"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9149"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9151"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9153"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9155"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9157"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9177"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9179"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9181"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9183"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9185"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9187"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9189"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9191"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9193"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9195"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9197"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9199"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9201"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9203"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+<radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5722-2"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9" />
+<linearGradient
+ id="linearGradient4176-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5726-1"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0"
+ y1="38.63026"
+ y2="21.48896" />
+<linearGradient
+ id="linearGradient3421-0">
+ <stop
+ id="stop3423-3"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop3425-4"
+ offset="1"
+ style="stop-color:#babdb6;stop-opacity:0" />
+</linearGradient>
+<radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5728-0"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3" />
+<linearGradient
+ id="linearGradient4229-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4231-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4233-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5730-9"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6"
+ y1="36.421127"
+ y2="35.581436" />
+<linearGradient
+ id="linearGradient4248-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4250-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4252-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5732-3"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3" />
+<radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4137-0"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9" />
+<linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4141-7-6"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0"
+ y1="38.63026"
+ y2="21.48896" />
+<radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4143-6"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3" />
+<linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4145-6-0"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6"
+ y1="36.421127"
+ y2="35.581436" />
+<radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4147-0"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3" />
+<radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2" />
+<linearGradient
+ id="linearGradient3787-2"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2"
+ y1="15.424131"
+ y2="8.153533" />
+<linearGradient
+ id="linearGradient4256-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2"
+ y1="11.553171"
+ y2="0.059782967" />
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3638-9"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-2"
+ y1="6.3656702"
+ y2="16.751301" />
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3082"
+ inkscape:collect="always"
+ x1="99.396446"
+ x2="99.881432"
+ xlink:href="#linearGradient3512"
+ y1="-44.57159"
+ y2="-36.90625" />
+<linearGradient
+ id="linearGradient3512"
+ inkscape:collect="always">
+ <stop
+ id="stop3514"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3516"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient2753"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787" />
+<linearGradient
+ id="linearGradient3787"
+ inkscape:collect="always">
+ <stop
+ id="stop3789"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3185"
+ inkscape:collect="always">
+ <stop
+ id="stop3187"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2759"
+ inkscape:collect="always"
+ x1="100.5"
+ x2="100.375"
+ xlink:href="#linearGradient3572"
+ y1="5.125"
+ y2="15.25" />
+<linearGradient
+ id="linearGradient3572"
+ inkscape:collect="always">
+ <stop
+ id="stop3574"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3576"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2761"
+ inkscape:collect="always"
+ x1="100.875"
+ x2="106.4375"
+ xlink:href="#linearGradient3580"
+ y1="15.6875"
+ y2="11.5" />
+<linearGradient
+ id="linearGradient3580"
+ inkscape:collect="always">
+ <stop
+ id="stop3582"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3584"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7137"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176" />
+<linearGradient
+ id="linearGradient4176"
+ inkscape:collect="always">
+ <stop
+ id="stop4178"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7141"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653" />
+<linearGradient
+ id="linearGradient4653"
+ inkscape:collect="always">
+ <stop
+ id="stop4655"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0" />
+ <stop
+ id="stop4657"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7143"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643"
+ y1="33.41592"
+ y2="31.533039" />
+<linearGradient
+ id="linearGradient4643"
+ inkscape:collect="always">
+ <stop
+ id="stop4645"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4647"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7145"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512"
+ y1="31.107067"
+ y2="11.313666" />
+<linearGradient
+ id="linearGradient2512">
+ <stop
+ id="stop2514"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop2516"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7147"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601" />
+<linearGradient
+ id="linearGradient4601"
+ inkscape:collect="always">
+ <stop
+ id="stop4603"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4605"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7149"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601"
+ y1="9.5507469"
+ y2="17.149347" />
+<radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6553"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176" />
+<radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6557"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653" />
+<linearGradient
+ gradientTransform="translate(10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6559"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643"
+ y1="33.41592"
+ y2="31.533039" />
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6561"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512"
+ y1="31.107067"
+ y2="11.313666" />
+<radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6563"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601" />
+<linearGradient
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6565"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601"
+ y1="9.5507469"
+ y2="17.149347" />
+<linearGradient
+ id="linearGradient4256"
+ inkscape:collect="always">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient3787-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-60"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4176-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4285"
+ inkscape:collect="always">
+ <stop
+ id="stop4287"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4293"
+ inkscape:collect="always">
+ <stop
+ id="stop4295"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4301"
+ inkscape:collect="always">
+ <stop
+ id="stop4303"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4309"
+ inkscape:collect="always">
+ <stop
+ id="stop4311"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4437"
+ inkscape:collect="always">
+ <stop
+ id="stop4439"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4441"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ id="linearGradient4348-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4350"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3648"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1"
+ y1="6.3656702"
+ y2="16.751301" />
+<linearGradient
+ id="linearGradient4256-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-22"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3650"
+ inkscape:collect="always"
+ x1="8.2643108"
+ x2="4.7950678"
+ xlink:href="#linearGradient4256-1"
+ y1="14.541593"
+ y2="10.431535" />
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3809"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1"
+ y1="6.3656702"
+ y2="16.751301" />
+<radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3817"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-9" />
+<linearGradient
+ id="linearGradient3787-9"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+</linearGradient>
+<radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4496"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1" />
+<linearGradient
+ id="linearGradient4176-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4488"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2" />
+<linearGradient
+ id="linearGradient4285-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4490"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2" />
+<linearGradient
+ id="linearGradient4293-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4492"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7"
+ y1="36.125"
+ y2="19" />
+<linearGradient
+ id="linearGradient4301-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4494"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1"
+ y1="36.5625"
+ y2="36.25" />
+<linearGradient
+ id="linearGradient4309-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5706"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1" />
+<linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5710"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7"
+ y1="36.125"
+ y2="19" />
+<radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5712"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2" />
+<radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5714"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2" />
+<linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5716"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1"
+ y1="36.5625"
+ y2="36.25" />
+<linearGradient
+ gradientTransform="translate(60,47)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5720"
+ inkscape:collect="always"
+ x1="20.155684"
+ x2="20.155684"
+ xlink:href="#linearGradient4348-8"
+ y1="43.910683"
+ y2="46" />
+<linearGradient
+ id="linearGradient4348-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185"
+ id="radialGradient6084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ cx="-50.993778"
+ cy="13.921414"
+ fx="-50.993778"
+ fy="13.921414"
+ r="7.9160094" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-6"
+ id="radialGradient6092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6094"
+ gradientUnits="userSpaceOnUse"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5"
+ id="radialGradient6098"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285"
+ id="radialGradient6104"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293"
+ id="radialGradient6106"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301"
+ id="linearGradient6108"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309"
+ id="linearGradient6110"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5"
+ id="radialGradient6114"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301"
+ id="linearGradient6118"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285"
+ id="radialGradient6120"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293"
+ id="radialGradient6122"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309"
+ id="linearGradient6124"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4437"
+ id="linearGradient6126"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(190,0)"
+ x1="74.28125"
+ y1="28.776411"
+ x2="74.28125"
+ y2="31.960411" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4348-3"
+ id="linearGradient6130"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,46)"
+ x1="20.155684"
+ y1="43.910683"
+ x2="20.155684"
+ y2="46" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977"
+ id="radialGradient9139-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113"
+ id="linearGradient9141-3"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7"
+ id="radialGradient9139-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8" />
+ <stop
+ id="stop6981-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7"
+ id="radialGradient7111"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="103.43681"
+ fx="39.554386"
+ fy="103.43681"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157"
+ id="linearGradient9141-3-2"
+ gradientUnits="userSpaceOnUse"
+ x1="145.3887"
+ y1="39.999996"
+ x2="145.3887"
+ y2="7.9807839" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0"
+ id="linearGradient9141-3-3"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.004028"
+ x2="18"
+ y2="5.9995542" />
+<linearGradient
+ id="linearGradient7113-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5"
+ id="radialGradient9139-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0" />
+ <stop
+ id="stop6981-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14"
+ id="radialGradient9139-7-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="71.642067"
+ cy="119.85913"
+ fx="71.642067"
+ fy="119.85913"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-14">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86" />
+ <stop
+ id="stop6981-39"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6"
+ id="linearGradient9141-3-34"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="93"
+ x2="84.5"
+ y2="88" />
+<linearGradient
+ id="linearGradient7113-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-2"
+ id="linearGradient9141-3-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.001797"
+ x2="18"
+ y2="5.9995542" />
+<linearGradient
+ id="linearGradient7113-0-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-6"
+ id="radialGradient9139-7-3-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="72.146278"
+ cy="120.14571"
+ fx="72.146278"
+ fy="120.14571"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-14-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-8" />
+ <stop
+ id="stop6981-39-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-2"
+ id="linearGradient9141-3-34-1"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="94"
+ x2="84.5"
+ y2="89" />
+<linearGradient
+ id="linearGradient7113-6-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-8"
+ id="radialGradient9139-7-0-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-5-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-9" />
+ <stop
+ id="stop6981-3-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-2" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0"
+ id="linearGradient9141-3-2-4"
+ gradientUnits="userSpaceOnUse"
+ x1="3.9729283"
+ y1="27.841093"
+ x2="3.9729283"
+ y2="5.1557527" />
+<linearGradient
+ id="linearGradient7157-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3"
+ id="radialGradient7111-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="39.814342"
+ cy="137.44762"
+ fx="39.814342"
+ fy="137.44762"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-7-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8" />
+ <stop
+ id="stop6981-9-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-9"
+ id="radialGradient9139-7-06"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-3" />
+ <stop
+ id="stop6981-33"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-2" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9"
+ id="linearGradient9141-3-7"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+<linearGradient
+ id="linearGradient7113-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7"
+ id="linearGradient9141-3-2-4-7"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+<linearGradient
+ id="linearGradient7157-0-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3"
+ id="radialGradient7111-4-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-7-3-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6" />
+ <stop
+ id="stop6981-9-5-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1"
+ id="radialGradient9139-7-3-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-14-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5" />
+ <stop
+ id="stop6981-39-27"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1"
+ id="linearGradient9141-3-34-7"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+<linearGradient
+ id="linearGradient7113-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-5"
+ id="linearGradient9141-3-2-4-7-9"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+<linearGradient
+ id="linearGradient7157-0-7-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-3"
+ id="radialGradient7111-4-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-7-3-3-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-1" />
+ <stop
+ id="stop6981-9-5-0-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-3" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-5"
+ id="radialGradient9139-7-3-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-14-1-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-9" />
+ <stop
+ id="stop6981-39-27-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-2" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-0"
+ id="linearGradient9141-3-34-7-9"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+<linearGradient
+ id="linearGradient7113-6-1-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28"
+ id="radialGradient9139-7-61"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4" />
+ <stop
+ id="stop6981-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62"
+ id="linearGradient9141-3-39"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+<linearGradient
+ id="linearGradient7113-62"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-5"
+ id="radialGradient9139-7-61-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="39.344345"
+ cy="192.03035"
+ fx="39.344345"
+ fy="192.03035"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-4" />
+ <stop
+ id="stop6981-1-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-6" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-5"
+ id="linearGradient9141-3-39-9"
+ gradientUnits="userSpaceOnUse"
+ x1="-56.866325"
+ y1="12.007"
+ x2="-56.826302"
+ y2="0.12165857" />
+<linearGradient
+ id="linearGradient7113-62-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7"
+ id="radialGradient9139-7-61-05"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8" />
+ <stop
+ id="stop6981-1-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52"
+ id="linearGradient9141-3-39-1"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+<linearGradient
+ id="linearGradient7113-62-52"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7"
+ id="linearGradient9141-3-39-6"
+ gradientUnits="userSpaceOnUse"
+ x1="185.01755"
+ y1="-18.997253"
+ x2="185.01755"
+ y2="-22.000326" />
+<linearGradient
+ id="linearGradient7113-62-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-1"
+ id="linearGradient9141-3-39-6-2"
+ gradientUnits="userSpaceOnUse"
+ x1="76.255684"
+ y1="-10"
+ x2="76.255684"
+ y2="-13.002928" />
+<linearGradient
+ id="linearGradient7113-62-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-5"
+ id="radialGradient9139-7-61-05-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-7-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-7" />
+ <stop
+ id="stop6981-1-8-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-0" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-3"
+ id="linearGradient9141-3-39-1-8"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+<linearGradient
+ id="linearGradient7113-62-52-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2"
+ id="radialGradient9139-7-61-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="40.68565"
+ cy="125.0378"
+ fx="40.68565"
+ fy="125.0378"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5" />
+ <stop
+ id="stop6981-1-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9"
+ id="linearGradient9141-3-39-5"
+ gradientUnits="userSpaceOnUse"
+ x1="40"
+ y1="13.001565"
+ x2="40"
+ y2="0.99979788" />
+<linearGradient
+ id="linearGradient7113-62-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-7"
+ id="radialGradient9139-7-61-8-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ cx="38.636917"
+ cy="223.66896"
+ fx="38.636917"
+ fy="223.66896"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-1" />
+ <stop
+ id="stop6981-1-2-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-7" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-0"
+ id="linearGradient9141-3-39-5-3"
+ gradientUnits="userSpaceOnUse"
+ x1="-65.877312"
+ y1="11.172731"
+ x2="-66.05246"
+ y2="0.24979722" />
+<linearGradient
+ id="linearGradient7113-62-9-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3"
+ id="radialGradient9139-7-61-8-44"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4"
+ id="linearGradient9141-3-39-5-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+<linearGradient
+ id="linearGradient7113-62-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0"
+ id="linearGradient9141-3-39-6-3"
+ gradientUnits="userSpaceOnUse"
+ x1="184.48721"
+ y1="-50.994797"
+ x2="184.48721"
+ y2="-54" />
+<linearGradient
+ id="linearGradient7113-62-7-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ id="radialGradient9139-7-61-8-44-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+<linearGradient
+ id="linearGradient6977-28-2-3-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4" />
+ <stop
+ id="stop6981-1-2-8-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-4"
+ id="linearGradient9141-3-39-5-6-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+<linearGradient
+ id="linearGradient7113-62-9-4-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-5"
+ id="linearGradient9141-3-39-6-3-9"
+ gradientUnits="userSpaceOnUse"
+ x1="67.917938"
+ y1="-43.977436"
+ x2="67.917938"
+ y2="-47.001114" />
+<linearGradient
+ id="linearGradient7113-62-7-0-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8523"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8525"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8527"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8531"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8533"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8535"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8537"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8539"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8541"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8543"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8545"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8547"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8549"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8551"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8553"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8555"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8557"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8561"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8565"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8567"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8569"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8571"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8573"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8575"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8577"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8579"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8581"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8583"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8585"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8587"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8589"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8597"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8599"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8601"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8603"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8605"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8607"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient8610"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1"
+ id="linearGradient8612"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8614"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8616"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8618"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40279"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40281"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40283"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40285"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40287"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40289"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40291"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40293"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40295"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40297"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40299"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40303"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40305"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40307"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40309"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40311"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40313"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40315"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40317"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40319"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40321"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40323"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40325"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40327"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40329"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40331"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40333"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40335"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40337"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40339"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40341"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40343"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40347"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40349"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40351"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40355"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40357"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40359"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40361"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40363"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40365"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3"
+ id="linearGradient40367"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4"
+ id="linearGradient40369"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7"
+ id="linearGradient40371"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ id="linearGradient40373"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ id="linearGradient40375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4"
+ id="linearGradient40377"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ id="linearGradient40379"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0"
+ id="linearGradient40381"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ id="linearGradient40383"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ id="linearGradient40385"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ id="linearGradient40387"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40525"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40527"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40531"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40533"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40535"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40537"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40539"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40541"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40543"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40545"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40547"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40549"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40551"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40553"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40555"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40557"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40561"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40565"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40567"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40569"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40571"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40573"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40575"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40577"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40579"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40581"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40583"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40585"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40587"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40589"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40591"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40593"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40595"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40597"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40599"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40601"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40603"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40605"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40607"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40609"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40611"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40613"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient40615"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40617"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient40619"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ id="linearGradient40621"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40623"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient40625"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7"
+ id="linearGradient40627"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0"
+ id="linearGradient40629"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3"
+ id="linearGradient40631"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient40633"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+<linearGradient
+ id="linearGradient9593">
+ <stop
+ id="stop9595"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.58164877"
+ id="stop9597" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop9599" />
+ <stop
+ id="stop9601"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient7500"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-67.821548,122.72101)" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient7518"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-62.446548,126.09601)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient7528"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-46.321548,122.84601)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-0"
+ id="linearGradient7500-4"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-67.821548,122.72101)" />
+<linearGradient
+ id="linearGradient6977-28-58-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6-5" />
+ <stop
+ id="stop6981-1-3-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67-2" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-0"
+ id="linearGradient7559"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-67.821548,122.72101)" />
+<linearGradient
+ id="linearGradient7561">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop7563" />
+ <stop
+ id="stop7565"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop7567"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop7569" />
+</linearGradient>
+<linearGradient
+ y2="1031.1951"
+ x2="3.7127507"
+ y1="1054.8558"
+ x1="24.8298"
+ gradientTransform="translate(-71.414437,122.42098)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7573"
+ xlink:href="#linearGradient6977-28-58-0"
+ inkscape:collect="always" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient7634"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-67.821548,122.72101)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7648"
+ id="linearGradient7636"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92152716,0,0,0.92152715,-70.959444,196.49947)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="-1.0691936"
+ y2="1022.5572" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-0"
+ id="linearGradient7642"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-71.039437,124.07543)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5"
+ id="radialGradient7684"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ cx="12.47341"
+ cy="17.125"
+ fx="12.47341"
+ fy="17.125"
+ r="9.84375" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient7686"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-67.821548,122.72101)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7648"
+ id="linearGradient7690"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92152718,0,0,0.92152717,-71.274209,196.75217)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="-1.0691936"
+ y2="1022.5572" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7648"
+ id="linearGradient7696"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92152717,0,0,0.92152716,-71.840783,196.75217)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="-1.0691936"
+ y2="1022.5572" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4"
+ id="linearGradient7700"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92152717,0,0,0.92152716,-71.840783,196.75217)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="-1.0691936"
+ y2="1022.5572" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="linearGradient7714"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-67.821548,122.72101)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="3.7127507"
+ y2="1031.1951" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7648"
+ id="linearGradient7718"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92152718,0,0,0.92152717,-71.274209,196.75217)"
+ x1="24.8298"
+ y1="1054.8558"
+ x2="-1.0691936"
+ y2="1022.5572" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12775-6"
+ id="radialGradient4897"
+ cx="302.96338"
+ cy="234.81979"
+ fx="302.96338"
+ fy="234.81979"
+ r="7.9805799"
+ gradientTransform="matrix(1.4908524,0,0,1.1208602,-139.55399,-29.474876)"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient12775-6">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:0.8"
+ offset="0"
+ id="stop12777-8" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:0.8"
+ offset="1"
+ id="stop12779-5" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3554"
+ id="linearGradient3560"
+ x1="305.69009"
+ y1="227.32491"
+ x2="304"
+ y2="233.27061"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient3554">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3556" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3558" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3554"
+ id="linearGradient3564"
+ gradientUnits="userSpaceOnUse"
+ x1="306.21338"
+ y1="234.88963"
+ x2="305.99554"
+ y2="229.95312" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3585"
+ id="linearGradient3591"
+ x1="310.70715"
+ y1="228.67061"
+ x2="310.70715"
+ y2="233.0009"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0.1988738,0.1325825)" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient3585">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3587" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop3589" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3484"
+ id="linearGradient3490"
+ x1="311.06967"
+ y1="228.93777"
+ x2="310.54883"
+ y2="228.63707"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.9659258,0.258819,-0.258819,0.9659258,67.761406,-73.78709)" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient3484">
+ <stop
+ style="stop-color:#dcdfd9;stop-opacity:1;"
+ offset="0"
+ id="stop3486" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop3488" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3484"
+ id="linearGradient3502"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.9659258,0.258819,0.258819,0.9659258,557.26713,-73.78709)"
+ x1="310.26974"
+ y1="228.6685"
+ x2="310.88495"
+ y2="229.02368" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3595"
+ id="linearGradient3601"
+ x1="314.4332"
+ y1="223.31906"
+ x2="314.48813"
+ y2="224.83525"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient3595">
+ <stop
+ style="stop-color:#777974;stop-opacity:1;"
+ offset="0"
+ id="stop3597" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop3599" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3389"
+ id="linearGradient4453"
+ x1="83.716774"
+ y1="20.596703"
+ x2="94.862404"
+ y2="9.4887915"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ id="linearGradient3389">
+ <stop
+ style="stop-color:#d9d6d0;stop-opacity:1;"
+ offset="0"
+ id="stop3391" />
+ <stop
+ id="stop3393"
+ offset="0.2851688"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop3395"
+ offset="0.45965657"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1"
+ offset="0.64107072"
+ id="stop3397" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop3399" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3389"
+ id="linearGradient4445"
+ x1="91.163292"
+ y1="10.278765"
+ x2="102.16363"
+ y2="15.608976"
+ gradientUnits="userSpaceOnUse" />
+<linearGradient
+ id="linearGradient5528">
+ <stop
+ style="stop-color:#d9d6d0;stop-opacity:1;"
+ offset="0"
+ id="stop5530" />
+ <stop
+ id="stop5532"
+ offset="0.2851688"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop5534"
+ offset="0.45965657"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ style="stop-color:#eeeeec;stop-opacity:1"
+ offset="0.64107072"
+ id="stop5536" />
+ <stop
+ style="stop-color:#babdb6;stop-opacity:1"
+ offset="1"
+ id="stop5538" />
+</linearGradient>
+<radialGradient
+ cx="30.849609"
+ cy="23.045898"
+ fx="30.849609"
+ fy="23.045898"
+ gradientTransform="matrix(0.6028295,0,0,0.6028295,12.252556,9.1531519)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6980"
+ inkscape:collect="always"
+ r="1.6249996"
+ xlink:href="#linearGradient6639" />
+<linearGradient
+ id="linearGradient6639"
+ inkscape:collect="always">
+ <stop
+ id="stop6641"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ id="stop6643"
+ offset="1"
+ style="stop-color:#eeeeec;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6982"
+ inkscape:collect="always"
+ x1="32.228985"
+ x2="32.228985"
+ xlink:href="#linearGradient6750"
+ y1="22.906866"
+ y2="21.861177" />
+<linearGradient
+ id="linearGradient6750">
+ <stop
+ id="stop6752"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1;" />
+ <stop
+ id="stop6754"
+ offset="1"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6798"
+ id="linearGradient4473"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(365.5625,188.93571)"
+ x1="42.415516"
+ y1="13.343618"
+ x2="42.415516"
+ y2="20.753693" />
+<linearGradient
+ id="linearGradient6798"
+ inkscape:collect="always">
+ <stop
+ id="stop6800"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop6802"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+</linearGradient>
+<radialGradient
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6818"
+ inkscape:collect="always"
+ r="8.087534"
+ xlink:href="#linearGradient6812" />
+<linearGradient
+ id="linearGradient6812"
+ inkscape:collect="always">
+ <stop
+ id="stop6814"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop6816"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ cx="44.238369"
+ cy="20.585787"
+ fx="44.238369"
+ fy="20.585787"
+ gradientTransform="matrix(1,0,0,0.1311475,0,17.886012)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6824"
+ inkscape:collect="always"
+ r="8.087534"
+ xlink:href="#linearGradient6812" />
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient12862-4-7-8"
+ id="linearGradient4844"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.47560977,0,0,0.55769295,-443.00609,-376.56795)"
+ x1="1533.74"
+ y1="1009.6045"
+ x2="1509.51"
+ y2="959.39551" />
+<linearGradient
+ inkscape:collect="always"
+ id="linearGradient12862-4-7-8">
+ <stop
+ style="stop-color:#4e9a06;stop-opacity:1;"
+ offset="0"
+ id="stop12864-9-5-2" />
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1"
+ offset="1"
+ id="stop12866-9-8-0" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6-8"
+ id="linearGradient4846"
+ gradientUnits="userSpaceOnUse"
+ x1="280.48438"
+ y1="174.87114"
+ x2="280.48438"
+ y2="165.4688" />
+<linearGradient
+ id="linearGradient6314-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6314-6"
+ id="linearGradient4848"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.473166"
+ y1="31.899494"
+ x2="-17.324116"
+ y2="46.395184" />
+<linearGradient
+ id="linearGradient6314-6"
+ inkscape:collect="always">
+ <stop
+ id="stop6316-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6318-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+</linearGradient>
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4784"
+ id="radialGradient4790"
+ cx="16.17956"
+ cy="15.81527"
+ fx="16.17956"
+ fy="15.81527"
+ r="10"
+ gradientTransform="matrix(1.6364916,-8.0626814e-8,8.1373925e-8,1.6516558,-10.298155,-7.9727773)"
+ gradientUnits="userSpaceOnUse" />
+<radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4784"
+ id="radialGradient4797"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(6.0485234,0,0,1.6516558,-81.682886,-7.9727786)"
+ cx="16.121107"
+ cy="18.062901"
+ fx="16.121107"
+ fy="18.062901"
+ r="10" />
+<filter
+ inkscape:collect="always"
+ id="filter5909"
+ x="-0.078932419"
+ width="1.1578648"
+ y="-0.10524323"
+ height="1.2104865">
+ <feGaussianBlur
+ inkscape:collect="always"
+ stdDeviation="0.65777016"
+ id="feGaussianBlur5911" />
+</filter>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4784"
+ id="linearGradient5149"
+ x1="17.17956"
+ y1="17.648603"
+ x2="17.17956"
+ y2="32.648605"
+ gradientUnits="userSpaceOnUse" />
+</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
@@ -7409,17 +7581,17 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
- inkscape:cx="18.882839"
- inkscape:cy="11.876991"
+ inkscape:cx="-10.101599"
+ inkscape:cy="53.907189"
inkscape:document-units="px"
- inkscape:current-layer="g4792"
+ inkscape:current-layer="g22"
showgrid="false"
inkscape:snap-global="true"
showborder="true"
inkscape:window-width="1366"
- inkscape:window-height="718"
+ inkscape:window-height="721"
inkscape:window-x="0"
- inkscape:window-y="28"
+ inkscape:window-y="24"
inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
@@ -7557,38 +7729,141 @@
style="fill:#fce94f;stroke:none;display:inline"
transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)" />
<rect
- y="19.648603"
- x="8.1795588"
- height="15"
+ y="20.648605"
+ x="7.1795602"
+ height="14.999998"
width="20"
id="rect5105"
- style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none;filter:url(#filter5147)"
- transform="matrix(1.1,0,0,1.0666666,-2.8179558,-2.3099045)" />
+ style="opacity:0.6;fill:#4b4b4b;fill-opacity:1;stroke:none;filter:url(#filter5909)"
+ transform="matrix(1,0,0,0.93333324,0,1.3765755)" />
<g
id="g4792">
- <rect
- y="17.648603"
- x="6.1795592"
- height="15"
- width="20"
- id="rect5103"
- style="fill:url(#radialGradient4797);fill-opacity:1;stroke:none" />
- <path
- id="rect5151"
- transform="translate(5.179559,14.648604)"
- d="M 1,3 1,18 21,18 21,3 1,3 z M 2,4 20,4 20,17 2,17 2,4 z"
- style="opacity:0.40000000000000002;fill:#782800;fill-opacity:1;stroke:none"
- inkscape:connector-curvature="0" />
- <path
- sodipodi:nodetypes="cccccccccc"
- inkscape:connector-curvature="0"
- style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
- d="M 2,4 2,17 20,17 20,4 z M 3,5 19,5 19,16 3,16 z"
- transform="translate(5.179559,14.648604)"
- id="path5156" />
+ <g
+ id="g5126"
+ transform="translate(-1,0)">
+ <rect
+ style="fill:url(#linearGradient5149);fill-opacity:1;stroke:none"
+ id="rect5103"
+ width="20"
+ height="15"
+ x="6.1795592"
+ y="17.648603" />
+ <path
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#782800;fill-opacity:1;stroke:none"
+ d="M 1,3 1,18 21,18 21,3 1,3 z M 2,4 20,4 20,17 2,17 2,4 z"
+ transform="translate(5.179559,14.648604)"
+ id="rect5151" />
+ <path
+ id="path5156"
+ transform="translate(5.179559,14.648604)"
+ d="M 2,4 2,17 20,17 20,4 z M 3,5 19,5 19,16 3,16 z"
+ style="opacity:0.4;fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
</g>
</g>
</g>
</g>
</g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.png b/icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.png
new file mode 100644
index 000000000000..420dbb421f0c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.svg b/icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.svg
new file mode 100644
index 000000000000..92e0f558e998
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.svg
@@ -0,0 +1,476 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_flowchartshapes.flowchart-internal-storage.png"
+ sodipodi:docname="lc_flowchartshapes.flowchart-internal-storage.svg"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:version="0.32"
+ id="svg1288"
+ height="24.000000px"
+ width="24.000000px"
+ version="1.1">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient2533">
+ <stop
+ style="stop-color:#959595;stop-opacity:1.0000000;"
+ offset="0.0000000"
+ id="stop2535" />
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;"
+ offset="1.0000000"
+ id="stop2537" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2056"
+ inkscape:collect="always">
+ <stop
+ id="stop2058"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop2060"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2218">
+ <stop
+ id="stop2220"
+ offset="0.0000000"
+ style="stop-color:#b6b6b6;stop-opacity:1.0000000;" />
+ <stop
+ id="stop2222"
+ offset="1.0000000"
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,55.80966,0.104330)"
+ gradientUnits="userSpaceOnUse"
+ y2="19.500000"
+ x2="16.256456"
+ y1="4.3914247"
+ x1="6.2532201"
+ id="linearGradient2224"
+ xlink:href="#linearGradient2218"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient1321"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,26.80966,0.104330)"
+ x1="-8.9244661"
+ y1="11.125187"
+ x2="-14.098917"
+ y2="0.27103925" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.000000,0.000000,0.000000,0.631579,1.223793e-16,7.184211)"
+ r="11.875000"
+ fy="19.500000"
+ fx="12.625000"
+ cy="19.500000"
+ cx="12.625000"
+ id="radialGradient2062"
+ xlink:href="#linearGradient2056"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2229"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,65.82356,0.104330)"
+ x1="6.2532201"
+ y1="4.3914247"
+ x2="16.256456"
+ y2="19.500000" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2527"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,81.32356,-0.395670)"
+ x1="-42.778759"
+ y1="-7.0079961"
+ x2="-33.970879"
+ y2="14.068008" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218"
+ id="linearGradient2529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.112640,0.000000,0.000000,1.112640,78.16958,0.630708)"
+ x1="6.2532201"
+ y1="4.3914247"
+ x2="16.256456"
+ y2="19.500000" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2533"
+ id="linearGradient2531"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.192114,0.000000,0.000000,1.192114,80.82356,-0.895670)"
+ x1="-32.398041"
+ y1="5.4174099"
+ x2="-27.679535"
+ y2="22.246758" />
+ <linearGradient
+ y2="13.460031"
+ x2="-51.140827"
+ y1="6.2774138"
+ x1="-63.251663"
+ gradientTransform="matrix(1.192114,0.000000,-1.001683e-17,1.192114,87.06125,-11.57533)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient1331"
+ xlink:href="#linearGradient2218"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="73.594872"
+ x2="-2.2400904"
+ y1="78.890167"
+ x1="-19.331446"
+ gradientTransform="matrix(0.000000,1.155211,-1.136763,0.000000,96.70109,25.77759)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2330"
+ xlink:href="#linearGradient2218-5"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="49.646511"
+ x2="-3.7979760"
+ y1="55.719353"
+ x1="-18.948881"
+ gradientTransform="matrix(0.000000,1.192114,-1.192114,0.000000,100.8265,26.12576)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2302"
+ xlink:href="#linearGradient2218-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient2218-5">
+ <stop
+ style="stop-color:#a2a2a2;stop-opacity:1.0000000;"
+ offset="0.0000000"
+ id="stop2220-5" />
+ <stop
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;"
+ offset="1.0000000"
+ id="stop2222-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2080">
+ <stop
+ id="stop2082"
+ offset="0.0000000"
+ style="stop-color:#8d8d8d;stop-opacity:1.0000000;" />
+ <stop
+ id="stop2084"
+ offset="1.0000000"
+ style="stop-color:#f0f0f0;stop-opacity:1.0000000;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2218-5"
+ id="linearGradient3969"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.155211,-1.136763,0,96.70109,25.77759)"
+ x1="-19.331446"
+ y1="78.890167"
+ x2="-2.2400904"
+ y2="73.594872" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3971"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:window-y="30"
+ inkscape:window-x="0"
+ inkscape:window-height="715"
+ inkscape:window-width="681"
+ inkscape:document-units="px"
+ inkscape:grid-bbox="true"
+ showgrid="false"
+ inkscape:current-layer="layer1"
+ inkscape:cy="7.9804011"
+ inkscape:cx="17.625666"
+ inkscape:zoom="1"
+ inkscape:pageshadow="2"
+ inkscape:pageopacity="0.0"
+ borderopacity="1.0"
+ bordercolor="#666666"
+ pagecolor="#ffffff"
+ id="base"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3967"
+ empspacing="5"
+ visible="true"
+ enabled="true"
+ snapvisiblegridlinesonly="true" />
+ </sodipodi:namedview>
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:groupmode="layer"
+ inkscape:label="Layer 1"
+ id="layer1">
+ <rect
+ style="font-family:Bitstream Vera Sans;overflow:visible;display:inline;visibility:visible;stroke-opacity:1.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000;visibility:visible;display:inline;overflow:visible;font-family:Bitstream Vera Sans;stroke-dasharray:none;stroke-miterlimit:4.0000000;marker-end:none;marker-mid:none;marker-start:none;marker:none;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000002;stroke:#ffffff;fill-rule:evenodd;fill-opacity:1.0000000;fill:none;color:#000000;opacity:0.58857143"
+ id="rect2236"
+ width="12.963213"
+ height="13.149700"
+ x="10.707710"
+ y="-6.4480376"
+ transform="matrix(0.707107,0.707107,-0.707107,0.707107,0.000000,0.000000)" />
+ <g
+ transform="translate(1,1)"
+ id="g3102">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1-4"
+ inkscape:label="Ebene 1">
+ <g
+ transform="translate(2,4)"
+ id="g3927">
+ <g
+ id="g3862"
+ transform="translate(-3,4)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="0"
+ x="3"
+ height="22"
+ width="22"
+ id="rect2998"
+ style="fill:url(#linearGradient3971);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851"
+ transform="translate(0,1028.3622)"
+ d="M 3,0 3,22 25,22 25,0 z M 4,1 24,1 24,21 4,21 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ d="M 4,1 4,21 24,21 24,1 z M 5,2 23,2 23,20 5,20 z"
+ transform="translate(0,1028.3622)"
+ id="path3860" />
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none;opacity:0.4"
+ id="rect3973"
+ width="1"
+ height="19.999983"
+ x="9"
+ y="1029.3622" />
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none;opacity:0.4"
+ id="rect3975"
+ width="20"
+ height="1"
+ x="4"
+ y="1034.3622" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_flowchartshapes.png b/icon-themes/tango_testing/cmd/lc_flowchartshapes.png
new file mode 100644
index 000000000000..420dbb421f0c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_flowchartshapes.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_fontwork galleryfloater.png b/icon-themes/tango_testing/cmd/lc_fontwork galleryfloater.png
new file mode 100644
index 000000000000..d767f68742e4
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_fontwork galleryfloater.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_fontwork.png b/icon-themes/tango_testing/cmd/lc_fontwork.png
new file mode 100644
index 000000000000..d767f68742e4
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_fontwork.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_fontwork.svg b/icon-themes/tango_testing/cmd/lc_fontwork.svg
new file mode 100644
index 000000000000..8e1db4ab3a93
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_fontwork.svg
@@ -0,0 +1,4577 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="26"
+ height="26"
+ sodipodi:docname="lc_fontwork.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_fontwork.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ id="linearGradient5155">
+ <stop
+ style="stop-color:#fffb8a;stop-opacity:1;"
+ offset="0"
+ id="stop5157" />
+ <stop
+ style="stop-color:#ffb513;stop-opacity:1;"
+ offset="1"
+ id="stop5159" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5134">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop5136" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop5138" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4869">
+ <stop
+ style="stop-color:#edd400;stop-opacity:1;"
+ offset="0"
+ id="stop4871" />
+ <stop
+ style="stop-color:#c4a000;stop-opacity:1;"
+ offset="1"
+ id="stop4873" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4838">
+ <stop
+ id="stop4840"
+ offset="0"
+ style="stop-color:#fef4a8;stop-opacity:1;" />
+ <stop
+ id="stop4842"
+ offset="1"
+ style="stop-color:#fce94f;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4419">
+ <stop
+ id="stop4421"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4423"
+ offset="1"
+ style="stop-color:#c2c2c2;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4401">
+ <stop
+ style="stop-color:#666666;stop-opacity:1;"
+ offset="0"
+ id="stop4403" />
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="1"
+ id="stop4405" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-28-2-3-4">
+ <stop
+ id="stop6979-4-5-5-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-9" />
+ <stop
+ id="stop6985-44-1-5-4"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8572-93"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient6427-7-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-2"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-9"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8556-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8702363e-7,3.6935782,-2.0071418,-2.623971e-7,484.82867,188.8817)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-3"
+ id="linearGradient8558-4"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17535155)" />
+ <linearGradient
+ id="linearGradient4157-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8560-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.870241e-7,3.6935775,-2.0071438,-2.6239705e-7,484.82905,188.88459)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-3"
+ id="linearGradient8562-1"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientTransform="matrix(1.0035718,0,0,0.99927966,-0.33510308,0.17828314)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8568-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8702364e-7,3.6935782,-2.0071419,-2.623971e-7,484.82869,188.87882)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-3"
+ id="linearGradient8570-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17247104)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8588-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,141.96976,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-3"
+ id="linearGradient8590-0"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(0.18066923,0,0,1,54.627495,0)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11614-5"
+ xlink:href="#linearGradient6427-7-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient11616-4"
+ xlink:href="#linearGradient4157-3"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient3197-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,192.84632)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-3"
+ id="linearGradient3199-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,4.003979)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient3203-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,196.8503)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-3"
+ id="linearGradient3205-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,8.007958)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7"
+ id="radialGradient8572-9-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient6427-7-3-7"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-1-4"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-2-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7"
+ id="radialGradient11632-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7"
+ id="radialGradient8598-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-1-5"
+ id="linearGradient8600-5"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)" />
+ <linearGradient
+ id="linearGradient4157-1-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-9-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-2-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7"
+ id="radialGradient8606-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-1-5"
+ id="linearGradient8608-0"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11681-0"
+ xlink:href="#linearGradient6427-7-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11683-8"
+ xlink:href="#linearGradient6427-7-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7"
+ id="radialGradient3326-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19171-3"
+ id="linearGradient5339-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2014178,0,0,1.2168276,-149.58638,71.496922)"
+ x1="762.9682"
+ y1="-330.68475"
+ x2="750.77057"
+ y2="-315.9939" />
+ <linearGradient
+ id="linearGradient19171-3">
+ <stop
+ id="stop19173-4"
+ offset="0"
+ style="stop-color:#bc0e0e;stop-opacity:1;" />
+ <stop
+ id="stop19175-5"
+ offset="1"
+ style="stop-color:#830a0a;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-7"
+ id="linearGradient5341-8"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6373-6-1-3-1-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6375-5-2-6-3-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6377-0-1-2-5-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-7"
+ id="linearGradient5343-4"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-7"
+ id="linearGradient5443-9"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-7"
+ id="linearGradient5445-8"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient11751-8"
+ xlink:href="#linearGradient6373-6-1-3-1-7"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7"
+ id="radialGradient3401-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="translate(-18.915107,-19.26866)"
+ gradientUnits="userSpaceOnUse"
+ y2="14.337278"
+ x2="7.9375"
+ y1="2.2435279"
+ x1="10.761048"
+ id="linearGradient4272-0"
+ xlink:href="#linearGradient4266-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-18.915107,-19.26866)"
+ gradientUnits="userSpaceOnUse"
+ y2="11.697508"
+ x2="7.2257013"
+ y1="4.8850074"
+ x1="8.4636116"
+ id="linearGradient4264-7"
+ xlink:href="#linearGradient4258-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4258-0">
+ <stop
+ id="stop4260-5"
+ offset="0"
+ style="stop-color:#ef2929;stop-opacity:1;" />
+ <stop
+ id="stop4262-7"
+ offset="1"
+ style="stop-color:#cc0000;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4266-5">
+ <stop
+ id="stop4268-1"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4270-1"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4088-2">
+ <stop
+ id="stop4090-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4092-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4838"
+ id="linearGradient4863"
+ gradientUnits="userSpaceOnUse"
+ x1="-8.832531"
+ y1="25.060659"
+ x2="6.0041032"
+ y2="25.060659" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4838"
+ id="linearGradient5055"
+ gradientUnits="userSpaceOnUse"
+ x1="-8.832531"
+ y1="25.060659"
+ x2="6.0041032"
+ y2="25.060659" />
+ <linearGradient
+ id="linearGradient4088">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4090" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4092" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4266">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4268" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4270" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4258">
+ <stop
+ style="stop-color:#ef2929;stop-opacity:1;"
+ offset="0"
+ id="stop4260" />
+ <stop
+ style="stop-color:#cc0000;stop-opacity:1;"
+ offset="1"
+ id="stop4262" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4264"
+ x1="8.4636116"
+ y1="4.8850074"
+ x2="7.2257013"
+ y2="11.697508"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4272"
+ x1="10.761048"
+ y1="2.2435279"
+ x2="7.9375"
+ y2="14.337278"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3401"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient11751"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5445"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5443"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6373-6-1-3-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6375-5-2-6-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6377-0-1-2-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5341"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient19171">
+ <stop
+ style="stop-color:#bc0e0e;stop-opacity:1;"
+ offset="0"
+ id="stop19173" />
+ <stop
+ style="stop-color:#830a0a;stop-opacity:1;"
+ offset="1"
+ id="stop19175" />
+ </linearGradient>
+ <linearGradient
+ y2="-315.9939"
+ x2="750.77057"
+ y1="-330.68475"
+ x1="762.9682"
+ gradientTransform="matrix(1.2014178,0,0,1.2168276,-149.58638,71.496922)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339"
+ xlink:href="#linearGradient19171"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3326"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient11683"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient11681"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8608"
+ xlink:href="#linearGradient4157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8606"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-2" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8600"
+ xlink:href="#linearGradient4157-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8598"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11632"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-2" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572-9"
+ xlink:href="#linearGradient6427-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,8.007958)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3205"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,196.8503)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3203"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,4.003979)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3199"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,192.84632)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3197"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient11616"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,0)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient11614"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(0.18066923,0,0,1,54.627495,0)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8590"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,141.96976,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8588"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17247104)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8570"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702364e-7,3.6935782,-2.0071419,-2.623971e-7,484.82869,188.87882)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8568"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035718,0,0,0.99927966,-0.33510308,0.17828314)"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8562"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.870241e-7,3.6935775,-2.0071438,-2.6239705e-7,484.82905,188.88459)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8560"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17535155)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8558"
+ xlink:href="#linearGradient4157"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702363e-7,3.6935782,-2.0071418,-2.623971e-7,484.82867,188.8817)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8556"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572"
+ xlink:href="#linearGradient6427-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258"
+ id="linearGradient4068"
+ x1="8.3684635"
+ y1="0.69840777"
+ x2="6.5697818"
+ y2="16.076845"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4088"
+ id="linearGradient4082"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1"
+ id="linearGradient4086"
+ gradientUnits="userSpaceOnUse"
+ x1="-0.41297555"
+ y1="8.1334372"
+ x2="16.588043"
+ y2="8.1334372" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266"
+ id="linearGradient4100"
+ x1="11.859842"
+ y1="2.9363194"
+ x2="11.13939"
+ y2="16.50366"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9469"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256"
+ inkscape:collect="always">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-59"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9467"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-9-4">
+ <stop
+ id="stop7115-8-20-7"
+ offset="0"
+ style="stop-color:#01004b;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41"
+ offset="1"
+ style="stop-color:#0836ae;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9465"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-1">
+ <stop
+ id="stop6983-3-5-43-6"
+ offset="0"
+ style="stop-color:#31327f;stop-opacity:1;" />
+ <stop
+ style="stop-color:#66d8ff;stop-opacity:1;"
+ offset="1"
+ id="stop6985-44-1-5-1" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9463"
+ xlink:href="#linearGradient6977-28-2-3-1"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4419"
+ id="linearGradient5147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2000001,0,0,1,51.469364,-9.24195)"
+ x1="13"
+ y1="39"
+ x2="13"
+ y2="42" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4401"
+ id="linearGradient5149"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.5999983,0,0,1,33.469391,-9.241949)"
+ x1="13"
+ y1="39"
+ x2="13"
+ y2="42" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5134"
+ id="linearGradient5151"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="42"
+ x2="25"
+ y2="39" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5155"
+ id="linearGradient5165"
+ gradientUnits="userSpaceOnUse"
+ x1="-26.607229"
+ y1="-1.000753"
+ x2="-25.820551"
+ y2="7.2492471" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5155"
+ id="linearGradient5169"
+ gradientUnits="userSpaceOnUse"
+ x1="-26.607229"
+ y1="-1.000753"
+ x2="-25.820551"
+ y2="7.2492471" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5155"
+ id="linearGradient5173"
+ gradientUnits="userSpaceOnUse"
+ x1="-26.607229"
+ y1="-1.000753"
+ x2="-25.820551"
+ y2="7.2492471" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9469-4"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9467-2"
+ xlink:href="#linearGradient4256-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9465-4"
+ xlink:href="#linearGradient7113-62-9-4-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-5" />
+ <stop
+ id="stop6981-1-2-8-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-6" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9463-1"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-9"
+ id="radialGradient9463-1-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-9">
+ <stop
+ id="stop6979-4-5-5-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-8-1" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-2-7" />
+ <stop
+ id="stop6985-44-1-5-6-9"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-8-7"
+ id="linearGradient9465-4-8"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-8-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-0-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-0-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8-6"
+ id="linearGradient9467-2-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-8-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-7-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-2-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8-6"
+ id="linearGradient9469-4-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8-6"
+ id="radialGradient3814-3"
+ cx="4.75"
+ cy="3.625"
+ fx="4.75"
+ fy="3.625"
+ r="3.59375"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="7.2492471"
+ x2="-25.820551"
+ y1="-1.000753"
+ x1="-26.607229"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5173-7"
+ xlink:href="#linearGradient5155-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.2492471"
+ x2="-25.820551"
+ y1="-1.000753"
+ x1="-26.607229"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5169-0"
+ xlink:href="#linearGradient5155-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7.2492471"
+ x2="-25.820551"
+ y1="-1.000753"
+ x1="-26.607229"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5165-1"
+ xlink:href="#linearGradient5155-6"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="39"
+ x2="25"
+ y1="42"
+ x1="25"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5151-7"
+ xlink:href="#linearGradient5134-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="42"
+ x2="13"
+ y1="39"
+ x1="13"
+ gradientTransform="matrix(3.5999983,0,0,1,33.469391,-9.241949)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5149-9"
+ xlink:href="#linearGradient4401-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="42"
+ x2="13"
+ y1="39"
+ x1="13"
+ gradientTransform="matrix(1.2000001,0,0,1,51.469364,-9.24195)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5147-8"
+ xlink:href="#linearGradient4419-5"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-1-6"
+ id="radialGradient9463-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-1-6">
+ <stop
+ style="stop-color:#31327f;stop-opacity:1;"
+ offset="0"
+ id="stop6983-3-5-43-6-9" />
+ <stop
+ id="stop6985-44-1-5-1-1"
+ offset="1"
+ style="stop-color:#66d8ff;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-9"
+ id="linearGradient9465-7"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-9">
+ <stop
+ style="stop-color:#01004b;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-5" />
+ <stop
+ style="stop-color:#0836ae;stop-opacity:1;"
+ offset="1"
+ id="stop7117-6-9-41-07" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-1"
+ id="linearGradient9467-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-59-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-1"
+ id="linearGradient9469-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="16.50366"
+ x2="11.13939"
+ y1="2.9363194"
+ x1="11.859842"
+ id="linearGradient4100-3"
+ xlink:href="#linearGradient4266-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="8.1334372"
+ x2="16.588043"
+ y1="8.1334372"
+ x1="-0.41297555"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4086-1"
+ xlink:href="#linearGradient6373-6-1-3-1-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="8.1334372"
+ x2="16.588043"
+ y1="8.1334372"
+ x1="-0.41297555"
+ id="linearGradient4082-7"
+ xlink:href="#linearGradient4088-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="16.076845"
+ x2="6.5697818"
+ y1="0.69840777"
+ x1="8.3684635"
+ id="linearGradient4068-8"
+ xlink:href="#linearGradient4258-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-2">
+ <stop
+ id="stop6979-4-5-5-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-3" />
+ <stop
+ id="stop6985-44-1-5-48"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-1"
+ id="radialGradient8572-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient6427-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-19"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-8"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-1"
+ id="radialGradient8556-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8702363e-7,3.6935782,-2.0071418,-2.623971e-7,484.82867,188.8817)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-4"
+ id="linearGradient8558-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17535155)" />
+ <linearGradient
+ id="linearGradient4157-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-12"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-1"
+ id="radialGradient8560-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.870241e-7,3.6935775,-2.0071438,-2.6239705e-7,484.82905,188.88459)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-4"
+ id="linearGradient8562-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientTransform="matrix(1.0035718,0,0,0.99927966,-0.33510308,0.17828314)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-1"
+ id="radialGradient8568-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8702364e-7,3.6935782,-2.0071419,-2.623971e-7,484.82869,188.87882)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-4"
+ id="linearGradient8570-22"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17247104)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-1"
+ id="radialGradient8588-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,141.96976,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-4"
+ id="linearGradient8590-8"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(0.18066923,0,0,1,54.627495,0)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11614-2"
+ xlink:href="#linearGradient6427-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient11616-0"
+ xlink:href="#linearGradient4157-4"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-1"
+ id="radialGradient3197-35"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,192.84632)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-4"
+ id="linearGradient3199-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,4.003979)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-1"
+ id="radialGradient3203-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,196.8503)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-4"
+ id="linearGradient3205-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,8.007958)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-9"
+ id="radialGradient8572-9-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient6427-7-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop6429-5-1-1"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop6431-3-2-5"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-9"
+ id="radialGradient11632-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-9"
+ id="radialGradient8598-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-1-1"
+ id="linearGradient8600-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)" />
+ <linearGradient
+ id="linearGradient4157-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4159-9-12"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4161-2-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-9"
+ id="radialGradient8606-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-1-1"
+ id="linearGradient8608-8"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11681-04"
+ xlink:href="#linearGradient6427-7-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11683-3"
+ xlink:href="#linearGradient6427-7-3-9"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-9"
+ id="radialGradient3326-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19171-4"
+ id="linearGradient5339-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2014178,0,0,1.2168276,-149.58638,71.496922)"
+ x1="762.9682"
+ y1="-330.68475"
+ x2="750.77057"
+ y2="-315.9939" />
+ <linearGradient
+ id="linearGradient19171-4">
+ <stop
+ id="stop19173-1"
+ offset="0"
+ style="stop-color:#bc0e0e;stop-opacity:1;" />
+ <stop
+ id="stop19175-2"
+ offset="1"
+ style="stop-color:#830a0a;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-4"
+ id="linearGradient5341-9"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6373-6-1-3-1-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop6375-5-2-6-3-99" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop6377-0-1-2-5-09" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-4"
+ id="linearGradient5343-8"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-4"
+ id="linearGradient5443-4"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-4"
+ id="linearGradient5445-4"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient11751-9"
+ xlink:href="#linearGradient6373-6-1-3-1-4"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-9"
+ id="radialGradient3401-43"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="translate(-18.915107,-19.26866)"
+ gradientUnits="userSpaceOnUse"
+ y2="14.337278"
+ x2="7.9375"
+ y1="2.2435279"
+ x1="10.761048"
+ id="linearGradient4272-9"
+ xlink:href="#linearGradient4266-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-18.915107,-19.26866)"
+ gradientUnits="userSpaceOnUse"
+ y2="11.697508"
+ x2="7.2257013"
+ y1="4.8850074"
+ x1="8.4636116"
+ id="linearGradient4264-0"
+ xlink:href="#linearGradient4258-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4258-2">
+ <stop
+ id="stop4260-7"
+ offset="0"
+ style="stop-color:#ef2929;stop-opacity:1;" />
+ <stop
+ id="stop4262-72"
+ offset="1"
+ style="stop-color:#cc0000;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4266-7">
+ <stop
+ id="stop4268-3"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4270-6"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4088-5">
+ <stop
+ id="stop4090-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4092-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="25.060659"
+ x2="6.0041032"
+ y1="25.060659"
+ x1="-8.832531"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5055-0"
+ xlink:href="#linearGradient4838-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="25.060659"
+ x2="6.0041032"
+ y1="25.060659"
+ x1="-8.832531"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4863-9"
+ xlink:href="#linearGradient4838-7"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4088-2-2">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4090-8-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4092-8-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4266-5-8">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4268-1-3" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4270-1-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4258-0-1">
+ <stop
+ style="stop-color:#ef2929;stop-opacity:1;"
+ offset="0"
+ id="stop4260-5-4" />
+ <stop
+ style="stop-color:#cc0000;stop-opacity:1;"
+ offset="1"
+ id="stop4262-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4258-0-1"
+ id="linearGradient4264-7-3"
+ x1="8.4636116"
+ y1="4.8850074"
+ x2="7.2257013"
+ y2="11.697508"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4266-5-8"
+ id="linearGradient4272-0-7"
+ x1="10.761048"
+ y1="2.2435279"
+ x2="7.9375"
+ y2="14.337278"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-18.915107,-19.26866)" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3401-4-7"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6373-6-1-3-1-7-1"
+ id="linearGradient11751-8-9"
+ gradientUnits="userSpaceOnUse"
+ spreadMethod="repeat"
+ x1="746.80579"
+ y1="-327.37344"
+ x2="764.95691"
+ y2="-322.54129" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5445-8-8"
+ xlink:href="#linearGradient6373-6-1-3-1-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5443-9-0"
+ xlink:href="#linearGradient6373-6-1-3-1-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5343-4-2"
+ xlink:href="#linearGradient6373-6-1-3-1-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6373-6-1-3-1-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop6375-5-2-6-3-9-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop6377-0-1-2-5-0-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="-322.54129"
+ x2="764.95691"
+ y1="-327.37344"
+ x1="746.80579"
+ spreadMethod="repeat"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5341-8-8"
+ xlink:href="#linearGradient6373-6-1-3-1-7-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient19171-3-5">
+ <stop
+ style="stop-color:#bc0e0e;stop-opacity:1;"
+ offset="0"
+ id="stop19173-4-2" />
+ <stop
+ style="stop-color:#830a0a;stop-opacity:1;"
+ offset="1"
+ id="stop19175-5-1" />
+ </linearGradient>
+ <linearGradient
+ y2="-315.9939"
+ x2="750.77057"
+ y1="-330.68475"
+ x1="762.9682"
+ gradientTransform="matrix(1.2014178,0,0,1.2168276,-149.58638,71.496922)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5339-4-1"
+ xlink:href="#linearGradient19171-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3326-2-9"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ id="radialGradient11683-8-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ id="radialGradient11681-0-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(1.02565,0,0,0.99487738,-54.39532,1.1526423)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8608-0-1"
+ xlink:href="#linearGradient4157-1-5-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9773846e-7,3.6773056,-2.0513002,-2.6124107e-7,441.44227,189.02761)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8606-9-1"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-1-5-1">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-9-1-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-2-6-6" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0257562,0,0,0.99049109,-54.415745,4.2436177)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8600-5-0"
+ xlink:href="#linearGradient4157-1-5-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.9779e-7,3.6610927,-2.0515127,-2.6008928e-7,441.47318,191.29026)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8598-5-4"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient11632-4-1"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-3-7-4">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-1-4-7" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-2-4-7" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572-9-5-5"
+ xlink:href="#linearGradient6427-7-3-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,8.007958)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3205-4-2"
+ xlink:href="#linearGradient4157-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,196.8503)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3203-7-1"
+ xlink:href="#linearGradient6427-7-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,4.003979)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3199-2-9"
+ xlink:href="#linearGradient4157-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,192.84632)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3197-3-7"
+ xlink:href="#linearGradient6427-7-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-3-5"
+ id="linearGradient11616-4-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.18066923,0,0,1,52.804188,0)"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9-4"
+ id="radialGradient11614-5-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,140.14646,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ gradientTransform="matrix(0.18066923,0,0,1,54.627495,0)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8590-0-7"
+ xlink:href="#linearGradient4157-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-8.7677107e-8,3.69624,-0.36133852,-2.625862e-7,141.96976,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8588-7-9"
+ xlink:href="#linearGradient6427-7-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17247104)"
+ y2="238"
+ x2="73"
+ y1="241"
+ x1="73"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8570-2-2"
+ xlink:href="#linearGradient4157-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702364e-7,3.6935782,-2.0071419,-2.623971e-7,484.82869,188.87882)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8568-1-9"
+ xlink:href="#linearGradient6427-7-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1.0035718,0,0,0.99927966,-0.33510308,0.17828314)"
+ y2="246"
+ x2="81"
+ y1="249"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8562-1-9"
+ xlink:href="#linearGradient4157-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.870241e-7,3.6935775,-2.0071438,-2.6239705e-7,484.82905,188.88459)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8560-3-1"
+ xlink:href="#linearGradient6427-7-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-3-5">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-1-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-1-7" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1.0035708,0,0,0.99927987,-0.33500698,0.17535155)"
+ y2="242"
+ x2="81"
+ y1="245"
+ x1="81"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient8558-4-9"
+ xlink:href="#linearGradient4157-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8702363e-7,3.6935782,-2.0071418,-2.623971e-7,484.82867,188.8817)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8556-0-8"
+ xlink:href="#linearGradient6427-7-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-9-4">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-2-6" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-9-8" />
+ </linearGradient>
+ <radialGradient
+ r="11"
+ fy="205.21869"
+ fx="13.03634"
+ cy="205.21869"
+ cx="13.03634"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8572-93-8"
+ xlink:href="#linearGradient6427-7-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-4-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-1-1" />
+ <stop
+ id="stop6981-1-2-8-9-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-9-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4401-3">
+ <stop
+ id="stop4403-0"
+ offset="0"
+ style="stop-color:#666666;stop-opacity:1;" />
+ <stop
+ id="stop4405-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4419-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4421-6" />
+ <stop
+ style="stop-color:#c2c2c2;stop-opacity:1;"
+ offset="1"
+ id="stop4423-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4838-7">
+ <stop
+ style="stop-color:#fef4a8;stop-opacity:1;"
+ offset="0"
+ id="stop4840-0" />
+ <stop
+ style="stop-color:#fce94f;stop-opacity:1;"
+ offset="1"
+ id="stop4842-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4869-6">
+ <stop
+ id="stop4871-4"
+ offset="0"
+ style="stop-color:#edd400;stop-opacity:1;" />
+ <stop
+ id="stop4873-5"
+ offset="1"
+ style="stop-color:#c4a000;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5134-2"
+ inkscape:collect="always">
+ <stop
+ id="stop5136-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop5138-0"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5155-6">
+ <stop
+ id="stop5157-6"
+ offset="0"
+ style="stop-color:#fffb8a;stop-opacity:1;" />
+ <stop
+ id="stop5159-4"
+ offset="1"
+ style="stop-color:#ffb513;stop-opacity:1;" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="698"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="2.8284271"
+ inkscape:cx="-70.886162"
+ inkscape:cy="-4.8970841"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="layer1-3-6">
+ <inkscape:grid
+ type="xygrid"
+ id="grid4341" />
+ </sodipodi:namedview>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-3"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-71">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3-2">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7-0">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-9">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-1">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ transform="translate(22.334963,-1020.8596)"
+ id="layer1-8"
+ inkscape:label="Ebene 1">
+ <g
+ inkscape:label=""
+ id="lc_color-0">
+ <g
+ transform="translate(-576.52153,586.70452)"
+ style="display:inline"
+ id="g6159-7"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/fontcolor.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <g
+ transform="translate(551.19928,446.65834)"
+ style="display:inline;enable-background:new"
+ id="g16-8-6">
+ <g
+ transform="translate(-180,60)"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g5518-3">
+ <g
+ transform="translate(0,-0.5)"
+ id="g9457-9">
+ <g
+ id="g3612"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ transform="translate(240.98463,-57.969794)">
+ <path
+ inkscape:connector-curvature="0"
+ d="m -54.984835,0.4701882 c -0.133754,-0.003858 -0.263185,0.0475806 -0.357802,0.142198 -0.09462,0.0946175 -0.146056,0.2240483 -0.142198,0.357802 l 0,1 c -0.0039,0.1337537 0.04758,0.2631845 0.142198,0.357802 0.09462,0.094617 0.224048,0.146056 0.357802,0.142198 3.000107,0 2.771516,0.00347 3.625,0.25 0.426742,0.1232654 0.569536,0.264441 0.6875,0.46875 0.117964,0.204309 0.185652,0.5493391 0.1875,1.09375 l 0,0.1875 -2.5,0 c -1.178461,0.022794 -1.475394,0.016591 -2.5625,0.4375 -0.543553,0.2104548 -1.058614,0.5497257 -1.40625,1.0625 -0.347636,0.5127743 -0.53125,1.1789739 -0.53125,2 0,0.7635038 0.03698,1.348337 0.15625,1.84375 0.119266,0.4954128 0.35812,0.9262468 0.75,1.1874998 0.783759,0.522506 0.84375,0.46875 2.59375,0.46875 1.404462,0.01929 2.49198,-0.296984 3.5,-1.125 l 0,0.625 c -0.0039,0.133754 0.04758,0.263185 0.142198,0.357802 0.09462,0.09462 0.224048,0.146056 0.357802,0.142198 l 3,0 c 0.133754,0.0039 0.263185,-0.04758 0.357802,-0.142198 0.09462,-0.09462 0.146056,-0.224048 0.142198,-0.357802 l 0,-0.9999998 c 0.0039,-0.133754 -0.04758,-0.263185 -0.142198,-0.357802 -0.09462,-0.094617 -0.224048,-0.146056 -0.357802,-0.142198 l -1.5,0 0,-4.375 c 0,-1.0602805 -0.115145,-1.8704791 -0.34375,-2.53125 -0.228605,-0.6607709 -0.605172,-1.1848662 -1.125,-1.5 -1.039656,-0.6302677 -1.767285,-0.59375 -2.3125,-0.59375 -1.722754,0.0115436 -1.21625,0 -2.71875,0 z m 4.5,6 0,1.21875 c -0.703863,0.6613073 -2.05152,1.453548 -3.15625,1.65625 -0.584592,0.107264 -1.053007,0.038383 -1.34375,-0.15625 -0.290743,-0.194633 -0.502598,-0.5409526 -0.5,-1.34375 -0.0025,-0.4064377 0.06539,-0.6279229 0.1875,-0.78125 0.122114,-0.1533271 0.339791,-0.304434 0.75,-0.40625 0.7475,-0.1855336 2.132562,-0.1841946 4.0625,-0.1875 z"
+ id="path3614-8"
+ sodipodi:nodetypes="csccscsscccssssscccsccsccscccssccccsssssc"
+ style="font-size:21.15485954px;font-style:normal;font-weight:bold;color:#000000;fill:url(#radialGradient9463-1);fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient9465-4);stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Bitstream Vera Serif" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m -54.984835,0.9701882 0,1 c 1.190146,-4.095e-4 -0.642107,0.00912 0.71875,0 4.417035,0 4.28125,0.4663672 4.28125,4.125 l 0,4.8749998 2,0 1,0 0,-0.9999998 -2,0 0,-4.875 c 0,-4.122568 -1.789656,-4.125 -4.28125,-4.125 -1.726802,0.0115707 -0.21875,0 -1.71875,0 z m 3,4 c -1.899318,0.036737 -3.972849,0.028937 -4.71875,1.5625 0.983275,-0.526179 2.385547,-0.536713 3.71875,-0.5625 l 2,0 0,-0.6875 c -4.1e-4,-0.1208149 -0.02487,-0.2039587 -0.03125,-0.3125 l -0.96875,0 z"
+ id="path3616-7"
+ sodipodi:nodetypes="ccccccccccccccccccc"
+ style="font-size:21.15485954px;font-style:normal;font-weight:bold;opacity:0.4;fill:url(#linearGradient9467-2);fill-opacity:1;stroke:none;font-family:Bitstream Vera Serif" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m -55.891085,7.3139382 c -0.753659,0.255553 -1.099049,0.677001 -1.09375,1.53125 -0.0117,3.6144438 4.492137,1.6246468 6,0.0625 l 0,-0.21875 c -1.915234,1.278052 -5.009723,2.1606748 -5,-0.84375 -0.0012,-0.201118 0.05879,-0.370747 0.09375,-0.53125 z"
+ id="path3618-0"
+ sodipodi:nodetypes="ccccsc"
+ style="font-size:21.15485954px;font-style:normal;font-weight:bold;opacity:0.21072795;fill:url(#linearGradient9469-4);fill-opacity:1;stroke:none;font-family:Bitstream Vera Serif" />
+ </g>
+ </g>
+ </g>
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g126-0" />
+ <g
+ transform="matrix(1.1234418,0,-0.7136519,1.2607334,166.69725,2.9002995)"
+ style="fill:#fce94f;stroke:none;display:inline"
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/lapo/Desktop/format-text.png"
+ id="g128-7" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <g
+ transform="translate(-52.71813,14.480911)"
+ inkscape:label="Layer 1"
+ id="layer1">
+ <g
+ transform="translate(-0.0012353,0.011039)"
+ id="layer1-3"
+ inkscape:label="Layer 1">
+ <path
+ sodipodi:type="star"
+ style="fill:url(#linearGradient5169);fill-opacity:1;stroke:#d38300;stroke-width:0.64521596000000003;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-linecap:round;stroke-linejoin:round"
+ id="path5167"
+ sodipodi:sides="5"
+ sodipodi:cx="-25.25"
+ sodipodi:cy="2.125"
+ sodipodi:r1="6.1045575"
+ sodipodi:r2="2.3807776"
+ sodipodi:arg1="0.82884906"
+ sodipodi:arg2="1.4571676"
+ inkscape:flatsided="false"
+ inkscape:rounded="0"
+ inkscape:randomized="0"
+ d="m -21.125,6.6249999 -3.855057,-2.1345755 -3.275002,2.94826 0.838824,-4.325997 -3.815994,-2.20364967 4.373479,-0.53903781 0.916589,-4.31019032 1.864134,3.99285334 4.382476,-0.4601945 -3.22138,3.00675686 z"
+ transform="matrix(0.76825247,0.10434575,-0.10444972,0.76748772,77.807954,-4.2977632)"
+ inkscape:transform-center-x="-0.031444033"
+ inkscape:transform-center-y="-0.42153211" />
+ <g
+ id="g5142"
+ transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,39.988633,-71.406633)">
+ <rect
+ y="29.758051"
+ x="63.469364"
+ height="3"
+ width="6.000001"
+ id="rect5111"
+ style="fill:url(#linearGradient5147);fill-opacity:1;stroke:none" />
+ <rect
+ style="fill:url(#linearGradient5149);fill-opacity:1;stroke:none"
+ id="rect5121"
+ width="17.999992"
+ height="3"
+ x="69.469368"
+ y="29.758053" />
+ <path
+ id="rect5125"
+ transform="translate(53.469365,-9.24195)"
+ d="m 10,39 0,3 24,0 0,-3 -24,0 z m 1,1 22,0 0,1 -22,0 0,-1 z"
+ style="opacity:0.2;fill:url(#linearGradient5151);fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0" />
+ </g>
+ <path
+ inkscape:transform-center-y="-0.23216667"
+ inkscape:transform-center-x="-0.016627268"
+ transform="matrix(0.40626172,0.05747037,-0.05523434,0.4227082,83.594024,-8.2069464)"
+ d="m -21.125,6.6249999 -3.855057,-2.1345755 -3.275002,2.94826 0.838824,-4.325997 -3.815994,-2.20364967 4.373479,-0.53903781 0.916589,-4.31019032 1.864134,3.99285334 4.382476,-0.4601945 -3.22138,3.00675686 z"
+ inkscape:randomized="0"
+ inkscape:rounded="0"
+ inkscape:flatsided="false"
+ sodipodi:arg2="1.4571676"
+ sodipodi:arg1="0.82884906"
+ sodipodi:r2="2.3807776"
+ sodipodi:r1="6.1045575"
+ sodipodi:cy="2.125"
+ sodipodi:cx="-25.25"
+ sodipodi:sides="5"
+ id="path5163"
+ style="fill:url(#linearGradient5165);fill-opacity:1;stroke:#d38300;stroke-width:1.19555488000000021;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-linecap:round;stroke-linejoin:round"
+ sodipodi:type="star" />
+ <path
+ inkscape:transform-center-y="-0.33196008"
+ inkscape:transform-center-x="-0.023658492"
+ transform="matrix(0.57807284,0.08217315,-0.07859336,0.60440304,80.961476,-9.8808769)"
+ d="m -21.125,6.6249999 -3.855057,-2.1345755 -3.275002,2.94826 0.838824,-4.325997 -3.815994,-2.20364967 4.373479,-0.53903781 0.916589,-4.31019032 1.864134,3.99285334 4.382476,-0.4601945 -3.22138,3.00675686 z"
+ inkscape:randomized="0"
+ inkscape:rounded="0"
+ inkscape:flatsided="false"
+ sodipodi:arg2="1.4571676"
+ sodipodi:arg1="0.82884906"
+ sodipodi:r2="2.3807776"
+ sodipodi:r1="6.1045575"
+ sodipodi:cy="2.125"
+ sodipodi:cx="-25.25"
+ sodipodi:sides="5"
+ id="path5171"
+ style="fill:url(#linearGradient5173);fill-opacity:1;stroke:#d38300;stroke-width:0.83818174999999984;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-linecap:round;stroke-linejoin:round"
+ sodipodi:type="star" />
+ <g
+ id="layer1-7"
+ inkscape:label="Layer 1"
+ transform="translate(-68.152247,38.178513)">
+ <g
+ inkscape:label="Layer 1"
+ id="layer1-3-6"
+ transform="translate(-0.0012353,0.011039)" />
+ </g>
+ </g>
+ </g>
+ <style
+ type="text/css"
+ id="style1470-86">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-3-3">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-7-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-71-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-3-2-6"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-7-0-2"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-9-5"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-8-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ id="style1470-1-9"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGINnFGF0AAADAAAAFYUdQT1OwB73vAAAGJAAAAGZjbWFwAtwCtwAAADwA\
+AACEAAAAAQAAAAMAAAAMAAQAeAAAABoAEAADAAoAIABDAFAAVQBhAGYAaQBsAG8AcgB0AHn//wAA\
+ACAAQwBQAFUAYQBlAGkAbABuAHIAdAB5////4f+//7P/r/+k/6H/n/+d/5z/mv+Z/5UAAQAAAAAA\
+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERVHJlYnVjaGV0TVMtQm9sZAABAQE7+BsMAPgU\
+BPgcDBX7Yvy8HAgUHAfYBR6gAEiCgSX/i4seoABIgoEl/4uLDAf3Pw/3XBD3XhGRHAVbEgACAQE/\
+TENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVz\
+ZXJ2ZWQuL0ZTVHlwZSA4IGRlZgAAAAABACQAMQA2AEIARgBHAEoATQBPAFAAUwBVAFoAAAAPAgAB\
+ABsAHgCXAPEBPgHaAlICmwLlAwgDTQO+A+8ENwRvIPcU9/IV+ZT5lP2UB/0U9xQV+JT4lPyUBg78\
+lg73DhwEghwFaxUg+2sFxVEuqPsVG/sOJ1glPR89JGT7FfsxGvsxr/sQ1C8eL9PrXfcNG/ce9wC8\
+7tkf9w37ZgX7BSH7L1P7YRv7Yfszzvcb+wUf+wX3G1L3S/d9GvdtyvdJ9xL3Jh73JfcR9zXU91gb\
+9zz3GmlG8B8O0vgu+K8V/K/7mBwFuAeS90Hxj6gb93v3PmhE9h/2RMD7A/srGvvk+1r7PPwgbmON\
+kFoe+VAE/GkHhreuiaQb9wvhn7PCH8KypszkGvcs+w7X+4lwcImIch4O95X3KhwFuRX3mP51Bjyj\
+S7taHlq7zXLfG+nUo7zAH7+7pc3fGvpw95j+hAf7K1n7CiY2HjYm+xtg+z0b+z77F7XeLx8u3l33\
+DPcvGg5j+W/2FXRmZGxTdAhzUlB/Thv7BzCoxUkfScRq3fUa9xC67OjRHtHo9xiu9z8bqK6GgbMf\
+9xI7yvszLTx7bEweVfdWBbTh8aD3Cxv3N/cMZkHXH9dAsfsh+2Ma+3kH+yOoMsRmHnZndHVygwiC\
+cm6Hahtna5imbh9upniogaoIc/ghFZRga492G/tZKEr7FSvDW/cD9yrW1vcqHw65+tf4XxX9kQaQ\
+NqhIwVwIXMHUc+Yb9wbiqcbGH+z7UwVEM/sXZ/tDG/s3+xW76ywfLOpb9xr3Pxr3Pb/3HPT0HvTz\
+9xG/9yYb9y/3EV0u6R/pLrr7CvsjGmyEXX1NHv2I91AV+KIG9zF6NNn7MBv7IzM9+zFoHw78Cvlw\
+HAUBFZ1UYZRuG1xjd2JqH2piellQGoKLg4yCHvdy+2L7bv31+4759fsw92L3MQaQ9xey9dTcCNzT\
+6LP3BxvG1H5x4B8O/Jz33xwFzhWzrX1vqB+nbplpYxpjfWlvbx5ubml9YxtjaZmobx9up32tsxqz\
+ma2oqB6np62Zsxv7FRz6MhX59vsd92H4Gv7DBw73RhwFvhX3jscFHPtMB/sYsjzach5CZElmLhv7\
+BVLa9zEfDtn5zBb4/wfmes5otR61aFGgPBtmZIF2Yh9hdmpydGwI/Zr7jvrD90gHuScF28/vs/cZ\
+G/cT8GU/1R/UPrAh+x0a/SUHDqfM+K4V9ze69xnq8h7y6fcQvvcvG/c39xJaKOUf5Si4+xv7Pxr7\
+P137GzAmHiYv+xJZ+zMb+zf7Er7xMR8w8F73G/c9GveYFvuA4PsK9z7ZyarIuR64yKLj9wUa9302\
+9wj7PT1NbE5dHl1OdDX7AhoO+5T5hvnaFaheWppWG1FYcVZeH15WdEs/Gvz2+476w/eOKQfa0eiy\
+9wgb4M1+cbgfDvvT90H5+hX7EPdd9xD3bgb3jucF+8r3uvtd+7r8aQc+l1WjbB5ro7V7xxvHw5us\
+vx/7egd3UTiBIBsgOanIUh9Sx27h9wMaDmX49ftAFXBEUlA0XAhcMyVz+wkb93EH91Xru+zLcO1W\
+9xgf++P50wX3lwb3uP1495v5eAX3lwYO+PAU+v8VAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA\
+//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAABAAgAAQAmAAQAAAACAA4AIAAEAAH/2wAF/6AA\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+T1RUTwADACAAAQAQQ0ZGILKMO8AAAACwAAAMSUdQT1OvL77EAAAM/AAAAGxjbWFwAnkCWAAAADwA\
+AAB0AAAAAQAAAAMAAAAMAAQAaAAAABYAEAADAAYAIABDAFAAUwBlAGkAbwByAHUAef//AAAAIABB\
+AE8AUgBhAGcAawByAHQAef///+H/wf+2/7X/qP+n/6b/pP+j/6AAAQAAAAAAAAAAAAAAAAAAAAAA\
+AAAAAAABAAQCAAEBAQ1BcmlhbC1Cb2xkTVQAAQEBOvgbAfgUBPgcDBX76/xDHAgAHAdNBR6gAEiC\
+gSX/i4seoABIgoEl/4uLDAf3YA/3fxD3gRGTHAxBEgACAQFlckFyaWFsKFIpIFRyYWRlbWFyayBv\
+ZiBUaGUgTW9ub3R5cGUgQ29ycG9yYXRpb24gcGxjIHJlZ2lzdGVyZWQgaW4gdGhlIFVTIFBhdCAm\
+IFRNIE9mZi4gYW5kIGVsc2V3aGVyZS4vRlNUeXBlIDAgZGVmAAABAAEAACICADABADMBAEIEAEgC\
+AEwEAFMAAFUBAFoAAAAAGgIAAQAbAB4ATQENAZsCOgKqAzsEBgTaBVIF0wZLBtEHmQf6CBcIRQhU\
+CO4JTAnMCg0KawrICxzK95QWHAUA+pQc+wAH/nSrFfpUHATA/lQGDv4cDpEcBb8W+9YG+xT34QX8\
+3gb7DfvhBfvOBvjPHAW6BffNBrX+ChX7Xvi0+1r8tAUOkfcqHAW6FfjeBvcI4oaCxB/Egb53uGy4\
+bLBjqVgIqViaUUwaRnlMZlIeZlJYYExu5HHQX7tMCLtMo0I2Gkh8S2xMHmxMYFhWZlVlSXQ8glqG\
++wuH+1GKCPyHBve8HATGFfvn91YH9wfTjY6nH76Rs52oqAioqJmxuhq4f7ByqB5yp2WcWpEIjm42\
+jfsfG/s+/NsV/Bz3pgf2zo6RqB+3k6+fp6oIpqqZtL8at4CwdqoedqpsoWOZCJliNJL7GxsOkfrT\
++K8V97MwX/s0QvsLJT4ZPST7FmT7MRv7V/s0zvcZ+xEf+xH3GUz3Sfd7GveIyvdS9xL3Gx73G/cS\
+9zrO92Eb90f3JlYh9wQfzky9Maz7Cfu5RRh612fHVLcIt1RIoTwb+wEzZD1IH0c9afsS+0Ma+02s\
++xjOPB48zuFk9hvazqS9xB/EvbPapPYIDvcM5PloFfcpofcSuPAerNa5zsXGxMbKt9CoCLLm9Z73\
+Cxv3bPdBSPsa9xYf9xX7Gsz7TvuDGvuBS/tN+xX7GR77GvsV+0BI+2sb+277Qc73GfsVH/sV9xlL\
+90v3fRr3xZUV+zqx+xLYNh412Oxg9wob9wrstuDXH9bgsfcT9z4a9zxm9xFC3h7eQSm0+w4b+w4p\
+YThAH0A3ZvsS+z0aDiD3KRYcBbr4bwf3SPcJhHzCH9910VvEQgjEQacs+wkaMXs/ak4eak5iW1lo\
+WGhYc1eACH1EJYT7Ghv7Vfy9BhwEwgT8NPc2B/cJ2ZOash+ymqqjoqwIoayWsbYawHu3bK4ebK5j\
+oFuUCJJoRI4gGw6R9yoWHAW6+QMH9zH3Bn5x0h/ScMNctkgItkigPjQa+wJrMEpEHkpDK177FXjL\
+ZsBitV60XsM80vsG90f7shj79gb7avfTP/cGV9NvqRlvqG2gbJYIlmxZkEcbT/z4BvniBPdvBvci\
+5JGXrh+ul6egn6gIn6iVsLcavH6zcaoecKlmnluTCI5zQ437DBv7ewYOINX4cRX3tKecKq9EwF4Z\
+XsDSdOUb6tOftLwfu7OjusEaroGod6QedqNooFidaJc8oPsPqvszsvsDvEvECDHcXu33CBrWoNG2\
+zB61zMi8260IrdrrnPcFG/dM9x9jOugf6Dq7IJD7G/u8fhh+1nDCYqwIrGFMmzgbNUh5aFofbHR7\
+bWUaaJpuqHIesGzmavckafckafZo0GfQZsFaskwIskyePS4aN3Q8XEIeXEJJVDZoCGc2IHn7Exv7\
+TfsjtuEoHyjgT/cRePc4CA774vf5+XYV+5O5qPK819G8GbzR86T3Hhv3Eel8bsgfyG23ZaReCKRd\
+lzf7DhqI+9wFLpBGlF8elF6bXKRYCPuqBoSegqaAsIaciJaJkFtcWGhUdAh0VFF/TRv7ATWpxkwf\
+TMZr1uYax5nBqLoeqLqzr7+kvqTWoOye9xek5qK+oAinB8F+snCiHqJwWZZBG1lkgXhvH293dGh6\
+Wgj4DPt4FWd/Un09ej16WHtzewhmcXlqYxpkmmmobh5uqLF9uBu+u5ysuR+tpKGqlrAIkqOPuc4a\
+DvcbFhwFuvet/KQH7uLxvPcLG/cV9lwu4B/gLbX7G/tDGvtJYPsgNSkeKTQiWvsPG05QmqpQH1Cp\
+WLhgxgj7MAed+L4V+wKcOq5WHkC8y2bcG8nApsC3H7bAod73Bhr3DXXjX8EewF9TpkYbSFNxV14f\
+XlZ1PCAaDvvi+sX5gBX7qVmCwna1aqcZp2pgmVYbRVNzW2IfYVp2OvsFGvsSoDK2Vx5XtcRx0hvA\
+t5qqrR+tqaO/mdX3qFwYbvsTVCw6SghKOvsBa/sdG/sv+xC87S8fLu1d9xz3QRr3Q7n3HejtHuzo\
+9xG89zIb9xXyb1TYH9dTwjas+wYIDvr1FvuZ9zAGYE5YXlBuCG1QT3xPG/sOI7zuNB807V/3HfdE\
+GvdItfcd4Oke6OD2uvcVG/cL8Voo4h/4pPetB/2C/iQV+wWbOapYHkK4y2bcG8zCp8K4H7jCot33\
+ARr3DnXjX8EewF9TpkYbSFRxVl4fXlZ0OyIaDvvi+Y735hX3rFxnJFI9PlYZVT0qcPsJG/tN+xzH\
+9w0yH0XsaPcO9yca90S59x7n7x7u5/cIvfchG/cy9xFXI+Yf5iK3+zSH+2sI/VQGjTiiSrZdCFy2\
+wXTMG7ewl6OpH6mjorKawAib97AVidx2yWO2CLVjWqBSG05YdV5jH2Ned0+MPggO9w1FFffVZJBm\
+mHGefRl3prWBxBvUwpahsB+kmp2imKwIlKKPtsoa9y8H+wc3IVL7FBv7I/sFx/cNOB9K6mr3C/ci\
+GvdGtvcc4eke6eD2uvcTG/cX9wFR+wfgH/cp95v+TQf7EYEtdk0edk1uWmZoZmhZb013CHdMPIEs\
+G/tI+xSqyUAfQMhl2eoalIuXjJge94/5AxX7BaE5t1ceVrbBccsb0MWmwbofusCj2/Qa9wJ03V7A\
+HsBeUaZGG0hTcVdgH19WdTsgGg74PxwFuhX8rwf15vcAwPcSG8zFf3O/H79zsmymZqVmnWGVXgiU\
+XpBELBr9A/ut+MUH9wOG0oCpHoCpeaNwnQiccGmUYhtcYoB0Zh9mdHFpel4Iel2CRzIa/Kj7rRwF\
+ugcO/hz3JxwEthX3mPet+5gH+60c+0oV+rr3rf66Bw774vcdFhwFuvet/Z4H9934CgX37gb7//wY\
++Bn9NgX7wwb7n/hx+xf7HQX76AcO/hz3JxYcBbr3rRz6RgcO9/D3Evq6FfeX+yUG9wXo9wLD9xQb\
+z8Z9b70fvW+0YatSusS9tcGnCKfBxZnIG9nNe2zBH8Frs1ymTgieXpVBJhr9O/ut+PMH9IHPeKoe\
+s3Fjn1UbZGZ/c2gfaHNyaHxdCHxcg0InGvyS+6342gfyhs6BqR6BqXyhdpoImnZukmcbYGR/dGgf\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_formatarea.png b/icon-themes/tango_testing/cmd/lc_formatarea.png
new file mode 100644
index 000000000000..651ab3b6c0d3
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_formatarea.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_formatarea.svg b/icon-themes/tango_testing/cmd/lc_formatarea.svg
new file mode 100644
index 000000000000..d0dfee36e503
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_formatarea.svg
@@ -0,0 +1,912 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_formatarea.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_formatarea.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7287">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7289" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop7291" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3155-40">
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="0"
+ id="stop2541" />
+ <stop
+ id="stop2543"
+ offset="0.13482948"
+ style="stop-color:#dbdbdb;stop-opacity:1;" />
+ <stop
+ style="stop-color:#a4a4a4;stop-opacity:1;"
+ offset="0.20224422"
+ id="stop2545" />
+ <stop
+ id="stop2547"
+ offset="0.26965895"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8d8d8d;stop-opacity:1;"
+ offset="0.44650277"
+ id="stop2549" />
+ <stop
+ id="stop2551"
+ offset="0.57114136"
+ style="stop-color:#959595;stop-opacity:1;" />
+ <stop
+ style="stop-color:#cecece;stop-opacity:1;"
+ offset="0.72038066"
+ id="stop2553" />
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="1"
+ id="stop2555" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-279">
+ <stop
+ id="stop2559"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2561" />
+ <stop
+ id="stop2563"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-789">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2567" />
+ <stop
+ id="stop2569"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2571" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-686">
+ <stop
+ id="stop2575"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2577" />
+ <stop
+ id="stop2579"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-768">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2583" />
+ <stop
+ id="stop2585"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2587" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-907">
+ <stop
+ id="stop2591"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2593" />
+ <stop
+ id="stop2595"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-699">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2599" />
+ <stop
+ id="stop2601"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2603" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3290-678">
+ <stop
+ style="stop-color:#ece5a5;stop-opacity:1;"
+ offset="0"
+ id="stop2607" />
+ <stop
+ style="stop-color:#fcfbf2;stop-opacity:1;"
+ offset="1"
+ id="stop2609" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3191-577">
+ <stop
+ style="stop-color:#dbce48;stop-opacity:1;"
+ offset="0"
+ id="stop2613" />
+ <stop
+ style="stop-color:#c5b625;stop-opacity:1;"
+ offset="1"
+ id="stop2615" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3104">
+ <stop
+ style="stop-color:#969696;stop-opacity:1;"
+ offset="0"
+ id="stop3106" />
+ <stop
+ style="stop-color:#bebebe;stop-opacity:1;"
+ offset="1"
+ id="stop3108" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5048">
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="0"
+ id="stop5050" />
+ <stop
+ id="stop5056"
+ offset="0.5"
+ style="stop-color:black;stop-opacity:1;" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop5052" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7271"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2159591,0,0,1.2159591,-29.41025,-34.416713)"
+ x1="13.75"
+ y1="15.622917"
+ x2="13.75"
+ y2="19.375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7273"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,0.05556162,0.02897257)"
+ x1="-13.161851"
+ y1="-9.2234287"
+ x2="-9.6678057"
+ y2="-5.485857" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3290-678"
+ id="linearGradient7275"
+ gradientUnits="userSpaceOnUse"
+ x1="9.1578083"
+ y1="10.668404"
+ x2="8.5107889"
+ y2="12.101003" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient7293"
+ x1="10.636931"
+ y1="17.100588"
+ x2="2.0026019"
+ y2="11.001792"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0.70710678,-0.53033009)" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9469"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256"
+ inkscape:collect="always">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9467"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9465"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9463"
+ xlink:href="#linearGradient6977-28-2-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4006"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4027"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4029"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4031"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4033"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4052"
+ gradientUnits="userSpaceOnUse"
+ x1="21.996094"
+ y1="3.8381946e-05"
+ x2="21.996094"
+ y2="14.000038"
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4054"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4056"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4058"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4060"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="750"
+ inkscape:window-height="421"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="true"
+ inkscape:zoom="1"
+ inkscape:cx="10.170499"
+ inkscape:cy="8.3024771"
+ inkscape:window-x="325"
+ inkscape:window-y="199"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="g4041">
+ <inkscape:grid
+ type="xygrid"
+ id="grid6327" />
+ </sodipodi:namedview>
+ <g
+ id="g7295"
+ transform="matrix(1.3343663,0,0,1.3343663,-8.0255703,-5.306729)">
+ <g
+ transform="matrix(0.74941941,0,0,0.74941941,30.934323,-759.48382)"
+ id="layer1-5"
+ inkscape:label="Ebene 1">
+ <g
+ inkscape:label=""
+ id="lc_color">
+ <g
+ transform="matrix(0.90485703,0,0,0.90485703,-555.82528,619.11926)"
+ style="display:inline"
+ id="g6159"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/fontcolor.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <g
+ transform="translate(-375.38918,735.35626)"
+ id="g9725">
+ <path
+ sodipodi:type="arc"
+ style="fill:#707070;fill-opacity:1;stroke:none"
+ id="path9397"
+ sodipodi:cx="959.25"
+ sodipodi:cy="-287.26282"
+ sodipodi:rx="6"
+ sodipodi:ry="6"
+ d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
+ transform="translate(-0.25,-0.375)" />
+ <path
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -1,6 2,0 z"
+ id="path9401"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3" />
+ <path
+ inkscape:transform-center-y="3.027185"
+ inkscape:connector-curvature="0"
+ id="path9403"
+ d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
+ style="fill:#ff2c09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.25942" />
+ <path
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#ffb509;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
+ id="path9405"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.848075" />
+ <path
+ inkscape:transform-center-y="2.47487"
+ inkscape:connector-curvature="0"
+ id="path9407"
+ d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
+ style="fill:#ffc109;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875" />
+ <path
+ inkscape:transform-center-x="-2.84808"
+ style="fill:#adff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
+ id="path9409"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.93301" />
+ <path
+ inkscape:transform-center-y="1.259415"
+ inkscape:connector-curvature="0"
+ id="path9411"
+ d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
+ style="fill:#92ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.02719" />
+ <path
+ inkscape:transform-center-x="-3.000005"
+ style="fill:#84ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
+ id="path9413"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9415"
+ d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
+ style="fill:#43ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.027185"
+ inkscape:transform-center-y="-1.259415" />
+ <path
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="-2.848075"
+ style="fill:#09ff11;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
+ id="path9417"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9419"
+ d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
+ style="fill:#09ff59;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875"
+ inkscape:transform-center-y="-2.474875" />
+ <path
+ inkscape:transform-center-y="-2.84808"
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#09ff68;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
+ id="path9421"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9423"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.000005" />
+ <path
+ inkscape:transform-center-y="-3.000005"
+ style="fill:#09ffff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ id="path9425"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9427"
+ d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
+ style="fill:#09ffa9;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.02719"
+ inkscape:transform-center-x="-1.259415" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ inkscape:transform-center-y="-3.027185"
+ style="fill:#09d2ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
+ id="path9429"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9431"
+ d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
+ style="fill:#0985ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-2.848075"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="2.47488"
+ inkscape:transform-center-y="-2.47487"
+ style="fill:#0947ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
+ id="path9433"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9435"
+ d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
+ style="fill:#092fff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="2.848085" />
+ <path
+ inkscape:transform-center-x="3.027195"
+ inkscape:transform-center-y="-1.259415"
+ style="fill:#5c09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
+ id="path9437"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9439"
+ d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
+ style="fill:#8d09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="3.00001" />
+ <path
+ inkscape:transform-center-x="3.02719"
+ style="fill:#cb09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
+ id="path9441"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.25942" />
+ <path
+ inkscape:transform-center-y="1.933015"
+ inkscape:connector-curvature="0"
+ id="path9443"
+ d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
+ style="fill:#b709ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="2.84808" />
+ <path
+ inkscape:transform-center-x="2.474875"
+ style="fill:#f709ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
+ id="path9445"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.47488" />
+ <path
+ inkscape:transform-center-y="2.848085"
+ inkscape:connector-curvature="0"
+ id="path9447"
+ d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
+ style="fill:#ff099d;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ style="fill:#ff0951;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
+ id="path9449"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.0272" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.15481651;stroke-opacity:1"
+ id="path9451"
+ sodipodi:cx="958.9375"
+ sodipodi:cy="-287.32532"
+ sodipodi:rx="5.8125"
+ sodipodi:ry="5.8125"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ transform="matrix(0.95698925,0,0,0.95698925,41.275874,-12.670578)" />
+ <path
+ transform="matrix(0.79569892,0,0,0.79569892,195.91197,-59.044622)"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ sodipodi:ry="5.8125"
+ sodipodi:rx="5.8125"
+ sodipodi:cy="-287.32532"
+ sodipodi:cx="958.9375"
+ id="path9453"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.38890088;stroke-opacity:1"
+ sodipodi:type="arc" />
+ </g>
+ <path
+ transform="matrix(1.6695652,0,0,1.6695657,575.5911,441.6055)"
+ d="m 8.34375,3.625 c 0,1.9847733 -1.6089767,3.59375 -3.59375,3.59375 -1.9847733,0 -3.59375,-1.6089767 -3.59375,-3.59375 0,-1.9847733 1.6089767,-3.59375 3.59375,-3.59375 1.9847733,0 3.59375,1.6089767 3.59375,3.59375 z"
+ sodipodi:ry="3.59375"
+ sodipodi:rx="3.59375"
+ sodipodi:cy="3.625"
+ sodipodi:cx="4.75"
+ id="path3038"
+ style="fill:url(#radialGradient3814);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ </g>
+ <g
+ id="g4014"
+ transform="translate(-28.008856,5.3831344e-4)">
+ <g
+ id="g4041"
+ transform="matrix(-1,0,0,-1,21.521026,2070.4773)">
+ <g
+ transform="matrix(0.99618591,0,0,0.88231695,-3.1643316,1030.3839)"
+ id="g3102"
+ style="fill:url(#linearGradient4060);fill-opacity:1">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1-8"
+ inkscape:label="Ebene 1"
+ style="fill:url(#linearGradient4058);fill-opacity:1">
+ <g
+ transform="matrix(1,0,0,-1,2,2079.7295)"
+ id="g3927"
+ style="fill:url(#linearGradient4056);fill-opacity:1">
+ <g
+ id="g3862"
+ transform="translate(-3,4)"
+ style="fill:url(#linearGradient4054);fill-opacity:1">
+ <rect
+ y="1025.3673"
+ x="8.9513483"
+ height="16.994833"
+ width="19.072744"
+ id="rect2998"
+ style="fill:url(#linearGradient4052);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ d="m 9.955177,-1.8673717 -1.3e-6,14.7398437 17.0650893,-0.0059 0,-14.7339347 z m 1.003829,1.13928866 15.05743,0 0,12.46717504 -15.05743,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3860" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ sodipodi:nodetypes="ccccc"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="m 3.274845,1042.2381 -0.01077,-13.9938 17.995022,-0.012 -0.0032,14.0118 z"
+ id="path3996"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_formatline.png b/icon-themes/tango_testing/cmd/lc_formatline.png
new file mode 100644
index 000000000000..b6d140e87cde
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_formatline.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_formatline.svg b/icon-themes/tango_testing/cmd/lc_formatline.svg
new file mode 100644
index 000000000000..239c5189ece6
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_formatline.svg
@@ -0,0 +1,761 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_formatline.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_formatline.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7287">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7289" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop7291" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3155-40">
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="0"
+ id="stop2541" />
+ <stop
+ id="stop2543"
+ offset="0.13482948"
+ style="stop-color:#dbdbdb;stop-opacity:1;" />
+ <stop
+ style="stop-color:#a4a4a4;stop-opacity:1;"
+ offset="0.20224422"
+ id="stop2545" />
+ <stop
+ id="stop2547"
+ offset="0.26965895"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8d8d8d;stop-opacity:1;"
+ offset="0.44650277"
+ id="stop2549" />
+ <stop
+ id="stop2551"
+ offset="0.57114136"
+ style="stop-color:#959595;stop-opacity:1;" />
+ <stop
+ style="stop-color:#cecece;stop-opacity:1;"
+ offset="0.72038066"
+ id="stop2553" />
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="1"
+ id="stop2555" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-279">
+ <stop
+ id="stop2559"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2561" />
+ <stop
+ id="stop2563"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-789">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2567" />
+ <stop
+ id="stop2569"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2571" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-686">
+ <stop
+ id="stop2575"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2577" />
+ <stop
+ id="stop2579"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-768">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2583" />
+ <stop
+ id="stop2585"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2587" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-907">
+ <stop
+ id="stop2591"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2593" />
+ <stop
+ id="stop2595"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-699">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2599" />
+ <stop
+ id="stop2601"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2603" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3290-678">
+ <stop
+ style="stop-color:#ece5a5;stop-opacity:1;"
+ offset="0"
+ id="stop2607" />
+ <stop
+ style="stop-color:#fcfbf2;stop-opacity:1;"
+ offset="1"
+ id="stop2609" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3191-577">
+ <stop
+ style="stop-color:#dbce48;stop-opacity:1;"
+ offset="0"
+ id="stop2613" />
+ <stop
+ style="stop-color:#c5b625;stop-opacity:1;"
+ offset="1"
+ id="stop2615" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3104">
+ <stop
+ style="stop-color:#969696;stop-opacity:1;"
+ offset="0"
+ id="stop3106" />
+ <stop
+ style="stop-color:#bebebe;stop-opacity:1;"
+ offset="1"
+ id="stop3108" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5048">
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="0"
+ id="stop5050" />
+ <stop
+ id="stop5056"
+ offset="0.5"
+ style="stop-color:black;stop-opacity:1;" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop5052" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7271"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2159591,0,0,1.2159591,-29.41025,-34.416713)"
+ x1="13.75"
+ y1="15.622917"
+ x2="13.75"
+ y2="19.375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7273"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,0.05556162,0.02897257)"
+ x1="-13.161851"
+ y1="-9.2234287"
+ x2="-9.6678057"
+ y2="-5.485857" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3290-678"
+ id="linearGradient7275"
+ gradientUnits="userSpaceOnUse"
+ x1="9.1578083"
+ y1="10.668404"
+ x2="8.5107889"
+ y2="12.101003" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient7293"
+ x1="10.636931"
+ y1="17.100588"
+ x2="2.0026019"
+ y2="11.001792"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0.70710678,-0.53033009)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7310"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.75626949,-0.7544419,0.86085249,0.85877215,-44.605153,-4.1802995)"
+ x1="13.75"
+ y1="15.622917"
+ x2="13.75"
+ y2="19.375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7312"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,-1.0765579,1.0779086)"
+ x1="-13.161851"
+ y1="-9.2234287"
+ x2="-9.6678057"
+ y2="-5.485857" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3290-678"
+ id="linearGradient7314"
+ gradientUnits="userSpaceOnUse"
+ x1="9.1578083"
+ y1="10.668404"
+ x2="8.5107889"
+ y2="12.101003" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient3055"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.8660254,-0.5,-0.5,0.8660254,28.78236,6.274156)"
+ x1="10.308109"
+ y1="17.140203"
+ x2="-0.79769111"
+ y2="10.685327" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient3827"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.8660254,-0.5,-0.5,0.8660254,28.735521,11.17534)"
+ x1="10.636931"
+ y1="17.100588"
+ x2="-0.72572887"
+ y2="10.726873" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient3831"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.8660254,-0.5,-0.5,0.8660254,28.78236,8.8906338)"
+ x1="10.488523"
+ y1="17.688837"
+ x2="-0.89622045"
+ y2="11.115851" />
+ <radialGradient
+ gradientUnits="userSpaceOnUse"
+ r="3.59375"
+ fy="3.625"
+ fx="4.75"
+ cy="3.625"
+ cx="4.75"
+ id="radialGradient3814"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9469"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256"
+ inkscape:collect="always">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9467"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9465"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9463"
+ xlink:href="#linearGradient6977-28-2-3"
+ inkscape:collect="always" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="750"
+ inkscape:window-height="421"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="1"
+ inkscape:cx="5.7275353"
+ inkscape:cy="15.425642"
+ inkscape:window-x="658"
+ inkscape:window-y="182"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="lc_color">
+ <inkscape:grid
+ type="xygrid"
+ id="grid6327" />
+ </sodipodi:namedview>
+ <g
+ id="g7295"
+ transform="matrix(1.3343663,0,0,1.3343663,-8.0255703,-5.306729)">
+ <path
+ sodipodi:nodetypes="csc"
+ style="fill:none;stroke:url(#linearGradient3055);stroke-width:1.49883878000000004;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="m 11.344661,16.153872 c 0,0 2.318026,1.372134 5.440949,-0.193369 3.224201,-1.616272 7.32849,1.57678 7.32849,1.57678"
+ id="path3053"
+ inkscape:connector-curvature="0" />
+ <g
+ transform="translate(39.049048,-1.6004757)"
+ inkscape:label="Layer 1"
+ id="layer1">
+ <g
+ transform="translate(-20.041248,-1.4901213)"
+ id="g6329">
+ <g
+ transform="matrix(0.821403,0,0,0.8233928,10.976317,6.2714886)"
+ id="g8626">
+ <g
+ id="g7208"
+ transform="matrix(0.85084467,0.14879489,0.14951666,0.85084466,-4.5798238,4.5419188)" />
+ </g>
+ </g>
+ <g
+ transform="translate(4.1542523,5.833631)"
+ id="g7262">
+ <g
+ id="g7202"
+ transform="matrix(0.69888636,0.12251664,0.12281343,0.70057937,-13.091977,8.7642185)">
+ <path
+ inkscape:connector-curvature="0"
+ id="path7251"
+ d="m -10.437617,-10.532448 c -1.039665,1.0554952 -2.105891,2.0295475 -3.450845,3.3948957 1.427253,0.2011026 2.36382,1.1884001 2.537492,2.6255681 1.192146,-1.178972 2.524013,-2.4147859 3.4831393,-3.3626506 -0.1764068,-1.4598061 -1.1279637,-2.4409172 -2.5697863,-2.6578132 z"
+ style="fill:#ffb6ed;fill-opacity:1;stroke:#8e3789;stroke-width:1.0878545;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ sodipodi:nodetypes="ccccc" />
+ <path
+ inkscape:connector-curvature="0"
+ style="fill:url(#linearGradient7310);fill-opacity:1;stroke:none"
+ d="m -26.509107,4.8187076 12.100311,-12.0710698 3.228197,3.2203961 -12.10031,12.0710691 z"
+ id="rect7182" />
+ <path
+ inkscape:connector-curvature="0"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ d="m -26.512375,4.8102981 12.10721,-12.0779519 3.228197,3.2203961 -12.107209,12.0779511 z"
+ id="rect7200" />
+ <path
+ style="fill:url(#linearGradient7312);fill-opacity:1;stroke:none"
+ d="m -13.844171,-7.8349599 c -1.295719,1.3148602 -0.01636,-0.012462 -1.692491,1.6883387 1.779002,0.2502863 2.946512,1.4799173 3.163189,3.2700105 1.485759,-1.4686833 0.537402,-0.4673936 1.732749,-1.648179 -0.220089,-1.8182906 -1.406281,-3.040214 -3.203447,-3.3101702 z"
+ id="rect7229"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccc" />
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#linearGradient7314);fill-opacity:1;stroke:#cbb94c;stroke-width:0.89610034;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ id="path7180"
+ sodipodi:cx="7"
+ sodipodi:cy="10.5625"
+ sodipodi:rx="3.9375"
+ sodipodi:ry="3.9375"
+ d="m 10.936682,10.642751 c -0.02701,1.325174 -0.718938,2.547836 -1.8410725,3.253265 L 7,10.5625 z"
+ transform="matrix(0.80786461,-0.21644027,-0.21646667,-0.80776607,-35.236817,22.399159)"
+ sodipodi:start="0.020382597"
+ sodipodi:end="1.0095777" />
+ <path
+ sodipodi:end="1.0095777"
+ sodipodi:start="0.020382597"
+ transform="matrix(0.32829963,-0.08796762,-0.08796762,-0.32829963,-33.51327,16.73372)"
+ d="m 10.936682,10.642751 c -0.02701,1.325174 -0.718938,2.547836 -1.8410725,3.253265 L 7,10.5625 z"
+ sodipodi:ry="3.9375"
+ sodipodi:rx="3.9375"
+ sodipodi:cy="10.5625"
+ sodipodi:cx="7"
+ id="path7255"
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ </g>
+ </g>
+ <path
+ sodipodi:nodetypes="csc"
+ style="fill:none;stroke:url(#linearGradient3827);stroke-width:0.74941950999999984;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1.49883899000000009, 0.74941950000000002;stroke-dashoffset:0"
+ d="m 11.297822,21.055056 c 0,0 2.318026,1.372134 5.440949,-0.193369 3.224201,-1.616272 7.32849,1.57678 7.32849,1.57678"
+ id="path3825"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path3829"
+ d="m 11.344661,18.77035 c 0,0 2.318026,1.372134 5.440949,-0.193369 3.224201,-1.616272 7.32849,1.57678 7.32849,1.57678"
+ style="fill:none;stroke:url(#linearGradient3831);stroke-width:0.74941939000000002;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ sodipodi:nodetypes="csc" />
+ <g
+ transform="matrix(0.74941941,0,0,0.74941941,30.934323,-759.48382)"
+ id="layer1-5"
+ inkscape:label="Ebene 1">
+ <g
+ inkscape:label=""
+ id="lc_color">
+ <g
+ transform="matrix(0.90485703,0,0,0.90485703,-555.82528,619.11926)"
+ style="display:inline"
+ id="g6159"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/fontcolor.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <g
+ transform="translate(-375.38918,735.35626)"
+ id="g9725">
+ <path
+ sodipodi:type="arc"
+ style="fill:#707070;fill-opacity:1;stroke:none"
+ id="path9397"
+ sodipodi:cx="959.25"
+ sodipodi:cy="-287.26282"
+ sodipodi:rx="6"
+ sodipodi:ry="6"
+ d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
+ transform="translate(-0.25,-0.375)" />
+ <path
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -1,6 2,0 z"
+ id="path9401"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3" />
+ <path
+ inkscape:transform-center-y="3.027185"
+ inkscape:connector-curvature="0"
+ id="path9403"
+ d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
+ style="fill:#ff2c09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.25942" />
+ <path
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#ffb509;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
+ id="path9405"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.848075" />
+ <path
+ inkscape:transform-center-y="2.47487"
+ inkscape:connector-curvature="0"
+ id="path9407"
+ d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
+ style="fill:#ffc109;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875" />
+ <path
+ inkscape:transform-center-x="-2.84808"
+ style="fill:#adff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
+ id="path9409"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.93301" />
+ <path
+ inkscape:transform-center-y="1.259415"
+ inkscape:connector-curvature="0"
+ id="path9411"
+ d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
+ style="fill:#92ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.02719" />
+ <path
+ inkscape:transform-center-x="-3.000005"
+ style="fill:#84ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
+ id="path9413"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9415"
+ d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
+ style="fill:#43ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.027185"
+ inkscape:transform-center-y="-1.259415" />
+ <path
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="-2.848075"
+ style="fill:#09ff11;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
+ id="path9417"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9419"
+ d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
+ style="fill:#09ff59;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.474875"
+ inkscape:transform-center-y="-2.474875" />
+ <path
+ inkscape:transform-center-y="-2.84808"
+ inkscape:transform-center-x="-1.933015"
+ style="fill:#09ff68;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
+ id="path9421"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9423"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.000005" />
+ <path
+ inkscape:transform-center-y="-3.000005"
+ style="fill:#09ffff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ id="path9425"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9427"
+ d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
+ style="fill:#09ffa9;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.02719"
+ inkscape:transform-center-x="-1.259415" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ inkscape:transform-center-y="-3.027185"
+ style="fill:#09d2ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
+ id="path9429"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9431"
+ d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
+ style="fill:#0985ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-2.848075"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="2.47488"
+ inkscape:transform-center-y="-2.47487"
+ style="fill:#0947ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
+ id="path9433"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9435"
+ d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
+ style="fill:#092fff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-1.93301"
+ inkscape:transform-center-x="2.848085" />
+ <path
+ inkscape:transform-center-x="3.027195"
+ inkscape:transform-center-y="-1.259415"
+ style="fill:#5c09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
+ id="path9437"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9439"
+ d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
+ style="fill:#8d09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="3.00001" />
+ <path
+ inkscape:transform-center-x="3.02719"
+ style="fill:#cb09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
+ id="path9441"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.25942" />
+ <path
+ inkscape:transform-center-y="1.933015"
+ inkscape:connector-curvature="0"
+ id="path9443"
+ d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
+ style="fill:#b709ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="2.84808" />
+ <path
+ inkscape:transform-center-x="2.474875"
+ style="fill:#f709ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
+ id="path9445"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.47488" />
+ <path
+ inkscape:transform-center-y="2.848085"
+ inkscape:connector-curvature="0"
+ id="path9447"
+ d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
+ style="fill:#ff099d;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="1.933015" />
+ <path
+ inkscape:transform-center-x="1.25942"
+ style="fill:#ff0951;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
+ id="path9449"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.0272" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.15481651;stroke-opacity:1"
+ id="path9451"
+ sodipodi:cx="958.9375"
+ sodipodi:cy="-287.32532"
+ sodipodi:rx="5.8125"
+ sodipodi:ry="5.8125"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ transform="matrix(0.95698925,0,0,0.95698925,41.275874,-12.670578)" />
+ <path
+ transform="matrix(0.79569892,0,0,0.79569892,195.91197,-59.044622)"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ sodipodi:ry="5.8125"
+ sodipodi:rx="5.8125"
+ sodipodi:cy="-287.32532"
+ sodipodi:cx="958.9375"
+ id="path9453"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.38890088;stroke-opacity:1"
+ sodipodi:type="arc" />
+ </g>
+ <path
+ transform="matrix(1.6695652,0,0,1.6695657,575.5911,441.6055)"
+ d="m 8.34375,3.625 c 0,1.9847733 -1.6089767,3.59375 -3.59375,3.59375 -1.9847733,0 -3.59375,-1.6089767 -3.59375,-3.59375 0,-1.9847733 1.6089767,-3.59375 3.59375,-3.59375 1.9847733,0 3.59375,1.6089767 3.59375,3.59375 z"
+ sodipodi:ry="3.59375"
+ sodipodi:rx="3.59375"
+ sodipodi:cy="3.625"
+ sodipodi:cx="4.75"
+ id="path3038"
+ style="fill:url(#radialGradient3814);fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_forward.png b/icon-themes/tango_testing/cmd/lc_forward.png
new file mode 100644
index 000000000000..1751aa8db592
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_forward.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_forward.svg b/icon-themes/tango_testing/cmd/lc_forward.svg
new file mode 100644
index 000000000000..3356968ab186
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_forward.svg
@@ -0,0 +1,463 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_forward.svg"
+ inkscape:export-filename="/home/alexander/tango_testing/cmd/lc_forward.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4345">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4347" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4349" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4339">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop4341" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop4343" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3501"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3511"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ id="linearGradient3782-3">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop3784-4" />
+ <stop
+ style="stop-color:#646464;stop-opacity:1;"
+ offset="1"
+ id="stop3786-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-2"
+ id="linearGradient3501-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-2,4)"
+ x1="17"
+ y1="2"
+ x2="17"
+ y2="16" />
+ <linearGradient
+ id="linearGradient3764-2">
+ <stop
+ id="stop3766-7"
+ offset="0"
+ style="stop-color:#8ae234;stop-opacity:1;" />
+ <stop
+ id="stop3768-3"
+ offset="1"
+ style="stop-color:#73d216;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4345"
+ id="linearGradient4351"
+ x1="13"
+ y1="6"
+ x2="13"
+ y2="20"
+ gradientUnits="userSpaceOnUse" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="716"
+ id="namedview4"
+ showgrid="true"
+ showguides="true"
+ inkscape:guide-bbox="true"
+ inkscape:zoom="11.313708"
+ inkscape:cx="14.777557"
+ inkscape:cy="9.1811432"
+ inkscape:window-x="0"
+ inkscape:window-y="30"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g3862">
+ <inkscape:grid
+ type="xygrid"
+ id="grid3494" />
+ </sodipodi:namedview>
+ <style
+ type="text/css"
+ id="style1470">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <g
+ id="g3102"
+ transform="translate(26.966102,-7.7288136)">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1"
+ transform="translate(-2,-1036.3622)">
+ <g
+ id="g3927"
+ transform="translate(-17.966102,8.7288136)">
+ <g
+ transform="translate(-3,4)"
+ id="g3862">
+ <g
+ transform="translate(-9,8)"
+ id="g3503">
+ <rect
+ style="fill:url(#linearGradient3511);fill-opacity:1;stroke:none"
+ id="rect3505"
+ width="12"
+ height="10"
+ x="7"
+ y="6"
+ transform="translate(0,1028.3622)" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ d="m 7,6 0,10 12,0 0,-10 z m 1,1 10,0 0,8 -10,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3507" />
+ <path
+ id="path3509"
+ transform="translate(0,1028.3622)"
+ d="m 8,7 0,8 10,0 0,-8 z m 1,1 8,0 0,6 -8,0 z"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ </g>
+ <g
+ id="g3496-4"
+ transform="translate(-6,0)">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="6"
+ x="7"
+ height="14"
+ width="16"
+ id="rect2998-1"
+ style="fill:url(#linearGradient3501-6);fill-opacity:1;stroke:none" />
+ <path
+ id="rect3851-4"
+ transform="translate(0,1028.3622)"
+ d="M 7,6 7,20 23,20 23,6 z M 8,7 22,7 22,19 8,19 z"
+ style="opacity:0.4;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccccccc" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="opacity:0.4;fill:url(#linearGradient4351);fill-opacity:1;stroke:none"
+ d="M 8,7 8,19 22,19 22,7 z M 9,8 21,8 21,18 9,18 z"
+ transform="translate(0,1028.3622)"
+ id="path3860-5" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470-8"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_framelinecolor.png b/icon-themes/tango_testing/cmd/lc_framelinecolor.png
new file mode 100644
index 000000000000..2c8bcf35066f
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_framelinecolor.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_framelinecolor.svg b/icon-themes/tango_testing/cmd/lc_framelinecolor.svg
new file mode 100644
index 000000000000..13af74d0c0c9
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_framelinecolor.svg
@@ -0,0 +1,1502 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_framelinecolor.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_framelinecolor.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7287">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7289" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop7291" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3155-40">
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="0"
+ id="stop2541" />
+ <stop
+ id="stop2543"
+ offset="0.13482948"
+ style="stop-color:#dbdbdb;stop-opacity:1;" />
+ <stop
+ style="stop-color:#a4a4a4;stop-opacity:1;"
+ offset="0.20224422"
+ id="stop2545" />
+ <stop
+ id="stop2547"
+ offset="0.26965895"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8d8d8d;stop-opacity:1;"
+ offset="0.44650277"
+ id="stop2549" />
+ <stop
+ id="stop2551"
+ offset="0.57114136"
+ style="stop-color:#959595;stop-opacity:1;" />
+ <stop
+ style="stop-color:#cecece;stop-opacity:1;"
+ offset="0.72038066"
+ id="stop2553" />
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="1"
+ id="stop2555" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-279">
+ <stop
+ id="stop2559"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2561" />
+ <stop
+ id="stop2563"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-789">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2567" />
+ <stop
+ id="stop2569"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2571" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-686">
+ <stop
+ id="stop2575"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2577" />
+ <stop
+ id="stop2579"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-768">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2583" />
+ <stop
+ id="stop2585"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2587" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-907">
+ <stop
+ id="stop2591"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2593" />
+ <stop
+ id="stop2595"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-699">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2599" />
+ <stop
+ id="stop2601"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2603" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3290-678">
+ <stop
+ style="stop-color:#ece5a5;stop-opacity:1;"
+ offset="0"
+ id="stop2607" />
+ <stop
+ style="stop-color:#fcfbf2;stop-opacity:1;"
+ offset="1"
+ id="stop2609" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3191-577">
+ <stop
+ style="stop-color:#dbce48;stop-opacity:1;"
+ offset="0"
+ id="stop2613" />
+ <stop
+ style="stop-color:#c5b625;stop-opacity:1;"
+ offset="1"
+ id="stop2615" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3104">
+ <stop
+ style="stop-color:#969696;stop-opacity:1;"
+ offset="0"
+ id="stop3106" />
+ <stop
+ style="stop-color:#bebebe;stop-opacity:1;"
+ offset="1"
+ id="stop3108" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5048">
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="0"
+ id="stop5050" />
+ <stop
+ id="stop5056"
+ offset="0.5"
+ style="stop-color:black;stop-opacity:1;" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop5052" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7271"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2159591,0,0,1.2159591,-29.41025,-34.416713)"
+ x1="13.75"
+ y1="15.622917"
+ x2="13.75"
+ y2="19.375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7273"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,0.05556162,0.02897257)"
+ x1="-13.161851"
+ y1="-9.2234287"
+ x2="-9.6678057"
+ y2="-5.485857" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3290-678"
+ id="linearGradient7275"
+ gradientUnits="userSpaceOnUse"
+ x1="9.1578083"
+ y1="10.668404"
+ x2="8.5107889"
+ y2="12.101003" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient7293"
+ x1="10.636931"
+ y1="17.100588"
+ x2="2.0026019"
+ y2="11.001792"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0.70710678,-0.53033009)" />
+ <linearGradient
+ y2="10.431535"
+ x2="4.7950678"
+ y1="14.541593"
+ x1="8.2643108"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9469"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4256"
+ inkscape:collect="always">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ y2="16.751301"
+ x2="12.993087"
+ y1="6.3656702"
+ x1="7.2478447"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9467"
+ xlink:href="#linearGradient4256"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient7113-62-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="-0.03020489"
+ x2="-58.111061"
+ y1="11.971753"
+ x1="-57.984837"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9465"
+ xlink:href="#linearGradient7113-62-9-4"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <radialGradient
+ r="22"
+ fy="219.06908"
+ fx="39.088383"
+ cy="219.06908"
+ cx="39.088383"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9463"
+ xlink:href="#linearGradient6977-28-2-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788"
+ xlink:href="#linearGradient3782"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875"
+ xlink:href="#linearGradient3764"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ id="stop3784"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4006"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4025"
+ gradientUnits="userSpaceOnUse"
+ x1="21.996094"
+ y1="3.8381946e-05"
+ x2="21.996094"
+ y2="14.000038" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4027"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4029"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4031"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4033"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4052"
+ gradientUnits="userSpaceOnUse"
+ x1="21.996094"
+ y1="3.8381946e-05"
+ x2="21.996094"
+ y2="14.000038" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4054"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4056"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4058"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient4060"
+ gradientUnits="userSpaceOnUse"
+ x1="0"
+ y1="7"
+ x2="22"
+ y2="7" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4060-5"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4058-0"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4056-5"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4054-6"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(0.72948417,0,0,1.1333824,6.7628959,1026.4948)"
+ y2="14.000038"
+ x2="21.996094"
+ y1="3.8381946e-05"
+ x1="21.996094"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4052-0"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4033-6"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4031-5"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4029-6"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4027-1"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="7"
+ x2="22"
+ y1="7"
+ x1="0"
+ id="linearGradient4006-5"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-7">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784-0" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3764-3">
+ <stop
+ id="stop3766-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768-6"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-3"
+ id="linearGradient3875-0"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-3"
+ id="linearGradient3885-3"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764-3"
+ id="linearGradient3895-6"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782-7"
+ id="linearGradient3788-9"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-3"
+ id="radialGradient9463-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-3">
+ <stop
+ id="stop6979-4-5-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.6102711"
+ id="stop6981-1-2-8-2" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop6983-3-5-43-1" />
+ <stop
+ id="stop6985-44-1-5-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-8"
+ id="linearGradient9465-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7113-62-9-4-8">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7115-8-20-7-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop7117-6-9-41-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient9467-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4256-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop4258-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop4260-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient9469-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="radialGradient3814-4"
+ cx="4.75"
+ cy="3.625"
+ fx="4.75"
+ fy="3.625"
+ r="3.59375"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ gradientTransform="translate(0.70710678,-0.53033009)"
+ gradientUnits="userSpaceOnUse"
+ y2="11.001792"
+ x2="2.0026019"
+ y1="17.100588"
+ x1="10.636931"
+ id="linearGradient7293-3"
+ xlink:href="#linearGradient7287-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="12.101003"
+ x2="8.5107889"
+ y1="10.668404"
+ x1="9.1578083"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7275-0"
+ xlink:href="#linearGradient3290-678-9"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="-5.485857"
+ x2="-9.6678057"
+ y1="-9.2234287"
+ x1="-13.161851"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,0.05556162,0.02897257)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7273-7"
+ xlink:href="#linearGradient3155-40-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="19.375"
+ x2="13.75"
+ y1="15.622917"
+ x1="13.75"
+ gradientTransform="matrix(1.2159591,0,0,1.2159591,-29.41025,-34.416713)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7271-9"
+ xlink:href="#linearGradient3155-40-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient5048-4">
+ <stop
+ id="stop5050-2"
+ offset="0"
+ style="stop-color:black;stop-opacity:0;" />
+ <stop
+ style="stop-color:black;stop-opacity:1;"
+ offset="0.5"
+ id="stop5056-0" />
+ <stop
+ id="stop5052-6"
+ offset="1"
+ style="stop-color:black;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3104-4">
+ <stop
+ id="stop3106-5"
+ offset="0"
+ style="stop-color:#969696;stop-opacity:1;" />
+ <stop
+ id="stop3108-3"
+ offset="1"
+ style="stop-color:#bebebe;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3191-577-9">
+ <stop
+ id="stop2613-5"
+ offset="0"
+ style="stop-color:#dbce48;stop-opacity:1;" />
+ <stop
+ id="stop2615-1"
+ offset="1"
+ style="stop-color:#c5b625;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3290-678-9">
+ <stop
+ id="stop2607-3"
+ offset="0"
+ style="stop-color:#ece5a5;stop-opacity:1;" />
+ <stop
+ id="stop2609-8"
+ offset="1"
+ style="stop-color:#fcfbf2;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-699-7">
+ <stop
+ id="stop2599-8"
+ offset="0"
+ style="stop-color:#b1b1b1;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop2601-6" />
+ <stop
+ id="stop2603-6"
+ offset="1"
+ style="stop-color:#8f8f8f;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-907-8">
+ <stop
+ style="stop-color:#565656;stop-opacity:1;"
+ offset="0"
+ id="stop2591-7" />
+ <stop
+ id="stop2593-4"
+ offset="0.5"
+ style="stop-color:#9a9a9a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#545454;stop-opacity:1;"
+ offset="1"
+ id="stop2595-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-768-3">
+ <stop
+ id="stop2583-4"
+ offset="0"
+ style="stop-color:#b1b1b1;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop2585-5" />
+ <stop
+ id="stop2587-1"
+ offset="1"
+ style="stop-color:#8f8f8f;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-686-2">
+ <stop
+ style="stop-color:#565656;stop-opacity:1;"
+ offset="0"
+ id="stop2575-4" />
+ <stop
+ id="stop2577-6"
+ offset="0.5"
+ style="stop-color:#9a9a9a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#545454;stop-opacity:1;"
+ offset="1"
+ id="stop2579-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-789-5">
+ <stop
+ id="stop2567-2"
+ offset="0"
+ style="stop-color:#b1b1b1;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.5"
+ id="stop2569-7" />
+ <stop
+ id="stop2571-7"
+ offset="1"
+ style="stop-color:#8f8f8f;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-279-7">
+ <stop
+ style="stop-color:#565656;stop-opacity:1;"
+ offset="0"
+ id="stop2559-2" />
+ <stop
+ id="stop2561-7"
+ offset="0.5"
+ style="stop-color:#9a9a9a;stop-opacity:1;" />
+ <stop
+ style="stop-color:#545454;stop-opacity:1;"
+ offset="1"
+ id="stop2563-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3155-40-8">
+ <stop
+ id="stop2541-9"
+ offset="0"
+ style="stop-color:#181818;stop-opacity:1;" />
+ <stop
+ style="stop-color:#dbdbdb;stop-opacity:1;"
+ offset="0.13482948"
+ id="stop2543-1" />
+ <stop
+ id="stop2545-5"
+ offset="0.20224422"
+ style="stop-color:#a4a4a4;stop-opacity:1;" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0.26965895"
+ id="stop2547-0" />
+ <stop
+ id="stop2549-9"
+ offset="0.44650277"
+ style="stop-color:#8d8d8d;stop-opacity:1;" />
+ <stop
+ style="stop-color:#959595;stop-opacity:1;"
+ offset="0.57114136"
+ id="stop2551-2" />
+ <stop
+ id="stop2553-3"
+ offset="0.72038066"
+ style="stop-color:#cecece;stop-opacity:1;" />
+ <stop
+ id="stop2555-5"
+ offset="1"
+ style="stop-color:#181818;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7287-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7289-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7291-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="721"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="true"
+ inkscape:zoom="1"
+ inkscape:cx="12.163635"
+ inkscape:cy="2.3440572"
+ inkscape:window-x="0"
+ inkscape:window-y="24"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g4014">
+ <inkscape:grid
+ type="xygrid"
+ id="grid6327" />
+ </sodipodi:namedview>
+ <g
+ id="g7295"
+ transform="matrix(1.3343663,0,0,1.3343663,-8.0255703,-5.306729)">
+ <g
+ transform="matrix(0.74941941,0,0,0.74941941,30.934323,-759.48382)"
+ id="layer1-5"
+ inkscape:label="Ebene 1">
+ <g
+ inkscape:label=""
+ id="lc_color">
+ <g
+ id="g4014"
+ transform="translate(-35.022481,-8.0320178)">
+ <g
+ id="g4041"
+ transform="matrix(-1,0,0,-1,27.564325,2071.5099)">
+ <g
+ transform="translate(-3.2482416,1028.7363)"
+ id="g3102"
+ style="fill:url(#linearGradient4060);fill-opacity:1">
+ <g
+ transform="translate(-2,-1036.3622)"
+ id="layer1-8"
+ inkscape:label="Ebene 1"
+ style="fill:url(#linearGradient4058);fill-opacity:1">
+ <g
+ transform="translate(2,4)"
+ id="g3927"
+ style="fill:url(#linearGradient4056);fill-opacity:1">
+ <g
+ id="g3862"
+ transform="matrix(1,0,0,-1,-3,2070.7296)"
+ style="fill:url(#linearGradient4054);fill-opacity:1">
+ <rect
+ transform="translate(0,1028.3622)"
+ y="-3.9986439"
+ x="3.0301845"
+ height="22"
+ width="22"
+ id="rect2998"
+ style="fill:url(#linearGradient4052);fill-opacity:1;stroke:none" />
+ <path
+ sodipodi:nodetypes="cccccccccc"
+ inkscape:connector-curvature="0"
+ style="fill:#ffffff;fill-opacity:1;stroke:none"
+ d="M 4.0301844,-2.9986439 4.0049499,12.9995 l 20.0000001,0 0.02523,-15.9981439 z m 1,1.0000001 18.0000006,0 -0.02523,13.9981438 -18.0000001,0 z"
+ transform="translate(0,1028.3622)"
+ id="path3860" />
+ </g>
+ </g>
+ </g>
+ </g>
+ <path
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.99999998, 0.99999999;stroke-dashoffset:0"
+ d="m -0.73407215,1040.2332 0,-16.9917 16.98900115,0 -0.01105,17.0012 z"
+ id="path3211"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccccc" />
+ <path
+ sodipodi:nodetypes="ccccc"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="m -2.7355626,1042.2381 -0.01077,-20.9928 21.0002256,-0.012 -0.0032,21.0108 z"
+ id="path3996"
+ inkscape:connector-curvature="0" />
+ <path
+ sodipodi:nodetypes="ccccc"
+ inkscape:connector-curvature="0"
+ id="path3998"
+ d="m 1.764318,1037.7198 0,-11.9783 12.029674,0 -0.05524,11.9856 z"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+ </g>
+ <g
+ transform="matrix(1.3343663,0,0,1.3343663,-6.2196182,1021.4607)"
+ id="g7295-1">
+ <g
+ inkscape:label="Ebene 1"
+ id="layer1-5-4"
+ transform="matrix(0.74941941,0,0,0.74941941,30.934323,-759.48382)">
+ <g
+ id="lc_color-4"
+ inkscape:label="">
+ <g
+ inkscape:export-ydpi="90"
+ inkscape:export-xdpi="90"
+ inkscape:export-filename="/home/alexander/Dokumente/LibreOffice/Icons/fontcolor.png"
+ id="g6159"
+ style="display:inline"
+ transform="matrix(0.90485703,0,0,0.90485703,-555.82528,619.11926)">
+ <g
+ id="g9725"
+ transform="translate(-375.38918,735.35626)">
+ <path
+ transform="translate(-0.25,-0.375)"
+ d="m 965.25,-287.26282 c 0,3.31371 -2.68629,6 -6,6 -3.31371,0 -6,-2.68629 -6,-6 0,-3.31371 2.68629,-6 6,-6 3.31371,0 6,2.68629 6,6 z"
+ sodipodi:ry="6"
+ sodipodi:rx="6"
+ sodipodi:cy="-287.26282"
+ sodipodi:cx="959.25"
+ id="path9397"
+ style="fill:#707070;fill-opacity:1;stroke:none"
+ sodipodi:type="arc" />
+ <path
+ inkscape:transform-center-y="3"
+ inkscape:connector-curvature="0"
+ id="path9401"
+ d="m 959,-287.63782 -1,6 2,0 z"
+ style="fill:#ff0909;fill-opacity:1;stroke:none" />
+ <path
+ inkscape:transform-center-x="-1.25942"
+ style="fill:#ff2c09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 0.58699,6.05437 1.93185,-0.51763 z"
+ id="path9403"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="3.027185" />
+ <path
+ inkscape:transform-center-y="2.848075"
+ inkscape:connector-curvature="0"
+ id="path9405"
+ d="m 959,-287.63782 2.13398,5.69615 1.73205,-0.99999 z"
+ style="fill:#ffb509;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.933015" />
+ <path
+ inkscape:transform-center-x="-2.474875"
+ style="fill:#ffc109;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 3.53554,4.94974 1.41421,-1.4142 z"
+ id="path9407"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.47487" />
+ <path
+ inkscape:transform-center-y="1.93301"
+ inkscape:connector-curvature="0"
+ id="path9409"
+ d="m 959,-287.63782 4.69616,3.86602 1,-1.73204 z"
+ style="fill:#adff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.84808" />
+ <path
+ inkscape:transform-center-x="-3.02719"
+ style="fill:#92ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 5.53674,2.51883 0.51764,-1.93184 z"
+ id="path9411"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.259415" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9413"
+ d="m 959,-287.63782 6,0.99999 10e-6,-1.99999 z"
+ style="fill:#84ff09;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-3.000005" />
+ <path
+ inkscape:transform-center-y="-1.259415"
+ inkscape:transform-center-x="-3.027185"
+ style="fill:#43ff09;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 6.05437,-0.587 -0.51762,-1.93184 z"
+ id="path9415"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9417"
+ d="m 959,-287.63782 5.69615,-2.13398 -0.99998,-1.73205 z"
+ style="fill:#09ff11;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-2.848075"
+ inkscape:transform-center-y="-1.93301" />
+ <path
+ inkscape:transform-center-y="-2.474875"
+ inkscape:transform-center-x="-2.474875"
+ style="fill:#09ff59;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 4.94975,-3.53554 -1.4142,-1.41422 z"
+ id="path9419"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9421"
+ d="m 959,-287.63782 3.86603,-4.69616 -1.73204,-1.00001 z"
+ style="fill:#09ff68;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="-1.933015"
+ inkscape:transform-center-y="-2.84808" />
+ <path
+ inkscape:transform-center-y="-3.000005"
+ style="fill:#ff0909;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ id="path9423"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9425"
+ d="m 959,-287.63782 1,-6.00001 -1.99999,-10e-6 z"
+ style="fill:#09ffff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.000005" />
+ <path
+ inkscape:transform-center-x="-1.259415"
+ inkscape:transform-center-y="-3.02719"
+ style="fill:#09ffa9;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 2.51884,-5.53675 -1.93184,-0.51764 z"
+ id="path9427"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9429"
+ d="m 959,-287.63782 -0.58699,-6.05438 -1.93184,0.51763 z"
+ style="fill:#09d2ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-3.027185"
+ inkscape:transform-center-x="1.25942" />
+ <path
+ inkscape:transform-center-x="1.933015"
+ inkscape:transform-center-y="-2.848075"
+ style="fill:#0985ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -2.13398,-5.69616 -1.73204,0.99999 z"
+ id="path9431"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9433"
+ d="m 959,-287.63782 -3.53554,-4.94975 -1.41421,1.4142 z"
+ style="fill:#0947ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-2.47487"
+ inkscape:transform-center-x="2.47488" />
+ <path
+ inkscape:transform-center-x="2.848085"
+ inkscape:transform-center-y="-1.93301"
+ style="fill:#092fff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -4.69616,-3.86603 -1,1.73204 z"
+ id="path9435"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:connector-curvature="0"
+ id="path9437"
+ d="m 959,-287.63782 -5.53674,-2.51884 -0.51764,1.93184 z"
+ style="fill:#5c09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-y="-1.259415"
+ inkscape:transform-center-x="3.027195" />
+ <path
+ inkscape:transform-center-x="3.00001"
+ style="fill:#8d09ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -6,-1 -10e-6,1.99999 z"
+ id="path9439"
+ inkscape:connector-curvature="0" />
+ <path
+ inkscape:transform-center-y="1.25942"
+ inkscape:connector-curvature="0"
+ id="path9441"
+ d="m 959,-287.63782 -6.05437,0.58699 0.51762,1.93184 z"
+ style="fill:#cb09ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="3.02719" />
+ <path
+ inkscape:transform-center-x="2.84808"
+ style="fill:#b709ff;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -5.69615,2.13398 0.99998,1.73204 z"
+ id="path9443"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="1.933015" />
+ <path
+ inkscape:transform-center-y="2.47488"
+ inkscape:connector-curvature="0"
+ id="path9445"
+ d="m 959,-287.63782 -4.94974,3.53554 1.41419,1.41421 z"
+ style="fill:#f709ff;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="2.474875" />
+ <path
+ inkscape:transform-center-x="1.933015"
+ style="fill:#ff099d;fill-opacity:1;stroke:none"
+ d="m 959,-287.63782 -3.86602,4.69616 1.73203,1 z"
+ id="path9447"
+ inkscape:connector-curvature="0"
+ inkscape:transform-center-y="2.848085" />
+ <path
+ inkscape:transform-center-y="3.0272"
+ inkscape:connector-curvature="0"
+ id="path9449"
+ d="m 959,-287.63782 -2.51883,5.53674 1.93183,0.51765 z"
+ style="fill:#ff0951;fill-opacity:1;stroke:none"
+ inkscape:transform-center-x="1.25942" />
+ <path
+ transform="matrix(0.95698925,0,0,0.95698925,41.275874,-12.670578)"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ sodipodi:ry="5.8125"
+ sodipodi:rx="5.8125"
+ sodipodi:cy="-287.32532"
+ sodipodi:cx="958.9375"
+ id="path9451"
+ style="opacity:0.4;fill:none;stroke:#000000;stroke-width:1.15481651;stroke-opacity:1"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="opacity:0.4;fill:none;stroke:#ffffff;stroke-width:1.38890088;stroke-opacity:1"
+ id="path9453"
+ sodipodi:cx="958.9375"
+ sodipodi:cy="-287.32532"
+ sodipodi:rx="5.8125"
+ sodipodi:ry="5.8125"
+ d="m 964.75,-287.32532 c 0,3.21016 -2.60234,5.8125 -5.8125,5.8125 -3.21016,0 -5.8125,-2.60234 -5.8125,-5.8125 0,-3.21015 2.60234,-5.8125 5.8125,-5.8125 3.21016,0 5.8125,2.60235 5.8125,5.8125 z"
+ transform="matrix(0.79569892,0,0,0.79569892,195.91197,-59.044622)" />
+ </g>
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient3814-4);fill-opacity:1;stroke:none"
+ id="path3038"
+ sodipodi:cx="4.75"
+ sodipodi:cy="3.625"
+ sodipodi:rx="3.59375"
+ sodipodi:ry="3.59375"
+ d="m 8.34375,3.625 c 0,1.9847733 -1.6089767,3.59375 -3.59375,3.59375 -1.9847733,0 -3.59375,-1.6089767 -3.59375,-3.59375 0,-1.9847733 1.6089767,-3.59375 3.59375,-3.59375 1.9847733,0 3.59375,1.6089767 3.59375,3.59375 z"
+ transform="matrix(1.6695652,0,0,1.6695657,575.5911,441.6055)" />
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <style
+ id="style1470"
+ type="text/css">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+ <style
+ type="text/css"
+ id="style1470-6">
+
+@font-face{font-family:'TrebuchetMS-Bold';src:url(&quot;data:;base64,\
+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\
+Bv+gAAv/oAABAAX/wAABAAIAAwAMAAA=&quot;)}
+@font-face{font-family:'Arial-BoldMT';src:url(&quot;data:;base64,\
+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\
+aHRzaXxfCHxfg0IlGvyY+60HDvrtFvut+LIG9weF1X+tHn+seKVwngiecGqUZRtaYH5wZB9kcHFo\
+fV8IfF+EOvsLGvx1+636uveZ+zAH9wzo9wjH9yEbycSAdb4fvnSyb6ZopWidZJZfCJVfkEw5Gg7d\
++LYV6KLmueIeueLMzuC5CLnf6aLzG/c19xdXI/If8iK++xj7Mxr7NVf7GSQiHiEj+xdW+zEbKi6h\
+tzMfMrdIzF3gCF3gdPL3Dhr3tHwVIqQ6vVMeU73Jb9Qb1Mmnw70fvMOk3PYa83LbWsMew1lNp0Ib\
+Qk1vU1kfWVNyOiIaDv04+DQW+636uveZ+ysGuNKzuq+iCKKutJa4G8vJeWjGHzT7iQWqXF+aYhtk\
+aYB2cB9wdXVkfFIIe1KD+wr7SRoO/av5Dvq6Fft0+1T8QAc0jVmPfR6OfJR/mIIIgpiahp4bpbGU\
+nbwfo/tuBW9KQX04G1helJxiH2KcbqF4pnimfa+EuQiFrIjN7hr4Y/sV93T3FfdnB/eu9zgF/AsH\
+DvniFvczB2RSWV9MaghqTEh7RRtES5uqUh9SqmK3csQIcsR+2e8a+TT3rfx8B/spkC+Wah6VaZ5w\
+pngId6augbUbu7aYprEfsaWlrJmyCJmykur3LBr4VPet/roHDvvimfq6Ffe/BveS/Yb3jPmGBfe3\
+BvwL/pJI+01yTXRcdWoZdGpycW53bnZne2GACIBgW4VWG1VWkZZXH3L3cAWCt7OHrhvMvJ6yqh+q\
+saO8nMYIDhwE4xQcBcEVAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAA//8AAQAAAAFrZXJuAAgA\
+AAABAAAAAQAEAAIAAAABAAgAAQAqAAQAAAADABAAFgAgAAEAAv+0AAIAAf+0ABn/tAACAAH/2wAC\
+/2gAAQADAAEAAgAG&quot;)}
+
+ </style>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_freeline_unfilled.png b/icon-themes/tango_testing/cmd/lc_freeline_unfilled.png
new file mode 100644
index 000000000000..13d286513ba7
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_freeline_unfilled.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_freeline_unfilled.svg b/icon-themes/tango_testing/cmd/lc_freeline_unfilled.svg
new file mode 100644
index 000000000000..067e2fc5372c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_freeline_unfilled.svg
@@ -0,0 +1,448 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ width="24"
+ height="24"
+ sodipodi:docname="lc_freeline_unfilled.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_freeline_unfilled.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs6">
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7287">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop7289" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop7291" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3155-40">
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="0"
+ id="stop2541" />
+ <stop
+ id="stop2543"
+ offset="0.13482948"
+ style="stop-color:#dbdbdb;stop-opacity:1;" />
+ <stop
+ style="stop-color:#a4a4a4;stop-opacity:1;"
+ offset="0.20224422"
+ id="stop2545" />
+ <stop
+ id="stop2547"
+ offset="0.26965895"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8d8d8d;stop-opacity:1;"
+ offset="0.44650277"
+ id="stop2549" />
+ <stop
+ id="stop2551"
+ offset="0.57114136"
+ style="stop-color:#959595;stop-opacity:1;" />
+ <stop
+ style="stop-color:#cecece;stop-opacity:1;"
+ offset="0.72038066"
+ id="stop2553" />
+ <stop
+ style="stop-color:#181818;stop-opacity:1;"
+ offset="1"
+ id="stop2555" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-279">
+ <stop
+ id="stop2559"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2561" />
+ <stop
+ id="stop2563"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-789">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2567" />
+ <stop
+ id="stop2569"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2571" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-686">
+ <stop
+ id="stop2575"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2577" />
+ <stop
+ id="stop2579"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-768">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2583" />
+ <stop
+ id="stop2585"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2587" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3240-907">
+ <stop
+ id="stop2591"
+ offset="0"
+ style="stop-color:#565656;stop-opacity:1;" />
+ <stop
+ style="stop-color:#9a9a9a;stop-opacity:1;"
+ offset="0.5"
+ id="stop2593" />
+ <stop
+ id="stop2595"
+ offset="1"
+ style="stop-color:#545454;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3223-699">
+ <stop
+ style="stop-color:#b1b1b1;stop-opacity:1;"
+ offset="0"
+ id="stop2599" />
+ <stop
+ id="stop2601"
+ offset="0.5"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ style="stop-color:#8f8f8f;stop-opacity:1;"
+ offset="1"
+ id="stop2603" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3290-678">
+ <stop
+ style="stop-color:#ece5a5;stop-opacity:1;"
+ offset="0"
+ id="stop2607" />
+ <stop
+ style="stop-color:#fcfbf2;stop-opacity:1;"
+ offset="1"
+ id="stop2609" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3191-577">
+ <stop
+ style="stop-color:#dbce48;stop-opacity:1;"
+ offset="0"
+ id="stop2613" />
+ <stop
+ style="stop-color:#c5b625;stop-opacity:1;"
+ offset="1"
+ id="stop2615" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3104">
+ <stop
+ style="stop-color:#969696;stop-opacity:1;"
+ offset="0"
+ id="stop3106" />
+ <stop
+ style="stop-color:#bebebe;stop-opacity:1;"
+ offset="1"
+ id="stop3108" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5048">
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="0"
+ id="stop5050" />
+ <stop
+ id="stop5056"
+ offset="0.5"
+ style="stop-color:black;stop-opacity:1;" />
+ <stop
+ style="stop-color:black;stop-opacity:0;"
+ offset="1"
+ id="stop5052" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7271"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.2159591,0,0,1.2159591,-29.41025,-34.416713)"
+ x1="13.75"
+ y1="15.622917"
+ x2="13.75"
+ y2="19.375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7273"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,0.05556162,0.02897257)"
+ x1="-13.161851"
+ y1="-9.2234287"
+ x2="-9.6678057"
+ y2="-5.485857" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3290-678"
+ id="linearGradient7275"
+ gradientUnits="userSpaceOnUse"
+ x1="9.1578083"
+ y1="10.668404"
+ x2="8.5107889"
+ y2="12.101003" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient7293"
+ x1="10.636931"
+ y1="17.100588"
+ x2="2.0026019"
+ y2="11.001792"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0.70710678,-0.53033009)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7310"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.75626949,-0.7544419,0.86085249,0.85877215,-44.605153,-4.1802995)"
+ x1="13.75"
+ y1="15.622917"
+ x2="13.75"
+ y2="19.375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient7312"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,-1.0765579,1.0779086)"
+ x1="-13.161851"
+ y1="-9.2234287"
+ x2="-9.6678057"
+ y2="-5.485857" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3290-678"
+ id="linearGradient7314"
+ gradientUnits="userSpaceOnUse"
+ x1="9.1578083"
+ y1="10.668404"
+ x2="8.5107889"
+ y2="12.101003" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient7316"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.8660254,-0.5,-0.5,0.8660254,28.78236,6.676185)"
+ x1="10.636931"
+ y1="17.100588"
+ x2="2.0026019"
+ y2="11.001792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7287"
+ id="linearGradient3068"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.8660254,-0.5,-0.5,0.8660254,28.78236,6.676185)"
+ x1="10.636931"
+ y1="17.100588"
+ x2="2.0026019"
+ y2="11.001792" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient3070"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.75626949,-0.7544419,0.86085249,0.85877215,-44.605153,-4.1802995)"
+ x1="13.75"
+ y1="15.622917"
+ x2="13.75"
+ y2="19.375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3155-40"
+ id="linearGradient3072"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.0060567,0,0,1.0060567,-1.0765579,1.0779086)"
+ x1="-13.161851"
+ y1="-9.2234287"
+ x2="-9.6678057"
+ y2="-5.485857" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3290-678"
+ id="linearGradient3074"
+ gradientUnits="userSpaceOnUse"
+ x1="9.1578083"
+ y1="10.668404"
+ x2="8.5107889"
+ y2="12.101003" />
+ </defs>
+ <sodipodi:namedview
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1"
+ objecttolerance="10"
+ gridtolerance="10"
+ guidetolerance="10"
+ inkscape:pageopacity="0"
+ inkscape:pageshadow="2"
+ inkscape:window-width="1366"
+ inkscape:window-height="698"
+ id="namedview4"
+ showgrid="false"
+ inkscape:snap-global="false"
+ inkscape:zoom="1"
+ inkscape:cx="3.202758"
+ inkscape:cy="-0.48079432"
+ inkscape:window-x="0"
+ inkscape:window-y="25"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="g7295">
+ <inkscape:grid
+ type="xygrid"
+ id="grid6327" />
+ </sodipodi:namedview>
+ <g
+ id="g7295"
+ transform="matrix(1.3343663,0,0,1.3343663,-8.0255703,-5.306729)">
+ <g
+ id="g3053"
+ transform="matrix(1.2604429,0,0,1.2604429,-6.3774917,-1.0331167)">
+ <path
+ sodipodi:nodetypes="csc"
+ style="fill:none;stroke:url(#linearGradient3068);stroke-width:0.59456837px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+ d="m 11.344661,16.555901 c 0,0 2.318026,1.372134 5.440949,-0.193369 3.224201,-1.616272 7.32849,1.57678 7.32849,1.57678"
+ id="path7277"
+ inkscape:connector-curvature="0" />
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ transform="translate(39.049048,-1.6004757)">
+ <g
+ id="g6329"
+ transform="translate(-20.041248,-1.4901213)">
+ <g
+ id="g8626"
+ transform="matrix(0.821403,0,0,0.8233928,10.976317,6.2714886)">
+ <g
+ transform="matrix(0.85084467,0.14879489,0.14951666,0.85084466,-4.5798238,4.5419188)"
+ id="g7208" />
+ </g>
+ </g>
+ <g
+ id="g7262"
+ transform="translate(4.1542523,5.833631)">
+ <g
+ transform="matrix(0.69888636,0.12251664,0.12281343,0.70057937,-13.091977,8.7642185)"
+ id="g7202">
+ <path
+ sodipodi:nodetypes="ccccc"
+ style="fill:#ffb6ed;fill-opacity:1;stroke:#8e3789;stroke-width:0.86307323;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ d="m -10.437617,-10.532448 c -1.039665,1.0554952 -2.105891,2.0295475 -3.450845,3.3948957 1.427253,0.2011026 2.36382,1.1884001 2.537492,2.6255681 1.192146,-1.178972 2.524013,-2.4147859 3.4831393,-3.3626506 -0.1764068,-1.4598061 -1.1279637,-2.4409172 -2.5697863,-2.6578132 z"
+ id="path7251"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect7182"
+ d="m -26.509107,4.8187076 12.100311,-12.0710698 3.228197,3.2203961 -12.10031,12.0710691 z"
+ style="fill:url(#linearGradient3070);fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0" />
+ <path
+ id="rect7200"
+ d="m -26.512375,4.8102981 12.10721,-12.0779519 3.228197,3.2203961 -12.107209,12.0779511 z"
+ style="opacity:0.6;fill:#000000;fill-opacity:1;stroke:none"
+ inkscape:connector-curvature="0" />
+ <path
+ sodipodi:nodetypes="ccccc"
+ inkscape:connector-curvature="0"
+ id="rect7229"
+ d="m -13.844171,-7.8349599 c -1.295719,1.3148602 -0.01636,-0.012462 -1.692491,1.6883387 1.779002,0.2502863 2.946512,1.4799173 3.163189,3.2700105 1.485759,-1.4686833 0.537402,-0.4673936 1.732749,-1.648179 -0.220089,-1.8182906 -1.406281,-3.040214 -3.203447,-3.3101702 z"
+ style="fill:url(#linearGradient3072);fill-opacity:1;stroke:none" />
+ </g>
+ <path
+ sodipodi:end="1.0095777"
+ sodipodi:start="0.020382597"
+ transform="matrix(0.80786461,-0.21644027,-0.21646667,-0.80776607,-35.236817,22.399159)"
+ d="m 10.936682,10.642751 c -0.02701,1.325174 -0.718938,2.547836 -1.8410725,3.253265 L 7,10.5625 z"
+ sodipodi:ry="3.9375"
+ sodipodi:rx="3.9375"
+ sodipodi:cy="10.5625"
+ sodipodi:cx="7"
+ id="path7180"
+ style="fill:url(#linearGradient3074);fill-opacity:1;stroke:#cbb94c;stroke-width:0.7109409;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="path7255"
+ sodipodi:cx="7"
+ sodipodi:cy="10.5625"
+ sodipodi:rx="3.9375"
+ sodipodi:ry="3.9375"
+ d="m 10.936682,10.642751 c -0.02701,1.325174 -0.718938,2.547836 -1.8410725,3.253265 L 7,10.5625 z"
+ transform="matrix(0.32829963,-0.08796762,-0.08796762,-0.32829963,-33.51327,16.73372)"
+ sodipodi:start="0.020382597"
+ sodipodi:end="1.0095777" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/icon-themes/tango_testing/cmd/lc_gallery.png b/icon-themes/tango_testing/cmd/lc_gallery.png
new file mode 100644
index 000000000000..1f4bf353b30c
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_gallery.png
Binary files differ
diff --git a/icon-themes/tango_testing/cmd/lc_gallery.svg b/icon-themes/tango_testing/cmd/lc_gallery.svg
new file mode 100644
index 000000000000..05033414cfd5
--- /dev/null
+++ b/icon-themes/tango_testing/cmd/lc_gallery.svg
@@ -0,0 +1,45890 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="24"
+ height="24"
+ id="svg2"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886"
+ sodipodi:docname="lc_gallery.svg"
+ inkscape:export-filename="/home/alexander/libo/icon-themes/tango_testing/cmd/lc_gallery.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient3789">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3791" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop3793" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782">
+ <stop
+ style="stop-color:#393939;stop-opacity:1;"
+ offset="0"
+ id="stop3784" />
+ <stop
+ style="stop-color:#848484;stop-opacity:1;"
+ offset="1"
+ id="stop3786" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3774"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(17,1029.3622)" />
+ <linearGradient
+ id="linearGradient3764">
+ <stop
+ id="stop3766"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3768"
+ offset="1"
+ style="stop-color:#ededed;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3875"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3885"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3895"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3782"
+ id="linearGradient3788"
+ x1="8.3125"
+ y1="10.9375"
+ x2="8.875"
+ y2="5.1875"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,1031.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3228"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0555546,-5,1036.5844)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3252"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0555546,-5,1036.5844)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3789"
+ id="linearGradient3795"
+ x1="2"
+ y1="12"
+ x2="22"
+ y2="12"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3789"
+ id="linearGradient3798"
+ gradientUnits="userSpaceOnUse"
+ x1="12"
+ y1="4"
+ x2="18"
+ y2="18"
+ gradientTransform="translate(-42,1036.3622)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3764"
+ id="linearGradient3094"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0555546,-5,1036.5844)"
+ x1="8"
+ y1="0"
+ x2="8"
+ y2="11" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,1.43,0,1022.7922)"
+ gradientUnits="userSpaceOnUse"
+ y2="24"
+ x2="65"
+ y1="-1"
+ x1="65"
+ id="linearGradient5777"
+ xlink:href="#linearGradient5771"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-5-5"
+ id="radialGradient12982"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,-28.506829,-1050.8359)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-3-5-5"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3-8-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3-9-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-5-5"
+ id="radialGradient12948-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,-77.502869,-1052.3285)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-5"
+ id="radialGradient12948"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,-77.502869,-1052.3285)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-3-5"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ r="8.5"
+ fy="21.026667"
+ fx="11.004584"
+ cy="21.026667"
+ cx="11.004584"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,974.92182,-23.966346)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient12931-2"
+ xlink:href="#linearGradient3787-2-5-7-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8.5"
+ fy="21.026667"
+ fx="11.004584"
+ cy="21.026667"
+ cx="11.004584"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,974.92182,-23.966346)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient12931"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6708">
+ <stop
+ id="stop6710"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop6712"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6060">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6062" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop6064" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5996">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop5998" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop6000" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient10885">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop10887" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop10889" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7847">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop7849" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop7851" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7738">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop7740" />
+ <stop
+ id="stop7742"
+ offset="0.31854269"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop7744"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop7746" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7674">
+ <stop
+ id="stop7676"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.43446109"
+ id="stop7678" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop7680" />
+ <stop
+ id="stop7682"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586"
+ xlink:href="#linearGradient7113-62-4"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9574"
+ xlink:href="#linearGradient3787-2-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ id="linearGradient9567"
+ xlink:href="#linearGradient7113-62-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ id="linearGradient9559"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-0"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-6"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ id="linearGradient4256-2-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-6"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-6"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient7113-62-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4"
+ id="linearGradient9141-3-39-97"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient6977-28-58">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6" />
+ <stop
+ id="stop6981-1-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58"
+ id="radialGradient9139-7-61-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient3787-2-5"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-3"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-5" />
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ id="perspective1832" />
+ <linearGradient
+ id="linearGradient7157">
+ <stop
+ id="stop7159"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161"
+ offset="1"
+ style="stop-color:#373835;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7113"
+ inkscape:collect="always">
+ <stop
+ id="stop7115"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979" />
+ <stop
+ id="stop6981"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4388"
+ inkscape:collect="always">
+ <stop
+ id="stop4390"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-7"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-7"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ id="linearGradient3820"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient3830"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient3832"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient3834"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient3844"
+ gradientUnits="userSpaceOnUse"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3"
+ id="linearGradient3846"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0"
+ id="linearGradient3848"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-6"
+ id="radialGradient3852"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ cx="3.403806"
+ cy="4.2001681"
+ fx="3.403806"
+ fy="4.2001681"
+ r="8" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient3866"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-9">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-17">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ id="linearGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ id="linearGradient4032"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ id="linearGradient3832-7-4"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-9-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0"
+ id="linearGradient3830-2-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-0">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-4-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-8">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ id="linearGradient4662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ id="linearGradient4664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4"
+ id="linearGradient4666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ id="linearGradient4840-0-8-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-1-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-1-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-2-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-6-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-81" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3"
+ id="linearGradient4869"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4"
+ id="linearGradient4871"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7"
+ id="linearGradient4873"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient5751"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient5753"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7"
+ id="linearGradient5755"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6433"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6433-0"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient6584"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient6433-7"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6433-7-0"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4141"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4143"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4145"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4147"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4149"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4169"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4171"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4173"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4175"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4177"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient4179"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4187"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4189"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4191"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4193"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4201"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4203"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4205"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4207"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4209"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4211"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4213"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient4215"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4294"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4296"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4298"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4300"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4302"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4304"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4306"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4308"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4310"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4312"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4320"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4322"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4324"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4326"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4328"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4330"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4338"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4340"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4342"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4344"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4346"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient4348"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient4386"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient4660"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4388-8-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-1-7"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-6-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5033"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5151"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5289"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5291"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5293"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5295"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5297"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5299"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5303"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient5309"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5311"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5313"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5315"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5317"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5319"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5321"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5323"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5325"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5327"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5329"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient5335"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5337"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5339"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5341"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5343"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5347"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient5353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5355"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5357"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5359"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5361"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5363"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5365"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5367"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient5369"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient5375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient5691"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4840-0-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6123"
+ xlink:href="#linearGradient5685-0"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6909"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6911"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6913"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient6919"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient7213"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7263"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7265"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7267"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7269"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7271"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7273"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7275"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7277"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient7279"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7285"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7287"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7347"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7349"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7351"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7355"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7357"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7359"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient7361"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7388"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7390"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7392"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7394"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7396"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7398"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient7400"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7402"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1"
+ id="linearGradient7249-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-1">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-1" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient7740"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7910"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7912"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7915"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7917"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7920"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient7922"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7938"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7942"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient7950"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient7950-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-8" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient7942-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8025"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8436"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8438"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8440"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8442"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8444"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8446"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8448"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8450"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8452"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8454"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8456"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8458"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8460"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8462"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8464"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8466"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8468"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8470"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8472"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8474"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8512"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8516"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8518"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8520"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8522"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8524"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8526"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8528"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8530"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8532"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient8572"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8639"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8641"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8644"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8646"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8649"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient8651"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8677"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8681"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8685"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685"
+ id="linearGradient8747"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9121"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9123"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000003,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9125"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9127"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9129"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9131"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000001,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient9133"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9135"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000006,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9139"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9141"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9143"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9145"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9147"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9149"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9151"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9153"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient9155"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9157"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9177"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9179"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9181"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9183"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient9185"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9187"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9189"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9191"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9193"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9195"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9197"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9199"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient9201"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient9203"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5722-2"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9" />
+ <linearGradient
+ id="linearGradient4176-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5726-1"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0"
+ y1="38.63026"
+ y2="21.48896" />
+ <linearGradient
+ id="linearGradient3421-0">
+ <stop
+ id="stop3423-3"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop3425-4"
+ offset="1"
+ style="stop-color:#babdb6;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5728-0"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3" />
+ <linearGradient
+ id="linearGradient4229-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4231-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4233-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5730-9"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6"
+ y1="36.421127"
+ y2="35.581436" />
+ <linearGradient
+ id="linearGradient4248-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4250-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4252-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5732-3"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4137-0"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9" />
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4141-7-6"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0"
+ y1="38.63026"
+ y2="21.48896" />
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4143-6"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3" />
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4145-6-0"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6"
+ y1="36.421127"
+ y2="35.581436" />
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4147-0"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2" />
+ <linearGradient
+ id="linearGradient3787-2"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient4256-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3638-9"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-2"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3082"
+ inkscape:collect="always"
+ x1="99.396446"
+ x2="99.881432"
+ xlink:href="#linearGradient3512"
+ y1="-44.57159"
+ y2="-36.90625" />
+ <linearGradient
+ id="linearGradient3512"
+ inkscape:collect="always">
+ <stop
+ id="stop3514"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3516"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient2753"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787" />
+ <linearGradient
+ id="linearGradient3787"
+ inkscape:collect="always">
+ <stop
+ id="stop3789"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-11"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185"
+ inkscape:collect="always">
+ <stop
+ id="stop3187"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2759"
+ inkscape:collect="always"
+ x1="100.5"
+ x2="100.375"
+ xlink:href="#linearGradient3572"
+ y1="5.125"
+ y2="15.25" />
+ <linearGradient
+ id="linearGradient3572"
+ inkscape:collect="always">
+ <stop
+ id="stop3574"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3576"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2761"
+ inkscape:collect="always"
+ x1="100.875"
+ x2="106.4375"
+ xlink:href="#linearGradient3580"
+ y1="15.6875"
+ y2="11.5" />
+ <linearGradient
+ id="linearGradient3580"
+ inkscape:collect="always">
+ <stop
+ id="stop3582"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3584"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7137"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176" />
+ <linearGradient
+ id="linearGradient4176"
+ inkscape:collect="always">
+ <stop
+ id="stop4178"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7141"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653" />
+ <linearGradient
+ id="linearGradient4653"
+ inkscape:collect="always">
+ <stop
+ id="stop4655"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0" />
+ <stop
+ id="stop4657"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7143"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ id="linearGradient4643"
+ inkscape:collect="always">
+ <stop
+ id="stop4645"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4647"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7145"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512"
+ y1="31.107067"
+ y2="11.313666" />
+ <linearGradient
+ id="linearGradient2512">
+ <stop
+ id="stop2514"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop2516"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7147"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601" />
+ <linearGradient
+ id="linearGradient4601"
+ inkscape:collect="always">
+ <stop
+ id="stop4603"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4605"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7149"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601"
+ y1="9.5507469"
+ y2="17.149347" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6553"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176" />
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6557"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653" />
+ <linearGradient
+ gradientTransform="translate(10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6559"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6561"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512"
+ y1="31.107067"
+ y2="11.313666" />
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6563"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601" />
+ <linearGradient
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6565"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601"
+ y1="9.5507469"
+ y2="17.149347" />
+ <linearGradient
+ id="linearGradient4256"
+ inkscape:collect="always">
+ <stop
+ id="stop4258"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-60"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4285"
+ inkscape:collect="always">
+ <stop
+ id="stop4287"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4293"
+ inkscape:collect="always">
+ <stop
+ id="stop4295"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4301"
+ inkscape:collect="always">
+ <stop
+ id="stop4303"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4309"
+ inkscape:collect="always">
+ <stop
+ id="stop4311"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4437"
+ inkscape:collect="always">
+ <stop
+ id="stop4439"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4441"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4348-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4350"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3648"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ id="linearGradient4256-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-22"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3650"
+ inkscape:collect="always"
+ x1="8.2643108"
+ x2="4.7950678"
+ xlink:href="#linearGradient4256-1"
+ y1="14.541593"
+ y2="10.431535" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3809"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3817"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-9" />
+ <linearGradient
+ id="linearGradient3787-9"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-8"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4496"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1" />
+ <linearGradient
+ id="linearGradient4176-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4488"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2" />
+ <linearGradient
+ id="linearGradient4285-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4490"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2" />
+ <linearGradient
+ id="linearGradient4293-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4492"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7"
+ y1="36.125"
+ y2="19" />
+ <linearGradient
+ id="linearGradient4301-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4494"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ id="linearGradient4309-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5706"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5710"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7"
+ y1="36.125"
+ y2="19" />
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5712"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2" />
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5714"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5716"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ gradientTransform="translate(60,47)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5720"
+ inkscape:collect="always"
+ x1="20.155684"
+ x2="20.155684"
+ xlink:href="#linearGradient4348-8"
+ y1="43.910683"
+ y2="46" />
+ <linearGradient
+ id="linearGradient4348-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185"
+ id="radialGradient6084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ cx="-50.993778"
+ cy="13.921414"
+ fx="-50.993778"
+ fy="13.921414"
+ r="7.9160094" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-6"
+ id="radialGradient6092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256"
+ id="linearGradient6094"
+ gradientUnits="userSpaceOnUse"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5"
+ id="radialGradient6098"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285"
+ id="radialGradient6104"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293"
+ id="radialGradient6106"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301"
+ id="linearGradient6108"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309"
+ id="linearGradient6110"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5"
+ id="radialGradient6114"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301"
+ id="linearGradient6118"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285"
+ id="radialGradient6120"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293"
+ id="radialGradient6122"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309"
+ id="linearGradient6124"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4437"
+ id="linearGradient6126"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(190,0)"
+ x1="74.28125"
+ y1="28.776411"
+ x2="74.28125"
+ y2="31.960411" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4348-3"
+ id="linearGradient6130"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,46)"
+ x1="20.155684"
+ y1="43.910683"
+ x2="20.155684"
+ y2="46" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977"
+ id="radialGradient9139-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113"
+ id="linearGradient9141-3"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7"
+ id="radialGradient9139-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8" />
+ <stop
+ id="stop6981-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7"
+ id="radialGradient7111"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="103.43681"
+ fx="39.554386"
+ fy="103.43681"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157"
+ id="linearGradient9141-3-2"
+ gradientUnits="userSpaceOnUse"
+ x1="145.3887"
+ y1="39.999996"
+ x2="145.3887"
+ y2="7.9807839" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0"
+ id="linearGradient9141-3-3"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.004028"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5"
+ id="radialGradient9139-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0" />
+ <stop
+ id="stop6981-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14"
+ id="radialGradient9139-7-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="71.642067"
+ cy="119.85913"
+ fx="71.642067"
+ fy="119.85913"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86" />
+ <stop
+ id="stop6981-39"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6"
+ id="linearGradient9141-3-34"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="93"
+ x2="84.5"
+ y2="88" />
+ <linearGradient
+ id="linearGradient7113-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-2"
+ id="linearGradient9141-3-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.001797"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-6"
+ id="radialGradient9139-7-3-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="72.146278"
+ cy="120.14571"
+ fx="72.146278"
+ fy="120.14571"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-8" />
+ <stop
+ id="stop6981-39-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-2"
+ id="linearGradient9141-3-34-1"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="94"
+ x2="84.5"
+ y2="89" />
+ <linearGradient
+ id="linearGradient7113-6-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-8"
+ id="radialGradient9139-7-0-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-9" />
+ <stop
+ id="stop6981-3-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0"
+ id="linearGradient9141-3-2-4"
+ gradientUnits="userSpaceOnUse"
+ x1="3.9729283"
+ y1="27.841093"
+ x2="3.9729283"
+ y2="5.1557527" />
+ <linearGradient
+ id="linearGradient7157-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3"
+ id="radialGradient7111-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="39.814342"
+ cy="137.44762"
+ fx="39.814342"
+ fy="137.44762"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8" />
+ <stop
+ id="stop6981-9-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-9"
+ id="radialGradient9139-7-06"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-3" />
+ <stop
+ id="stop6981-33"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9"
+ id="linearGradient9141-3-7"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7"
+ id="linearGradient9141-3-2-4-7"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3"
+ id="radialGradient7111-4-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6" />
+ <stop
+ id="stop6981-9-5-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1"
+ id="radialGradient9139-7-3-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5" />
+ <stop
+ id="stop6981-39-27"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1"
+ id="linearGradient9141-3-34-7"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-5"
+ id="linearGradient9141-3-2-4-7-9"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-3"
+ id="radialGradient7111-4-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-1" />
+ <stop
+ id="stop6981-9-5-0-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-5"
+ id="radialGradient9139-7-3-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-9" />
+ <stop
+ id="stop6981-39-27-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-0"
+ id="linearGradient9141-3-34-7-9"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28"
+ id="radialGradient9139-7-61"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4" />
+ <stop
+ id="stop6981-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62"
+ id="linearGradient9141-3-39"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-5"
+ id="radialGradient9139-7-61-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="39.344345"
+ cy="192.03035"
+ fx="39.344345"
+ fy="192.03035"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-4" />
+ <stop
+ id="stop6981-1-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-5"
+ id="linearGradient9141-3-39-9"
+ gradientUnits="userSpaceOnUse"
+ x1="-56.866325"
+ y1="12.007"
+ x2="-56.826302"
+ y2="0.12165857" />
+ <linearGradient
+ id="linearGradient7113-62-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7"
+ id="radialGradient9139-7-61-05"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8" />
+ <stop
+ id="stop6981-1-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52"
+ id="linearGradient9141-3-39-1"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7"
+ id="linearGradient9141-3-39-6"
+ gradientUnits="userSpaceOnUse"
+ x1="185.01755"
+ y1="-18.997253"
+ x2="185.01755"
+ y2="-22.000326" />
+ <linearGradient
+ id="linearGradient7113-62-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-1"
+ id="linearGradient9141-3-39-6-2"
+ gradientUnits="userSpaceOnUse"
+ x1="76.255684"
+ y1="-10"
+ x2="76.255684"
+ y2="-13.002928" />
+ <linearGradient
+ id="linearGradient7113-62-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-5"
+ id="radialGradient9139-7-61-05-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-7" />
+ <stop
+ id="stop6981-1-8-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-3"
+ id="linearGradient9141-3-39-1-8"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2"
+ id="radialGradient9139-7-61-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="40.68565"
+ cy="125.0378"
+ fx="40.68565"
+ fy="125.0378"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5" />
+ <stop
+ id="stop6981-1-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9"
+ id="linearGradient9141-3-39-5"
+ gradientUnits="userSpaceOnUse"
+ x1="40"
+ y1="13.001565"
+ x2="40"
+ y2="0.99979788" />
+ <linearGradient
+ id="linearGradient7113-62-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-7"
+ id="radialGradient9139-7-61-8-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ cx="38.636917"
+ cy="223.66896"
+ fx="38.636917"
+ fy="223.66896"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-1" />
+ <stop
+ id="stop6981-1-2-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-0"
+ id="linearGradient9141-3-39-5-3"
+ gradientUnits="userSpaceOnUse"
+ x1="-65.877312"
+ y1="11.172731"
+ x2="-66.05246"
+ y2="0.24979722" />
+ <linearGradient
+ id="linearGradient7113-62-9-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3"
+ id="radialGradient9139-7-61-8-44"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5" />
+ <stop
+ id="stop6981-1-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4"
+ id="linearGradient9141-3-39-5-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0"
+ id="linearGradient9141-3-39-6-3"
+ gradientUnits="userSpaceOnUse"
+ x1="184.48721"
+ y1="-50.994797"
+ x2="184.48721"
+ y2="-54" />
+ <linearGradient
+ id="linearGradient7113-62-7-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5"
+ id="radialGradient9139-7-61-8-44-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4" />
+ <stop
+ id="stop6981-1-2-8-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-4"
+ id="linearGradient9141-3-39-5-6-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-5"
+ id="linearGradient9141-3-39-6-3-9"
+ gradientUnits="userSpaceOnUse"
+ x1="67.917938"
+ y1="-43.977436"
+ x2="67.917938"
+ y2="-47.001114" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8523"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8525"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8527"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8531"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8533"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8535"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8537"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient8539"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8541"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8543"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8545"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8547"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8549"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8551"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8553"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8555"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8557"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8561"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8565"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8567"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8569"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8571"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8573"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8575"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8577"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8579"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8581"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8583"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8585"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8587"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8589"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient8597"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8599"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8601"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient8603"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient8605"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient8607"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0"
+ id="linearGradient8610"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1"
+ id="linearGradient8612"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8614"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8616"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7"
+ id="radialGradient8618"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40279"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40281"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40283"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40285"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40287"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40289"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40291"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40293"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40295"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40297"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40299"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40301"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40303"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40305"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40307"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40309"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40311"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40313"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40315"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40317"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40319"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40321"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40323"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40325"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40327"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40329"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40331"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40333"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40335"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40337"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40339"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40341"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3"
+ id="radialGradient40343"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40345"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40347"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40349"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40351"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40353"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40355"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40357"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40359"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40361"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40363"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40365"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3"
+ id="linearGradient40367"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4"
+ id="linearGradient40369"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7"
+ id="linearGradient40371"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6"
+ id="linearGradient40373"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8"
+ id="linearGradient40375"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4"
+ id="linearGradient40377"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3"
+ id="linearGradient40379"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0"
+ id="linearGradient40381"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8"
+ id="linearGradient40383"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17"
+ id="linearGradient40385"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9"
+ id="linearGradient40387"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40525"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40527"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40529"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40531"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40533"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40535"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40537"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40539"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40541"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40543"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1"
+ id="radialGradient40545"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40547"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40549"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40551"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40553"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40555"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40557"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40559"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40561"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40563"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40565"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40567"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40569"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388"
+ id="radialGradient40571"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40573"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40575"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40577"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40579"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40581"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40583"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40585"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40587"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6"
+ id="radialGradient40589"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40591"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40593"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40595"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40597"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40599"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40601"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40603"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40605"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40607"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157"
+ id="linearGradient40609"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7"
+ id="radialGradient40611"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40613"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient40615"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40617"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient40619"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1"
+ id="linearGradient40621"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1"
+ id="linearGradient40623"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6"
+ id="linearGradient40625"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7"
+ id="linearGradient40627"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0"
+ id="linearGradient40629"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3"
+ id="linearGradient40631"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996"
+ id="linearGradient40633"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ id="linearGradient9593">
+ <stop
+ id="stop9595"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.58164877"
+ id="stop9597" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop9599" />
+ <stop
+ id="stop9601"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847"
+ id="linearGradient7853"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-5"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-9"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9582"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="119.67304"
+ x2="223.39351"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9580"
+ xlink:href="#linearGradient9593-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9578"
+ xlink:href="#linearGradient3787-2-5-7"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9574-6"
+ xlink:href="#linearGradient3787-2-5-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ id="linearGradient9567-8"
+ xlink:href="#linearGradient7113-62-4-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ id="linearGradient9559-3"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-0-4"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-6-8"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ id="linearGradient4256-2-6-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-9-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-0-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-6-6"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-6-8"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient7113-62-4-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7"
+ id="linearGradient9141-3-39-97-0"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient6977-28-58-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6-8" />
+ <stop
+ id="stop6981-1-3-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-0"
+ id="radialGradient9139-7-61-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient3787-2-5-7"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-3-4"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-5-7" />
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ id="perspective1832-7" />
+ <linearGradient
+ id="linearGradient7157-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7113-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-52"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-2" />
+ <stop
+ id="stop6981-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-77"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-26" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-5">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-9" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4388-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-6"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-7"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-9" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-2">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-6-5"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-7-4"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-7-7"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-9">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-36" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-0">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-2">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-2"
+ id="linearGradient3820-3"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-2"
+ id="linearGradient3830-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0"
+ id="linearGradient3832-5"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-9"
+ id="linearGradient3834-7"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-2"
+ id="linearGradient3844-2"
+ gradientUnits="userSpaceOnUse"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-4"
+ id="linearGradient3846-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-9"
+ id="linearGradient3848-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-6-5"
+ id="radialGradient3852-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ cx="3.403806"
+ cy="4.2001681"
+ fx="3.403806"
+ fy="4.2001681"
+ r="8" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0"
+ id="linearGradient3866-5"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-9-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-7-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-4-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-17-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-0-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-6-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-5-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-3-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8-6"
+ id="linearGradient4028-4"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17-3"
+ id="linearGradient4030-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ id="linearGradient4032-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3-6"
+ id="linearGradient3832-7-4-0"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-3-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-9-6-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0-3"
+ id="linearGradient3830-2-9-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-0-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-4-4-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-8-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-4-6">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-9-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-4-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-8-0">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-3-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-2-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-2-7" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-2-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-9"
+ id="linearGradient4662-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-0"
+ id="linearGradient4664-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-6"
+ id="linearGradient4666-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ id="linearGradient4840-0-8-3-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-1-0-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3-2-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-1-4-9">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-2-3-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-8-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-7-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-6-0-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-81-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-4"
+ id="linearGradient4869-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-9"
+ id="linearGradient4871-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-3"
+ id="linearGradient4873-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0"
+ id="linearGradient5751-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-9"
+ id="linearGradient5753-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-7"
+ id="linearGradient5755-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient6433-3"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient6433-0-3"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-7" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-8" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient6584-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient6433-7-4"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-1">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-2" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6433-7-0-8"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-9">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-2" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4141-7"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4143-1"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4145-7"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4147-3"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4149-5"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4169-6"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4171-3"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4173-3"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4175-9"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4177-7"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient4179-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4187-1"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4189-4"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4191-1"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4193-7"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4201-3"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4203-0"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4205-6"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4207-9"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4209-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4211-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4213-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient4215-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4294-3"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4296-4"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4298-6"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4300-7"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4302-7"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4304-6"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4306-1"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4308-0"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4310-4"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4312-6"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4320-0"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4322-8"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4324-9"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4326-5"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4328-5"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4330-2"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4338-8"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4340-1"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4342-0"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4344-1"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4346-0"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient4348-9"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient4386-9"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient4660-2"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4388-8-1-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-1-7-3"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-6-1-8"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient5033-9"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient5151-7"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient5289-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5291-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient5293-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5295-5"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient5297-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5299-4"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient5301-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5303-1"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient5309-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient5311-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5313-6"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient5315-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5317-5"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient5319-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5321-7"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient5323-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5325-2"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient5327-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5329-4"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient5335-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5337-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5339-0"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5341-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5343-1"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5345-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5347-2"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient5353-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient5355-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5357-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient5359-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5361-0"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient5363-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5365-1"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient5367-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient5369-8"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient5375-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-5"
+ id="linearGradient5691-0"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4840-0-8-5">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-5">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-8" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-7" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6123-1"
+ xlink:href="#linearGradient5685-0-5"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-19" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-5" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6909-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6911-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6913-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient6919-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-5"
+ id="linearGradient7213-6"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient7263-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7265-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient7267-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7269-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient7271-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7273-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient7275-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7277-4"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient7279-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient7285-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7287-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient7301-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient7345-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7347-3"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient7349-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7351-4"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient7353-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7355-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient7357-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7359-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient7361-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient7388-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7390-8"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient7392-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7394-6"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient7396-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7398-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient7400-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7402-3"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-9-8" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-6-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-8-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-3-6" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-3-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-3"
+ id="linearGradient7249-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-1-3">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-1-9" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-4-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-5"
+ id="linearGradient7740-3"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-9-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-1-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7910-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7912-4"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7915-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7917-6"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7920-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient7922-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7938-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7942-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient7950-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5"
+ id="radialGradient7950-4-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-7-5">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-8-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-8-1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-2-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-9-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5"
+ id="radialGradient7942-2-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8025-3"
+ xlink:href="#linearGradient6427-7-6-3-7-5"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8436-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8438-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8440-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8442-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8444-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8446-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8448-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8450-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8452-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8454-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8456-1"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8458-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8460-6"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8462-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8464-1"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8466-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8468-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8470-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8472-9"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8474-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8512-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8516-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8518-3"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8520-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8522-3"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8524-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8526-1"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8528-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8530-0"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8532-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-5"
+ id="linearGradient8572-2"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8639-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8641-9"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8644-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8646-1"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8649-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient8651-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8677-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8681-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8685-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-5"
+ id="linearGradient8747-0"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient9121-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9123-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000003,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient9125-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9127-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient9129-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9131-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000001,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient9133-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9135-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000006,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient9139-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9141-5"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient9143-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9145-7"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient9147-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9149-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient9151-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9153-1"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient9155-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9157-1"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient9177-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9179-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient9181-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9183-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient9185-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9187-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient9189-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9191-3"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient9193-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9195-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient9197-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9199-3"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient9201-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient9203-6"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5722-2-0"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-3" />
+ <linearGradient
+ id="linearGradient4176-9-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5726-1-0"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-9"
+ y1="38.63026"
+ y2="21.48896" />
+ <linearGradient
+ id="linearGradient3421-0-9">
+ <stop
+ id="stop3423-3-3"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop3425-4-7"
+ offset="1"
+ style="stop-color:#babdb6;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5728-0-5"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-8" />
+ <linearGradient
+ id="linearGradient4229-3-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4231-9-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4233-1-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5730-9-5"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-3"
+ y1="36.421127"
+ y2="35.581436" />
+ <linearGradient
+ id="linearGradient4248-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4250-9-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4252-3-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5732-3-6"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-8" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4137-0-9"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-3" />
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4141-7-6-3"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-9"
+ y1="38.63026"
+ y2="21.48896" />
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4143-6-9"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-8" />
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4145-6-0-0"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-3"
+ y1="36.421127"
+ y2="35.581436" />
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4147-0-5"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-8" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-1"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-6" />
+ <linearGradient
+ id="linearGradient3787-2-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-4"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-4"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-2"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient4256-2-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-2"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-2"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3638-9-4"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-2-2"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3082-7"
+ inkscape:collect="always"
+ x1="99.396446"
+ x2="99.881432"
+ xlink:href="#linearGradient3512-1"
+ y1="-44.57159"
+ y2="-36.90625" />
+ <linearGradient
+ id="linearGradient3512-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3514-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3516-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient2753-9"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-7" />
+ <linearGradient
+ id="linearGradient3787-7"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-0"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-1"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-5"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2759-1"
+ inkscape:collect="always"
+ x1="100.5"
+ x2="100.375"
+ xlink:href="#linearGradient3572-8"
+ y1="5.125"
+ y2="15.25" />
+ <linearGradient
+ id="linearGradient3572-8"
+ inkscape:collect="always">
+ <stop
+ id="stop3574-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3576-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2761-4"
+ inkscape:collect="always"
+ x1="100.875"
+ x2="106.4375"
+ xlink:href="#linearGradient3580-8"
+ y1="15.6875"
+ y2="11.5" />
+ <linearGradient
+ id="linearGradient3580-8"
+ inkscape:collect="always">
+ <stop
+ id="stop3582-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3584-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7137-6"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-17" />
+ <linearGradient
+ id="linearGradient4176-17"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-93"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7141-0"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-3" />
+ <linearGradient
+ id="linearGradient4653-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4655-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0" />
+ <stop
+ id="stop4657-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7143-6"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-4"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ id="linearGradient4643-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4645-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4647-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7145-5"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-6"
+ y1="31.107067"
+ y2="11.313666" />
+ <linearGradient
+ id="linearGradient2512-6">
+ <stop
+ id="stop2514-2"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop2516-0"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7147-5"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-1" />
+ <linearGradient
+ id="linearGradient4601-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4603-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4605-5"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7149-2"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-1"
+ y1="9.5507469"
+ y2="17.149347" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6553-1"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-17" />
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6557-2"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-3" />
+ <linearGradient
+ gradientTransform="translate(10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6559-8"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-4"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6561-9"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-6"
+ y1="31.107067"
+ y2="11.313666" />
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6563-6"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-1" />
+ <linearGradient
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6565-1"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-1"
+ y1="9.5507469"
+ y2="17.149347" />
+ <linearGradient
+ id="linearGradient4256-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-6-7"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-60-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-2-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-5-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-8-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-9-3"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4285-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4293-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4301-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4309-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4437-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4439-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4441-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4348-3-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3648-7"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-5"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ id="linearGradient4256-1-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-22-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3650-2"
+ inkscape:collect="always"
+ x1="8.2643108"
+ x2="4.7950678"
+ xlink:href="#linearGradient4256-1-5"
+ y1="14.541593"
+ y2="10.431535" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3809-1"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-5"
+ y1="6.3656702"
+ y2="16.751301" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3817-7"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-9-1" />
+ <linearGradient
+ id="linearGradient3787-9-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-2-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-8-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4496-7"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-3" />
+ <linearGradient
+ id="linearGradient4176-1-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-2-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-4-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4488-0"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-9" />
+ <linearGradient
+ id="linearGradient4285-2-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-3-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-7-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4490-0"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-8" />
+ <linearGradient
+ id="linearGradient4293-2-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-5-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-3-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4492-2"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-8"
+ y1="36.125"
+ y2="19" />
+ <linearGradient
+ id="linearGradient4301-7-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-6-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-8-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4494-8"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-2"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ id="linearGradient4309-1-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-3-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-6-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5706-2"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-3" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5710-0"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-8"
+ y1="36.125"
+ y2="19" />
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5712-6"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-9" />
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5714-0"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-8" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5716-8"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-2"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ gradientTransform="translate(60,47)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5720-7"
+ inkscape:collect="always"
+ x1="20.155684"
+ x2="20.155684"
+ xlink:href="#linearGradient4348-8-5"
+ y1="43.910683"
+ y2="46" />
+ <linearGradient
+ id="linearGradient4348-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-0-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-0"
+ id="radialGradient6084-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ cx="-50.993778"
+ cy="13.921414"
+ fx="-50.993778"
+ fy="13.921414"
+ r="7.9160094" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-4"
+ id="linearGradient6086-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-4"
+ id="linearGradient6088-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-6-7"
+ id="radialGradient6092-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-4"
+ id="linearGradient6094-3"
+ gradientUnits="userSpaceOnUse"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-4"
+ id="radialGradient6098-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-8"
+ id="radialGradient6104-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-3"
+ id="radialGradient6106-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-3"
+ id="linearGradient6108-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-4"
+ id="linearGradient6110-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-4"
+ id="radialGradient6114-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-3"
+ id="linearGradient6118-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-8"
+ id="radialGradient6120-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-3"
+ id="radialGradient6122-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-4"
+ id="linearGradient6124-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4437-9"
+ id="linearGradient6126-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(190,0)"
+ x1="74.28125"
+ y1="28.776411"
+ x2="74.28125"
+ y2="31.960411" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4348-3-5"
+ id="linearGradient6130-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,46)"
+ x1="20.155684"
+ y1="43.910683"
+ x2="20.155684"
+ y2="46" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-6"
+ id="radialGradient9139-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-7"
+ id="linearGradient9141-3-6"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-6"
+ id="radialGradient9139-7-6-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-2" />
+ <stop
+ id="stop6981-9-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-5" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-6"
+ id="radialGradient7111-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="103.43681"
+ fx="39.554386"
+ fy="103.43681"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-5"
+ id="linearGradient9141-3-2-2"
+ gradientUnits="userSpaceOnUse"
+ x1="145.3887"
+ y1="39.999996"
+ x2="145.3887"
+ y2="7.9807839" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-4"
+ id="linearGradient9141-3-3-0"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.004028"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-7"
+ id="radialGradient9139-7-0-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-0" />
+ <stop
+ id="stop6981-3-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-2"
+ id="radialGradient9139-7-3-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="71.642067"
+ cy="119.85913"
+ fx="71.642067"
+ fy="119.85913"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-4" />
+ <stop
+ id="stop6981-39-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-0"
+ id="linearGradient9141-3-34-0"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="93"
+ x2="84.5"
+ y2="88" />
+ <linearGradient
+ id="linearGradient7113-6-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-22"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-3"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-2-3"
+ id="linearGradient9141-3-3-4-4"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.001797"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-2-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-2-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-6-2"
+ id="radialGradient9139-7-3-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="72.146278"
+ cy="120.14571"
+ fx="72.146278"
+ fy="120.14571"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-6-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-8-9" />
+ <stop
+ id="stop6981-39-2-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-2-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-4-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-2-5"
+ id="linearGradient9141-3-34-1-6"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="94"
+ x2="84.5"
+ y2="89" />
+ <linearGradient
+ id="linearGradient7113-6-2-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-4-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-8-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-8-0"
+ id="radialGradient9139-7-0-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-8-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-9-7" />
+ <stop
+ id="stop6981-3-1-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-1-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-2-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-1"
+ id="linearGradient9141-3-2-4-8"
+ gradientUnits="userSpaceOnUse"
+ x1="3.9729283"
+ y1="27.841093"
+ x2="3.9729283"
+ y2="5.1557527" />
+ <linearGradient
+ id="linearGradient7157-0-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-05"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-0"
+ id="radialGradient7111-4-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="39.814342"
+ cy="137.44762"
+ fx="39.814342"
+ fy="137.44762"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-2" />
+ <stop
+ id="stop6981-9-5-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-5" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-9-2"
+ id="radialGradient9139-7-06-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-9-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-3-3" />
+ <stop
+ id="stop6981-33-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-5-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-2-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9-4"
+ id="linearGradient9141-3-7-3"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-4"
+ id="linearGradient9141-3-2-4-7-0"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-8"
+ id="radialGradient7111-4-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-2" />
+ <stop
+ id="stop6981-9-5-0-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-0"
+ id="radialGradient9139-7-3-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-1" />
+ <stop
+ id="stop6981-39-27-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-4"
+ id="linearGradient9141-3-34-7-3"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-46"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-5-7"
+ id="linearGradient9141-3-2-4-7-9-6"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-5-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-9-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-7-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-3-6"
+ id="radialGradient7111-4-7-8-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-1-0" />
+ <stop
+ id="stop6981-9-5-0-3-6"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-0-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-3-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-5-7"
+ id="radialGradient9139-7-3-7-1-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-9-8" />
+ <stop
+ id="stop6981-39-27-5-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-6-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-2-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-0-5"
+ id="linearGradient9141-3-34-7-9-0"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-0-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-4-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-8-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-3"
+ id="radialGradient9139-7-61-04"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-7" />
+ <stop
+ id="stop6981-1-39"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-71"
+ id="linearGradient9141-3-39-68"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-71"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-3"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-5-2"
+ id="radialGradient9139-7-61-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="39.344345"
+ cy="192.03035"
+ fx="39.344345"
+ fy="192.03035"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-5-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-4-8" />
+ <stop
+ id="stop6981-1-4-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-8-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-6-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-5-7"
+ id="linearGradient9141-3-39-9-9"
+ gradientUnits="userSpaceOnUse"
+ x1="-56.866325"
+ y1="12.007"
+ x2="-56.826302"
+ y2="0.12165857" />
+ <linearGradient
+ id="linearGradient7113-62-5-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-4-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-2-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-8"
+ id="radialGradient9139-7-61-05-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-4" />
+ <stop
+ id="stop6981-1-8-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-7"
+ id="linearGradient9141-3-39-1-5"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-3"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-10"
+ id="linearGradient9141-3-39-6-0"
+ gradientUnits="userSpaceOnUse"
+ x1="185.01755"
+ y1="-18.997253"
+ x2="185.01755"
+ y2="-22.000326" />
+ <linearGradient
+ id="linearGradient7113-62-7-10"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-03"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-1-2"
+ id="linearGradient9141-3-39-6-2-3"
+ gradientUnits="userSpaceOnUse"
+ x1="76.255684"
+ y1="-10"
+ x2="76.255684"
+ y2="-13.002928" />
+ <linearGradient
+ id="linearGradient7113-62-7-1-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-0-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-9-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-5-6"
+ id="radialGradient9139-7-61-05-1-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-7-2" />
+ <stop
+ id="stop6981-1-8-0-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-3-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-0-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-3-0"
+ id="linearGradient9141-3-39-1-8-2"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-3-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-8-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-4-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-6"
+ id="radialGradient9139-7-61-8-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="40.68565"
+ cy="125.0378"
+ fx="40.68565"
+ fy="125.0378"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-18" />
+ <stop
+ id="stop6981-1-2-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-1"
+ id="linearGradient9141-3-39-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="40"
+ y1="13.001565"
+ x2="40"
+ y2="0.99979788" />
+ <linearGradient
+ id="linearGradient7113-62-9-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-7-2"
+ id="radialGradient9139-7-61-8-4-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ cx="38.636917"
+ cy="223.66896"
+ fx="38.636917"
+ fy="223.66896"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-1-4" />
+ <stop
+ id="stop6981-1-2-7-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-4-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-0-4"
+ id="linearGradient9141-3-39-5-3-1"
+ gradientUnits="userSpaceOnUse"
+ x1="-65.877312"
+ y1="11.172731"
+ x2="-66.05246"
+ y2="0.24979722" />
+ <linearGradient
+ id="linearGradient7113-62-9-0-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-4-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-7"
+ id="radialGradient9139-7-61-8-44-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-7" />
+ <stop
+ id="stop6981-1-2-8-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-5"
+ id="linearGradient9141-3-39-5-6-0"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-2"
+ id="linearGradient9141-3-39-6-3-5"
+ gradientUnits="userSpaceOnUse"
+ x1="184.48721"
+ y1="-50.994797"
+ x2="184.48721"
+ y2="-54" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-7"
+ id="radialGradient9139-7-61-8-44-8-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-0" />
+ <stop
+ id="stop6981-1-2-8-5-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-4-8"
+ id="linearGradient9141-3-39-5-6-6-9"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-4-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-1-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-6-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-5-5"
+ id="linearGradient9141-3-39-6-3-9-4"
+ gradientUnits="userSpaceOnUse"
+ x1="67.917938"
+ y1="-43.977436"
+ x2="67.917938"
+ y2="-47.001114" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-5-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-9-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-8-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8523-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8525-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8527-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8529-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8531-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8533-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8535-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8537-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient8539-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8541-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8543-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8545-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8547-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8549-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8551-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8553-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8555-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8557-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8559-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8561-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8563-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8565-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8567-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8569-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8571-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8573-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8575-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8577-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8579-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8581-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8583-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8585-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8587-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8589-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient8597-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8599-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8601-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient8603-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient8605-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient8607-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-5"
+ id="linearGradient8610-0"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-3"
+ id="linearGradient8612-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5"
+ id="radialGradient8614-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5"
+ id="radialGradient8616-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5"
+ id="radialGradient8618-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40279-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40281-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40283-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40285-0"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40287-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40289-5"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40291-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40293-9"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40295-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40297-7"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40299-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40301-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40303-3"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40305-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40307-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40309-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40311-1"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40313-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40315-7"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40317-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40319-6"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40321-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40323-3"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40325-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40327-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40329-1"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40331-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40333-4"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40335-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40337-1"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40339-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40341-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9"
+ id="radialGradient40343-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40345-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40347-5"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40349-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40351-8"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40353-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40355-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40357-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40359-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40361-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40363-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40365-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-4"
+ id="linearGradient40367-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-9"
+ id="linearGradient40369-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-3"
+ id="linearGradient40371-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-9"
+ id="linearGradient40373-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-0"
+ id="linearGradient40375-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-6"
+ id="linearGradient40377-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3-6"
+ id="linearGradient40379-5"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0-3"
+ id="linearGradient40381-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8-6"
+ id="linearGradient40383-0"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17-3"
+ id="linearGradient40385-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5"
+ id="linearGradient40387-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40525-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40527-3"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40529-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40531-8"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40533-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40535-4"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40537-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40539-8"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40541-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40543-9"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0"
+ id="radialGradient40545-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40547-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40549-7"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40551-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40553-9"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40555-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40557-9"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40559-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40561-5"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40563-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40565-2"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40567-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40569-1"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1"
+ id="radialGradient40571-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40573-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40575-8"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40577-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40579-3"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40581-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40583-5"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40585-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40587-1"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1"
+ id="radialGradient40589-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40591-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40593-2"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40595-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40597-6"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40599-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40601-0"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40603-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40605-2"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40607-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6"
+ id="linearGradient40609-6"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3"
+ id="radialGradient40611-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0"
+ id="linearGradient40613-0"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-2"
+ id="linearGradient40615-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0"
+ id="linearGradient40617-2"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-9"
+ id="linearGradient40619-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-2"
+ id="linearGradient40621-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0"
+ id="linearGradient40623-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-9"
+ id="linearGradient40625-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-7"
+ id="linearGradient40627-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-9"
+ id="linearGradient40629-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-4"
+ id="linearGradient40631-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-2"
+ id="linearGradient40633-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ id="linearGradient9593-4">
+ <stop
+ id="stop9595-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.58164877"
+ id="stop9597-7" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop9599-0" />
+ <stop
+ id="stop9601-6"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9578-3"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-3"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient10722"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient10722-7"
+ xlink:href="#linearGradient3787-2-5-7-3-8"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-3-8"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient10756"
+ xlink:href="#linearGradient3787-2-5-7-3-8"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ id="radialGradient10783"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5"
+ gradientTransform="matrix(1,0,0,0.1176471,0,18.55294)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ id="radialGradient10801"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1176471,-0.00458413,1119.4509)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847"
+ id="linearGradient10803"
+ gradientUnits="userSpaceOnUse"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246"
+ gradientTransform="translate(0,72.5)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847-7"
+ id="linearGradient10803-3"
+ gradientUnits="userSpaceOnUse"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246"
+ gradientTransform="translate(0,72.5)" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7847-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop7849-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop7851-0" />
+ </linearGradient>
+ <linearGradient
+ y2="1048.9246"
+ x2="2.7520523"
+ y1="1036.9246"
+ x1="14.746088"
+ gradientTransform="translate(10.005221,72.491383)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient10822"
+ xlink:href="#linearGradient7847-7"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ id="radialGradient10857"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.1176471,-0.00458413,930.95094)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847"
+ id="linearGradient10859"
+ gradientUnits="userSpaceOnUse"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246"
+ gradientTransform="translate(0,-116)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847"
+ id="linearGradient10865"
+ gradientUnits="userSpaceOnUse"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246"
+ gradientTransform="translate(9.8437523,0.0658318)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ id="radialGradient10879"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,1022.9178,-21.472872)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847"
+ id="linearGradient10881"
+ gradientUnits="userSpaceOnUse"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847"
+ id="linearGradient10883"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(9.8437523,0.0658318)"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient10885"
+ id="linearGradient10891"
+ x1="3.69205"
+ y1="8.5891829"
+ x2="19.567051"
+ y2="21.089184"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="16"
+ x2="11"
+ y1="6"
+ x1="11"
+ id="linearGradient4168"
+ xlink:href="#linearGradient4162"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="20"
+ x2="13"
+ y1="6"
+ x1="13"
+ id="linearGradient4351"
+ xlink:href="#linearGradient4345"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-2">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop3766-7" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop3768-3" />
+ </linearGradient>
+ <linearGradient
+ y2="16"
+ x2="17"
+ y1="2"
+ x1="17"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3501-6"
+ xlink:href="#linearGradient3764-2"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-3">
+ <stop
+ id="stop3784-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop3786-9"
+ offset="1"
+ style="stop-color:#646464;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3511"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="translate(-2,4)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3501"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895-8"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885-5"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875-3"
+ xlink:href="#linearGradient3764-3"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-3">
+ <stop
+ style="stop-color:#729fcf;stop-opacity:1;"
+ offset="0"
+ id="stop3766-3" />
+ <stop
+ style="stop-color:#3465a4;stop-opacity:1;"
+ offset="1"
+ id="stop3768-33" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3782-2">
+ <stop
+ id="stop3784-2"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786-2"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4339">
+ <stop
+ id="stop4341"
+ offset="0"
+ style="stop-color:#729fcf;stop-opacity:1;" />
+ <stop
+ id="stop4343"
+ offset="1"
+ style="stop-color:#3465a4;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4345"
+ inkscape:collect="always">
+ <stop
+ id="stop4347"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4349"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4162"
+ inkscape:collect="always">
+ <stop
+ id="stop4164"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4166"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6060"
+ id="linearGradient6066"
+ x1="-18.991733"
+ y1="1039.4287"
+ x2="-2.9861012"
+ y2="1039.4287"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3"
+ id="radialGradient6110"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,996.7928,5.277128)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5996"
+ id="radialGradient6112"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.4999989,26.75,-545.83622)"
+ cx="-5.9630618"
+ cy="1039.5417"
+ fx="-5.9630618"
+ fy="1039.5417"
+ r="8" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient10885"
+ id="linearGradient6114"
+ gradientUnits="userSpaceOnUse"
+ x1="3.69205"
+ y1="8.5891829"
+ x2="19.567051"
+ y2="21.089184"
+ gradientTransform="translate(-26.754584,1002.273)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847-7"
+ id="linearGradient6116"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.95419036,0,0,0.92857146,-1024.7583,-26.913746)"
+ x1="11.0046"
+ y1="4.0266657"
+ x2="11.0046"
+ y2="20.026667" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6060"
+ id="linearGradient6119"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.991733"
+ y1="1039.4287"
+ x2="-2.9861012"
+ y2="1039.4287"
+ gradientTransform="translate(26.75,-26.125)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4345"
+ id="linearGradient6698"
+ gradientUnits="userSpaceOnUse"
+ x1="-18.991734"
+ y1="1039.4287"
+ x2="-2.9861012"
+ y2="1039.4287"
+ gradientTransform="matrix(0.86591008,0,0,0.91250511,20.512144,90.960322)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6708"
+ id="linearGradient6706"
+ x1="-18.999966"
+ y1="1039.4247"
+ x2="-2.9999657"
+ y2="1039.4247"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(21.999931,0)" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="992.53448"
+ x2="14"
+ y1="1054.3622"
+ x1="14"
+ id="linearGradient3799"
+ xlink:href="#linearGradient3793"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(-42,1036.3622)"
+ y2="18"
+ x2="18"
+ y1="4"
+ x1="12"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3798-3"
+ xlink:href="#linearGradient3789-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="12"
+ x2="22"
+ y1="12"
+ x1="2"
+ id="linearGradient3795-7"
+ xlink:href="#linearGradient3789-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="matrix(1,0,0,1.0555546,-5,1036.5844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3252-8"
+ xlink:href="#linearGradient3764-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientTransform="matrix(1,0,0,1.0555546,-5,1036.5844)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3228-8"
+ xlink:href="#linearGradient3764-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="translate(0,1031.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="5.1875"
+ x2="8.875"
+ y1="10.9375"
+ x1="8.3125"
+ id="linearGradient3788-0"
+ xlink:href="#linearGradient3782-35"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3895-9"
+ xlink:href="#linearGradient3764-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3885-3"
+ xlink:href="#linearGradient3764-1"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3875-0"
+ xlink:href="#linearGradient3764-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3764-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop3766-2" />
+ <stop
+ style="stop-color:#ededed;stop-opacity:1;"
+ offset="1"
+ id="stop3768-38" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(17,1029.3622)"
+ gradientUnits="userSpaceOnUse"
+ y2="11"
+ x2="8"
+ y1="0"
+ x1="8"
+ id="linearGradient3774-6"
+ xlink:href="#linearGradient3764-1"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient3782-35">
+ <stop
+ id="stop3784-5"
+ offset="0"
+ style="stop-color:#393939;stop-opacity:1;" />
+ <stop
+ id="stop3786-4"
+ offset="1"
+ style="stop-color:#848484;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3789-1">
+ <stop
+ id="stop3791-24"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3793-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3793"
+ inkscape:collect="always">
+ <stop
+ id="stop3795"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop3797"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5771">
+ <stop
+ id="stop5773"
+ offset="0"
+ style="stop-color:#666666;stop-opacity:1;" />
+ <stop
+ id="stop5775"
+ offset="1"
+ style="stop-color:#a6a6a6;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,1.43,0,1022.7922)"
+ gradientUnits="userSpaceOnUse"
+ y2="24"
+ x2="65"
+ y1="-1"
+ x1="65"
+ id="linearGradient5777-9"
+ xlink:href="#linearGradient5771-6"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-5-5-4"
+ id="radialGradient12982-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,-28.506829,-1050.8359)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-3-5-5-4"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3-8-4-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3-9-2-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-5-5-4"
+ id="radialGradient12948-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,-77.502869,-1052.3285)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-2-5-7-3-5-6"
+ id="radialGradient12948-35"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,-77.502869,-1052.3285)"
+ cx="11.004584"
+ cy="21.026667"
+ fx="11.004584"
+ fy="21.026667"
+ r="8.5" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-3-5-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-3-8-41"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-3-9-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ r="8.5"
+ fy="21.026667"
+ fx="11.004584"
+ cy="21.026667"
+ cx="11.004584"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,974.92182,-23.966346)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient12931-2-0"
+ xlink:href="#linearGradient3787-2-5-7-3-5-6"
+ inkscape:collect="always" />
+ <radialGradient
+ r="8.5"
+ fy="21.026667"
+ fx="11.004584"
+ cy="21.026667"
+ cx="11.004584"
+ gradientTransform="matrix(1.500003,0,0,0.1176471,974.92182,-23.966346)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient12931-5"
+ xlink:href="#linearGradient3787-2-5-7-3-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient6708-1">
+ <stop
+ id="stop6710-6"
+ offset="0"
+ style="stop-color:#fcaf3e;stop-opacity:1;" />
+ <stop
+ id="stop6712-8"
+ offset="1"
+ style="stop-color:#f57900;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6060-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop6062-7" />
+ <stop
+ style="stop-color:#000000;stop-opacity:0;"
+ offset="1"
+ id="stop6064-0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient5996-0">
+ <stop
+ style="stop-color:#8ae234;stop-opacity:1;"
+ offset="0"
+ id="stop5998-5" />
+ <stop
+ style="stop-color:#73d216;stop-opacity:1;"
+ offset="1"
+ id="stop6000-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient10885-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop10887-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop10889-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient7847-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1;"
+ offset="0"
+ id="stop7849-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:0;"
+ offset="1"
+ id="stop7851-1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7738-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop7740-0" />
+ <stop
+ id="stop7742-6"
+ offset="0.31854269"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop7744-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop7746-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7674-9">
+ <stop
+ id="stop7676-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.43446109"
+ id="stop7678-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop7680-0" />
+ <stop
+ id="stop7682-5"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-1"
+ xlink:href="#linearGradient7113-62-4-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-1"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9574-68"
+ xlink:href="#linearGradient3787-2-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ id="linearGradient9567-4"
+ xlink:href="#linearGradient7113-62-4-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ id="linearGradient9559-2"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-0-6"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-6-1"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ id="linearGradient4256-2-6-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-9-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-0-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-6-2"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-6-1"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient7113-62-4-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-8"
+ id="linearGradient9141-3-39-97-1"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient6977-28-58-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6-7" />
+ <stop
+ id="stop6981-1-3-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-4"
+ id="radialGradient9139-7-61-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient3787-2-5-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-3"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-3-8"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-5-1" />
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ id="perspective1832-5" />
+ <linearGradient
+ id="linearGradient7157-2">
+ <stop
+ id="stop7159-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-1"
+ offset="1"
+ style="stop-color:#373835;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7113-04"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-73"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-11"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-29" />
+ <stop
+ id="stop6981-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-24"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-75" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-51">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-6" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-5" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4388-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-2"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-77"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-7">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-3" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-9" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-7" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-6-7"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-7-8"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-7-8"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-0">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-44" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-2">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-8">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-01" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-96">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-96"
+ id="linearGradient3820-1"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-1"
+ id="linearGradient3830-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-4"
+ id="linearGradient3832-4"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-5"
+ id="linearGradient3834-6"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-1"
+ id="linearGradient3844-9"
+ gradientUnits="userSpaceOnUse"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-2"
+ id="linearGradient3846-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-0"
+ id="linearGradient3848-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-6-7"
+ id="radialGradient3852-32"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ cx="3.403806"
+ cy="4.2001681"
+ fx="3.403806"
+ fy="4.2001681"
+ r="8" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-4"
+ id="linearGradient3866-3"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-9-55">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-7-07" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-4-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-17-4">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-0-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-6-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-5-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-3-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8-1"
+ id="linearGradient4028-41"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17-4"
+ id="linearGradient4030-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9-55"
+ id="linearGradient4032-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3-4"
+ id="linearGradient3832-7-4-1"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-3-1" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-9-6-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0-31"
+ id="linearGradient3830-2-9-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-0-31">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-4-4-5" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-8-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-4-5">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-9-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-4-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-8-6">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-3-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-2-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-0">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-2-6" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-2-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ id="linearGradient4662-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-6"
+ id="linearGradient4664-93"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-5"
+ id="linearGradient4666-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ id="linearGradient4840-0-8-3-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-1-0-03" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3-2-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-1-4-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-2-3-2" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-8-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-7-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-6-0-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-81-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-6"
+ id="linearGradient4869-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-3"
+ id="linearGradient4871-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-7"
+ id="linearGradient4873-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-4"
+ id="linearGradient5751-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-5"
+ id="linearGradient5753-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-8"
+ id="linearGradient5755-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient6433-4"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient6433-0-7"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-9">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-6" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient6584-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient6433-7-48"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-9">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-3" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient6433-7-0-4"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-6" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4141-70"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4143-6"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4145-3"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4147-4"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4149-9"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4169-4"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4171-7"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4173-7"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4175-97"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4177-3"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient4179-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4187-6"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4189-3"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4191-5"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4193-6"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4201-8"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4203-6"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4205-8"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4207-3"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient4209-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient4211-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient4213-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient4215-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4294-38"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4296-8"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4298-2"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4300-9"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4302-77"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4304-2"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4306-7"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4308-7"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4310-7"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4312-9"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4320-4"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4322-6"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4324-2"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4326-1"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4328-2"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4330-0"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4338-9"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4340-8"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4342-5"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4344-7"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4346-8"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient4348-2"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient4386-3"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient4660-1"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4388-8-1-04"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-1-7-6"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-6-1-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient5033-5"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient5151-6"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient5289-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5291-1"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient5293-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5295-4"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient5297-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5299-7"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient5301-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5303-5"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient5309-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient5311-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5313-7"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient5315-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5317-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient5319-01"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5321-2"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient5323-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5325-0"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient5327-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5329-0"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient5335-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient5337-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5339-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient5341-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5343-6"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient5345-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5347-1"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient5353-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient5355-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5357-4"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient5359-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5361-07"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient5363-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5365-11"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient5367-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient5369-85"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient5375-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-62" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-51"
+ id="linearGradient5691-4"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4840-0-8-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-35" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-9">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-6" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-0" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6123-19"
+ xlink:href="#linearGradient5685-0-9"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-45">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-28" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-1" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-6" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient6909-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient6911-79"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient6913-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient6919-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-51"
+ id="linearGradient7213-9"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient7263-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7265-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient7267-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7269-01"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient7271-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7273-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient7275-29"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7277-3"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient7279-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient7285-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7287-1"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient7301-35"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient7345-78"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7347-7"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient7349-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7351-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient7353-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7355-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient7357-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7359-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient7361-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient7388-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7390-4"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient7392-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7394-3"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient7396-71"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7398-7"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient7400-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7402-6"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-1">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-9-9" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-6-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-8-5">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-3-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-3-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-2"
+ id="linearGradient7249-5-0"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-1-2">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-1-2" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-4-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-9"
+ id="linearGradient7740-6"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-45">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-9-31" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-1-46" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient7910-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7912-7"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient7915-59"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7917-1"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient7920-37"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient7922-9"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient7938-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient7942-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient7950-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-3"
+ id="radialGradient7950-4-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-7-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-8-5" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-8-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-2-94" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-9-6" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-3"
+ id="radialGradient7942-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8025-7"
+ xlink:href="#linearGradient6427-7-6-3-7-3"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8436-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8438-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8440-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8442-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8444-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8446-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8448-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8450-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8452-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8454-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8456-4"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8458-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8460-2"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8462-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8464-10"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8466-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8468-0"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8470-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8472-0"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8474-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8512-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8516-02"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8518-31"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8520-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8522-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8524-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8526-7"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8528-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8530-6"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8532-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-9"
+ id="linearGradient8572-7"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8639-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8641-0"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8644-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8646-0"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8649-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient8651-21"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8677-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8681-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8685-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-51"
+ id="linearGradient8747-9"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient9121-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9123-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000003,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient9125-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9127-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient9129-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9131-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000001,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient9133-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9135-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000006,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient9139-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9141-9"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient9143-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9145-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient9147-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9149-0"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient9151-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9153-5"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient9155-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9157-18"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient9177-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9179-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient9181-54"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9183-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient9185-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9187-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient9189-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9191-0"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient9193-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9195-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient9197-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9199-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient9201-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient9203-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5722-2-4"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-2" />
+ <linearGradient
+ id="linearGradient4176-9-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5726-1-5"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-7"
+ y1="38.63026"
+ y2="21.48896" />
+ <linearGradient
+ id="linearGradient3421-0-7">
+ <stop
+ id="stop3423-3-6"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop3425-4-3"
+ offset="1"
+ style="stop-color:#babdb6;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5728-0-51"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-4" />
+ <linearGradient
+ id="linearGradient4229-3-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4231-9-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4233-1-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5730-9-2"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-0"
+ y1="36.421127"
+ y2="35.581436" />
+ <linearGradient
+ id="linearGradient4248-6-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4250-9-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4252-3-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5732-3-7"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-4" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4137-0-0"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-2" />
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4141-7-6-6"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-7"
+ y1="38.63026"
+ y2="21.48896" />
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4143-6-6"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-4" />
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4145-6-0-1"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-0"
+ y1="36.421127"
+ y2="35.581436" />
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4147-0-4"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-4" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-31"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-60" />
+ <linearGradient
+ id="linearGradient3787-2-60"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-0"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-66"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-1"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient4256-2-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-3"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-1"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3638-9-6"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-2-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3082-2"
+ inkscape:collect="always"
+ x1="99.396446"
+ x2="99.881432"
+ xlink:href="#linearGradient3512-0"
+ y1="-44.57159"
+ y2="-36.90625" />
+ <linearGradient
+ id="linearGradient3512-0"
+ inkscape:collect="always">
+ <stop
+ id="stop3514-89"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3516-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient2753-3"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-4" />
+ <linearGradient
+ id="linearGradient3787-4"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-28"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-11-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-9"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-2"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-4"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2759-7"
+ inkscape:collect="always"
+ x1="100.5"
+ x2="100.375"
+ xlink:href="#linearGradient3572-1"
+ y1="5.125"
+ y2="15.25" />
+ <linearGradient
+ id="linearGradient3572-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3574-65"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3576-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2761-6"
+ inkscape:collect="always"
+ x1="100.875"
+ x2="106.4375"
+ xlink:href="#linearGradient3580-6"
+ y1="15.6875"
+ y2="11.5" />
+ <linearGradient
+ id="linearGradient3580-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3582-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3584-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7137-3"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-3" />
+ <linearGradient
+ id="linearGradient4176-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7141-6"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-2" />
+ <linearGradient
+ id="linearGradient4653-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4655-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0" />
+ <stop
+ id="stop4657-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7143-5"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-9"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ id="linearGradient4643-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4645-59"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4647-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7145-0"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-2"
+ y1="31.107067"
+ y2="11.313666" />
+ <linearGradient
+ id="linearGradient2512-2">
+ <stop
+ id="stop2514-3"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop2516-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7147-8"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-9" />
+ <linearGradient
+ id="linearGradient4601-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4603-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4605-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7149-4"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-9"
+ y1="9.5507469"
+ y2="17.149347" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6553-9"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-3" />
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6557-9"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-2" />
+ <linearGradient
+ gradientTransform="translate(10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6559-6"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-9"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6561-2"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-2"
+ y1="31.107067"
+ y2="11.313666" />
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6563-7"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-9" />
+ <linearGradient
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6565-0"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-9"
+ y1="9.5507469"
+ y2="17.149347" />
+ <linearGradient
+ id="linearGradient4256-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-98"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-6-3"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-60-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-2-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-5-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-8-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-9-2"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4285-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4293-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-54"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4301-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-01"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4309-45"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-8"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-67"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4437-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4439-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4441-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4348-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3648-3"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ id="linearGradient4256-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-22-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3650-1"
+ inkscape:collect="always"
+ x1="8.2643108"
+ x2="4.7950678"
+ xlink:href="#linearGradient4256-1-1"
+ y1="14.541593"
+ y2="10.431535" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3809-3"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3817-9"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-9-4" />
+ <linearGradient
+ id="linearGradient3787-9-4"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-2-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-8-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4496-3"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-0" />
+ <linearGradient
+ id="linearGradient4176-1-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-2-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-4-5"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4488-3"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-91" />
+ <linearGradient
+ id="linearGradient4285-2-91"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-3-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-7-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4490-8"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-5" />
+ <linearGradient
+ id="linearGradient4293-2-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-5-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-3-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4492-27"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-3"
+ y1="36.125"
+ y2="19" />
+ <linearGradient
+ id="linearGradient4301-7-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-6-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-8-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4494-2"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-0"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ id="linearGradient4309-1-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-3-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-6-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5706-6"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-0" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5710-09"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-3"
+ y1="36.125"
+ y2="19" />
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5712-2"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-91" />
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5714-8"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-5" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5716-5"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-0"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ gradientTransform="translate(60,47)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5720-3"
+ inkscape:collect="always"
+ x1="20.155684"
+ x2="20.155684"
+ xlink:href="#linearGradient4348-8-1"
+ y1="43.910683"
+ y2="46" />
+ <linearGradient
+ id="linearGradient4348-8-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-5-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-0-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-9"
+ id="radialGradient6084-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ cx="-50.993778"
+ cy="13.921414"
+ fx="-50.993778"
+ fy="13.921414"
+ r="7.9160094" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient6086-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient6088-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-6-3"
+ id="radialGradient6092-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-8"
+ id="linearGradient6094-2"
+ gradientUnits="userSpaceOnUse"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-8"
+ id="radialGradient6098-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-0"
+ id="radialGradient6104-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-6"
+ id="radialGradient6106-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-8"
+ id="linearGradient6108-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-45"
+ id="linearGradient6110-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-8"
+ id="radialGradient6114-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-8"
+ id="linearGradient6118-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-0"
+ id="radialGradient6120-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-6"
+ id="radialGradient6122-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-45"
+ id="linearGradient6124-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4437-2"
+ id="linearGradient6126-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(190,0)"
+ x1="74.28125"
+ y1="28.776411"
+ x2="74.28125"
+ y2="31.960411" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4348-3-9"
+ id="linearGradient6130-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,46)"
+ x1="20.155684"
+ y1="43.910683"
+ x2="20.155684"
+ y2="46" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-3"
+ id="radialGradient9139-7-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-04"
+ id="linearGradient9141-3-1"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-5"
+ id="radialGradient9139-7-6-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-83" />
+ <stop
+ id="stop6981-9-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-0" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-5"
+ id="radialGradient7111-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="103.43681"
+ fx="39.554386"
+ fy="103.43681"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-2"
+ id="linearGradient9141-3-2-0"
+ gradientUnits="userSpaceOnUse"
+ x1="145.3887"
+ y1="39.999996"
+ x2="145.3887"
+ y2="7.9807839" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-48"
+ id="linearGradient9141-3-3-8"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.004028"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-48"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-0"
+ id="radialGradient9139-7-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-8" />
+ <stop
+ id="stop6981-3-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-3"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-3"
+ id="radialGradient9139-7-3-19"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="71.642067"
+ cy="119.85913"
+ fx="71.642067"
+ fy="119.85913"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-6" />
+ <stop
+ id="stop6981-39-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-22"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-5"
+ id="linearGradient9141-3-34-01"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="93"
+ x2="84.5"
+ y2="88" />
+ <linearGradient
+ id="linearGradient7113-6-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-2-5"
+ id="linearGradient9141-3-3-4-44"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.001797"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-2-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-2-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-1-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-6-7"
+ id="radialGradient9139-7-3-1-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="72.146278"
+ cy="120.14571"
+ fx="72.146278"
+ fy="120.14571"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-6-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-8-3" />
+ <stop
+ id="stop6981-39-2-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-2-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-4-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-2-52"
+ id="linearGradient9141-3-34-1-1"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="94"
+ x2="84.5"
+ y2="89" />
+ <linearGradient
+ id="linearGradient7113-6-2-52"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-4-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-8-18"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-8-7"
+ id="radialGradient9139-7-0-3-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-8-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-9-76" />
+ <stop
+ id="stop6981-3-1-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-1-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-2-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-73"
+ id="linearGradient9141-3-2-4-4"
+ gradientUnits="userSpaceOnUse"
+ x1="3.9729283"
+ y1="27.841093"
+ x2="3.9729283"
+ y2="5.1557527" />
+ <linearGradient
+ id="linearGradient7157-0-73"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-58"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-6"
+ id="radialGradient7111-4-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="39.814342"
+ cy="137.44762"
+ fx="39.814342"
+ fy="137.44762"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-3" />
+ <stop
+ id="stop6981-9-5-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-96" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-9-4"
+ id="radialGradient9139-7-06-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-9-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-3-6" />
+ <stop
+ id="stop6981-33-34"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-5-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-2-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9-9"
+ id="linearGradient9141-3-7-34"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-9-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8-85"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-3"
+ id="linearGradient9141-3-2-4-7-7"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-6"
+ id="radialGradient7111-4-7-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-8" />
+ <stop
+ id="stop6981-9-5-0-73"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-09"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-6" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-7"
+ id="radialGradient9139-7-3-7-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-0" />
+ <stop
+ id="stop6981-39-27-9"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-7"
+ id="linearGradient9141-3-34-7-95"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-5-2"
+ id="linearGradient9141-3-2-4-7-9-2"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-5-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-9-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-7-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-3-0"
+ id="radialGradient7111-4-7-8-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-1-3" />
+ <stop
+ id="stop6981-9-5-0-3-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-0-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-3-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-5-0"
+ id="radialGradient9139-7-3-7-1-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-9-0" />
+ <stop
+ id="stop6981-39-27-5-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-6-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-2-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-0-7"
+ id="linearGradient9141-3-34-7-9-4"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-0-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-4-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-8-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-0"
+ id="radialGradient9139-7-61-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-78" />
+ <stop
+ id="stop6981-1-0"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-02" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-40"
+ id="linearGradient9141-3-39-4"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-40"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-90"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-5-9"
+ id="radialGradient9139-7-61-0-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="39.344345"
+ cy="192.03035"
+ fx="39.344345"
+ fy="192.03035"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-5-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-4-9" />
+ <stop
+ id="stop6981-1-4-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-8-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-6-67" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-5-9"
+ id="linearGradient9141-3-39-9-8"
+ gradientUnits="userSpaceOnUse"
+ x1="-56.866325"
+ y1="12.007"
+ x2="-56.826302"
+ y2="0.12165857" />
+ <linearGradient
+ id="linearGradient7113-62-5-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-4-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-2-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-7"
+ id="radialGradient9139-7-61-05-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-0" />
+ <stop
+ id="stop6981-1-8-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-4"
+ id="linearGradient9141-3-39-1-0"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-9"
+ id="linearGradient9141-3-39-6-8"
+ gradientUnits="userSpaceOnUse"
+ x1="185.01755"
+ y1="-18.997253"
+ x2="185.01755"
+ y2="-22.000326" />
+ <linearGradient
+ id="linearGradient7113-62-7-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-1-29"
+ id="linearGradient9141-3-39-6-2-4"
+ gradientUnits="userSpaceOnUse"
+ x1="76.255684"
+ y1="-10"
+ x2="76.255684"
+ y2="-13.002928" />
+ <linearGradient
+ id="linearGradient7113-62-7-1-29"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-0-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-9-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-5-5"
+ id="radialGradient9139-7-61-05-1-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-7-9" />
+ <stop
+ id="stop6981-1-8-0-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-3-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-0-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-3-2"
+ id="linearGradient9141-3-39-1-8-6"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-3-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-8-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-4-3"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-9"
+ id="radialGradient9139-7-61-8-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="40.68565"
+ cy="125.0378"
+ fx="40.68565"
+ fy="125.0378"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-56" />
+ <stop
+ id="stop6981-1-2-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-6"
+ id="linearGradient9141-3-39-5-5"
+ gradientUnits="userSpaceOnUse"
+ x1="40"
+ y1="13.001565"
+ x2="40"
+ y2="0.99979788" />
+ <linearGradient
+ id="linearGradient7113-62-9-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-77"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-16"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-7-8"
+ id="radialGradient9139-7-61-8-4-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ cx="38.636917"
+ cy="223.66896"
+ fx="38.636917"
+ fy="223.66896"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-1-43" />
+ <stop
+ id="stop6981-1-2-7-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-4-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-0-8"
+ id="linearGradient9141-3-39-5-3-18"
+ gradientUnits="userSpaceOnUse"
+ x1="-65.877312"
+ y1="11.172731"
+ x2="-66.05246"
+ y2="0.24979722" />
+ <linearGradient
+ id="linearGradient7113-62-9-0-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-9-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-4-0"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-4"
+ id="radialGradient9139-7-61-8-44-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-2" />
+ <stop
+ id="stop6981-1-2-8-54"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-9"
+ id="linearGradient9141-3-39-5-6-3"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-42"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-3"
+ id="linearGradient9141-3-39-6-3-7"
+ gradientUnits="userSpaceOnUse"
+ x1="184.48721"
+ y1="-50.994797"
+ x2="184.48721"
+ y2="-54" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-1"
+ id="radialGradient9139-7-61-8-44-8-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-3" />
+ <stop
+ id="stop6981-1-2-8-5-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-4-2"
+ id="linearGradient9141-3-39-5-6-6-3"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-4-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-1-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-6-25"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-5-0"
+ id="linearGradient9141-3-39-6-3-9-43"
+ gradientUnits="userSpaceOnUse"
+ x1="67.917938"
+ y1="-43.977436"
+ x2="67.917938"
+ y2="-47.001114" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-5-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-9-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-8-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8523-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8525-01"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8527-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8529-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8531-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient8533-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient8535-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient8537-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient8539-13"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8541-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8543-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8545-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8547-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8549-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8551-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8553-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8555-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8557-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8559-56"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8561-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8563-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8565-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8567-62"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8569-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8571-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8573-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8575-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8577-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8579-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8581-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8583-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8585-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8587-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8589-01"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient8597-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8599-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8601-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient8603-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient8605-36"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient8607-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-9"
+ id="linearGradient8610-8"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-2"
+ id="linearGradient8612-4"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-3"
+ id="radialGradient8614-32"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-3"
+ id="radialGradient8616-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-3"
+ id="radialGradient8618-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40279-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40281-9"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40283-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40285-8"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40287-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40289-3"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40291-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40293-96"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40295-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40297-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40299-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40301-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40303-5"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40305-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40307-5"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40309-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40311-17"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40313-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40315-8"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40317-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40319-65"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40321-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40323-5"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40325-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient40327-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40329-0"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient40331-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40333-6"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient40335-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40337-4"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient40339-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40341-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-3"
+ id="radialGradient40343-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40345-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40347-4"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40349-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40351-1"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40353-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40355-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40357-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40359-5"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40361-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40363-24"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40365-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-6"
+ id="linearGradient40367-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-3"
+ id="linearGradient40369-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-7"
+ id="linearGradient40371-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-0"
+ id="linearGradient40373-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-6"
+ id="linearGradient40375-81"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-5"
+ id="linearGradient40377-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3-4"
+ id="linearGradient40379-52"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0-31"
+ id="linearGradient40381-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8-1"
+ id="linearGradient40383-7"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17-4"
+ id="linearGradient40385-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9-55"
+ id="linearGradient40387-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40525-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40527-7"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40529-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40531-1"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40533-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40535-0"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40537-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40539-86"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40541-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40543-0"
+ gradientUnits="userSpaceOnUse"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-04"
+ id="radialGradient40545-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40547-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40549-2"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40551-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40553-95"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40555-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40557-7"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40559-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40561-3"
+ gradientUnits="userSpaceOnUse"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40563-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40565-27"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40567-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40569-5"
+ gradientUnits="userSpaceOnUse"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-0"
+ id="radialGradient40571-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient40573-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40575-6"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient40577-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40579-1"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient40581-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40583-7"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient40585-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40587-8"
+ gradientUnits="userSpaceOnUse"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-9"
+ id="radialGradient40589-01"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40591-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40593-24"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40595-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40597-8"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40599-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40601-4"
+ gradientUnits="userSpaceOnUse"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40603-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40605-6"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40607-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-7"
+ id="linearGradient40609-67"
+ gradientUnits="userSpaceOnUse"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-9"
+ id="radialGradient40611-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-4"
+ id="linearGradient40613-1"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-1"
+ id="linearGradient40615-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-4"
+ id="linearGradient40617-25"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-5"
+ id="linearGradient40619-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-96"
+ id="linearGradient40621-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-4"
+ id="linearGradient40623-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-5"
+ id="linearGradient40625-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-8"
+ id="linearGradient40627-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-0"
+ id="linearGradient40629-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-2"
+ id="linearGradient40631-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-1"
+ id="linearGradient40633-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-290,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ id="linearGradient9593-7">
+ <stop
+ id="stop9595-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="0.58164877"
+ id="stop9597-5" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="0.85851747"
+ id="stop9599-3" />
+ <stop
+ id="stop9601-8"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7847-9"
+ id="linearGradient7853-5"
+ x1="14.746088"
+ y1="1036.9246"
+ x2="2.7520523"
+ y2="1048.9246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9586-5-7"
+ xlink:href="#linearGradient7113-62-4-7-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9584-9-4"
+ xlink:href="#linearGradient6977-28-2-3-5-7-2"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9582-8"
+ xlink:href="#linearGradient7113-62-4-7-8"
+ inkscape:collect="always" />
+ <linearGradient
+ y2="119.67304"
+ x2="223.39351"
+ y1="147.02293"
+ x1="236.32954"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient9580-1"
+ xlink:href="#linearGradient9593-4-9"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="12.47341"
+ cy="17.125"
+ cx="12.47341"
+ gradientTransform="matrix(0.89852202,0,0,0.2730159,1.2657764,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9578-5"
+ xlink:href="#linearGradient3787-2-5-7-4"
+ inkscape:collect="always" />
+ <radialGradient
+ r="9.84375"
+ fy="17.125"
+ fx="11.03125"
+ cy="17.125"
+ cx="11.03125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient9574-6-6"
+ xlink:href="#linearGradient3787-2-5-7-4"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="123.53689"
+ x2="227.56795"
+ y1="142.72978"
+ x1="236.77655"
+ id="linearGradient9567-8-7"
+ xlink:href="#linearGradient7113-62-4-7-8"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ y2="122.14792"
+ x2="224.9845"
+ y1="147.02293"
+ x1="236.32954"
+ id="linearGradient9559-3-1"
+ xlink:href="#linearGradient6977-28-2-3-5-7-2"
+ inkscape:collect="always" />
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-0-4-0"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-6-8-7"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ id="linearGradient4256-2-6-8-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-9-4-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-0-1-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-6-6-0"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-6-8-7"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient7113-62-4-7-8"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-23-8-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-6-8-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-4-7-8"
+ id="linearGradient9141-3-39-97-0-3"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient6977-28-58-0-3">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-6-8-1" />
+ <stop
+ id="stop6981-1-3-7-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-6-9-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-67-9-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-58-0-3"
+ id="radialGradient9139-7-61-7-1-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient3787-2-5-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-2-3-34"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-7-1-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-3-4-0"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-5-7-4" />
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 150 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="600 : 150 : 1"
+ inkscape:persp3d-origin="300 : 100 : 1"
+ id="perspective1832-7-3" />
+ <linearGradient
+ id="linearGradient7157-5-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-2-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-2-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient7113-7-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-52-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-1-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6977-6-0">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-2-5" />
+ <stop
+ id="stop6981-5-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-77-6"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-26-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-5-5">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-9-5" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-8-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4388-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-6-3"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-7-0"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4157-6-6">
+ <stop
+ style="stop-color:#000000;stop-opacity:1;"
+ offset="0"
+ id="stop4159-9-6" />
+ <stop
+ style="stop-color:#888a85;stop-opacity:1"
+ offset="1"
+ id="stop4161-1-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-2-2">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-7-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-6-5-3"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-7-4-5"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-7-7-7"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-9-2">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-2-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-9-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-4-2">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-0-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-0-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-7-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-1-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-5-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-9-6">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-36-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-9-1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-0-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-5" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-5-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-2-0">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-1-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-9-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-2-0"
+ id="linearGradient3820-3-2"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-2-2"
+ id="linearGradient3830-5-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0-9"
+ id="linearGradient3832-5-7"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-9-6"
+ id="linearGradient3834-7-5"
+ gradientUnits="userSpaceOnUse"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-2-2"
+ id="linearGradient3844-2-7"
+ gradientUnits="userSpaceOnUse"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664"
+ gradientTransform="translate(-290,60)" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-4-2"
+ id="linearGradient3846-2-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-234.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-9-2"
+ id="linearGradient3848-7-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-234.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-6-5-3"
+ id="radialGradient3852-3-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6411503,0,0,1.5385784,-2.1823511,-2.0558802)"
+ cx="3.403806"
+ cy="4.2001681"
+ fx="3.403806"
+ fy="4.2001681"
+ r="8" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0-9"
+ id="linearGradient3866-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-1-9-5-3">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-5-7-0-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-8-4-6-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-17-3-2">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-0-0-1" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-6-9-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-8-6-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-5-9-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-3-5-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-8-6-4"
+ id="linearGradient4028-4-7"
+ gradientUnits="userSpaceOnUse"
+ x1="6.7499995"
+ y1="24.504543"
+ x2="6.7499995"
+ y2="16.620459" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-17-3-2"
+ id="linearGradient4030-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="69.747467"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-1-9-5-3"
+ id="linearGradient4032-2-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-265,60)"
+ x1="337.69534"
+ y1="71.508186"
+ x2="337.69534"
+ y2="55.674088" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-3-3-6-7"
+ id="linearGradient3832-7-4-0-7"
+ gradientUnits="userSpaceOnUse"
+ x1="7.5860305"
+ y1="20.245487"
+ x2="7.5860305"
+ y2="17.187613" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-3-3-6-7">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-3-3-0-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-9-6-9-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-0-3-1"
+ id="linearGradient3830-2-9-6-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,63)"
+ x1="330.25"
+ y1="139.5625"
+ x2="330.25"
+ y2="132.61122" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-0-3-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-4-4-6-7" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-8-9-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5297-7-4-6-7">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop5299-8-9-7-3" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5301-3-4-6-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-0-6-8-0-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-6-2-3-1-4" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-7-2-3-1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-6-1-6-9-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-2-7-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-2-9-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-9-3"
+ id="linearGradient4662-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-0-1"
+ id="linearGradient4664-9-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-6-7"
+ id="linearGradient4666-5-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <linearGradient
+ id="linearGradient4840-0-8-3-4-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-1-0-0-1" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-3-2-0-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4832-3-1-4-9-1">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4834-2-2-3-7-6" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop4836-0-3-8-1-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient4996-4-7-3-0">
+ <stop
+ style="stop-color:#fcaf3e;stop-opacity:1;"
+ offset="0"
+ id="stop4998-6-0-2-0" />
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="1"
+ id="stop5000-4-81-4-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-4-9"
+ id="linearGradient4869-3-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-9-1"
+ id="linearGradient4871-2-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-3-0"
+ id="linearGradient4873-2-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-0-9"
+ id="linearGradient5751-0-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-267.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-9-6"
+ id="linearGradient5753-8-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-267.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-7-3"
+ id="linearGradient5755-8-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-291,60)"
+ x1="324"
+ y1="190.5"
+ x2="323.5"
+ y2="183" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient6433-3-7"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient6433-0-3-2"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-3-3">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-7-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-8-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient6584-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1-7"
+ id="radialGradient6433-7-4-4"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-1-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-4-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-2-6" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient6433-7-0-8-5"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-9-7">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-2-4" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-5-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4141-7-2"
+ x1="22"
+ y1="241"
+ x2="22"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4143-1-6"
+ x1="13"
+ y1="245"
+ x2="13"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4145-7-1"
+ x1="13"
+ y1="249"
+ x2="13"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4147-3-4"
+ x1="13"
+ y1="253"
+ x2="13"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4149-5-8"
+ x1="22"
+ y1="257"
+ x2="22"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4169-6-9"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4171-3-6"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4173-3-1"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4175-9-9"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4177-7-8"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient4179-1-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4187-1-9"
+ x1="17"
+ y1="282"
+ x2="17"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4189-4-8"
+ x1="13"
+ y1="286"
+ x2="13"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4191-1-0"
+ x1="13"
+ y1="290"
+ x2="13"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4193-7-9"
+ x1="17"
+ y1="294"
+ x2="17"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4201-3-9"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4203-0-1"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4205-6-0"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4207-9-6"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient4209-2-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient4211-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient4213-9-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient4215-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4294-3-4"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4296-4-9"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4298-6-7"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4300-7-3"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4302-7-5"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4304-6-3"
+ x1="25"
+ y1="192"
+ x2="25"
+ y2="188"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4306-1-5"
+ x1="13"
+ y1="198"
+ x2="13"
+ y2="194"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4308-0-6"
+ x1="13"
+ y1="204"
+ x2="13"
+ y2="200"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4310-4-7"
+ x1="13"
+ y1="210"
+ x2="13"
+ y2="206"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4312-6-8"
+ x1="25"
+ y1="216"
+ x2="25"
+ y2="212"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4320-0-9"
+ x1="27"
+ y1="117"
+ x2="27"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4322-8-8"
+ x1="8"
+ y1="124"
+ x2="8"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4324-9-7"
+ x1="8"
+ y1="131"
+ x2="8"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4326-5-8"
+ x1="8"
+ y1="138"
+ x2="8"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4328-5-6"
+ x1="27"
+ y1="152"
+ x2="27"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4330-2-9"
+ x1="27"
+ y1="145"
+ x2="27"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4338-8-0"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4340-1-7"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4342-0-9"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4344-1-0"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4346-0-9"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient4348-9-7"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient4386-9-7"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient4660-2-1"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4388-8-1-0-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4390-1-7-3-0"
+ offset="0"
+ style="stop-color:#d3d7cf;stop-opacity:1" />
+ <stop
+ id="stop4392-6-1-8-1"
+ offset="1"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient5033-9-8"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient5151-7-4"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ gradientUnits="userSpaceOnUse" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient5289-5-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5291-2-0"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient5293-6-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5295-5-2"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient5297-0-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5299-4-6"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient5301-5-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5303-1-3"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient5309-5-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient5311-9-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5313-6-9"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient5315-4-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5317-5-1"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient5319-0-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5321-7-6"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient5323-7-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5325-2-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient5327-0-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5329-4-0"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient5335-1-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient5337-8-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5339-0-1"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient5341-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5343-1-4"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient5345-6-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,213.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5347-2-1"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(0,1)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient5353-6-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient5355-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5357-2-2"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient5359-5-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5361-0-1"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient5363-8-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5365-1-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient5367-0-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient5369-8-3"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient5375-9-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-3-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-5-2" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-9-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-5-5"
+ id="linearGradient5691-0-3"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient4840-0-8-5-3">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-4-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-4-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-5-6">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-8-8" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-7-3" />
+ </linearGradient>
+ <linearGradient
+ y2="150.31085"
+ x2="151.5"
+ y1="152.68915"
+ x1="151.5"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6123-1-6"
+ xlink:href="#linearGradient5685-0-5-6"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-4-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-2-7" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-19-2" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-4-4">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-4-3" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-5-8" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient6909-5-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient6911-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient6913-7-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient6919-9-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-5-5"
+ id="linearGradient7213-6-7"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient7263-4-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7265-4-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient7267-8-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7269-0-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient7271-2-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7273-1-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient7275-2-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7277-4-9"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206"
+ gradientTransform="translate(-1,0)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient7279-6-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient7285-1-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7287-9-8"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient7301-3-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient7345-7-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7347-3-8"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient7349-9-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7351-4-5"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient7353-7-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7355-2-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient7357-8-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7359-4-7"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient7361-6-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient7388-6-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7390-8-3"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient7392-0-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7394-6-2"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient7396-7-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7398-4-3"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient7400-9-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7402-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <linearGradient
+ id="linearGradient4840-0-6-1-61-5-3-9">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-5-7-9-8-6" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-7-0-0-6-5-9" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-8-8-6-8">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-4-3-6-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-4-3-9-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-3-8"
+ id="linearGradient7249-5-8-7"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient5685-0-1-3-8">
+ <stop
+ style="stop-color:#bb5400;stop-opacity:1"
+ offset="0"
+ id="stop5687-7-1-9-0" />
+ <stop
+ style="stop-color:#f57900;stop-opacity:1"
+ offset="1"
+ id="stop5689-6-4-3-0" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-5-6"
+ id="linearGradient7740-3-9"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ id="linearGradient4840-0-5-1-6-4-2">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-9-3-0" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-1-4-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient7910-0-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7912-4-0"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient7915-5-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7917-6-6"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient7920-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,478.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient7922-5-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(120,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient7938-0-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient7942-6-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient7950-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5-8"
+ id="radialGradient7950-4-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ id="linearGradient6427-7-6-3-7-5-8">
+ <stop
+ style="stop-color:#d3d7cf;stop-opacity:1"
+ offset="0"
+ id="stop6429-5-3-40-8-4-1" />
+ <stop
+ style="stop-color:#555753;stop-opacity:1"
+ offset="1"
+ id="stop6431-3-1-3-8-1-8" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4840-0-5-1-7-9-1-6">
+ <stop
+ style="stop-color:#a64a00;stop-opacity:1;"
+ offset="0"
+ id="stop4842-0-8-8-3-2-9-4" />
+ <stop
+ style="stop-color:#ce5c00;stop-opacity:1"
+ offset="1"
+ id="stop4844-4-6-7-0-9-3-9" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5-8"
+ id="radialGradient7942-2-0-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ r="11"
+ fy="194.34859"
+ fx="24.391739"
+ cy="194.34859"
+ cx="24.391739"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient8025-3-9"
+ xlink:href="#linearGradient6427-7-6-3-7-5-8"
+ inkscape:collect="always" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8436-9-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8438-5-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8440-1-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8442-1-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8444-4-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8446-3-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8448-8-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8450-5-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8452-9-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8454-9-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8456-1-0"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8458-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8460-6-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8462-4-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8464-1-0"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8466-8-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8468-4-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8470-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8472-9-8"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8474-0-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8512-3-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8516-0-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8518-3-0"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8520-7-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8522-3-5"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8524-1-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8526-1-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8528-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8530-0-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8532-2-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-5-6"
+ id="linearGradient8572-2-6"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8639-6-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8641-9-1"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8644-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8646-1-3"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8649-9-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,538.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient8651-2-1"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279"
+ gradientTransform="translate(180,2)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8677-9-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8681-4-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8685-0-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-5-5"
+ id="linearGradient8747-0-5"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient9121-7-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808602e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9123-4-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000003,0)"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient9125-8-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9127-8-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1,0)"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient9129-4-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9131-9-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000001,0)"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient9133-4-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43152,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9135-1-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-1.0000006,0)"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient9139-6-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9141-5-5"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient9143-6-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9145-7-8"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient9147-9-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9149-4-1"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient9151-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55475,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9153-1-9"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient9155-7-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932997,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9157-1-6"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient9177-4-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31655,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9179-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient9181-5-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31653,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9183-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient9185-0-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,598.31654,214.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9187-3-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(240,2)"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient9189-2-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9191-3-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient9193-2-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000002,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9195-6-7"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient9197-5-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529074e-7,3.69624,-2.0000001,-2.625862e-7,483.43741,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9199-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient9201-2-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529076e-7,3.69624,-2.0000003,-2.625862e-7,483.43744,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient9203-6-7"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5722-2-0-8"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-3-5" />
+ <linearGradient
+ id="linearGradient4176-9-3-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-9-2-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-0-9-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5726-1-0-8"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-9-3"
+ y1="38.63026"
+ y2="21.48896" />
+ <linearGradient
+ id="linearGradient3421-0-9-3">
+ <stop
+ id="stop3423-3-3-1"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop3425-4-7-5"
+ offset="1"
+ style="stop-color:#babdb6;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5728-0-5-7"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-8-8" />
+ <linearGradient
+ id="linearGradient4229-3-8-8"
+ inkscape:collect="always">
+ <stop
+ id="stop4231-9-8-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4233-1-2-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5730-9-5-9"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-3-9"
+ y1="36.421127"
+ y2="35.581436" />
+ <linearGradient
+ id="linearGradient4248-6-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4250-9-5-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4252-3-6-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5732-3-6-9"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-8-8" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4137-0-9-8"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-9-3-5" />
+ <linearGradient
+ gradientTransform="translate(-3,-3)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4141-7-6-3-9"
+ inkscape:collect="always"
+ x1="28.216566"
+ x2="20.90625"
+ xlink:href="#linearGradient3421-0-9-3"
+ y1="38.63026"
+ y2="21.48896" />
+ <radialGradient
+ cx="-42.750153"
+ cy="5.3468766"
+ fx="-42.750153"
+ fy="5.3468766"
+ gradientTransform="matrix(2.3000978,0,0,1.8146645,120.45454,-4.8277871)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4143-6-9-6"
+ inkscape:collect="always"
+ r="15.500008"
+ xlink:href="#linearGradient4229-3-8-8" />
+ <linearGradient
+ gradientTransform="translate(60,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4145-6-0-0-4"
+ inkscape:collect="always"
+ x1="-18.296389"
+ x2="-21.478369"
+ xlink:href="#linearGradient4248-6-3-9"
+ y1="36.421127"
+ y2="35.581436" />
+ <radialGradient
+ cx="-49.9375"
+ cy="18.890318"
+ fx="-49.9375"
+ fy="18.890318"
+ gradientTransform="matrix(1.390496,0,0,0.7351777,79.50039,9.4560091)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4147-0-5-3"
+ inkscape:collect="always"
+ r="18.5"
+ xlink:href="#linearGradient4229-3-8-8" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3793-6-1-3"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-2-6-9" />
+ <linearGradient
+ id="linearGradient3787-2-6-9"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-6-6-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-7-4-0"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,33,21.001565)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3782-7-4-9"
+ inkscape:collect="always"
+ x1="10.386932"
+ x2="14.555588"
+ xlink:href="#linearGradient4256-2-2-0"
+ y1="15.424131"
+ y2="8.153533" />
+ <linearGradient
+ id="linearGradient4256-2-2-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-8-3-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-2-8-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(1,0,0,-1,3,-8.998435)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4237-9-2-3"
+ inkscape:collect="always"
+ x1="0.5915947"
+ x2="16.993088"
+ xlink:href="#linearGradient4256-2-2-0"
+ y1="11.553171"
+ y2="0.059782967" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3638-9-4-1"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-2-2-0"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3082-7-5"
+ inkscape:collect="always"
+ x1="99.396446"
+ x2="99.881432"
+ xlink:href="#linearGradient3512-1-3"
+ y1="-44.57159"
+ y2="-36.90625" />
+ <linearGradient
+ id="linearGradient3512-1-3"
+ inkscape:collect="always">
+ <stop
+ id="stop3514-8-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3516-5-7"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient2753-9-8"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-7-8" />
+ <linearGradient
+ id="linearGradient3787-7-8"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-9-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-1-9"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3185-0-2"
+ inkscape:collect="always">
+ <stop
+ id="stop3187-1-2"
+ offset="0"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ id="stop3189-5-1"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2759-1-7"
+ inkscape:collect="always"
+ x1="100.5"
+ x2="100.375"
+ xlink:href="#linearGradient3572-8-8"
+ y1="5.125"
+ y2="15.25" />
+ <linearGradient
+ id="linearGradient3572-8-8"
+ inkscape:collect="always">
+ <stop
+ id="stop3574-6-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3576-8-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(30,-30)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient2761-4-3"
+ inkscape:collect="always"
+ x1="100.875"
+ x2="106.4375"
+ xlink:href="#linearGradient3580-8-1"
+ y1="15.6875"
+ y2="11.5" />
+ <linearGradient
+ id="linearGradient3580-8-1"
+ inkscape:collect="always">
+ <stop
+ id="stop3582-8-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop3584-7-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7137-6-2"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-17-1" />
+ <linearGradient
+ id="linearGradient4176-17-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-93-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-7-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.2337886,0,0,0.2251129,-13.905583,13.04443)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7141-0-7"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-3-4" />
+ <linearGradient
+ id="linearGradient4653-3-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4655-7-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:0" />
+ <stop
+ id="stop4657-4-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.696641,0,0,0.6666667,-77.106955,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7143-6-2"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-4-6"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ id="linearGradient4643-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4645-5-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4647-6-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7145-5-2"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-6-6"
+ y1="31.107067"
+ y2="11.313666" />
+ <linearGradient
+ id="linearGradient2512-6-6">
+ <stop
+ id="stop2514-2-4"
+ offset="0"
+ style="stop-color:#babdb6;stop-opacity:1" />
+ <stop
+ id="stop2516-0-7"
+ offset="1"
+ style="stop-color:#555753;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.1893428,0,0,0.8803725,-147.35332,-1.1560145)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient7147-5-7"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-1-4" />
+ <linearGradient
+ id="linearGradient4601-1-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4603-3-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4605-5-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.6869613,0,0,0.6461976,-75.079192,0.3430018)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient7149-2-1"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-1-4"
+ y1="9.5507469"
+ y2="17.149347" />
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6553-1-6"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-17-1" />
+ <radialGradient
+ cx="137.56113"
+ cy="29.419594"
+ fx="137.56113"
+ fy="29.419594"
+ gradientTransform="matrix(0.3418347,0,0,0.34396,99.93873,19.483879)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6557-2-6"
+ inkscape:collect="always"
+ r="14.90584"
+ xlink:href="#linearGradient4653-3-4" />
+ <linearGradient
+ gradientTransform="translate(10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6559-8-7"
+ inkscape:collect="always"
+ x1="145.31044"
+ x2="142.30525"
+ xlink:href="#linearGradient4643-4-6"
+ y1="33.41592"
+ y2="31.533039" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6561-9-1"
+ inkscape:collect="always"
+ x1="133.16072"
+ x2="129.729"
+ xlink:href="#linearGradient2512-6-6"
+ y1="31.107067"
+ y2="11.313666" />
+ <radialGradient
+ cx="143.15497"
+ cy="8.3315935"
+ fx="143.15497"
+ fy="8.3315935"
+ gradientTransform="matrix(1.7965469,0,0,1.4151921,-103.64395,-2.8328887)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient6563-6-0"
+ inkscape:collect="always"
+ r="3.3585801"
+ xlink:href="#linearGradient4601-1-4" />
+ <linearGradient
+ gradientTransform="matrix(1.0087241,0,0,0.9913513,10,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient6565-1-1"
+ inkscape:collect="always"
+ x1="128.99229"
+ x2="134.42435"
+ xlink:href="#linearGradient4601-1-4"
+ y1="9.5507469"
+ y2="17.149347" />
+ <linearGradient
+ id="linearGradient4256-4-0"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-3-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-9-0"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3787-6-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-60-2-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-2-7-6"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4176-5-4-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-8-2-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-9-3-1"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4285-8-5"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-1-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-6-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4293-3-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-8-0"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-0-4"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4301-3-9"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-9-3"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-0-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4309-4-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-0-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-7-3"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4437-9-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4439-2-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4441-2-7"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4348-3-5-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-2-5"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-4-2"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3648-7-6"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-5-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <linearGradient
+ id="linearGradient4256-1-5-1"
+ inkscape:collect="always">
+ <stop
+ id="stop4258-7-1-1"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4260-22-8-9"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3650-2-3"
+ inkscape:collect="always"
+ x1="8.2643108"
+ x2="4.7950678"
+ xlink:href="#linearGradient4256-1-5-1"
+ y1="14.541593"
+ y2="10.431535" />
+ <linearGradient
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient3809-1-7"
+ inkscape:collect="always"
+ x1="7.2478447"
+ x2="12.993087"
+ xlink:href="#linearGradient4256-1-5-1"
+ y1="6.3656702"
+ y2="16.751301" />
+ <radialGradient
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient3817-7-2"
+ inkscape:collect="always"
+ r="9.84375"
+ xlink:href="#linearGradient3787-9-1-3" />
+ <linearGradient
+ id="linearGradient3787-9-1-3"
+ inkscape:collect="always">
+ <stop
+ id="stop3789-2-8-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1" />
+ <stop
+ id="stop3791-8-2-3"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4496-7-1"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-3-3" />
+ <linearGradient
+ id="linearGradient4176-1-3-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4178-2-6-6"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop4180-4-1-5"
+ offset="1"
+ style="stop-color:#000000;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4488-0-4"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-9-7" />
+ <linearGradient
+ id="linearGradient4285-2-9-7"
+ inkscape:collect="always">
+ <stop
+ id="stop4287-3-0-2"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4289-7-3-6"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient4490-0-8"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-8-6" />
+ <linearGradient
+ id="linearGradient4293-2-8-6"
+ inkscape:collect="always">
+ <stop
+ id="stop4295-5-7-9"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4297-3-3-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4492-2-6"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-8-3"
+ y1="36.125"
+ y2="19" />
+ <linearGradient
+ id="linearGradient4301-7-8-3"
+ inkscape:collect="always">
+ <stop
+ id="stop4303-6-3-4"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4305-8-8-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <linearGradient
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient4494-8-8"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-2-4"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ id="linearGradient4309-1-2-4"
+ inkscape:collect="always">
+ <stop
+ id="stop4311-3-7-6"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4313-6-1-1"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5706-2-2"
+ inkscape:collect="always"
+ r="22.22967"
+ xlink:href="#linearGradient4176-1-3-3" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5710-0-3"
+ inkscape:collect="always"
+ x1="22.75"
+ x2="18.625"
+ xlink:href="#linearGradient4301-7-8-3"
+ y1="36.125"
+ y2="19" />
+ <radialGradient
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5712-6-5"
+ inkscape:collect="always"
+ r="11"
+ xlink:href="#linearGradient4285-2-9-7" />
+ <radialGradient
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ gradientUnits="userSpaceOnUse"
+ id="radialGradient5714-0-4"
+ inkscape:collect="always"
+ r="10.000016"
+ xlink:href="#linearGradient4293-2-8-6" />
+ <linearGradient
+ gradientTransform="translate(1,0)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5716-8-9"
+ inkscape:collect="always"
+ x1="35.875"
+ x2="32.4375"
+ xlink:href="#linearGradient4309-1-2-4"
+ y1="36.5625"
+ y2="36.25" />
+ <linearGradient
+ gradientTransform="translate(60,47)"
+ gradientUnits="userSpaceOnUse"
+ id="linearGradient5720-7-8"
+ inkscape:collect="always"
+ x1="20.155684"
+ x2="20.155684"
+ xlink:href="#linearGradient4348-8-5-2"
+ y1="43.910683"
+ y2="46" />
+ <linearGradient
+ id="linearGradient4348-8-5-2"
+ inkscape:collect="always">
+ <stop
+ id="stop4350-5-4-7"
+ offset="0"
+ style="stop-color:#ffffff;stop-opacity:1;" />
+ <stop
+ id="stop4352-0-3-8"
+ offset="1"
+ style="stop-color:#ffffff;stop-opacity:0;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3185-0-2"
+ id="radialGradient6084-5-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.12838,0.00232937,-0.00287015,0.8523136,6.5865362,0.2603721)"
+ cx="-50.993778"
+ cy="13.921414"
+ fx="-50.993778"
+ fy="13.921414"
+ r="7.9160094" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-4-0"
+ id="linearGradient6086-4-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-4-0"
+ id="linearGradient6088-1-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-59.984835,-4.0298118)"
+ x1="8.2643108"
+ y1="14.541593"
+ x2="4.7950678"
+ y2="10.431535" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient3787-6-7-6"
+ id="radialGradient6092-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2730159,0,12.449603)"
+ cx="11.03125"
+ cy="17.125"
+ fx="11.03125"
+ fy="17.125"
+ r="9.84375" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4256-4-0"
+ id="linearGradient6094-3-8"
+ gradientUnits="userSpaceOnUse"
+ x1="7.2478447"
+ y1="6.3656702"
+ x2="12.993087"
+ y2="16.751301" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-4-3"
+ id="radialGradient6098-3-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-8-5"
+ id="radialGradient6104-1-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(2.2380227,0,0,1.4157024,26.426801,-10.832181)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-3-7"
+ id="radialGradient6106-1-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.1522034,0,0,0.858583,54.687031,-6.0821237)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-3-9"
+ id="linearGradient6108-5-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.688263,0,0,0.6736704,60.872962,-2.6562397)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-4-1"
+ id="linearGradient6110-0-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.5026028,0,0,0.6526182,66.133026,-1.3231883)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4176-5-4-3"
+ id="radialGradient6114-9-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,0.2326044,0,29.746876)"
+ cx="24.174213"
+ cy="38.763416"
+ fx="24.174213"
+ fy="38.763416"
+ r="22.22967" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4301-3-9"
+ id="linearGradient6118-8-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="22.75"
+ y1="36.125"
+ x2="18.625"
+ y2="19" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4285-8-5"
+ id="radialGradient6120-8-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.3627251,0,0,2.1931621,-50.750694,-14.716108)"
+ cx="21.40613"
+ cy="8.5665998"
+ fx="21.40613"
+ fy="8.5665998"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4293-3-7"
+ id="radialGradient6122-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.6866958,0,0,1.2901137,-8.2703838,-6.0386027)"
+ cx="13.499985"
+ cy="22.762897"
+ fx="13.499985"
+ fy="22.762897"
+ r="10.000016" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4309-4-1"
+ id="linearGradient6124-4-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(1,0)"
+ x1="35.875"
+ y1="36.5625"
+ x2="32.4375"
+ y2="36.25" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4437-9-7"
+ id="linearGradient6126-8-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(190,0)"
+ x1="74.28125"
+ y1="28.776411"
+ x2="74.28125"
+ y2="31.960411" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4348-3-5-6"
+ id="linearGradient6130-0-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(60,46)"
+ x1="20.155684"
+ y1="43.910683"
+ x2="20.155684"
+ y2="46" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-6-0"
+ id="radialGradient9139-7-1-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-7-4"
+ id="linearGradient9141-3-6-2"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-6-7"
+ id="radialGradient9139-7-6-9-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-6-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-2-2" />
+ <stop
+ id="stop6981-9-9-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-6-9"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-5-3" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-6-7"
+ id="radialGradient7111-7-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="103.43681"
+ fx="39.554386"
+ fy="103.43681"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-5-6"
+ id="linearGradient9141-3-2-2-0"
+ gradientUnits="userSpaceOnUse"
+ x1="145.3887"
+ y1="39.999996"
+ x2="145.3887"
+ y2="7.9807839" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-4-6"
+ id="linearGradient9141-3-3-0-4"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.004028"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-4-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-9-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-6-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-7-8"
+ id="radialGradient9139-7-0-4-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-7-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-0-0" />
+ <stop
+ id="stop6981-3-9-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-8-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-1-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-2-8"
+ id="radialGradient9139-7-3-9-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="71.642067"
+ cy="119.85913"
+ fx="71.642067"
+ fy="119.85913"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-2-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-4-2" />
+ <stop
+ id="stop6981-39-9-6"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-5-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-1-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-0-5"
+ id="linearGradient9141-3-34-0-2"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="93"
+ x2="84.5"
+ y2="88" />
+ <linearGradient
+ id="linearGradient7113-6-0-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-22-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-3-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-0-2-3-6"
+ id="linearGradient9141-3-3-4-4-5"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.001797"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-0-2-3-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-5-2-8-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-7-1-8-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-6-2-8"
+ id="radialGradient9139-7-3-1-7-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="72.146278"
+ cy="120.14571"
+ fx="72.146278"
+ fy="120.14571"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-6-2-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-8-9-1" />
+ <stop
+ id="stop6981-39-2-4-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-2-8-2"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-4-2-1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-2-5-3"
+ id="linearGradient9141-3-34-1-6-8"
+ gradientUnits="userSpaceOnUse"
+ x1="84.5"
+ y1="94"
+ x2="84.5"
+ y2="89" />
+ <linearGradient
+ id="linearGradient7113-6-2-5-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-4-8-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-8-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-5-8-0-4"
+ id="radialGradient9139-7-0-3-5-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-5-8-0-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-0-9-7-7" />
+ <stop
+ id="stop6981-3-1-7-6"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-4-1-9-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-7-2-0-2" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-1-1"
+ id="linearGradient9141-3-2-4-8-6"
+ gradientUnits="userSpaceOnUse"
+ x1="3.9729283"
+ y1="27.841093"
+ x2="3.9729283"
+ y2="5.1557527" />
+ <linearGradient
+ id="linearGradient7157-0-1-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-9-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-05-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-0-6"
+ id="radialGradient7111-4-8-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="39.814342"
+ cy="137.44762"
+ fx="39.814342"
+ fy="137.44762"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-0-6">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-2-0" />
+ <stop
+ id="stop6981-9-5-8-4"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-0-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-5-4" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-9-2-7"
+ id="radialGradient9139-7-06-1-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="39.554386"
+ cy="137.48907"
+ fx="39.554386"
+ fy="137.48907"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-9-2-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-3-3-2" />
+ <stop
+ id="stop6981-33-3-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-5-4-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-2-8-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-9-4-3"
+ id="linearGradient9141-3-7-3-8"
+ gradientUnits="userSpaceOnUse"
+ x1="18"
+ y1="41.016068"
+ x2="18"
+ y2="5.9995542" />
+ <linearGradient
+ id="linearGradient7113-9-4-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-71-6-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-8-8-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-4-3"
+ id="linearGradient9141-3-2-4-7-0-2"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-4-3"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-8-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-6-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-8-5"
+ id="radialGradient7111-4-7-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-8-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-2-0" />
+ <stop
+ id="stop6981-9-5-0-7-1"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-8-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-1-1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-0-7"
+ id="radialGradient9139-7-3-7-8-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-0-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-1-5" />
+ <stop
+ id="stop6981-39-27-2-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-0-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-1-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-4-1"
+ id="linearGradient9141-3-34-7-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-4-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-46-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-0-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7157-0-7-5-7-6"
+ id="linearGradient9141-3-2-4-7-9-6-1"
+ gradientUnits="userSpaceOnUse"
+ x1="65.988487"
+ y1="25.515911"
+ x2="65.988487"
+ y2="1.9788401" />
+ <linearGradient
+ id="linearGradient7157-0-7-5-7-6"
+ inkscape:collect="always">
+ <stop
+ id="stop7159-7-5-9-1-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7161-6-0-7-5-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-7-3-3-3-6-7"
+ id="radialGradient7111-4-7-8-4-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.357675,-2.3886904,0,328.46449,-53.789368)"
+ cx="38.709511"
+ cy="112.64323"
+ fx="38.709511"
+ fy="112.64323"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-7-3-3-3-6-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-8-8-6-1-0-0" />
+ <stop
+ id="stop6981-9-5-0-3-6-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-7-8-8-0-9-5"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-4-3-9-3-4-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-14-1-5-7-5"
+ id="radialGradient9139-7-3-7-1-6-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,1.9833036,-3.4894201,1.3073672e-8,479.75716,-78.698362)"
+ cx="45.43713"
+ cy="120.16309"
+ fx="45.43713"
+ fy="120.16309"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-14-1-5-7-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-86-5-9-8-6" />
+ <stop
+ id="stop6981-39-27-5-4-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-2-7-6-4-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-3-7-2-8-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-6-1-0-5-4"
+ id="linearGradient9141-3-34-7-9-0-1"
+ gradientUnits="userSpaceOnUse"
+ x1="62"
+ y1="30"
+ x2="62"
+ y2="26" />
+ <linearGradient
+ id="linearGradient7113-6-1-0-5-4"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-7-2-4-8-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-74-4-8-9-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-3-7"
+ id="radialGradient9139-7-61-04-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-3-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-7-1" />
+ <stop
+ id="stop6981-1-39-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-9-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-0-4" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-71-1"
+ id="linearGradient9141-3-39-68-5"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-71-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-7-4"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-3-1"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-5-2-9"
+ id="radialGradient9139-7-61-0-8-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="39.344345"
+ cy="192.03035"
+ fx="39.344345"
+ fy="192.03035"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-5-2-9">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-4-8-1" />
+ <stop
+ id="stop6981-1-4-1-5"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-8-2-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-6-6-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-5-7-1"
+ id="linearGradient9141-3-39-9-9-5"
+ gradientUnits="userSpaceOnUse"
+ x1="-56.866325"
+ y1="12.007"
+ x2="-56.826302"
+ y2="0.12165857" />
+ <linearGradient
+ id="linearGradient7113-62-5-7-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-4-9-7"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-2-2-6"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-8-7"
+ id="radialGradient9139-7-61-05-3-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-8-7">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-4-4" />
+ <stop
+ id="stop6981-1-8-3-2"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-9-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-7-7" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-7-0"
+ id="linearGradient9141-3-39-1-5-6"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-7-0"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-9-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-3-4"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-10-9"
+ id="linearGradient9141-3-39-6-0-6"
+ gradientUnits="userSpaceOnUse"
+ x1="185.01755"
+ y1="-18.997253"
+ x2="185.01755"
+ y2="-22.000326" />
+ <linearGradient
+ id="linearGradient7113-62-7-10-9"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-03-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-5-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-1-2-2"
+ id="linearGradient9141-3-39-6-2-3-2"
+ gradientUnits="userSpaceOnUse"
+ x1="76.255684"
+ y1="-10"
+ x2="76.255684"
+ y2="-13.002928" />
+ <linearGradient
+ id="linearGradient7113-62-7-1-2-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-0-9-1"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-9-6-7"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-7-5-6-8"
+ id="radialGradient9139-7-61-05-1-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(8.5259017e-8,0.93154556,-1.6389592,1.5000453e-7,244.93186,-38.900758)"
+ cx="37.839142"
+ cy="126.90098"
+ fx="37.839142"
+ fy="126.90098"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-7-5-6-8">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-8-7-2-0" />
+ <stop
+ id="stop6981-1-8-0-0-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-2-3-8-1"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-5-0-4-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-52-3-0-2"
+ id="linearGradient9141-3-39-1-8-2-0"
+ gradientUnits="userSpaceOnUse"
+ x1="39"
+ y1="14.000207"
+ x2="39"
+ y2="-1.0002024" />
+ <linearGradient
+ id="linearGradient7113-62-52-3-0-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-2-8-6-9"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-4-4-2-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-6-1"
+ id="radialGradient9139-7-61-8-6-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="40.68565"
+ cy="125.0378"
+ fx="40.68565"
+ fy="125.0378"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-6-1">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-18-3" />
+ <stop
+ id="stop6981-1-2-1-6"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-3-0"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-0-8" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-1-5"
+ id="linearGradient9141-3-39-5-8-4"
+ gradientUnits="userSpaceOnUse"
+ x1="40"
+ y1="13.001565"
+ x2="40"
+ y2="0.99979788" />
+ <linearGradient
+ id="linearGradient7113-62-9-1-5"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-4-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-7-2-4"
+ id="radialGradient9139-7-61-8-4-9-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.5871477e-7,0.61013337,-1.0734672,1.3316731e-7,174.22396,-25.823905)"
+ cx="38.636917"
+ cy="223.66896"
+ fx="38.636917"
+ fy="223.66896"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-7-2-4">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-1-4-3" />
+ <stop
+ id="stop6981-1-2-7-5-7"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-4-2-7"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-7-5-3" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-0-4-1"
+ id="linearGradient9141-3-39-5-3-1-5"
+ gradientUnits="userSpaceOnUse"
+ x1="-65.877312"
+ y1="11.172731"
+ x2="-66.05246"
+ y2="0.24979722" />
+ <linearGradient
+ id="linearGradient7113-62-9-0-4-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-9-2-2"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-4-1-8"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-7-5"
+ id="radialGradient9139-7-61-8-44-2-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-7-5">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-7-8" />
+ <stop
+ id="stop6981-1-2-8-8-3"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-0-8"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-2-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-5-1"
+ id="linearGradient9141-3-39-5-6-0-7"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-5-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-6-5"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-4-5"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-2-7"
+ id="linearGradient9141-3-39-6-3-5-2"
+ gradientUnits="userSpaceOnUse"
+ x1="184.48721"
+ y1="-50.994797"
+ x2="184.48721"
+ y2="-54" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-2-7"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-2-3"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-0-2"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6977-28-2-3-5-7-2"
+ id="radialGradient9139-7-61-8-44-8-0-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,0.61013339,-1.0734673,0,174.224,-25.823876)"
+ cx="39.088383"
+ cy="219.06908"
+ fx="39.088383"
+ fy="219.06908"
+ r="22" />
+ <linearGradient
+ id="linearGradient6977-28-2-3-5-7-2">
+ <stop
+ style="stop-color:#ffffff;stop-opacity:1"
+ offset="0"
+ id="stop6979-4-5-5-4-0-1" />
+ <stop
+ id="stop6981-1-2-8-5-4-8"
+ offset="0.6102711"
+ style="stop-color:#2e3436;stop-opacity:1" />
+ <stop
+ id="stop6983-3-5-43-5-2-4"
+ offset="0.85851747"
+ style="stop-color:#888a85;stop-opacity:1" />
+ <stop
+ style="stop-color:#2e3436;stop-opacity:1"
+ offset="1"
+ id="stop6985-44-1-5-4-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-9-4-4-8-1"
+ id="linearGradient9141-3-39-5-6-6-9-6"
+ gradientUnits="userSpaceOnUse"
+ x1="-57.984837"
+ y1="11.971753"
+ x2="-58.111061"
+ y2="-0.03020489" />
+ <linearGradient
+ id="linearGradient7113-62-9-4-4-8-1"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-20-7-1-0-8"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-9-41-6-2-9"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient7113-62-7-0-5-5-2"
+ id="linearGradient9141-3-39-6-3-9-4-9"
+ gradientUnits="userSpaceOnUse"
+ x1="67.917938"
+ y1="-43.977436"
+ x2="67.917938"
+ y2="-47.001114" />
+ <linearGradient
+ id="linearGradient7113-62-7-0-5-5-2"
+ inkscape:collect="always">
+ <stop
+ id="stop7115-8-8-5-9-7-0"
+ offset="0"
+ style="stop-color:#000000;stop-opacity:1;" />
+ <stop
+ id="stop7117-6-5-1-8-1-3"
+ offset="1"
+ style="stop-color:#888a85;stop-opacity:1" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8523-9-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8525-0-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8527-1-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8529-4-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8531-3-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="12.999998"
+ cy="235.21867"
+ fx="12.999998"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1-7"
+ id="radialGradient8533-1-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1-7"
+ id="radialGradient8535-5-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1-7"
+ id="radialGradient8537-3-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-1-7"
+ id="radialGradient8539-1-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="235.21867"
+ fx="24.391739"
+ fy="235.21867"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8541-5-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8543-9-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8545-3-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8547-3-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8549-2-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8551-0-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1.369897e-8,4.1934146,-2.193176,0,240.05434,85.637874)"
+ cx="5.75"
+ cy="106.83335"
+ fx="5.75"
+ fy="106.83335"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8553-2-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8555-0-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8557-5-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8559-5-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8561-3-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(3.543727e-7,3.8227655,-2.0019823,1.8558498e-7,380.99888,136.39413)"
+ cx="12.999999"
+ cy="183.81726"
+ fx="12.999999"
+ fy="183.81726"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8563-3-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8565-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8567-6-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8569-8-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8571-6-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8573-7-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8575-1-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8577-9-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8579-9-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8581-5-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8583-1-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8585-5-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8587-7-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8589-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient8597-6-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8599-0-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8601-9-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient8603-0-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient8605-3-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient8607-6-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,439.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-5-6"
+ id="linearGradient8610-0-9"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5685-0-1-3-8"
+ id="linearGradient8612-5-8"
+ gradientUnits="userSpaceOnUse"
+ x1="151.5"
+ y1="152.68915"
+ x2="151.5"
+ y2="150.31085" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5-8"
+ id="radialGradient8614-3-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5-8"
+ id="radialGradient8616-8-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-7-5-8"
+ id="radialGradient8618-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient40279-5-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40281-5-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="192"
+ x2="73"
+ y2="188" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient40283-4-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40285-0-1"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="198"
+ x2="85"
+ y2="194" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient40287-8-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40289-5-6"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="204"
+ x2="85"
+ y2="200" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient40291-5-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40293-9-2"
+ gradientUnits="userSpaceOnUse"
+ x1="85"
+ y1="210"
+ x2="85"
+ y2="206" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient40295-7-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40297-7-4"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="216"
+ x2="73"
+ y2="212" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-8-1-0-9"
+ id="radialGradient40299-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-3.6808603e-7,3.8418553,-2.0000161,-1.9162044e-7,440.43153,-94.455411)"
+ cx="73"
+ cy="183.71428"
+ fx="73"
+ fy="183.71428"
+ r="16" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient40301-6-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40303-3-8"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="117"
+ x2="68"
+ y2="113" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient40305-5-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40307-4-3"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="124"
+ x2="82"
+ y2="120" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient40309-8-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40311-1-7"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="131"
+ x2="82"
+ y2="127" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient40313-7-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40315-7-7"
+ gradientUnits="userSpaceOnUse"
+ x1="82"
+ y1="138"
+ x2="82"
+ y2="134" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient40317-9-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40319-6-3"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="145"
+ x2="68"
+ y2="141" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient40321-6-2"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40323-3-4"
+ gradientUnits="userSpaceOnUse"
+ x1="68"
+ y1="152"
+ x2="68"
+ y2="148" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4388-1-1"
+ id="radialGradient40325-7-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,4.1611199,-2.1932996,0,301.55474,-164.38392)"
+ cx="66"
+ cy="107.39743"
+ fx="66"
+ fy="107.39743"
+ r="22" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient40327-6-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40329-1-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="282"
+ x2="73"
+ y2="279" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient40331-2-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40333-4-8"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="286"
+ x2="80"
+ y2="283" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient40335-8-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40337-1-4"
+ gradientUnits="userSpaceOnUse"
+ x1="80"
+ y1="290"
+ x2="80"
+ y2="287" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient40339-4-9"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40341-5-1"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="294"
+ x2="73"
+ y2="291" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-6-3-9-7"
+ id="radialGradient40343-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0,2.7131617,-1.4680659,0,358.31653,212.82127)"
+ cx="24.391739"
+ cy="194.34859"
+ fx="24.391739"
+ fy="194.34859"
+ r="11" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient40345-7-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40347-5-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="245"
+ x2="81"
+ y2="242" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient40349-9-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40351-8-6"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="249"
+ x2="81"
+ y2="246" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient40353-5-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40355-9-9"
+ gradientUnits="userSpaceOnUse"
+ x1="81"
+ y1="253"
+ x2="81"
+ y2="250" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient40357-9-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40359-4-6"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="241"
+ x2="73"
+ y2="238" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient40361-0-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4157-6-6"
+ id="linearGradient40363-2-2"
+ gradientUnits="userSpaceOnUse"
+ x1="73"
+ y1="257"
+ x2="73"
+ y2="254" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient6427-7-3-3"
+ id="radialGradient40365-3-5"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-4.8529075e-7,3.69624,-2.0000002,-2.625862e-7,483.43742,188.84234)"
+ cx="13.03634"
+ cy="205.21869"
+ fx="13.03634"
+ fy="205.21869"
+ r="11" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-8-3-4-9"
+ id="linearGradient40367-4-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159279,0,0,0.8,-174.3836,136.9)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-1-4-9-1"
+ id="linearGradient40369-5-4"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.81159277,0,0,0.79999799,-174.38361,136.90038)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4996-4-7-3-0"
+ id="linearGradient40371-1-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-230,60)"
+ x1="317.31418"
+ y1="228.31705"
+ x2="316.5"
+ y2="222.30664" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4840-0-6-1-6-9-3"
+ id="linearGradient40373-0-6"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753458,0,0,0.87453328,-207.79553,84.10513)"
+ x1="324.52679"
+ y1="191.375"
+ x2="322.05136"
+ y2="186.12825" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient4832-3-0-6-8-0-1"
+ id="linearGradient40375-8-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.92753456,0,0,0.91428338,-207.79554,76.529)"
+ x1="321.5"
+ y1="188.71875"
+ x2="321.5"
+ y2="183.05904" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient5297-7-4-6-7"
+ id="linearGradient40377-0-3"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(-231,60)"